@sentry/junior 0.187.0 → 0.189.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-hooks-XVAE2554.js → agent-hooks-6QRYH6PX.js} +11 -11
- package/dist/api/acp/conversations.d.ts +2 -2
- package/dist/api/conversations/list.d.ts +7 -0
- package/dist/api/people/shared.d.ts +54 -0
- package/dist/api.js +41 -52
- package/dist/app.d.ts +1 -1
- package/dist/app.js +1001 -338
- package/dist/{catalog-runtime-DWFAC562.js → catalog-runtime-IETJLJFG.js} +4 -4
- package/dist/chat/agent/resume.d.ts +0 -2
- package/dist/chat/agent/types.d.ts +9 -14
- package/dist/chat/agent-dispatch/work.d.ts +1 -10
- package/dist/chat/agent-invocations/spawn.d.ts +1 -1
- package/dist/chat/agent-invocations/types.d.ts +296 -24
- package/dist/chat/app/conversation-work.d.ts +16 -8
- package/dist/chat/conversation-privacy.d.ts +7 -7
- package/dist/chat/conversations/destination.d.ts +12 -0
- package/dist/chat/conversations/location.d.ts +3 -8
- package/dist/chat/conversations/projection.d.ts +2 -2
- package/dist/chat/conversations/sql/location.d.ts +13 -4
- package/dist/chat/{api-turns → conversations}/stop.d.ts +2 -2
- package/dist/chat/conversations/store.d.ts +8 -11
- package/dist/chat/conversations/structured-events.d.ts +1 -1
- package/dist/chat/{api-turns/authorization.d.ts → conversations/web-authorization.d.ts} +1 -0
- package/dist/chat/conversations/web-input.d.ts +98 -0
- package/dist/chat/conversations/web-mailbox.d.ts +12 -0
- package/dist/chat/providers/slack/runtime.d.ts +1 -0
- package/dist/chat/providers/slack/system-turn.d.ts +8 -0
- package/dist/chat/resource-events/actor.d.ts +13 -12
- package/dist/chat/resource-events/notification.d.ts +1 -1
- package/dist/chat/services/guardian-action-policy.d.ts +1 -1
- package/dist/chat/services/turn-session-routing.d.ts +5 -5
- package/dist/chat/task-execution/assistant-message.d.ts +32 -0
- package/dist/chat/task-execution/conversation-turn.d.ts +8 -0
- package/dist/chat/{api-turns → task-execution}/mailbox-input.d.ts +1 -2
- package/dist/chat/task-execution/mailbox-turn.d.ts +42 -0
- package/dist/chat/task-execution/paused-turn.d.ts +1 -1
- package/dist/chat/task-execution/slack-work.d.ts +0 -2
- package/dist/{chunk-WL3R2KTS.js → chunk-4RHJ3CXR.js} +90 -289
- package/dist/{chunk-U6ZQHRIP.js → chunk-5CXCGDIL.js} +1 -1
- package/dist/{chunk-HXR3FHTE.js → chunk-5VWAY27R.js} +7 -3
- package/dist/{chunk-D3GDGREI.js → chunk-6AUR6PWR.js} +3 -3
- package/dist/{chunk-EIWYZXSM.js → chunk-7R5JRPCY.js} +8 -6
- package/dist/{chunk-WRDW3A3D.js → chunk-AC7MDOJW.js} +5 -7
- package/dist/{chunk-URZ7UD4P.js → chunk-BYBSI5TI.js} +2 -2
- package/dist/{chunk-MUPPP7A7.js → chunk-CMWIMFM6.js} +4 -182
- package/dist/{chunk-WKIS4VRK.js → chunk-CUYFCI4G.js} +70 -39
- package/dist/chunk-DA2KGZZI.js +13 -0
- package/dist/{chunk-Q6OCUQ7W.js → chunk-DYXVAO2E.js} +1 -1
- package/dist/{chunk-QH3I7ZOK.js → chunk-E3PDZPGV.js} +1 -1
- package/dist/{chunk-NU775DLU.js → chunk-GP32KD2J.js} +4 -12
- package/dist/{chunk-STF4GSK4.js → chunk-KN32OWL2.js} +5 -5
- package/dist/chunk-LHKZKAZ4.js +285 -0
- package/dist/{chunk-D5BWM37G.js → chunk-MFSET7Q7.js} +51 -341
- package/dist/{chunk-DUE4EUNL.js → chunk-MI6ZBDTS.js} +6 -6
- package/dist/{chunk-27T5HZHO.js → chunk-MRXMFB4L.js} +6 -87
- package/dist/{chunk-4A2R3AQB.js → chunk-MVPLEPSI.js} +1 -1
- package/dist/{chunk-7LRRVMPH.js → chunk-NY2F7BZA.js} +1 -1
- package/dist/chunk-O35GZCKL.js +311 -0
- package/dist/{chunk-U3KMII5Y.js → chunk-OEIITG5F.js} +1 -1
- package/dist/{chunk-6FKNNUSN.js → chunk-PCPSX4ES.js} +209 -7
- package/dist/{chunk-6YCIYOVA.js → chunk-PY3EIEAF.js} +1 -1
- package/dist/{chunk-U5POFCKM.js → chunk-QNIOBNOY.js} +284 -123
- package/dist/{chunk-JCRXXEMC.js → chunk-S3SGZUOI.js} +1 -1
- package/dist/chunk-SR6OMO5C.js +703 -0
- package/dist/{chunk-TQHCZXN7.js → chunk-UCWO5MKP.js} +7 -7
- package/dist/{chunk-ITLYUKGZ.js → chunk-VKQWU4PO.js} +2 -2
- package/dist/{chunk-JZPDYKRG.js → chunk-WDHPN2GH.js} +3 -3
- package/dist/{chunk-P2VU5JNH.js → chunk-WMUAKAIF.js} +42 -42
- package/dist/{chunk-NIKLTFBP.js → chunk-WN6VLHOU.js} +12 -5
- package/dist/{chunk-VC343WHM.js → chunk-WWYUYKKV.js} +1 -1
- package/dist/{chunk-OM4SFFJK.js → chunk-WYDF6PGK.js} +3 -3
- package/dist/{chunk-KRYJ5VOD.js → chunk-YNZPOFF3.js} +16 -21
- package/dist/{chunk-Z6OHCDXP.js → chunk-YYSEH2WC.js} +2 -2
- package/dist/{chunk-BITZUBPJ.js → chunk-YYZNESC3.js} +8 -8
- package/dist/{chunk-2VUDJGB6.js → chunk-ZUPDSJUE.js} +2 -5
- package/dist/{chunk-X5SXFVZT.js → chunk-ZV6PFUA4.js} +1 -1
- package/dist/cli/chat.js +34 -33
- package/dist/cli/check.js +5 -5
- package/dist/cli/plugins.js +12 -12
- package/dist/cli/snapshot-create.js +9 -9
- package/dist/cli/upgrade.js +6 -6
- package/dist/db/schema/conversations.d.ts +62 -0
- package/dist/db/schema.d.ts +31 -0
- package/dist/{db-FBHAWVXU.js → db-LPJKR2EO.js} +6 -6
- package/dist/instrumentation.js +3 -3
- package/dist/nitro.js +6 -6
- package/dist/{oauth-callback-server-5HS5ULC6.js → oauth-callback-server-DMXF4TTQ.js} +30 -28
- package/dist/{runner-46W6NV6B.js → runner-L5DPVYCN.js} +24 -20
- package/dist/{skills-TG3QC4B6.js → skills-NXG3LBCK.js} +5 -5
- package/dist/spawn-VRUIGKWW.js +42 -0
- package/dist/task-runner-7YTBSPXW.js +36 -0
- package/dist/{validation-GMRIDBC5.js → validation-CH36LTOS.js} +5 -5
- package/dist/version.js +1 -1
- package/dist/{work-W4ULBJTU.js → work-HBC5Y5VZ.js} +22 -21
- package/dist/{worker-M6NVACS2.js → worker-5RDZHLXH.js} +10 -10
- package/migrations/0037_conversation_location.sql +23 -0
- package/migrations/meta/0037_snapshot.json +3192 -0
- package/migrations/meta/_journal.json +7 -0
- package/package.json +4 -4
- package/dist/chat/api-turns/assistant-message.d.ts +0 -12
- package/dist/chat/api-turns/cancellation.d.ts +0 -24
- package/dist/chat/api-turns/routing.d.ts +0 -51
- package/dist/chat/api-turns/work.d.ts +0 -99
- package/dist/chat/task-execution/slack-resource-event.d.ts +0 -47
- package/dist/chunk-4YD3DET6.js +0 -1503
- package/dist/chunk-6FGN7ZEG.js +0 -221
- package/dist/spawn-Y6YWBIJS.js +0 -41
- package/dist/task-runner-YSGBPN4U.js +0 -34
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sentry/junior",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.189.0",
|
|
4
4
|
"private": false,
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"access": "public"
|
|
@@ -85,7 +85,7 @@
|
|
|
85
85
|
"pg": "^8.16.3",
|
|
86
86
|
"yaml": "^2.9.0",
|
|
87
87
|
"zod": "^4.4.3",
|
|
88
|
-
"@sentry/junior-plugin-api": "0.
|
|
88
|
+
"@sentry/junior-plugin-api": "0.189.0"
|
|
89
89
|
},
|
|
90
90
|
"devDependencies": {
|
|
91
91
|
"@emnapi/core": "^1.10.0",
|
|
@@ -104,8 +104,8 @@
|
|
|
104
104
|
"typescript": "^6.0.3",
|
|
105
105
|
"vercel": "^54.4.0",
|
|
106
106
|
"vitest": "^4.1.7",
|
|
107
|
-
"@sentry/junior-
|
|
108
|
-
"@sentry/junior-
|
|
107
|
+
"@sentry/junior-github": "0.189.0",
|
|
108
|
+
"@sentry/junior-memory": "0.189.0",
|
|
109
109
|
"@sentry/junior-testing": "0.0.0"
|
|
110
110
|
},
|
|
111
111
|
"scripts": {
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import type { AssistantMessage } from "@earendil-works/pi-ai";
|
|
2
|
-
import type { ThreadConversationState } from "@/chat/state/conversation";
|
|
3
|
-
/** Store one assistant Message and its Agent history. */
|
|
4
|
-
export declare function commitAssistantMessage(args: {
|
|
5
|
-
agentMessage?: AssistantMessage;
|
|
6
|
-
conversation: ThreadConversationState;
|
|
7
|
-
conversationId: string;
|
|
8
|
-
sessionId: string;
|
|
9
|
-
source?: "web";
|
|
10
|
-
text: string;
|
|
11
|
-
userMessageId: string;
|
|
12
|
-
}): Promise<void>;
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
/** App-scoped control for one active Turn started by the Conversation API. */
|
|
2
|
-
export interface ApiTurnCancellation {
|
|
3
|
-
begin(conversationId: string): AbortSignal | undefined;
|
|
4
|
-
cancel(conversationId: string): boolean;
|
|
5
|
-
disconnect(conversationId: string, signal: AbortSignal): void;
|
|
6
|
-
finish(conversationId: string, signal: AbortSignal): void;
|
|
7
|
-
park(conversationId: string, signal: AbortSignal): void;
|
|
8
|
-
signal(conversationId: string): AbortSignal | undefined;
|
|
9
|
-
}
|
|
10
|
-
/** Create in-process cancellation state for Turns from the Conversation API. */
|
|
11
|
-
export declare function createApiTurnCancellation(): ApiTurnCancellation;
|
|
12
|
-
/** Close one cancelled Turn without a failure reply or retry. */
|
|
13
|
-
export declare function completeCancelledApiTurn(args: {
|
|
14
|
-
acknowledge(): Promise<void>;
|
|
15
|
-
cancellation?: ApiTurnCancellation;
|
|
16
|
-
conversation: ThreadConversationState;
|
|
17
|
-
conversationId: string;
|
|
18
|
-
sandboxRef?: SandboxRef;
|
|
19
|
-
signal?: AbortSignal;
|
|
20
|
-
turnId: string;
|
|
21
|
-
userMessageId: string;
|
|
22
|
-
}): Promise<void>;
|
|
23
|
-
import type { SandboxRef } from "@/chat/sandbox/ref";
|
|
24
|
-
import type { ThreadConversationState } from "@/chat/state/conversation";
|
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
import { z } from "zod";
|
|
2
|
-
import { type Source } from "@sentry/junior-plugin-api";
|
|
3
|
-
import { type Actor } from "@/chat/actor";
|
|
4
|
-
import type { ConversationPrivacy } from "@/chat/conversation-privacy";
|
|
5
|
-
import type { ConversationAuthor, ConversationMessage } from "@/chat/state/conversation";
|
|
6
|
-
import type { InboundMessage } from "@/chat/task-execution/store";
|
|
7
|
-
import type { ConversationWorkerContext } from "@/chat/task-execution/worker";
|
|
8
|
-
declare const apiTurnMailboxMetadataSchema: z.ZodObject<{
|
|
9
|
-
authorEmail: z.ZodString;
|
|
10
|
-
authorFullName: z.ZodOptional<z.ZodString>;
|
|
11
|
-
authorUserId: z.ZodString;
|
|
12
|
-
authorUserName: z.ZodOptional<z.ZodString>;
|
|
13
|
-
kind: z.ZodLiteral<"api_turn">;
|
|
14
|
-
messageId: z.ZodString;
|
|
15
|
-
}, z.core.$strict>;
|
|
16
|
-
export type ApiTurnMailboxMetadata = z.output<typeof apiTurnMailboxMetadataSchema>;
|
|
17
|
-
export interface TurnInput {
|
|
18
|
-
actor: Actor;
|
|
19
|
-
author: ConversationAuthor;
|
|
20
|
-
message: InboundMessage;
|
|
21
|
-
source: "resource_event" | "web";
|
|
22
|
-
}
|
|
23
|
-
export type TurnIdentity = Pick<TurnInput, "actor" | "author" | "source">;
|
|
24
|
-
/** Restore normalized Turn identity from one saved Message. */
|
|
25
|
-
export declare function turnIdentityFromConversationMessage(message: ConversationMessage): TurnIdentity | undefined;
|
|
26
|
-
/** Build the AgentRun Source for one Turn input. */
|
|
27
|
-
export declare function sourceFromTurnInput(args: {
|
|
28
|
-
conversationId: string;
|
|
29
|
-
source: TurnInput["source"];
|
|
30
|
-
visibility?: ConversationPrivacy;
|
|
31
|
-
}): Source;
|
|
32
|
-
/** Return the active root API Turn for one Conversation, if it has one. */
|
|
33
|
-
export declare function getActiveApiTurnId(conversationId: string): Promise<string | undefined>;
|
|
34
|
-
/** Return the idle auth-paused root API Turn for one Conversation. */
|
|
35
|
-
export declare function getAuthPausedApiTurnId(conversationId: string): Promise<string | undefined>;
|
|
36
|
-
/**
|
|
37
|
-
* Resolve conversation-only work from new input or a saved Turn.
|
|
38
|
-
*
|
|
39
|
-
* User messages from the Conversation API run here. Resource events with a
|
|
40
|
-
* local Destination run here too. Saved state identifies a resumed Turn.
|
|
41
|
-
*/
|
|
42
|
-
export declare function resolveApiTurnWork(context: ConversationWorkerContext): Promise<{
|
|
43
|
-
kind: "mailbox";
|
|
44
|
-
batch: TurnInput[];
|
|
45
|
-
} | {
|
|
46
|
-
kind: "resume";
|
|
47
|
-
turnId: string;
|
|
48
|
-
} | undefined>;
|
|
49
|
-
/** Return whether the leased attempt belongs to an API Turn. */
|
|
50
|
-
export declare function isApiTurnWork(context: ConversationWorkerContext): Promise<boolean>;
|
|
51
|
-
export {};
|
|
@@ -1,99 +0,0 @@
|
|
|
1
|
-
import type { StateAdapter } from "chat";
|
|
2
|
-
import { type Destination } from "@sentry/junior-plugin-api";
|
|
3
|
-
import type { ConversationPrivacy } from "@/chat/conversation-privacy";
|
|
4
|
-
import { type WebActor } from "@/chat/actor";
|
|
5
|
-
import type { ConversationStore } from "@/chat/conversations/store";
|
|
6
|
-
import type { AgentRunner } from "@/chat/runtime/agent-runner";
|
|
7
|
-
import { type InboundMessage } from "@/chat/task-execution/store";
|
|
8
|
-
import type { ConversationWorkQueue } from "@/chat/task-execution/queue";
|
|
9
|
-
import type { ConversationWorkerContext, ConversationWorkerResult } from "@/chat/task-execution/worker";
|
|
10
|
-
import { type ApiTurnCancellation } from "@/chat/api-turns/cancellation";
|
|
11
|
-
export { resolveApiTurnWork } from "@/chat/api-turns/routing";
|
|
12
|
-
type EnqueueOptions = {
|
|
13
|
-
conversationStore?: ConversationStore;
|
|
14
|
-
nowMs?: number;
|
|
15
|
-
queue: ConversationWorkQueue;
|
|
16
|
-
state?: StateAdapter;
|
|
17
|
-
};
|
|
18
|
-
export interface CreateApiConversationInput {
|
|
19
|
-
actor: WebActor;
|
|
20
|
-
message: string;
|
|
21
|
-
/** Client-supplied idempotency key for the first message. */
|
|
22
|
-
idempotencyKey: string;
|
|
23
|
-
/** New roots default public. Continues never rewrite visibility. */
|
|
24
|
-
visibility?: ConversationPrivacy;
|
|
25
|
-
}
|
|
26
|
-
export interface AppendApiConversationMessageInput {
|
|
27
|
-
actor: WebActor;
|
|
28
|
-
conversationId: string;
|
|
29
|
-
message: string;
|
|
30
|
-
idempotencyKey: string;
|
|
31
|
-
/** Applied only when this call creates the conversation root. */
|
|
32
|
-
rootVisibility?: ConversationPrivacy;
|
|
33
|
-
}
|
|
34
|
-
export interface ApiConversationMessageAccepted {
|
|
35
|
-
conversationId: string;
|
|
36
|
-
messageId: string;
|
|
37
|
-
status: "accepted" | "duplicate";
|
|
38
|
-
}
|
|
39
|
-
export type ApiConversationMessageAdmission = ApiConversationMessageAccepted | {
|
|
40
|
-
conversationId: string;
|
|
41
|
-
messageId: string;
|
|
42
|
-
status: "active";
|
|
43
|
-
};
|
|
44
|
-
/**
|
|
45
|
-
* Build a durable API conversation id for one viewer + create key.
|
|
46
|
-
*
|
|
47
|
-
* Retries of POST /api/conversations with the same key must address the same
|
|
48
|
-
* conversation before the mailbox message id is derived.
|
|
49
|
-
*/
|
|
50
|
-
export declare function createApiConversationId(args: {
|
|
51
|
-
actorEmail: string;
|
|
52
|
-
idempotencyKey: string;
|
|
53
|
-
}): string;
|
|
54
|
-
/** Build the retry-stable Message id used by one API mailbox request. */
|
|
55
|
-
export declare function apiConversationMessageId(args: {
|
|
56
|
-
conversationId: string;
|
|
57
|
-
idempotencyKey: string;
|
|
58
|
-
}): string;
|
|
59
|
-
/** Stable turn id for one API mailbox message (matches getTurnUserMessage). */
|
|
60
|
-
export declare function apiTurnIdForMessage(messageId: string): string;
|
|
61
|
-
/** Rebuild the dashboard actor from durable conversation identity. */
|
|
62
|
-
export declare function webActorFromEmail(email: string, profile?: {
|
|
63
|
-
fullName?: string;
|
|
64
|
-
userName?: string;
|
|
65
|
-
}): WebActor;
|
|
66
|
-
/** Build one API mailbox entry with conversation-only publish. */
|
|
67
|
-
export declare function buildApiTurnInboundMessage(args: {
|
|
68
|
-
actor: WebActor;
|
|
69
|
-
conversationId: string;
|
|
70
|
-
createdAtMs?: number;
|
|
71
|
-
/** Existing conversation destination; required when continuing a provider root. */
|
|
72
|
-
destination?: Destination;
|
|
73
|
-
message: string;
|
|
74
|
-
messageId: string;
|
|
75
|
-
nowMs?: number;
|
|
76
|
-
}): InboundMessage;
|
|
77
|
-
/** Record web activity and materialize a new API Conversation root when needed. */
|
|
78
|
-
export declare function recordApiConversationActivity(args: {
|
|
79
|
-
actor: WebActor;
|
|
80
|
-
conversationId: string;
|
|
81
|
-
conversationStore?: ConversationStore;
|
|
82
|
-
nowMs: number;
|
|
83
|
-
/** Applied only when this call creates the conversation root. */
|
|
84
|
-
rootVisibility?: ConversationPrivacy;
|
|
85
|
-
}): Promise<Destination>;
|
|
86
|
-
/** Create a dashboard root conversation and enqueue its first message. */
|
|
87
|
-
export declare function createAndEnqueueApiConversation(input: CreateApiConversationInput, options: EnqueueOptions): Promise<ApiConversationMessageAccepted>;
|
|
88
|
-
/** Append one Conversation API message and optionally require an idle Conversation. */
|
|
89
|
-
export declare function appendAndEnqueueApiConversationMessage(input: AppendApiConversationMessageInput, options: EnqueueOptions & {
|
|
90
|
-
exclusive: true;
|
|
91
|
-
}): Promise<ApiConversationMessageAdmission>;
|
|
92
|
-
export declare function appendAndEnqueueApiConversationMessage(input: AppendApiConversationMessageInput, options: EnqueueOptions): Promise<ApiConversationMessageAccepted>;
|
|
93
|
-
/** Create the worker for Turns that need no provider delivery. */
|
|
94
|
-
export declare function createApiTurnWorker(agentRunner: AgentRunner, cancellation?: ApiTurnCancellation): (context: ConversationWorkerContext) => Promise<ConversationWorkerResult>;
|
|
95
|
-
/** Route Conversation API work before other work. */
|
|
96
|
-
export declare function routeApiTurnWork(options: {
|
|
97
|
-
apiTurnWorker: (context: ConversationWorkerContext) => Promise<ConversationWorkerResult>;
|
|
98
|
-
fallbackWorker: (context: ConversationWorkerContext) => Promise<ConversationWorkerResult>;
|
|
99
|
-
}): (context: ConversationWorkerContext) => Promise<ConversationWorkerResult>;
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Slack edge helpers for resource-event mailbox wakes.
|
|
3
|
-
*
|
|
4
|
-
* Resource-event ingest stores plain conversation mailbox input. When the
|
|
5
|
-
* conversation destination is Slack, this module builds the Message and Thread
|
|
6
|
-
* the Slack runtime needs for one turn. It does not rewrite mailbox rows.
|
|
7
|
-
*
|
|
8
|
-
* TODO(slack-runtime): Drop this module once Slack turns can start from
|
|
9
|
-
* conversation destination + session source (channel, team, threadTs, text,
|
|
10
|
-
* event metadata) without a synthetic chat Message/Thread. Resource wakes and
|
|
11
|
-
* paused resume should share that entry; handleSubscribedMessage stays for
|
|
12
|
-
* real webhook traffic only.
|
|
13
|
-
*/
|
|
14
|
-
import { Message, ThreadImpl, type StateAdapter } from "chat";
|
|
15
|
-
import type { SlackAdapter } from "@chat-adapter/slack";
|
|
16
|
-
import type { Destination, SlackDestination } from "@sentry/junior-plugin-api";
|
|
17
|
-
import type { ConversationStore } from "@/chat/conversations/store";
|
|
18
|
-
import type { InboundMessage } from "@/chat/task-execution/store";
|
|
19
|
-
/** Load Slack destination and threadTs for a resource-event wake. */
|
|
20
|
-
export declare function resolveSlackResourceEventThread(args: {
|
|
21
|
-
conversationId: string;
|
|
22
|
-
conversationStore?: ConversationStore;
|
|
23
|
-
destination?: Destination;
|
|
24
|
-
}): Promise<{
|
|
25
|
-
destination: SlackDestination;
|
|
26
|
-
threadTs: string;
|
|
27
|
-
}>;
|
|
28
|
-
/** Whether a mailbox row is a plain resource-event wake (no Slack envelope). */
|
|
29
|
-
export declare function isPlainResourceEventRecord(record: InboundMessage): boolean;
|
|
30
|
-
/**
|
|
31
|
-
* Build a Slack Message for one plain resource-event mailbox row.
|
|
32
|
-
*
|
|
33
|
-
* Used only at the Slack worker edge. The mailbox row stays plain.
|
|
34
|
-
*/
|
|
35
|
-
export declare function buildResourceEventSlackMessage(args: {
|
|
36
|
-
channelId: string;
|
|
37
|
-
record: InboundMessage;
|
|
38
|
-
threadTs: string;
|
|
39
|
-
}): Message;
|
|
40
|
-
/** Build a ThreadImpl for a resource-event Slack turn. */
|
|
41
|
-
export declare function buildResourceEventSlackThread(args: {
|
|
42
|
-
adapter: SlackAdapter;
|
|
43
|
-
message: Message;
|
|
44
|
-
state: StateAdapter;
|
|
45
|
-
threadTs: string;
|
|
46
|
-
channelId: string;
|
|
47
|
-
}): ThreadImpl;
|