@larkup/workspace-server 0.0.0-stage → 0.2.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/LICENSE +176 -0
- package/README.md +2 -2
- package/dist-types/app/api/chat/feedback/route.d.ts +4 -0
- package/dist-types/app/api/chat/feedback/route.d.ts.map +1 -0
- package/dist-types/app/api/chat/route.d.ts +3 -0
- package/dist-types/app/api/chat/route.d.ts.map +1 -0
- package/dist-types/app/api/chat/tools.d.ts +67 -0
- package/dist-types/app/api/chat/tools.d.ts.map +1 -0
- package/dist-types/app/api/config/test-embedding/route.d.ts +3 -0
- package/dist-types/app/api/config/test-embedding/route.d.ts.map +1 -0
- package/dist-types/app/api/config/verify/route.d.ts +3 -0
- package/dist-types/app/api/config/verify/route.d.ts.map +1 -0
- package/dist-types/app/api/describe-image/route.d.ts +4 -0
- package/dist-types/app/api/describe-image/route.d.ts.map +1 -0
- package/dist-types/app/api/doc-editor/edit/route.d.ts +10 -0
- package/dist-types/app/api/doc-editor/edit/route.d.ts.map +1 -0
- package/dist-types/app/api/doc-editor/export/route.d.ts +9 -0
- package/dist-types/app/api/doc-editor/export/route.d.ts.map +1 -0
- package/dist-types/app/api/doc-editor/parse/route.d.ts +10 -0
- package/dist-types/app/api/doc-editor/parse/route.d.ts.map +1 -0
- package/dist-types/app/api/doc-editor/restore/route.d.ts +2 -0
- package/dist-types/app/api/doc-editor/restore/route.d.ts.map +1 -0
- package/dist-types/app/api/document/sign/route.d.ts +2 -0
- package/dist-types/app/api/document/sign/route.d.ts.map +1 -0
- package/dist-types/app/api/files/remote/route.d.ts +5 -0
- package/dist-types/app/api/files/remote/route.d.ts.map +1 -0
- package/dist-types/app/api/mcp/[connectionId]/route.d.ts +9 -0
- package/dist-types/app/api/mcp/[connectionId]/route.d.ts.map +1 -0
- package/dist-types/app/api/mcp/[connectionId]/test/route.d.ts +8 -0
- package/dist-types/app/api/mcp/[connectionId]/test/route.d.ts.map +1 -0
- package/dist-types/app/api/mcp/route.d.ts +4 -0
- package/dist-types/app/api/mcp/route.d.ts.map +1 -0
- package/dist-types/app/api/parse-file/route.d.ts +6 -0
- package/dist-types/app/api/parse-file/route.d.ts.map +1 -0
- package/dist-types/app/api/pdf-page/route.d.ts +4 -0
- package/dist-types/app/api/pdf-page/route.d.ts.map +1 -0
- package/dist-types/app/api/proxy/verify/route.d.ts +4 -0
- package/dist-types/app/api/proxy/verify/route.d.ts.map +1 -0
- package/dist-types/app/api/search/bing/route.d.ts +5 -0
- package/dist-types/app/api/search/bing/route.d.ts.map +1 -0
- package/dist-types/app/api/search/brave/route.d.ts +5 -0
- package/dist-types/app/api/search/brave/route.d.ts.map +1 -0
- package/dist-types/app/api/search/exa/route.d.ts +5 -0
- package/dist-types/app/api/search/exa/route.d.ts.map +1 -0
- package/dist-types/app/api/search/google/route.d.ts +30 -0
- package/dist-types/app/api/search/google/route.d.ts.map +1 -0
- package/dist-types/app/api/search/route.d.ts +7 -0
- package/dist-types/app/api/search/route.d.ts.map +1 -0
- package/dist-types/app/api/search/tavily/route.d.ts +5 -0
- package/dist-types/app/api/search/tavily/route.d.ts.map +1 -0
- package/dist-types/app/api/search/verify/route.d.ts +4 -0
- package/dist-types/app/api/search/verify/route.d.ts.map +1 -0
- package/dist-types/app/api/tabular/route.d.ts +9 -0
- package/dist-types/app/api/tabular/route.d.ts.map +1 -0
- package/dist-types/lib/chat/assistant-source-scope.d.ts +10 -0
- package/dist-types/lib/chat/assistant-source-scope.d.ts.map +1 -0
- package/dist-types/lib/chat/conversation-memory.d.ts +80 -0
- package/dist-types/lib/chat/conversation-memory.d.ts.map +1 -0
- package/dist-types/lib/chat/gateway-fallbacks.d.ts +7 -0
- package/dist-types/lib/chat/gateway-fallbacks.d.ts.map +1 -0
- package/dist-types/lib/chat/image-description.d.ts +10 -0
- package/dist-types/lib/chat/image-description.d.ts.map +1 -0
- package/dist-types/lib/chat/media-retrieval-routing.d.ts +14 -0
- package/dist-types/lib/chat/media-retrieval-routing.d.ts.map +1 -0
- package/dist-types/lib/chat/media-source-routing.d.ts +53 -0
- package/dist-types/lib/chat/media-source-routing.d.ts.map +1 -0
- package/dist-types/lib/chat/message-input.d.ts +8 -0
- package/dist-types/lib/chat/message-input.d.ts.map +1 -0
- package/dist-types/lib/chat/model-provider.d.ts +23 -0
- package/dist-types/lib/chat/model-provider.d.ts.map +1 -0
- package/dist-types/lib/chat/response-style.d.ts +2 -0
- package/dist-types/lib/chat/response-style.d.ts.map +1 -0
- package/dist-types/lib/chat/retrieval-ranking.d.ts +32 -0
- package/dist-types/lib/chat/retrieval-ranking.d.ts.map +1 -0
- package/dist-types/lib/chat/retrieval-routing.d.ts +39 -0
- package/dist-types/lib/chat/retrieval-routing.d.ts.map +1 -0
- package/dist-types/lib/chat/tabular-dataset-routing.d.ts +15 -0
- package/dist-types/lib/chat/tabular-dataset-routing.d.ts.map +1 -0
- package/dist-types/lib/chat/tabular-query-plan.d.ts +12 -0
- package/dist-types/lib/chat/tabular-query-plan.d.ts.map +1 -0
- package/dist-types/lib/chat/tabular-routing.d.ts +41 -0
- package/dist-types/lib/chat/tabular-routing.d.ts.map +1 -0
- package/dist-types/lib/chat/tabular-sandbox-files.d.ts +33 -0
- package/dist-types/lib/chat/tabular-sandbox-files.d.ts.map +1 -0
- package/dist-types/lib/chat/tabular-visualization.d.ts +31 -0
- package/dist-types/lib/chat/tabular-visualization.d.ts.map +1 -0
- package/dist-types/lib/chat/tool-call-repair.d.ts +11 -0
- package/dist-types/lib/chat/tool-call-repair.d.ts.map +1 -0
- package/dist-types/lib/chat/tool-context.d.ts +72 -0
- package/dist-types/lib/chat/tool-context.d.ts.map +1 -0
- package/dist-types/lib/chat/tool-registry.d.ts +3 -0
- package/dist-types/lib/chat/tool-registry.d.ts.map +1 -0
- package/dist-types/lib/chat/video-rag-routing.d.ts +33 -0
- package/dist-types/lib/chat/video-rag-routing.d.ts.map +1 -0
- package/dist-types/lib/chat/visual-routing.d.ts +53 -0
- package/dist-types/lib/chat/visual-routing.d.ts.map +1 -0
- package/dist-types/lib/enterprise-client.d.ts +31 -0
- package/dist-types/lib/enterprise-client.d.ts.map +1 -0
- package/dist-types/lib/marketplace/tool-runtime-config.d.ts +7 -0
- package/dist-types/lib/marketplace/tool-runtime-config.d.ts.map +1 -0
- package/dist-types/lib/media/knowledge.d.ts +47 -0
- package/dist-types/lib/media/knowledge.d.ts.map +1 -0
- package/dist-types/lib/media/pdf-inspection.d.ts +30 -0
- package/dist-types/lib/media/pdf-inspection.d.ts.map +1 -0
- package/dist-types/lib/media/source-identity.d.ts +12 -0
- package/dist-types/lib/media/source-identity.d.ts.map +1 -0
- package/dist-types/lib/media/source-utils.d.ts +157 -0
- package/dist-types/lib/media/source-utils.d.ts.map +1 -0
- package/dist-types/lib/media/video/quick-look.d.ts +60 -0
- package/dist-types/lib/media/video/quick-look.d.ts.map +1 -0
- package/dist-types/lib/media/video-intelligence-adapter.d.ts +521 -0
- package/dist-types/lib/media/video-intelligence-adapter.d.ts.map +1 -0
- package/dist-types/lib/media/video-intelligence-connection.d.ts +32 -0
- package/dist-types/lib/media/video-intelligence-connection.d.ts.map +1 -0
- package/dist-types/lib/remote-files.d.ts +12 -0
- package/dist-types/lib/remote-files.d.ts.map +1 -0
- package/dist-types/lib/search/provider-verification.d.ts +5 -0
- package/dist-types/lib/search/provider-verification.d.ts.map +1 -0
- package/dist-types/runtime-host.d.ts +20 -0
- package/dist-types/runtime-host.d.ts.map +1 -0
- package/package.json +338 -3
- package/src/app/api/chat/feedback/route.ts +77 -0
- package/src/app/api/chat/route.ts +2277 -0
- package/src/app/api/chat/tools.ts +3563 -0
- package/src/app/api/config/test-embedding/route.ts +39 -0
- package/src/app/api/config/verify/route.ts +309 -0
- package/src/app/api/describe-image/route.ts +108 -0
- package/src/app/api/doc-editor/edit/route.ts +87 -0
- package/src/app/api/doc-editor/export/route.ts +32 -0
- package/src/app/api/doc-editor/parse/route.ts +74 -0
- package/src/app/api/doc-editor/restore/route.ts +70 -0
- package/src/app/api/document/sign/route.ts +55 -0
- package/src/app/api/files/remote/route.ts +32 -0
- package/src/app/api/mcp/[connectionId]/route.ts +29 -0
- package/src/app/api/mcp/[connectionId]/test/route.ts +13 -0
- package/src/app/api/mcp/route.ts +22 -0
- package/src/app/api/parse-file/route.ts +86 -0
- package/src/app/api/pdf-page/route.ts +40 -0
- package/src/app/api/proxy/verify/route.ts +78 -0
- package/src/app/api/search/bing/route.ts +86 -0
- package/src/app/api/search/brave/route.ts +88 -0
- package/src/app/api/search/exa/route.ts +100 -0
- package/src/app/api/search/google/route.ts +147 -0
- package/src/app/api/search/route.ts +28 -0
- package/src/app/api/search/tavily/route.ts +93 -0
- package/src/app/api/search/verify/route.ts +27 -0
- package/src/app/api/tabular/route.ts +68 -0
- package/src/lib/chat/assistant-source-scope.ts +32 -0
- package/src/lib/chat/conversation-memory.ts +621 -0
- package/src/lib/chat/gateway-fallbacks.ts +12 -0
- package/src/lib/chat/image-description.ts +21 -0
- package/src/lib/chat/media-retrieval-routing.ts +37 -0
- package/src/lib/chat/media-source-routing.ts +100 -0
- package/src/lib/chat/message-input.ts +48 -0
- package/src/lib/chat/model-provider.ts +157 -0
- package/src/lib/chat/response-style.ts +3 -0
- package/src/lib/chat/retrieval-ranking.ts +126 -0
- package/src/lib/chat/retrieval-routing.ts +221 -0
- package/src/lib/chat/tabular-dataset-routing.ts +93 -0
- package/src/lib/chat/tabular-query-plan.ts +195 -0
- package/src/lib/chat/tabular-routing.ts +122 -0
- package/src/lib/chat/tabular-sandbox-files.ts +78 -0
- package/src/lib/chat/tabular-visualization.ts +165 -0
- package/src/lib/chat/tool-call-repair.ts +84 -0
- package/src/lib/chat/tool-context.ts +1222 -0
- package/src/lib/chat/tool-registry.ts +6 -0
- package/src/lib/chat/video-rag-routing.ts +149 -0
- package/src/lib/chat/visual-routing.ts +225 -0
- package/src/lib/enterprise-client.ts +96 -0
- package/src/lib/marketplace/tool-runtime-config.ts +155 -0
- package/src/lib/media/knowledge.ts +489 -0
- package/src/lib/media/pdf-inspection.ts +280 -0
- package/src/lib/media/source-identity.ts +50 -0
- package/src/lib/media/source-utils.ts +1156 -0
- package/src/lib/media/video/quick-look.ts +368 -0
- package/src/lib/media/video-intelligence-adapter.ts +1946 -0
- package/src/lib/media/video-intelligence-connection.ts +151 -0
- package/src/lib/remote-files.ts +182 -0
- package/src/lib/search/provider-verification.ts +95 -0
- package/src/runtime-host.ts +31 -0
|
@@ -0,0 +1,521 @@
|
|
|
1
|
+
import type { MediaAsset, MediaPipelineStage } from '@larkup/core/types';
|
|
2
|
+
import type { OfflineKnowledgeEvidenceInput } from '@larkup/core/video-knowledge/knowledge-builder';
|
|
3
|
+
import type { MediaEvidenceSegment } from './knowledge';
|
|
4
|
+
import { type VideoIntelligenceUsageSnapshot } from '@larkup/core/video-intelligence-capacity';
|
|
5
|
+
/**
|
|
6
|
+
* Distinguishes "the GPU provider never picked this job up in time" from
|
|
7
|
+
* every other failure -- callers use this to tell the model/user the
|
|
8
|
+
* analysis service didn't respond, instead of implying the video itself
|
|
9
|
+
* doesn't show the answer.
|
|
10
|
+
*/
|
|
11
|
+
export declare class VideoWorkerTimeoutError extends Error {
|
|
12
|
+
readonly lastJobStatus: string;
|
|
13
|
+
constructor(lastJobStatus: string);
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* A terminal managed-worker failure has already released its concurrency and
|
|
17
|
+
* source-minute reservation, so a fresh worker can safely retry it. Keep this
|
|
18
|
+
* deliberately narrow: transport errors may leave the original job running,
|
|
19
|
+
* while configuration, quota, and evidence errors need user action instead.
|
|
20
|
+
*
|
|
21
|
+
* Safe to retry:
|
|
22
|
+
* - Larkup Cloud wrapper messages (previous-generation worker responses)
|
|
23
|
+
* - Model API overload / capacity errors from the upstream vision/LLM gateway
|
|
24
|
+
* - Stall-timeout: the job was explicitly cancelled before throwing, so no
|
|
25
|
+
* duplicate run is left alive on the worker
|
|
26
|
+
* - Source ingestion failures where the worker dropped the job before ingesting
|
|
27
|
+
* (status === 'failed' at the prepare stage, not a user-data error)
|
|
28
|
+
*/
|
|
29
|
+
export declare function isRetryableManagedVideoWorkerFailure(error: unknown): boolean;
|
|
30
|
+
interface VideoMaterializationJob {
|
|
31
|
+
id: string;
|
|
32
|
+
status: 'queued' | 'running' | 'completed' | 'failed' | 'cancelled';
|
|
33
|
+
progress: {
|
|
34
|
+
stage: string;
|
|
35
|
+
percent: number;
|
|
36
|
+
message: string;
|
|
37
|
+
current?: number;
|
|
38
|
+
total?: number;
|
|
39
|
+
unit?: string;
|
|
40
|
+
elapsedSeconds?: number;
|
|
41
|
+
estimatedRemainingSeconds?: number;
|
|
42
|
+
};
|
|
43
|
+
source: {
|
|
44
|
+
url: string;
|
|
45
|
+
fileName: string;
|
|
46
|
+
mimeType: string;
|
|
47
|
+
sizeBytes: number;
|
|
48
|
+
durationSecs: number;
|
|
49
|
+
} | null;
|
|
50
|
+
error: string | null;
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* The control plane owns the source-minute allowance. A managed entitlement
|
|
54
|
+
* with remaining capacity may run its bounded inspection directly; a second
|
|
55
|
+
* host-side budget must not turn a valid paid allowance into an unnecessary
|
|
56
|
+
* browser approval flow.
|
|
57
|
+
*/
|
|
58
|
+
export declare function hasVideoIntelligenceCapacity(): Promise<boolean>;
|
|
59
|
+
export declare function getVideoIntelligenceUsage(): Promise<{
|
|
60
|
+
sourceMinutesLimit: number | null;
|
|
61
|
+
sourceMinutesUsed: number;
|
|
62
|
+
activeJobs: number;
|
|
63
|
+
concurrentJobsLimit: number;
|
|
64
|
+
activeJobIds?: string[];
|
|
65
|
+
}>;
|
|
66
|
+
export declare function getReconciledVideoIntelligenceUsage(assets: MediaAsset[]): Promise<VideoIntelligenceUsageSnapshot>;
|
|
67
|
+
/**
|
|
68
|
+
* Checks credentials and a video-capable model before a source is uploaded,
|
|
69
|
+
* downloaded, or queued. This keeps configuration mistakes out of long-running
|
|
70
|
+
* media jobs and gives the settings screen a useful, actionable error.
|
|
71
|
+
*/
|
|
72
|
+
export declare function validateVideoIntelligenceConfiguration(): Promise<void>;
|
|
73
|
+
/**
|
|
74
|
+
* Uses the configured managed service only as a short-lived remote-source
|
|
75
|
+
* bridge. The host must immediately copy the returned URL into its own
|
|
76
|
+
* canonical storage, then acknowledge it so the managed copy is deleted.
|
|
77
|
+
*/
|
|
78
|
+
export declare function materializeInstalledRemoteVideo(input: {
|
|
79
|
+
sourceUrl: string;
|
|
80
|
+
fileName?: string;
|
|
81
|
+
durationSecs?: number;
|
|
82
|
+
maxWaitMs?: number;
|
|
83
|
+
assertStillActive?: () => Promise<void>;
|
|
84
|
+
reportProgress?: (progress: VideoMaterializationJob['progress']) => Promise<void>;
|
|
85
|
+
}): Promise<{
|
|
86
|
+
jobId: string;
|
|
87
|
+
source: NonNullable<VideoMaterializationJob['source']>;
|
|
88
|
+
}>;
|
|
89
|
+
export declare function acknowledgeInstalledRemoteVideoMaterialization(jobId: string): Promise<void>;
|
|
90
|
+
/** Cancels the managed job before its MediaAsset is deleted. */
|
|
91
|
+
export declare function cancelVideoIntelligenceJob(jobId: string): Promise<void>;
|
|
92
|
+
/** Removes the local runtime's retained source/result after its host asset is deleted. */
|
|
93
|
+
export declare function purgeLocalVideoIntelligenceJobData(jobId: string): Promise<void>;
|
|
94
|
+
/** Stops exactly one orphaned cloud job. The service rejects multiple jobs. */
|
|
95
|
+
export declare function cancelOnlyActiveVideoIntelligenceJob(): Promise<void>;
|
|
96
|
+
interface VideoJob {
|
|
97
|
+
id: string;
|
|
98
|
+
status: 'queued' | 'running' | 'completed' | 'failed' | 'cancelled';
|
|
99
|
+
progress: {
|
|
100
|
+
stage: string;
|
|
101
|
+
percent: number;
|
|
102
|
+
message: string;
|
|
103
|
+
stagePercent?: number;
|
|
104
|
+
sequence?: number;
|
|
105
|
+
elapsedSeconds?: number;
|
|
106
|
+
estimatedRemainingSeconds?: number;
|
|
107
|
+
current?: number;
|
|
108
|
+
total?: number;
|
|
109
|
+
unit?: string;
|
|
110
|
+
};
|
|
111
|
+
result: VideoEvidence | null;
|
|
112
|
+
error: string | null;
|
|
113
|
+
}
|
|
114
|
+
interface VideoEvidence {
|
|
115
|
+
durationMs: number;
|
|
116
|
+
video: {
|
|
117
|
+
width: number;
|
|
118
|
+
height: number;
|
|
119
|
+
fps: number;
|
|
120
|
+
};
|
|
121
|
+
transcript: Array<{
|
|
122
|
+
startMs: number;
|
|
123
|
+
endMs: number;
|
|
124
|
+
text: string;
|
|
125
|
+
}>;
|
|
126
|
+
visualObservations: Array<{
|
|
127
|
+
timeMs: number;
|
|
128
|
+
objects: Array<{
|
|
129
|
+
label: string;
|
|
130
|
+
trackId: number;
|
|
131
|
+
confidence: number;
|
|
132
|
+
}>;
|
|
133
|
+
ocr: Array<{
|
|
134
|
+
text: string;
|
|
135
|
+
confidence: number;
|
|
136
|
+
}>;
|
|
137
|
+
}>;
|
|
138
|
+
tracks: Array<{
|
|
139
|
+
trackId: number;
|
|
140
|
+
label: string;
|
|
141
|
+
startMs: number;
|
|
142
|
+
endMs: number;
|
|
143
|
+
observations: number;
|
|
144
|
+
confidence?: number;
|
|
145
|
+
}>;
|
|
146
|
+
anonymousPresenceLedger?: {
|
|
147
|
+
method: 'object-detection-anonymous-tracking';
|
|
148
|
+
sampledFrames: number;
|
|
149
|
+
sampleIntervalSecs?: number;
|
|
150
|
+
tracks: Array<{
|
|
151
|
+
trackId: number;
|
|
152
|
+
label: string;
|
|
153
|
+
startMs: number;
|
|
154
|
+
endMs: number;
|
|
155
|
+
observations: number;
|
|
156
|
+
confidence?: number;
|
|
157
|
+
timestampsMs: number[];
|
|
158
|
+
}>;
|
|
159
|
+
labels: Array<{
|
|
160
|
+
label: string;
|
|
161
|
+
distinctTrackCount: number;
|
|
162
|
+
maximumSimultaneous: number;
|
|
163
|
+
simultaneousTimestampsMs: number[];
|
|
164
|
+
}>;
|
|
165
|
+
};
|
|
166
|
+
recurringOverlayText?: Array<{
|
|
167
|
+
text: string;
|
|
168
|
+
firstSeenMs: number;
|
|
169
|
+
lastSeenMs: number;
|
|
170
|
+
observations: number;
|
|
171
|
+
timestampsMs?: number[];
|
|
172
|
+
confidence: number;
|
|
173
|
+
}>;
|
|
174
|
+
semanticObservations?: Array<{
|
|
175
|
+
startMs: number;
|
|
176
|
+
endMs: number;
|
|
177
|
+
text: string;
|
|
178
|
+
confidence: number;
|
|
179
|
+
}>;
|
|
180
|
+
semanticDiagnostics?: {
|
|
181
|
+
attempted?: boolean;
|
|
182
|
+
error?: string | null;
|
|
183
|
+
};
|
|
184
|
+
agentDiagnostics?: {
|
|
185
|
+
attempted?: boolean;
|
|
186
|
+
provider?: string;
|
|
187
|
+
model?: string;
|
|
188
|
+
requests?: number;
|
|
189
|
+
latencyMs?: number;
|
|
190
|
+
fallback?: boolean;
|
|
191
|
+
error?: string | null;
|
|
192
|
+
promptTokens?: number;
|
|
193
|
+
completionTokens?: number;
|
|
194
|
+
};
|
|
195
|
+
processingDiagnostics?: {
|
|
196
|
+
estimatedTotalSeconds?: number;
|
|
197
|
+
elapsedSeconds?: number;
|
|
198
|
+
estimateErrorSeconds?: number;
|
|
199
|
+
};
|
|
200
|
+
transcriptionDiagnostics?: {
|
|
201
|
+
provider?: string | null;
|
|
202
|
+
fallbackProvider?: string | null;
|
|
203
|
+
fallbackUsed?: boolean;
|
|
204
|
+
chunkCount?: number;
|
|
205
|
+
completedChunks?: number;
|
|
206
|
+
chunkErrors?: number;
|
|
207
|
+
error?: string | null;
|
|
208
|
+
};
|
|
209
|
+
knowledgeSummary?: {
|
|
210
|
+
overview?: string;
|
|
211
|
+
participants?: Array<{
|
|
212
|
+
name: string;
|
|
213
|
+
role: string;
|
|
214
|
+
evidence: Array<{
|
|
215
|
+
startMs: number;
|
|
216
|
+
endMs: number;
|
|
217
|
+
}>;
|
|
218
|
+
}>;
|
|
219
|
+
visibleSubjects?: Array<{
|
|
220
|
+
identity: string;
|
|
221
|
+
identityBasis: 'source-named' | 'source-described' | 'unresolved';
|
|
222
|
+
appearances: Array<{
|
|
223
|
+
startMs: number;
|
|
224
|
+
endMs: number;
|
|
225
|
+
confidence: 'direct' | 'partial';
|
|
226
|
+
}>;
|
|
227
|
+
}>;
|
|
228
|
+
stateHistory?: Array<{
|
|
229
|
+
startMs: number;
|
|
230
|
+
endMs: number;
|
|
231
|
+
state: string;
|
|
232
|
+
confidence: 'direct' | 'partial';
|
|
233
|
+
}>;
|
|
234
|
+
keyEvents?: Array<{
|
|
235
|
+
startMs: number;
|
|
236
|
+
endMs: number;
|
|
237
|
+
event: string;
|
|
238
|
+
confidence: 'direct' | 'partial';
|
|
239
|
+
}>;
|
|
240
|
+
narrative?: Array<{
|
|
241
|
+
startMs: number;
|
|
242
|
+
endMs: number;
|
|
243
|
+
text: string;
|
|
244
|
+
confidence: 'direct' | 'partial';
|
|
245
|
+
}>;
|
|
246
|
+
context?: Array<{
|
|
247
|
+
fact: string;
|
|
248
|
+
evidence: Array<{
|
|
249
|
+
startMs: number;
|
|
250
|
+
endMs: number;
|
|
251
|
+
}>;
|
|
252
|
+
}>;
|
|
253
|
+
sourceItems?: Array<{
|
|
254
|
+
kind: 'question' | 'clue' | 'heading' | 'slide-item' | 'board-item' | 'list-item';
|
|
255
|
+
channel: 'spoken' | 'visible';
|
|
256
|
+
questionRole?: 'primary' | 'interactional' | 'rhetorical' | 'not-question';
|
|
257
|
+
text: string;
|
|
258
|
+
answer: string;
|
|
259
|
+
respondent?: string;
|
|
260
|
+
startMs: number;
|
|
261
|
+
endMs: number;
|
|
262
|
+
}>;
|
|
263
|
+
sourceActivityStructures?: Array<{
|
|
264
|
+
kind: 'grid' | 'sequence' | 'collection';
|
|
265
|
+
label: string;
|
|
266
|
+
dimensions: Array<{
|
|
267
|
+
label: string;
|
|
268
|
+
values: string[];
|
|
269
|
+
}>;
|
|
270
|
+
promptCount?: number;
|
|
271
|
+
startMs: number;
|
|
272
|
+
endMs: number;
|
|
273
|
+
}>;
|
|
274
|
+
sourceTaskInstances?: Array<{
|
|
275
|
+
id: string;
|
|
276
|
+
prompt: string;
|
|
277
|
+
channel: 'spoken' | 'visible';
|
|
278
|
+
answer: string;
|
|
279
|
+
respondent?: string;
|
|
280
|
+
startMs: number;
|
|
281
|
+
endMs: number;
|
|
282
|
+
}>;
|
|
283
|
+
sourceInventoryCoverage?: {
|
|
284
|
+
complete: boolean;
|
|
285
|
+
totalWindows: number;
|
|
286
|
+
processedWindows: number;
|
|
287
|
+
reason?: string;
|
|
288
|
+
};
|
|
289
|
+
uncertainties?: string[];
|
|
290
|
+
};
|
|
291
|
+
coverage?: {
|
|
292
|
+
requested?: 'fast' | 'balanced' | 'thorough';
|
|
293
|
+
sourceFrames?: number;
|
|
294
|
+
decodedFrames?: number;
|
|
295
|
+
analyzedFrames?: number;
|
|
296
|
+
semanticClips?: number;
|
|
297
|
+
};
|
|
298
|
+
videoEmbeddings?: Array<{
|
|
299
|
+
clipId: string;
|
|
300
|
+
startMs: number;
|
|
301
|
+
endMs: number;
|
|
302
|
+
vector: number[];
|
|
303
|
+
dimensions: number;
|
|
304
|
+
provider: string;
|
|
305
|
+
}>;
|
|
306
|
+
videoEmbeddingDiagnostics?: {
|
|
307
|
+
attempted?: boolean;
|
|
308
|
+
provider?: string;
|
|
309
|
+
error?: string | null;
|
|
310
|
+
};
|
|
311
|
+
detectedLanguage?: string;
|
|
312
|
+
answeringGuide: {
|
|
313
|
+
goal?: string;
|
|
314
|
+
importantEntities: string[];
|
|
315
|
+
questionsToPrepareFor: string[];
|
|
316
|
+
instruction: string;
|
|
317
|
+
};
|
|
318
|
+
}
|
|
319
|
+
export declare function createVideoIntelligenceSubmitRequest(input: {
|
|
320
|
+
source: Record<string, unknown>;
|
|
321
|
+
brief: Record<string, unknown>;
|
|
322
|
+
config?: Record<string, unknown>;
|
|
323
|
+
}): Record<string, unknown>;
|
|
324
|
+
type ReportStage = (stage: MediaPipelineStage, patch: {
|
|
325
|
+
status: 'running' | 'completed';
|
|
326
|
+
percent?: number;
|
|
327
|
+
current?: number;
|
|
328
|
+
total?: number;
|
|
329
|
+
unit?: string;
|
|
330
|
+
sequence?: number;
|
|
331
|
+
elapsedSeconds?: number;
|
|
332
|
+
estimatedRemainingSeconds?: number;
|
|
333
|
+
message: string;
|
|
334
|
+
startedAt?: string;
|
|
335
|
+
/**
|
|
336
|
+
* The dispatched job's own status, when known. 'queued' means the GPU
|
|
337
|
+
* worker hasn't picked the job up yet (cold start) -- distinct from
|
|
338
|
+
* `status` above, which is about this reporting call's own stage, not
|
|
339
|
+
* the underlying job.
|
|
340
|
+
*/
|
|
341
|
+
jobStatus?: 'queued' | 'running';
|
|
342
|
+
}) => Promise<void>;
|
|
343
|
+
export declare function runInstalledVideoIntelligence(input: {
|
|
344
|
+
asset: MediaAsset;
|
|
345
|
+
mediaPath: string;
|
|
346
|
+
reportStage: ReportStage;
|
|
347
|
+
briefOverride?: Record<string, unknown>;
|
|
348
|
+
/** Bounded cloud inspection reserves only the requested source range. */
|
|
349
|
+
sourceDurationSecs?: number;
|
|
350
|
+
/**
|
|
351
|
+
* A presigned HTTPS URL to an already-durable canonical copy (the web
|
|
352
|
+
* app's own S3StorageProvider). When set, this skips openAsBlob + the
|
|
353
|
+
* client.upload() multipart round-trip entirely -- the control plane
|
|
354
|
+
* dispatches the GPU worker straight at this URL, which is what lets
|
|
355
|
+
* watch_original re-inspect a video long after its original upload
|
|
356
|
+
* expired without ever re-transferring the file through this process.
|
|
357
|
+
*/
|
|
358
|
+
sourceUrl?: string;
|
|
359
|
+
/** Persists the managed job ID immediately so deletion can cancel it. */
|
|
360
|
+
onJobSubmitted?: (jobId: string) => Promise<void>;
|
|
361
|
+
/** Prevents a removed asset from submitting a new managed job. */
|
|
362
|
+
assertStillActive?: () => Promise<void>;
|
|
363
|
+
/**
|
|
364
|
+
* How long to wait for the dispatched job before giving up. Full-video
|
|
365
|
+
* indexing runs unattended, so it keeps the long default; a chat-triggered
|
|
366
|
+
* bounded inspection has a live user waiting on a response and must fail
|
|
367
|
+
* fast (with a clear timeout error the caller can distinguish from "the
|
|
368
|
+
* video doesn't show this") if the GPU provider never picks the job up,
|
|
369
|
+
* rather than hang for hours.
|
|
370
|
+
*/
|
|
371
|
+
maxWaitMs?: number;
|
|
372
|
+
}): Promise<{
|
|
373
|
+
evidence: VideoEvidence;
|
|
374
|
+
segments: MediaEvidenceSegment[];
|
|
375
|
+
}>;
|
|
376
|
+
export declare function shouldRequireSemanticVideoEvidence(config: Record<string, unknown>, diagnostics: VideoEvidence['semanticDiagnostics'], observations?: VideoEvidence['semanticObservations']): boolean;
|
|
377
|
+
/** Managed indexes must contain actual visual-language evidence, not speech/OCR alone. */
|
|
378
|
+
export declare function enforceManagedSemanticBrief(config: Record<string, unknown>, brief: Record<string, unknown>): Record<string, unknown>;
|
|
379
|
+
export declare function shouldSkipHeavyVideoOperators(_config: Record<string, unknown>, briefOverride?: Record<string, unknown>): boolean;
|
|
380
|
+
export declare function shouldSkipCloudTranscription(_config: Record<string, unknown>, briefOverride: Record<string, unknown> | undefined, _asset: MediaAsset): boolean;
|
|
381
|
+
export declare function shouldSkipCloudVideoEmbeddings(_config: Record<string, unknown>, briefOverride: Record<string, unknown> | undefined, _asset: MediaAsset): boolean;
|
|
382
|
+
export declare function assertVideoIntelligenceConfiguration(config: Record<string, unknown>): void;
|
|
383
|
+
export declare function resolveVideoJobModelConfiguration(config: Record<string, unknown>): {
|
|
384
|
+
audio: {
|
|
385
|
+
provider: string;
|
|
386
|
+
apiKey: string;
|
|
387
|
+
model: string;
|
|
388
|
+
};
|
|
389
|
+
brain: {
|
|
390
|
+
provider: string;
|
|
391
|
+
apiKey: string;
|
|
392
|
+
model: string;
|
|
393
|
+
};
|
|
394
|
+
vision: {
|
|
395
|
+
provider: string;
|
|
396
|
+
apiKey: string;
|
|
397
|
+
model: string;
|
|
398
|
+
};
|
|
399
|
+
};
|
|
400
|
+
/**
|
|
401
|
+
* Translate the worker's overall percent into the mapped UI step's own band,
|
|
402
|
+
* preferring its true completed/total clip units whenever it reports them.
|
|
403
|
+
*/
|
|
404
|
+
export declare function cloudStageProgress(progress: VideoJob['progress']): {
|
|
405
|
+
percent: number;
|
|
406
|
+
current?: number;
|
|
407
|
+
total?: number;
|
|
408
|
+
unit?: string;
|
|
409
|
+
sequence?: number;
|
|
410
|
+
elapsedSeconds?: number;
|
|
411
|
+
estimatedRemainingSeconds?: number;
|
|
412
|
+
};
|
|
413
|
+
/**
|
|
414
|
+
* Convert the worker's overall percent into progress within the mapped UI
|
|
415
|
+
* step, from the phase table the worker itself reports against. The worker
|
|
416
|
+
* already advances that percent smoothly and monotonically, so there is
|
|
417
|
+
* nothing left for the host to smooth or guess at.
|
|
418
|
+
*/
|
|
419
|
+
export declare function cloudOverallToStagePercent(stage: string, overallPercent: number, stagePercent?: number): number;
|
|
420
|
+
/**
|
|
421
|
+
* Preserve source-level cloud observations for the investigation engine. The
|
|
422
|
+
* 30-second RAG segments above are useful navigation projections, but they
|
|
423
|
+
* must never be the only evidence used for an exact score or count.
|
|
424
|
+
*/
|
|
425
|
+
export declare function evidenceToKnowledgeInputs(evidence: VideoEvidence): {
|
|
426
|
+
transcriptChunks: {
|
|
427
|
+
text: string;
|
|
428
|
+
startSecs: number;
|
|
429
|
+
endSecs: number;
|
|
430
|
+
}[];
|
|
431
|
+
visualObservations: ({
|
|
432
|
+
startSecs: number;
|
|
433
|
+
endSecs: number;
|
|
434
|
+
observations: {
|
|
435
|
+
kind: "object";
|
|
436
|
+
value: string;
|
|
437
|
+
frameTimestamps: number[];
|
|
438
|
+
confidence: number;
|
|
439
|
+
uncertaintyReasons: string[];
|
|
440
|
+
}[];
|
|
441
|
+
} | {
|
|
442
|
+
startSecs: number;
|
|
443
|
+
endSecs: number;
|
|
444
|
+
observations: {
|
|
445
|
+
kind: "state";
|
|
446
|
+
value: {
|
|
447
|
+
subject: string;
|
|
448
|
+
property: string;
|
|
449
|
+
value: string;
|
|
450
|
+
observations: number;
|
|
451
|
+
firstSeenMs: number;
|
|
452
|
+
lastSeenMs: number;
|
|
453
|
+
};
|
|
454
|
+
frameTimestamps: number[];
|
|
455
|
+
confidence: number;
|
|
456
|
+
uncertaintyReasons: string[];
|
|
457
|
+
}[];
|
|
458
|
+
} | {
|
|
459
|
+
startSecs: number;
|
|
460
|
+
endSecs: number;
|
|
461
|
+
observations: {
|
|
462
|
+
kind: "action";
|
|
463
|
+
value: string;
|
|
464
|
+
frameTimestamps: number[];
|
|
465
|
+
confidence: number;
|
|
466
|
+
uncertaintyReasons: string[];
|
|
467
|
+
}[];
|
|
468
|
+
})[];
|
|
469
|
+
ocrEvidence: {
|
|
470
|
+
modality: "ocr";
|
|
471
|
+
timeRange: {
|
|
472
|
+
startSecs: number;
|
|
473
|
+
endSecs: number;
|
|
474
|
+
precision: "estimated";
|
|
475
|
+
};
|
|
476
|
+
payload: {
|
|
477
|
+
text: string;
|
|
478
|
+
blocks: {
|
|
479
|
+
text: string;
|
|
480
|
+
confidence: number;
|
|
481
|
+
}[];
|
|
482
|
+
};
|
|
483
|
+
source: {
|
|
484
|
+
kind: "provider";
|
|
485
|
+
provider: string;
|
|
486
|
+
};
|
|
487
|
+
confidence: {
|
|
488
|
+
score: number;
|
|
489
|
+
source: "provider";
|
|
490
|
+
calibrationStatus: "uncalibrated";
|
|
491
|
+
uncertaintyReasons: string[];
|
|
492
|
+
};
|
|
493
|
+
observation: {
|
|
494
|
+
kind: "ocr";
|
|
495
|
+
value: {
|
|
496
|
+
text: string;
|
|
497
|
+
};
|
|
498
|
+
};
|
|
499
|
+
}[];
|
|
500
|
+
reconciledEvidence: OfflineKnowledgeEvidenceInput[];
|
|
501
|
+
};
|
|
502
|
+
/** Converts a bounded cloud re-analysis result into immutable refinement evidence. */
|
|
503
|
+
export declare function evidenceToRefinementInputs(evidence: VideoEvidence): OfflineKnowledgeEvidenceInput[];
|
|
504
|
+
/**
|
|
505
|
+
* Resolve the uploader's free-form focus once, then use it everywhere that
|
|
506
|
+
* creates or audits a video index. It is deliberately opaque text: neither
|
|
507
|
+
* the host nor the worker infers a genre or applies subject-specific rules.
|
|
508
|
+
*/
|
|
509
|
+
export declare function resolveVideoIndexingHint(asset: MediaAsset): string | undefined;
|
|
510
|
+
export declare function createAssetVideoIndexingBrief(asset: MediaAsset): Record<string, unknown>;
|
|
511
|
+
/**
|
|
512
|
+
* Infer only languages whose writing system makes the hint high-confidence.
|
|
513
|
+
* Latin titles stay automatic because their script is shared by too many
|
|
514
|
+
* languages. This avoids a second AI request and remains content-agnostic.
|
|
515
|
+
*/
|
|
516
|
+
export declare function inferLanguageHintFromTitle(title: string): string | undefined;
|
|
517
|
+
export declare function evidenceToSegments(evidence: VideoEvidence): MediaEvidenceSegment[];
|
|
518
|
+
/** Render the runtime's already-audited account without paying for a second LLM pass. */
|
|
519
|
+
export declare function formatVideoKnowledgeSummary(evidence: VideoEvidence): string | null;
|
|
520
|
+
export {};
|
|
521
|
+
//# sourceMappingURL=video-intelligence-adapter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"video-intelligence-adapter.d.ts","sourceRoot":"","sources":["../../../src/lib/media/video-intelligence-adapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
type ProvisioningClient = {
|
|
2
|
+
getUsage?: () => Promise<unknown>;
|
|
3
|
+
provisionDeviceAccess?: (installationId: string) => Promise<{
|
|
4
|
+
apiKey: string;
|
|
5
|
+
entitlement: {
|
|
6
|
+
plan: string;
|
|
7
|
+
sourceMinutesPerMonth: number | null;
|
|
8
|
+
maxConcurrentJobs: number;
|
|
9
|
+
};
|
|
10
|
+
}>;
|
|
11
|
+
};
|
|
12
|
+
type VideoExtension = {
|
|
13
|
+
createClient(context: {
|
|
14
|
+
config: Record<string, unknown>;
|
|
15
|
+
fetch?: typeof globalThis.fetch;
|
|
16
|
+
}): ProvisioningClient;
|
|
17
|
+
};
|
|
18
|
+
/**
|
|
19
|
+
* Creates a per-installation cloud credential once, then keeps it in this
|
|
20
|
+
* project's local config. The cloud stores hashes of both identifiers only.
|
|
21
|
+
*/
|
|
22
|
+
export declare function resolveVideoIntelligenceConnection(extension: VideoExtension, installedConfig: Record<string, unknown>): Promise<{
|
|
23
|
+
config: Record<string, unknown>;
|
|
24
|
+
provisioned: boolean;
|
|
25
|
+
entitlement?: {
|
|
26
|
+
plan: string;
|
|
27
|
+
sourceMinutesPerMonth: number | null;
|
|
28
|
+
maxConcurrentJobs: number;
|
|
29
|
+
};
|
|
30
|
+
}>;
|
|
31
|
+
export {};
|
|
32
|
+
//# sourceMappingURL=video-intelligence-connection.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"video-intelligence-connection.d.ts","sourceRoot":"","sources":["../../../src/lib/media/video-intelligence-connection.ts"],"names":[],"mappings":"AAIA,KAAK,kBAAkB,GAAG;IACxB,QAAQ,CAAC,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;IAClC,qBAAqB,CAAC,EAAE,CAAC,cAAc,EAAE,MAAM,KAAK,OAAO,CAAC;QAC1D,MAAM,EAAE,MAAM,CAAC;QACf,WAAW,EAAE;YACX,IAAI,EAAE,MAAM,CAAC;YACb,qBAAqB,EAAE,MAAM,GAAG,IAAI,CAAC;YACrC,iBAAiB,EAAE,MAAM,CAAC;SAC3B,CAAC;KACH,CAAC,CAAC;CACJ,CAAC;AAEF,KAAK,cAAc,GAAG;IACpB,YAAY,CAAC,OAAO,EAAE;QACpB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAChC,KAAK,CAAC,EAAE,OAAO,UAAU,CAAC,KAAK,CAAC;KACjC,GAAG,kBAAkB,CAAC;CACxB,CAAC;AAEF;;;GAGG;AACH,wBAAsB,kCAAkC,CACtD,SAAS,EAAE,cAAc,EACzB,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACvC,OAAO,CAAC;IACT,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,WAAW,EAAE,OAAO,CAAC;IACrB,WAAW,CAAC,EAAE;QACZ,IAAI,EAAE,MAAM,CAAC;QACb,qBAAqB,EAAE,MAAM,GAAG,IAAI,CAAC;QACrC,iBAAiB,EAAE,MAAM,CAAC;KAC3B,CAAC;CACH,CAAC,CAiFD"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export declare const MAX_REMOTE_FILE_BYTES: number;
|
|
2
|
+
export interface RemoteFileDownload {
|
|
3
|
+
bytes: Buffer;
|
|
4
|
+
contentType: string;
|
|
5
|
+
fileName: string;
|
|
6
|
+
sourceUrl: string;
|
|
7
|
+
}
|
|
8
|
+
export declare function normalizeRemoteFileUrl(value: string): URL;
|
|
9
|
+
export declare function isPrivateAddress(address: string): boolean;
|
|
10
|
+
export declare function getRemoteFileName(response: Response, sourceUrl: URL, contentType: string): string;
|
|
11
|
+
export declare function downloadRemoteFile(value: string): Promise<RemoteFileDownload>;
|
|
12
|
+
//# sourceMappingURL=remote-files.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"remote-files.d.ts","sourceRoot":"","sources":["../../src/lib/remote-files.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,qBAAqB,QAAmB,CAAC;AAgCtD,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG,GAAG,CAqBzD;AAED,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,WAyB/C;AAWD,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,EAAE,WAAW,EAAE,MAAM,UAuBxF;AA6BD,wBAAsB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC,CA4BnF"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export declare const SEARCH_VERIFICATION_PROVIDERS: readonly ["serper", "google", "tavily", "brave", "bing", "exa", "firecrawl"];
|
|
2
|
+
export type SearchVerificationProvider = (typeof SEARCH_VERIFICATION_PROVIDERS)[number];
|
|
3
|
+
export declare function isSearchVerificationProvider(provider: string): provider is SearchVerificationProvider;
|
|
4
|
+
export declare function verifySearchProvider(provider: SearchVerificationProvider, apiKey: string, fetcher?: typeof fetch): Promise<void>;
|
|
5
|
+
//# sourceMappingURL=provider-verification.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"provider-verification.d.ts","sourceRoot":"","sources":["../../../src/lib/search/provider-verification.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,6BAA6B,8EAQhC,CAAC;AAEX,MAAM,MAAM,0BAA0B,GAAG,CAAC,OAAO,6BAA6B,CAAC,CAAC,MAAM,CAAC,CAAC;AAExF,wBAAgB,4BAA4B,CAC1C,QAAQ,EAAE,MAAM,GACf,QAAQ,IAAI,0BAA0B,CAExC;AAED,wBAAsB,oBAAoB,CACxC,QAAQ,EAAE,0BAA0B,EACpC,MAAM,EAAE,MAAM,EACd,OAAO,GAAE,OAAO,KAAa,GAC5B,OAAO,CAAC,IAAI,CAAC,CAwEf"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { SandboxManager } from '@larkup/sandbox';
|
|
2
|
+
import type { SandboxConfig } from '@larkup/sandbox/types';
|
|
3
|
+
export interface WorkspaceRuntimeHost {
|
|
4
|
+
readBinary?: (source: {
|
|
5
|
+
id: string;
|
|
6
|
+
url?: string;
|
|
7
|
+
}) => Promise<Uint8Array>;
|
|
8
|
+
apiUrl?: (path: string) => string;
|
|
9
|
+
fetch?: typeof globalThis.fetch;
|
|
10
|
+
sandbox: Pick<SandboxManager, 'execute' | 'healthCheck'>;
|
|
11
|
+
}
|
|
12
|
+
export declare function runWithWorkspaceRuntime<T>(host: WorkspaceRuntimeHost, operation: () => T): T;
|
|
13
|
+
export declare function workspaceSandbox(config: SandboxConfig): Pick<SandboxManager, 'execute' | 'healthCheck'>;
|
|
14
|
+
export declare function workspaceServerUrl(path: string): string;
|
|
15
|
+
export declare const workspaceServerFetch: typeof globalThis.fetch;
|
|
16
|
+
export declare function workspaceReadBinary(source: {
|
|
17
|
+
id: string;
|
|
18
|
+
url?: string;
|
|
19
|
+
}): Promise<Uint8Array> | undefined;
|
|
20
|
+
//# sourceMappingURL=runtime-host.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime-host.d.ts","sourceRoot":"","sources":["../src/runtime-host.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC3D,MAAM,WAAW,oBAAoB;IACnC,UAAU,CAAC,EAAE,CAAC,MAAM,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,OAAO,CAAC,UAAU,CAAC,CAAC;IAC3E,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;IAClC,KAAK,CAAC,EAAE,OAAO,UAAU,CAAC,KAAK,CAAC;IAChC,OAAO,EAAE,IAAI,CAAC,cAAc,EAAE,SAAS,GAAG,aAAa,CAAC,CAAC;CAC1D;AAED,wBAAgB,uBAAuB,CAAC,CAAC,EAAE,IAAI,EAAE,oBAAoB,EAAE,SAAS,EAAE,MAAM,CAAC,GAAG,CAAC,CAE5F;AACD,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,aAAa,GACpB,IAAI,CAAC,cAAc,EAAE,SAAS,GAAG,aAAa,CAAC,CAEjD;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEvD;AACD,eAAO,MAAM,oBAAoB,EAAE,OAAO,UAAU,CAAC,KACS,CAAC;AAE/D,wBAAgB,mBAAmB,CAAC,MAAM,EAAE;IAC1C,EAAE,EAAE,MAAM,CAAC;IACX,GAAG,CAAC,EAAE,MAAM,CAAC;CACd,GAAG,OAAO,CAAC,UAAU,CAAC,GAAG,SAAS,CAElC"}
|