@xpert-ai/xpert-sdk 0.11.0 → 0.12.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/index.d.ts +2 -0
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +1 -0
- package/dist/index.mjs.map +1 -1
- package/dist/mcp/apps.d.ts +5 -1
- package/dist/mcp/apps.js +11 -2
- package/dist/mcp/apps.js.map +1 -1
- package/dist/mcp/apps.mjs +11 -2
- package/dist/mcp/apps.mjs.map +1 -1
- package/dist/mcp/session-error.d.ts +10 -0
- package/dist/mcp/session-error.js +34 -0
- package/dist/mcp/session-error.js.map +1 -0
- package/dist/mcp/session-error.mjs +34 -0
- package/dist/mcp/session-error.mjs.map +1 -0
- package/dist/mcp/session-error.test.d.ts +1 -0
- package/dist/mcp/session-error.test.js +65 -0
- package/dist/mcp/session-error.test.js.map +1 -0
- package/dist/mcp/session-error.test.mjs +65 -0
- package/dist/mcp/session-error.test.mjs.map +1 -0
- package/dist/mcp/types.d.ts +21 -0
- package/dist/utils/async_caller.js +1 -0
- package/dist/utils/async_caller.js.map +1 -1
- package/dist/utils/async_caller.mjs +1 -0
- package/dist/utils/async_caller.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -2,6 +2,8 @@ export { Client, ConnectorsClient, ProjectsClient, WorkspacesClient, XpertsClien
|
|
|
2
2
|
export type { ClientConfig, RequestHook } from "./client.js";
|
|
3
3
|
export { McpClient, McpAppsClient, McpPublicationsClient } from "./mcp/index.js";
|
|
4
4
|
export type * from "./mcp/types.js";
|
|
5
|
+
export { McpAppSessionError, isMcpAppSessionError } from "./mcp/session-error.js";
|
|
6
|
+
export type { McpAppSessionErrorCode } from "./mcp/session-error.js";
|
|
5
7
|
export type { Assistant, AssistantBase, AssistantGraph, AssistantModelAvatar, AssistantModelOption, AssistantModelsResponse, AssistantVersion, Checkpoint, Config, Cron, CronCreateForThreadResponse, CronCreateResponse, DefaultValues, GraphSchema, Interrupt, Item, ListNamespaceResponse, Metadata, Run, SearchItem, SearchItemsResponse, Thread, ThreadContextUsage, ThreadState, ThreadStatus, ThreadRunControl, ThreadDisplayPause, ThreadPauseResult, ThreadCopyOptions, ThreadGoal, ThreadGoalPatchRequest, ThreadGoalSetRequest, ThreadGoalStatus, ThreadGoalUserStatus, ChatConversation, ConversationBranchRequest, ConversationBranchSource, ChatMessageBranching, ChatMessageBranchUnavailableReason, ChatConversationFile, ChatConversationFileParseMode, ChatConversationFilePurpose, ChatConversationFileStatus, ChatConversationFrom, ChatConversationOptions, ChatConversationStatus, ChatMessage, ChatAgentRunSummary, ChatMessageInputCheckpoint, ChatMessageFeedback, ChatMessageFeedbackRating, ChatFileChange, ChatTaskSummaryAgent, ChatTaskSummaryContribution, ChatTaskSummaryList, ChatTaskSummaryOutput, ChatTaskSummaryPending, ChatTaskSummaryPlan, ChatTaskSummaryResourceReference, ChatTaskSummarySection, ChatTaskSummarySectionItem, ChatTaskSummarySectionPage, ChatTaskSummarySnapshot, ChatTaskSummarySource, ChatTaskSummaryTodos, ChatFollowUpMode, ChatFollowUpRequest, ChatRequest, ChatRequestHuman, ChatResumeDecision, ChatResumeRequest, ChatRetryRequest, ChatSendRequest, ProjectSelection, ChatState, ChatTarget, ChatInterruptPatch, LegacyChatRequest, RunInput, IconDefinition, RuntimeCapabilitiesResponse, RuntimeCapabilitiesSelection, RuntimeCapabilityIcon, RuntimeCapabilityPlugin, RuntimeCapabilityPluginMeta, RuntimeCapabilitySkill, RuntimeCapabilitySkillMeta, RuntimeCapabilitySubAgent, RuntimeCapabilitiesSelectionSet, RuntimeI18nObject, RuntimeI18nText, ConnectorAppCredentialField, ConnectorAuthorizationMode, ConnectorAuthMethodDefinition, ConnectorBinding, ConnectorBindingCreateRequest, ConnectorConsentRequest, ConnectorConnectRequest, ConnectorConnectResponse, ConnectorCredentialFormDefinition, ConnectorDefinitionBase, ConnectorInstance, ConnectorOAuthStatusResponse, ConnectorPersonalAccountInstance, ConnectorProfile, ConnectorRuntimeOption, ConnectorRuntimeOptions, ConnectorRuntimeOptionsResponse, ConnectorRuntimeStatus, ConnectorScope, ConnectorStatus, ConnectorStrategyDefinition, PersonalConnectorAccount, RuntimePromptWorkflow, RuntimeSlashCommand, RuntimeSlashCommandAction, RuntimeSlashCommandAvailability, RuntimeSlashCommandCapability, RuntimeSlashCommandKind, SandboxManagedService, SandboxManagedServiceEnvEntry, SandboxManagedServiceLogs, SandboxManagedServicePreviewSession, SandboxManagedServiceStartInput, SandboxManagedServiceStatus, SandboxManagedServiceTransportMode, Pagination, ThreadTask, StorageFile, XpertProject, XpertProjectAvailabilityStatus, XpertProjectListOptions, XpertProjectTypeRef, XpertProjectTypeSummary, XpertProjectTypeCatalog, XpertProjectEntry, XpertProjectStatus, XpertWorkspace, XpertWorkspaceAccessPurpose, XpertWorkspaceDefaultOptions, XpertWorkspaceFile, XpertWorkspaceFileListOptions, XpertWorkspaceStatus, } from "./schema.js";
|
|
6
8
|
export { overrideFetchImplementation } from "./singletons/fetch.js";
|
|
7
9
|
export type { Command, OnConflictBehavior, RunsInvokePayload, } from "./types.js";
|
package/dist/index.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
export { Client, ConnectorsClient, ProjectsClient, WorkspacesClient, XpertsClient, getApiKey, } from "./client.js";
|
|
2
2
|
export { McpClient, McpAppsClient, McpPublicationsClient } from "./mcp/index.js";
|
|
3
|
+
export { McpAppSessionError, isMcpAppSessionError } from "./mcp/session-error.js";
|
|
3
4
|
export { overrideFetchImplementation } from "./singletons/fetch.js";
|
|
4
5
|
export { ASSISTANT_CHAT_SEND_MESSAGE_COMMAND, ASSISTANT_CITATION_OPEN_EVENT, ASSISTANT_CONTEXT_SET_COMMAND, KNOWLEDGEBASE_OPEN_CITATION_EFFECT, WORKBENCH_ASSISTANT_CONVERSATION_TARGET, WORKBENCH_FILE_OPEN_COMMAND, WORKBENCH_KNOWLEDGEBASE_DOCUMENTS_TARGET, WORKBENCH_NAVIGATION_OPEN_COMMAND, XPERT_REMOTE_COMPONENT_INVOKE_CLIENT_COMMAND_MESSAGE_TYPE, XPERT_VIEW_CONVERSATION_ID_HEADER, XPERT_VIEW_PROJECT_ID_HEADER, } from "./view-extension.js";
|
|
5
6
|
export { WorkbenchClient } from "./workbench.js";
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"OAAO,EACL,MAAM,EACN,gBAAgB,EAChB,cAAc,EACd,gBAAgB,EAChB,YAAY,EACZ,SAAS,GACV;OAEM,EAAE,SAAS,EAAE,aAAa,EAAE,qBAAqB,EAAE;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"OAAO,EACL,MAAM,EACN,gBAAgB,EAChB,cAAc,EACd,gBAAgB,EAChB,YAAY,EACZ,SAAS,GACV;OAEM,EAAE,SAAS,EAAE,aAAa,EAAE,qBAAqB,EAAE;OAEnD,EAAE,kBAAkB,EAAE,oBAAoB,EAAE;OAoJ5C,EAAE,2BAA2B,EAAE;OAyC/B,EACL,mCAAmC,EACnC,6BAA6B,EAC7B,6BAA6B,EAC7B,kCAAkC,EAClC,uCAAuC,EACvC,2BAA2B,EAC3B,wCAAwC,EACxC,iCAAiC,EACjC,yDAAyD,EACzD,iCAAiC,EACjC,4BAA4B,GAC7B;OAoFM,EAAE,eAAe,EAAE;;OAwBnB,EAAE,YAAY,EAAE"}
|
package/dist/index.mjs
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
export { Client, ConnectorsClient, ProjectsClient, WorkspacesClient, XpertsClient, getApiKey, } from "./client.mjs";
|
|
2
2
|
export { McpClient, McpAppsClient, McpPublicationsClient } from "./mcp/index.mjs";
|
|
3
|
+
export { McpAppSessionError, isMcpAppSessionError } from "./mcp/session-error.mjs";
|
|
3
4
|
export { overrideFetchImplementation } from "./singletons/fetch.mjs";
|
|
4
5
|
export { ASSISTANT_CHAT_SEND_MESSAGE_COMMAND, ASSISTANT_CITATION_OPEN_EVENT, ASSISTANT_CONTEXT_SET_COMMAND, KNOWLEDGEBASE_OPEN_CITATION_EFFECT, WORKBENCH_ASSISTANT_CONVERSATION_TARGET, WORKBENCH_FILE_OPEN_COMMAND, WORKBENCH_KNOWLEDGEBASE_DOCUMENTS_TARGET, WORKBENCH_NAVIGATION_OPEN_COMMAND, XPERT_REMOTE_COMPONENT_INVOKE_CLIENT_COMMAND_MESSAGE_TYPE, XPERT_VIEW_CONVERSATION_ID_HEADER, XPERT_VIEW_PROJECT_ID_HEADER, } from "./view-extension.mjs";
|
|
5
6
|
export { WorkbenchClient } from "./workbench.mjs";
|
package/dist/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"OAAO,EACL,MAAM,EACN,gBAAgB,EAChB,cAAc,EACd,gBAAgB,EAChB,YAAY,EACZ,SAAS,GACV;OAEM,EAAE,SAAS,EAAE,aAAa,EAAE,qBAAqB,EAAE;
|
|
1
|
+
{"version":3,"file":"index.mjs","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"OAAO,EACL,MAAM,EACN,gBAAgB,EAChB,cAAc,EACd,gBAAgB,EAChB,YAAY,EACZ,SAAS,GACV;OAEM,EAAE,SAAS,EAAE,aAAa,EAAE,qBAAqB,EAAE;OAEnD,EAAE,kBAAkB,EAAE,oBAAoB,EAAE;OAoJ5C,EAAE,2BAA2B,EAAE;OAyC/B,EACL,mCAAmC,EACnC,6BAA6B,EAC7B,6BAA6B,EAC7B,kCAAkC,EAClC,uCAAuC,EACvC,2BAA2B,EAC3B,wCAAwC,EACxC,iCAAiC,EACjC,yDAAyD,EACzD,iCAAiC,EACjC,4BAA4B,GAC7B;OAoFM,EAAE,eAAe,EAAE;;OAwBnB,EAAE,YAAY,EAAE"}
|
package/dist/mcp/apps.d.ts
CHANGED
|
@@ -1,9 +1,13 @@
|
|
|
1
1
|
import type { McpTransport } from './transport.js';
|
|
2
|
-
import type { McpAppApprovalResult, McpAppResourceResponse, McpAppReviveQuery, McpRequestOptions } from './types.js';
|
|
2
|
+
import type { McpAppApprovalResult, McpAppHistory, McpAppHistoryQuery, McpAppResourceResponse, McpAppReviveQuery, McpRequestOptions } from './types.js';
|
|
3
3
|
export declare class McpAppsClient {
|
|
4
4
|
private readonly transport;
|
|
5
5
|
constructor(transport: McpTransport);
|
|
6
6
|
getResource(appInstanceId: string, query?: McpAppReviveQuery, options?: McpRequestOptions): Promise<McpAppResourceResponse>;
|
|
7
|
+
/** Read the saved result under the current message ACL without opening a tool session. */
|
|
8
|
+
getHistory(appInstanceId: string, query: McpAppHistoryQuery, options?: McpRequestOptions): Promise<McpAppHistory>;
|
|
9
|
+
/** Explicitly renew interaction authority; this does not rerun the opening tool. */
|
|
10
|
+
resume(appInstanceId: string, query: McpAppHistoryQuery, options?: McpRequestOptions): Promise<McpAppResourceResponse>;
|
|
7
11
|
rpc<T = unknown>(appInstanceId: string, request: unknown, query?: McpAppReviveQuery, options?: McpRequestOptions): Promise<T>;
|
|
8
12
|
approve(appInstanceId: string, approvalId: string, query?: McpAppReviveQuery, options?: McpRequestOptions): Promise<McpAppApprovalResult>;
|
|
9
13
|
reject(appInstanceId: string, approvalId: string, query?: McpAppReviveQuery, options?: McpRequestOptions): Promise<McpAppApprovalResult>;
|
package/dist/mcp/apps.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { rethrowMcpAppSessionError } from "./session-error.js";
|
|
1
2
|
function id(value) {
|
|
2
3
|
return encodeURIComponent(value);
|
|
3
4
|
}
|
|
@@ -21,7 +22,15 @@ export class McpAppsClient {
|
|
|
21
22
|
this.transport = transport;
|
|
22
23
|
}
|
|
23
24
|
getResource(appInstanceId, query, options) {
|
|
24
|
-
return this.transport.request(`/ai/mcp-apps/${id(appInstanceId)}/resource`, { params: params(query), signal: options?.signal });
|
|
25
|
+
return this.transport.request(`/ai/mcp-apps/${id(appInstanceId)}/resource`, { params: params(query), signal: options?.signal }).catch(rethrowMcpAppSessionError);
|
|
26
|
+
}
|
|
27
|
+
/** Read the saved result under the current message ACL without opening a tool session. */
|
|
28
|
+
getHistory(appInstanceId, query, options) {
|
|
29
|
+
return this.transport.request(`/ai/mcp-apps/${id(appInstanceId)}/history`, { params: { messageId: query.messageId }, signal: options?.signal }).catch(rethrowMcpAppSessionError);
|
|
30
|
+
}
|
|
31
|
+
/** Explicitly renew interaction authority; this does not rerun the opening tool. */
|
|
32
|
+
resume(appInstanceId, query, options) {
|
|
33
|
+
return this.transport.request(`/ai/mcp-apps/${id(appInstanceId)}/resume`, { method: 'POST', params: { messageId: query.messageId }, signal: options?.signal }).catch(rethrowMcpAppSessionError);
|
|
25
34
|
}
|
|
26
35
|
rpc(appInstanceId, request, query, options) {
|
|
27
36
|
return this.transport.request(`/ai/mcp-apps/${id(appInstanceId)}/rpc`, {
|
|
@@ -29,7 +38,7 @@ export class McpAppsClient {
|
|
|
29
38
|
json: request,
|
|
30
39
|
params: params(query),
|
|
31
40
|
signal: options?.signal,
|
|
32
|
-
});
|
|
41
|
+
}).catch(rethrowMcpAppSessionError);
|
|
33
42
|
}
|
|
34
43
|
approve(appInstanceId, approvalId, query, options) {
|
|
35
44
|
return this.transport.request(`/ai/mcp-apps/${id(appInstanceId)}/approvals/${id(approvalId)}/approve`, { method: 'POST', params: params(query), signal: options?.signal });
|
package/dist/mcp/apps.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"apps.js","sourceRoot":"","sources":["../../src/mcp/apps.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"apps.js","sourceRoot":"","sources":["../../src/mcp/apps.ts"],"names":[],"mappings":"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"}
|
package/dist/mcp/apps.mjs
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { rethrowMcpAppSessionError } from "./session-error.mjs";
|
|
1
2
|
function id(value) {
|
|
2
3
|
return encodeURIComponent(value);
|
|
3
4
|
}
|
|
@@ -21,7 +22,15 @@ export class McpAppsClient {
|
|
|
21
22
|
this.transport = transport;
|
|
22
23
|
}
|
|
23
24
|
getResource(appInstanceId, query, options) {
|
|
24
|
-
return this.transport.request(`/ai/mcp-apps/${id(appInstanceId)}/resource`, { params: params(query), signal: options?.signal });
|
|
25
|
+
return this.transport.request(`/ai/mcp-apps/${id(appInstanceId)}/resource`, { params: params(query), signal: options?.signal }).catch(rethrowMcpAppSessionError);
|
|
26
|
+
}
|
|
27
|
+
/** Read the saved result under the current message ACL without opening a tool session. */
|
|
28
|
+
getHistory(appInstanceId, query, options) {
|
|
29
|
+
return this.transport.request(`/ai/mcp-apps/${id(appInstanceId)}/history`, { params: { messageId: query.messageId }, signal: options?.signal }).catch(rethrowMcpAppSessionError);
|
|
30
|
+
}
|
|
31
|
+
/** Explicitly renew interaction authority; this does not rerun the opening tool. */
|
|
32
|
+
resume(appInstanceId, query, options) {
|
|
33
|
+
return this.transport.request(`/ai/mcp-apps/${id(appInstanceId)}/resume`, { method: 'POST', params: { messageId: query.messageId }, signal: options?.signal }).catch(rethrowMcpAppSessionError);
|
|
25
34
|
}
|
|
26
35
|
rpc(appInstanceId, request, query, options) {
|
|
27
36
|
return this.transport.request(`/ai/mcp-apps/${id(appInstanceId)}/rpc`, {
|
|
@@ -29,7 +38,7 @@ export class McpAppsClient {
|
|
|
29
38
|
json: request,
|
|
30
39
|
params: params(query),
|
|
31
40
|
signal: options?.signal,
|
|
32
|
-
});
|
|
41
|
+
}).catch(rethrowMcpAppSessionError);
|
|
33
42
|
}
|
|
34
43
|
approve(appInstanceId, approvalId, query, options) {
|
|
35
44
|
return this.transport.request(`/ai/mcp-apps/${id(appInstanceId)}/approvals/${id(approvalId)}/approve`, { method: 'POST', params: params(query), signal: options?.signal });
|
package/dist/mcp/apps.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"apps.mjs","sourceRoot":"","sources":["../../src/mcp/apps.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"apps.mjs","sourceRoot":"","sources":["../../src/mcp/apps.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export type McpAppSessionErrorCode = 'MCP_APP_SESSION_EXPIRED' | 'MCP_APP_SESSION_UNAVAILABLE';
|
|
2
|
+
/** The interaction lease ended; history still requires its own access check. */
|
|
3
|
+
export declare class McpAppSessionError extends Error {
|
|
4
|
+
readonly code: McpAppSessionErrorCode;
|
|
5
|
+
readonly status = 410;
|
|
6
|
+
constructor(code: McpAppSessionErrorCode, message?: string);
|
|
7
|
+
}
|
|
8
|
+
export declare function isMcpAppSessionError(error: unknown): error is McpAppSessionError;
|
|
9
|
+
/** Narrow only recognized server codes. Access denials and other failures retain their identity. */
|
|
10
|
+
export declare function rethrowMcpAppSessionError(error: unknown): never;
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/** The interaction lease ended; history still requires its own access check. */
|
|
2
|
+
export class McpAppSessionError extends Error {
|
|
3
|
+
code;
|
|
4
|
+
status = 410;
|
|
5
|
+
constructor(code, message) {
|
|
6
|
+
super(message ?? 'The MCP App interaction session is no longer available.');
|
|
7
|
+
this.code = code;
|
|
8
|
+
this.name = 'McpAppSessionError';
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
export function isMcpAppSessionError(error) {
|
|
12
|
+
return error instanceof McpAppSessionError;
|
|
13
|
+
}
|
|
14
|
+
/** Narrow only recognized server codes. Access denials and other failures retain their identity. */
|
|
15
|
+
export function rethrowMcpAppSessionError(error) {
|
|
16
|
+
if (typeof error === 'object' && error !== null &&
|
|
17
|
+
'status' in error && error.status === 410 &&
|
|
18
|
+
'text' in error && typeof error.text === 'string') {
|
|
19
|
+
let body;
|
|
20
|
+
try {
|
|
21
|
+
body = JSON.parse(error.text);
|
|
22
|
+
}
|
|
23
|
+
catch {
|
|
24
|
+
throw error;
|
|
25
|
+
}
|
|
26
|
+
if (typeof body === 'object' && body !== null && 'code' in body &&
|
|
27
|
+
(body.code === 'MCP_APP_SESSION_EXPIRED' || body.code === 'MCP_APP_SESSION_UNAVAILABLE')) {
|
|
28
|
+
const message = 'message' in body && typeof body.message === 'string' ? body.message : undefined;
|
|
29
|
+
throw new McpAppSessionError(body.code, message);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
throw error;
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=session-error.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session-error.js","sourceRoot":"","sources":["../../src/mcp/session-error.ts"],"names":[],"mappings":"AAIA,gFAAgF;AAChF,MAAM,OAAO,kBAAmB,SAAQ,KAAK;IAGtB;IAFZ,MAAM,GAAG,GAAG,CAAC;IAEtB,YAAqB,IAA4B,EAAE,OAAgB;QACjE,KAAK,CAAC,OAAO,IAAI,yDAAyD,CAAC,CAAC;QADzD,SAAI,GAAJ,IAAI,CAAwB;QAE/C,IAAI,CAAC,IAAI,GAAG,oBAAoB,CAAC;IACnC,CAAC;CACF;AAED,MAAM,UAAU,oBAAoB,CAAC,KAAc;IACjD,OAAO,KAAK,YAAY,kBAAkB,CAAC;AAC7C,CAAC;AAED,oGAAoG;AACpG,MAAM,UAAU,yBAAyB,CAAC,KAAc;IACtD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI;QAC7C,QAAQ,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM,KAAK,GAAG;QACzC,MAAM,IAAI,KAAK,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QACpD,IAAI,IAAa,CAAC;QAClB,IAAI,CAAC;YAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAAC,CAAC;QAAC,MAAM,CAAC;YAAC,MAAM,KAAK,CAAC;QAAC,CAAC;QAC7D,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,IAAI,IAAI,MAAM,IAAI,IAAI;YAC7D,CAAC,IAAI,CAAC,IAAI,KAAK,yBAAyB,IAAI,IAAI,CAAC,IAAI,KAAK,6BAA6B,CAAC,EAAE,CAAC;YAC3F,MAAM,OAAO,GAAG,SAAS,IAAI,IAAI,IAAI,OAAO,IAAI,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;YACjG,MAAM,IAAI,kBAAkB,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACnD,CAAC;IACH,CAAC;IACD,MAAM,KAAK,CAAC;AACd,CAAC"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/** The interaction lease ended; history still requires its own access check. */
|
|
2
|
+
export class McpAppSessionError extends Error {
|
|
3
|
+
code;
|
|
4
|
+
status = 410;
|
|
5
|
+
constructor(code, message) {
|
|
6
|
+
super(message ?? 'The MCP App interaction session is no longer available.');
|
|
7
|
+
this.code = code;
|
|
8
|
+
this.name = 'McpAppSessionError';
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
export function isMcpAppSessionError(error) {
|
|
12
|
+
return error instanceof McpAppSessionError;
|
|
13
|
+
}
|
|
14
|
+
/** Narrow only recognized server codes. Access denials and other failures retain their identity. */
|
|
15
|
+
export function rethrowMcpAppSessionError(error) {
|
|
16
|
+
if (typeof error === 'object' && error !== null &&
|
|
17
|
+
'status' in error && error.status === 410 &&
|
|
18
|
+
'text' in error && typeof error.text === 'string') {
|
|
19
|
+
let body;
|
|
20
|
+
try {
|
|
21
|
+
body = JSON.parse(error.text);
|
|
22
|
+
}
|
|
23
|
+
catch {
|
|
24
|
+
throw error;
|
|
25
|
+
}
|
|
26
|
+
if (typeof body === 'object' && body !== null && 'code' in body &&
|
|
27
|
+
(body.code === 'MCP_APP_SESSION_EXPIRED' || body.code === 'MCP_APP_SESSION_UNAVAILABLE')) {
|
|
28
|
+
const message = 'message' in body && typeof body.message === 'string' ? body.message : undefined;
|
|
29
|
+
throw new McpAppSessionError(body.code, message);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
throw error;
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=session-error.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session-error.mjs","sourceRoot":"","sources":["../../src/mcp/session-error.ts"],"names":[],"mappings":"AAIA,gFAAgF;AAChF,MAAM,OAAO,kBAAmB,SAAQ,KAAK;IAGtB;IAFZ,MAAM,GAAG,GAAG,CAAC;IAEtB,YAAqB,IAA4B,EAAE,OAAgB;QACjE,KAAK,CAAC,OAAO,IAAI,yDAAyD,CAAC,CAAC;QADzD,SAAI,GAAJ,IAAI,CAAwB;QAE/C,IAAI,CAAC,IAAI,GAAG,oBAAoB,CAAC;IACnC,CAAC;CACF;AAED,MAAM,UAAU,oBAAoB,CAAC,KAAc;IACjD,OAAO,KAAK,YAAY,kBAAkB,CAAC;AAC7C,CAAC;AAED,oGAAoG;AACpG,MAAM,UAAU,yBAAyB,CAAC,KAAc;IACtD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI;QAC7C,QAAQ,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM,KAAK,GAAG;QACzC,MAAM,IAAI,KAAK,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QACpD,IAAI,IAAa,CAAC;QAClB,IAAI,CAAC;YAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAAC,CAAC;QAAC,MAAM,CAAC;YAAC,MAAM,KAAK,CAAC;QAAC,CAAC;QAC7D,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,IAAI,IAAI,MAAM,IAAI,IAAI;YAC7D,CAAC,IAAI,CAAC,IAAI,KAAK,yBAAyB,IAAI,IAAI,CAAC,IAAI,KAAK,6BAA6B,CAAC,EAAE,CAAC;YAC3F,MAAM,OAAO,GAAG,SAAS,IAAI,IAAI,IAAI,OAAO,IAAI,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;YACjG,MAAM,IAAI,kBAAkB,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACnD,CAAC;IACH,CAAC;IACD,MAAM,KAAK,CAAC;AACd,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import { describe, expect, it, vi } from 'vitest';
|
|
2
|
+
import { Client } from "../client.js";
|
|
3
|
+
import { McpAppSessionError, isMcpAppSessionError, rethrowMcpAppSessionError } from "./session-error.js";
|
|
4
|
+
describe('MCP App interaction lifecycle transport', () => {
|
|
5
|
+
it('does not retry an expired lease with default client retry settings', async () => {
|
|
6
|
+
const fetchMock = vi.fn().mockImplementation(async () => new Response(JSON.stringify({ code: 'MCP_APP_SESSION_EXPIRED' }), { status: 410 }));
|
|
7
|
+
const client = new Client({ apiUrl: 'https://xpert.example/api/ai', callerOptions: { fetch: fetchMock } });
|
|
8
|
+
await expect(client.mcp.apps.getResource('app')).rejects.toBeInstanceOf(McpAppSessionError);
|
|
9
|
+
expect(fetchMock).toHaveBeenCalledOnce();
|
|
10
|
+
});
|
|
11
|
+
it.each(['MCP_APP_SESSION_EXPIRED', 'MCP_APP_SESSION_UNAVAILABLE'])('exposes %s through the real HTTP error path', async (code) => {
|
|
12
|
+
const client = new Client({
|
|
13
|
+
apiUrl: 'https://xpert.example/api/ai',
|
|
14
|
+
callerOptions: {
|
|
15
|
+
maxRetries: 0,
|
|
16
|
+
fetch: vi.fn().mockImplementation(async () => new Response(JSON.stringify({ code, message: 'Interaction ended' }), { status: 410 })),
|
|
17
|
+
},
|
|
18
|
+
});
|
|
19
|
+
await expect(client.mcp.apps.getResource('app-1')).rejects.toMatchObject({
|
|
20
|
+
name: 'McpAppSessionError', status: 410, code, message: 'Interaction ended',
|
|
21
|
+
});
|
|
22
|
+
await expect(client.mcp.apps.resume('app-1', { messageId: 'message-1' })).rejects.toBeInstanceOf(McpAppSessionError);
|
|
23
|
+
await expect(client.mcp.apps.rpc('app-1', { method: 'ping' })).rejects.toBeInstanceOf(McpAppSessionError);
|
|
24
|
+
});
|
|
25
|
+
it.each([
|
|
26
|
+
{ status: 403, text: '{"code":"MCP_APP_SESSION_EXPIRED"}' },
|
|
27
|
+
{ status: 404, text: 'Not found' },
|
|
28
|
+
{ status: 500, text: 'Failure' },
|
|
29
|
+
{ status: 410, text: '{"code":"UNKNOWN"}' },
|
|
30
|
+
{ status: 410, text: 'Not JSON' },
|
|
31
|
+
{ status: 410, text: 'null' },
|
|
32
|
+
new Error('HTTP 410: {"code":"MCP_APP_SESSION_EXPIRED"}'),
|
|
33
|
+
])('preserves non-session failures %#', (failure) => {
|
|
34
|
+
try {
|
|
35
|
+
rethrowMcpAppSessionError(failure);
|
|
36
|
+
}
|
|
37
|
+
catch (error) {
|
|
38
|
+
expect(error).toBe(failure);
|
|
39
|
+
expect(isMcpAppSessionError(error)).toBe(false);
|
|
40
|
+
}
|
|
41
|
+
});
|
|
42
|
+
it('uses authenticated requests and only message attribution for history/resume', async () => {
|
|
43
|
+
const fetchMock = vi.fn().mockImplementation(async () => Response.json({ appInstanceId: 'app/1' }));
|
|
44
|
+
const client = new Client({
|
|
45
|
+
apiUrl: 'https://xpert.example/api/ai',
|
|
46
|
+
onRequest: (_url, init) => ({ ...init, headers: { ...init.headers, Authorization: 'Bearer test-auth' } }),
|
|
47
|
+
callerOptions: { fetch: fetchMock, maxRetries: 0 },
|
|
48
|
+
});
|
|
49
|
+
const controller = new AbortController();
|
|
50
|
+
// Extra runtime metadata must not become recovery authority.
|
|
51
|
+
const query = { messageId: 'message/1', toolName: 'untrusted', token: 'old-token' };
|
|
52
|
+
await client.mcp.apps.getHistory('app/1', query, { signal: controller.signal });
|
|
53
|
+
await client.mcp.apps.resume('app/1', query, { signal: controller.signal });
|
|
54
|
+
expect(fetchMock).toHaveBeenCalledTimes(2);
|
|
55
|
+
for (const [index, suffix] of ['history', 'resume'].entries()) {
|
|
56
|
+
const [url, init] = fetchMock.mock.calls[index];
|
|
57
|
+
expect(String(url)).toBe(`https://xpert.example/api/ai/mcp-apps/app%2F1/${suffix}?messageId=message%2F1`);
|
|
58
|
+
expect(new Headers(init?.headers).get('Authorization')).toBe('Bearer test-auth');
|
|
59
|
+
expect(init?.signal).toBe(controller.signal);
|
|
60
|
+
expect(init?.body).toBeUndefined();
|
|
61
|
+
}
|
|
62
|
+
expect(fetchMock.mock.calls[1][1]?.method).toBe('POST');
|
|
63
|
+
});
|
|
64
|
+
});
|
|
65
|
+
//# sourceMappingURL=session-error.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session-error.test.js","sourceRoot":"","sources":["../../src/mcp/session-error.test.ts"],"names":[],"mappings":"OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,QAAQ;OAC1C,EAAE,MAAM,EAAE;OACV,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,yBAAyB,EAAE;AAE9E,QAAQ,CAAC,yCAAyC,EAAE,GAAG,EAAE;IACvD,EAAE,CAAC,oEAAoE,EAAE,KAAK,IAAI,EAAE;QAClF,MAAM,SAAS,GAAG,EAAE,CAAC,EAAE,EAAgB,CAAC,kBAAkB,CAAC,KAAK,IAAI,EAAE,CAAC,IAAI,QAAQ,CACjF,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,yBAAyB,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CACrE,CAAC,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,EAAE,MAAM,EAAE,8BAA8B,EAAE,aAAa,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC;QAC3G,MAAM,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAC;QAC5F,MAAM,CAAC,SAAS,CAAC,CAAC,oBAAoB,EAAE,CAAC;IAC3C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,IAAI,CAAC,CAAC,yBAAyB,EAAE,6BAA6B,CAAU,CAAC,CAC1E,6CAA6C,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QAC5D,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC;YACxB,MAAM,EAAE,8BAA8B;YACtC,aAAa,EAAE;gBACb,UAAU,EAAE,CAAC;gBACb,KAAK,EAAE,EAAE,CAAC,EAAE,EAAgB,CAAC,kBAAkB,CAAC,KAAK,IAAI,EAAE,CAAC,IAAI,QAAQ,CACtE,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,mBAAmB,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CACxE,CAAC;aACH;SACF,CAAC,CAAC;QACH,MAAM,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC;YACvE,IAAI,EAAE,oBAAoB,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,mBAAmB;SAC5E,CAAC,CAAC;QACH,MAAM,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAC;QACrH,MAAM,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAC;IAC5G,CAAC,CACF,CAAC;IAEF,EAAE,CAAC,IAAI,CAAC;QACN,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,oCAAoC,EAAE;QAC3D,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,WAAW,EAAE;QAClC,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE;QAChC,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,oBAAoB,EAAE;QAC3C,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,UAAU,EAAE;QACjC,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE;QAC7B,IAAI,KAAK,CAAC,8CAA8C,CAAC;KAC1D,CAAC,CAAC,mCAAmC,EAAE,CAAC,OAAO,EAAE,EAAE;QAClD,IAAI,CAAC;YACH,yBAAyB,CAAC,OAAO,CAAC,CAAC;QACrC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC5B,MAAM,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAClD,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6EAA6E,EAAE,KAAK,IAAI,EAAE;QAC3F,MAAM,SAAS,GAAG,EAAE,CAAC,EAAE,EAAgB,CAAC,kBAAkB,CAAC,KAAK,IAAI,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,aAAa,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC;QAClH,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC;YACxB,MAAM,EAAE,8BAA8B;YACtC,SAAS,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,EAAE,CAAC;YACzG,aAAa,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,EAAE;SACnD,CAAC,CAAC;QACH,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;QACzC,6DAA6D;QAC7D,MAAM,KAAK,GAAG,EAAE,SAAS,EAAE,WAAW,EAAE,QAAQ,EAAE,WAAW,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC;QACpF,MAAM,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC;QAChF,MAAM,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC;QAC5E,MAAM,CAAC,SAAS,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;QAC3C,KAAK,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC;YAC9D,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAE,CAAC;YACjD,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,iDAAiD,MAAM,wBAAwB,CAAC,CAAC;YAC1G,MAAM,CAAC,IAAI,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;YACjF,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;YAC7C,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,aAAa,EAAE,CAAC;QACrC,CAAC;QACD,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAE,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC3D,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import { describe, expect, it, vi } from 'vitest';
|
|
2
|
+
import { Client } from "../client.mjs";
|
|
3
|
+
import { McpAppSessionError, isMcpAppSessionError, rethrowMcpAppSessionError } from "./session-error.mjs";
|
|
4
|
+
describe('MCP App interaction lifecycle transport', () => {
|
|
5
|
+
it('does not retry an expired lease with default client retry settings', async () => {
|
|
6
|
+
const fetchMock = vi.fn().mockImplementation(async () => new Response(JSON.stringify({ code: 'MCP_APP_SESSION_EXPIRED' }), { status: 410 }));
|
|
7
|
+
const client = new Client({ apiUrl: 'https://xpert.example/api/ai', callerOptions: { fetch: fetchMock } });
|
|
8
|
+
await expect(client.mcp.apps.getResource('app')).rejects.toBeInstanceOf(McpAppSessionError);
|
|
9
|
+
expect(fetchMock).toHaveBeenCalledOnce();
|
|
10
|
+
});
|
|
11
|
+
it.each(['MCP_APP_SESSION_EXPIRED', 'MCP_APP_SESSION_UNAVAILABLE'])('exposes %s through the real HTTP error path', async (code) => {
|
|
12
|
+
const client = new Client({
|
|
13
|
+
apiUrl: 'https://xpert.example/api/ai',
|
|
14
|
+
callerOptions: {
|
|
15
|
+
maxRetries: 0,
|
|
16
|
+
fetch: vi.fn().mockImplementation(async () => new Response(JSON.stringify({ code, message: 'Interaction ended' }), { status: 410 })),
|
|
17
|
+
},
|
|
18
|
+
});
|
|
19
|
+
await expect(client.mcp.apps.getResource('app-1')).rejects.toMatchObject({
|
|
20
|
+
name: 'McpAppSessionError', status: 410, code, message: 'Interaction ended',
|
|
21
|
+
});
|
|
22
|
+
await expect(client.mcp.apps.resume('app-1', { messageId: 'message-1' })).rejects.toBeInstanceOf(McpAppSessionError);
|
|
23
|
+
await expect(client.mcp.apps.rpc('app-1', { method: 'ping' })).rejects.toBeInstanceOf(McpAppSessionError);
|
|
24
|
+
});
|
|
25
|
+
it.each([
|
|
26
|
+
{ status: 403, text: '{"code":"MCP_APP_SESSION_EXPIRED"}' },
|
|
27
|
+
{ status: 404, text: 'Not found' },
|
|
28
|
+
{ status: 500, text: 'Failure' },
|
|
29
|
+
{ status: 410, text: '{"code":"UNKNOWN"}' },
|
|
30
|
+
{ status: 410, text: 'Not JSON' },
|
|
31
|
+
{ status: 410, text: 'null' },
|
|
32
|
+
new Error('HTTP 410: {"code":"MCP_APP_SESSION_EXPIRED"}'),
|
|
33
|
+
])('preserves non-session failures %#', (failure) => {
|
|
34
|
+
try {
|
|
35
|
+
rethrowMcpAppSessionError(failure);
|
|
36
|
+
}
|
|
37
|
+
catch (error) {
|
|
38
|
+
expect(error).toBe(failure);
|
|
39
|
+
expect(isMcpAppSessionError(error)).toBe(false);
|
|
40
|
+
}
|
|
41
|
+
});
|
|
42
|
+
it('uses authenticated requests and only message attribution for history/resume', async () => {
|
|
43
|
+
const fetchMock = vi.fn().mockImplementation(async () => Response.json({ appInstanceId: 'app/1' }));
|
|
44
|
+
const client = new Client({
|
|
45
|
+
apiUrl: 'https://xpert.example/api/ai',
|
|
46
|
+
onRequest: (_url, init) => ({ ...init, headers: { ...init.headers, Authorization: 'Bearer test-auth' } }),
|
|
47
|
+
callerOptions: { fetch: fetchMock, maxRetries: 0 },
|
|
48
|
+
});
|
|
49
|
+
const controller = new AbortController();
|
|
50
|
+
// Extra runtime metadata must not become recovery authority.
|
|
51
|
+
const query = { messageId: 'message/1', toolName: 'untrusted', token: 'old-token' };
|
|
52
|
+
await client.mcp.apps.getHistory('app/1', query, { signal: controller.signal });
|
|
53
|
+
await client.mcp.apps.resume('app/1', query, { signal: controller.signal });
|
|
54
|
+
expect(fetchMock).toHaveBeenCalledTimes(2);
|
|
55
|
+
for (const [index, suffix] of ['history', 'resume'].entries()) {
|
|
56
|
+
const [url, init] = fetchMock.mock.calls[index];
|
|
57
|
+
expect(String(url)).toBe(`https://xpert.example/api/ai/mcp-apps/app%2F1/${suffix}?messageId=message%2F1`);
|
|
58
|
+
expect(new Headers(init?.headers).get('Authorization')).toBe('Bearer test-auth');
|
|
59
|
+
expect(init?.signal).toBe(controller.signal);
|
|
60
|
+
expect(init?.body).toBeUndefined();
|
|
61
|
+
}
|
|
62
|
+
expect(fetchMock.mock.calls[1][1]?.method).toBe('POST');
|
|
63
|
+
});
|
|
64
|
+
});
|
|
65
|
+
//# sourceMappingURL=session-error.test.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session-error.test.mjs","sourceRoot":"","sources":["../../src/mcp/session-error.test.ts"],"names":[],"mappings":"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"}
|
package/dist/mcp/types.d.ts
CHANGED
|
@@ -313,6 +313,27 @@ export interface McpAppResourceResponse {
|
|
|
313
313
|
toolInput?: unknown;
|
|
314
314
|
toolResult?: unknown;
|
|
315
315
|
}
|
|
316
|
+
export interface McpAppHistoryQuery {
|
|
317
|
+
messageId: string;
|
|
318
|
+
}
|
|
319
|
+
/** Saved output, not a grant to execute tools or use the original credentials. */
|
|
320
|
+
export interface McpAppHistory {
|
|
321
|
+
appInstanceId: string;
|
|
322
|
+
toolInput: Record<string, unknown>;
|
|
323
|
+
toolResult?: {
|
|
324
|
+
content: Array<{
|
|
325
|
+
type: string;
|
|
326
|
+
text?: string;
|
|
327
|
+
[key: string]: unknown;
|
|
328
|
+
}>;
|
|
329
|
+
structuredContent?: Record<string, unknown>;
|
|
330
|
+
isError?: boolean;
|
|
331
|
+
_meta?: Record<string, unknown>;
|
|
332
|
+
};
|
|
333
|
+
toolResultTruncated: boolean;
|
|
334
|
+
createdAt: number;
|
|
335
|
+
canResume: boolean;
|
|
336
|
+
}
|
|
316
337
|
export interface McpAppApprovalResult {
|
|
317
338
|
approved: boolean;
|
|
318
339
|
rejected?: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"async_caller.js","sourceRoot":"","sources":["../../src/utils/async_caller.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"async_caller.js","sourceRoot":"","sources":["../../src/utils/async_caller.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"async_caller.mjs","sourceRoot":"","sources":["../../src/utils/async_caller.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"async_caller.mjs","sourceRoot":"","sources":["../../src/utils/async_caller.ts"],"names":[],"mappings":"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"}
|