@vellumai/plugin-api 0.11.7-dev.202608301911.907e905 → 0.11.7-dev.202608310050.dde6a86
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/index.d.ts +53 -5
- package/index.js +2 -0
- package/package.json +1 -1
package/index.d.ts
CHANGED
|
@@ -4030,6 +4030,26 @@ export declare interface AssistantEventSubscription {
|
|
|
4030
4030
|
readonly connectionId: string;
|
|
4031
4031
|
}
|
|
4032
4032
|
|
|
4033
|
+
/**
|
|
4034
|
+
* The `_attachmentId` property as a spreadable fragment, or nothing when there
|
|
4035
|
+
* is no usable id.
|
|
4036
|
+
*
|
|
4037
|
+
* Every producer of a media block faces the same choice: it either knows the
|
|
4038
|
+
* attachment row the block came from, or it does not, and the field has to be
|
|
4039
|
+
* absent rather than present-and-empty in the second case. This helper is the
|
|
4040
|
+
* one place that decision lives, so every producer answers it the same way.
|
|
4041
|
+
* Callers pass whatever id they hold: the source block's own
|
|
4042
|
+
* ({@link ImageContent._attachmentId}) when carrying it across a rebuild, or an
|
|
4043
|
+
* upload's row id when stamping a fresh block.
|
|
4044
|
+
*
|
|
4045
|
+
* Empty counts as absent, matching the read side, which requires a non-empty
|
|
4046
|
+
* string before it will treat the field as an id (see
|
|
4047
|
+
* `daemon/handlers/shared.ts`).
|
|
4048
|
+
*/
|
|
4049
|
+
export declare function attachmentIdFragment(attachmentId: string | undefined): {
|
|
4050
|
+
_attachmentId?: string;
|
|
4051
|
+
};
|
|
4052
|
+
|
|
4033
4053
|
export declare interface AudioEmbeddingInput {
|
|
4034
4054
|
type: "audio";
|
|
4035
4055
|
data: Buffer;
|
|
@@ -4744,6 +4764,19 @@ declare type HostProxyCapability = (typeof HOST_PROXY_CAPABILITIES)[number];
|
|
|
4744
4764
|
export declare interface ImageContent {
|
|
4745
4765
|
type: "image";
|
|
4746
4766
|
source: MediaSource_2;
|
|
4767
|
+
/**
|
|
4768
|
+
* Internal id linking a base64 image block to a row in the attachments table,
|
|
4769
|
+
* the same correlation {@link FileContent._attachmentId} carries. A live turn
|
|
4770
|
+
* sends its uploads inline while persisting them as references, so this is
|
|
4771
|
+
* the only handle on the in-memory copy of an image whose stored form is a
|
|
4772
|
+
* `workspace_ref`; camera-frame retention matches on it. Redundant once the
|
|
4773
|
+
* block is a reference (use `source.attachmentId`).
|
|
4774
|
+
*
|
|
4775
|
+
* Never reaches a provider: every client builds its image payload out of
|
|
4776
|
+
* `source` alone (see the `case "image"` arms of the Anthropic, Gemini, and
|
|
4777
|
+
* both OpenAI clients), so top-level fields are dropped by construction.
|
|
4778
|
+
*/
|
|
4779
|
+
_attachmentId?: string;
|
|
4747
4780
|
}
|
|
4748
4781
|
|
|
4749
4782
|
export declare interface ImageEmbeddingInput {
|
|
@@ -5032,11 +5065,11 @@ declare interface LiveVoiceErrorServerFrame extends LiveVoiceServerFrameBase {
|
|
|
5032
5065
|
* daemons predating the field.
|
|
5033
5066
|
*
|
|
5034
5067
|
* It exists so an `unknown_type` is attributable. A client that sends more
|
|
5035
|
-
* than one optional frame (today: `update_config
|
|
5036
|
-
* the same code for
|
|
5037
|
-
* refused. The wrong assumption is
|
|
5038
|
-
* applying for a session, or a
|
|
5039
|
-
* dropped with nothing said.
|
|
5068
|
+
* than one optional frame (today: `update_config`, `attach_image`,
|
|
5069
|
+
* `attach_frame`, and `text`) gets the same code for any of them, and
|
|
5070
|
+
* without this has to assume which one was refused. The wrong assumption is
|
|
5071
|
+
* silent in both directions: settings stop applying for a session, or a
|
|
5072
|
+
* photo the user watched themselves take is dropped with nothing said.
|
|
5040
5073
|
*/
|
|
5041
5074
|
readonly frameType?: string;
|
|
5042
5075
|
/**
|
|
@@ -5314,6 +5347,21 @@ declare const LLMCallSiteEnum: z.ZodEnum<{
|
|
|
5314
5347
|
workflowLeaf: "workflowLeaf";
|
|
5315
5348
|
}>;
|
|
5316
5349
|
|
|
5350
|
+
/**
|
|
5351
|
+
* The attachment row a media block came from, whichever of the two shapes it
|
|
5352
|
+
* is in, or undefined for a block that came from none (tool-generated and
|
|
5353
|
+
* assistant-authored media).
|
|
5354
|
+
*
|
|
5355
|
+
* A reference names its row on `source.attachmentId`; an inline block has
|
|
5356
|
+
* nowhere to put it but the top-level `_attachmentId`. Both are the same fact,
|
|
5357
|
+
* so anything asking "which attachment is this?" has to read both or it goes
|
|
5358
|
+
* blind on half the histories. Reading only `_attachmentId` in particular is
|
|
5359
|
+
* the sharp edge: it is absent on every reference block, so a rebuild that
|
|
5360
|
+
* flattens a reference to inline bytes drops the link unless it derives the id
|
|
5361
|
+
* through here first.
|
|
5362
|
+
*/
|
|
5363
|
+
export declare function mediaBlockAttachmentId(block: ImageContent | FileContent): string | undefined;
|
|
5364
|
+
|
|
5317
5365
|
declare type MediaSource_2 = Base64MediaSource | WorkspaceRefMediaSource;
|
|
5318
5366
|
|
|
5319
5367
|
export declare interface Message {
|
package/index.js
CHANGED
|
@@ -11,6 +11,7 @@ export const TtsSynthesisError = api.TtsSynthesisError;
|
|
|
11
11
|
export const VOICE_ESCALATION_CONTINUATION_MESSAGE_KIND = api.VOICE_ESCALATION_CONTINUATION_MESSAGE_KIND;
|
|
12
12
|
export const addMessage = api.addMessage;
|
|
13
13
|
export const assistantEventHub = api.assistantEventHub;
|
|
14
|
+
export const attachmentIdFragment = api.attachmentIdFragment;
|
|
14
15
|
export const buildMessageExcerpt = api.buildMessageExcerpt;
|
|
15
16
|
export const createLiveVoiceConnection = api.createLiveVoiceConnection;
|
|
16
17
|
export const deleteConversation = api.deleteConversation;
|
|
@@ -38,6 +39,7 @@ export const lastToolResultUserMessageIndex = api.lastToolResultUserMessageIndex
|
|
|
38
39
|
export const listCatalogSkills = api.listCatalogSkills;
|
|
39
40
|
export const listConversations = api.listConversations;
|
|
40
41
|
export const listInstalledSkills = api.listInstalledSkills;
|
|
42
|
+
export const mediaBlockAttachmentId = api.mediaBlockAttachmentId;
|
|
41
43
|
export const openTranscriptionSession = api.openTranscriptionSession;
|
|
42
44
|
export const parseMessageMetadata = api.parseMessageMetadata;
|
|
43
45
|
export const persistSystemCard = api.persistSystemCard;
|
package/package.json
CHANGED