@otto-code/protocol 0.8.12 → 0.8.14
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-labels.d.ts +3 -0
- package/dist/agent-labels.js +10 -0
- package/dist/{agent-personalities.d.ts → agent-profiles.d.ts} +13 -3
- package/dist/{agent-personalities.js → agent-profiles.js} +27 -11
- package/dist/agent-teams.d.ts +5 -5
- package/dist/agent-teams.js +1 -1
- package/dist/agent-types.d.ts +24 -4
- package/dist/binary-frames/terminal.d.ts +4 -0
- package/dist/binary-frames/terminal.js +1 -0
- package/dist/brain.d.ts +91 -0
- package/dist/brain.js +19 -1
- package/dist/chat/rpc-schemas.js +1 -0
- package/dist/chat/types.js +1 -0
- package/dist/client-capabilities.d.ts +1 -0
- package/dist/client-capabilities.js +4 -0
- package/dist/daemon-config.d.ts +10 -0
- package/dist/daemon-config.js +6 -0
- package/dist/default-personalities.d.ts +2 -2
- package/dist/default-personalities.js +2 -2
- package/dist/generated/validation/ws-outbound.aot.js +65204 -60319
- package/dist/loop/rpc-schemas.js +1 -0
- package/dist/messages.d.ts +4146 -316
- package/dist/messages.js +483 -2
- package/dist/personality-schemas.d.ts +135 -0
- package/dist/personality-schemas.js +63 -0
- package/dist/provider-manifest.js +7 -0
- package/dist/provider-snapshot-codec.d.ts +18 -0
- package/dist/provider-snapshot-codec.js +71 -0
- package/dist/schedule/rpc-schemas.d.ts +16 -8
- package/dist/schedule/types.d.ts +6 -3
- package/dist/schedule/types.js +8 -1
- package/dist/search/text-match.d.ts +55 -0
- package/dist/search/text-match.js +262 -0
- package/dist/suggested-tasks.js +1 -1
- package/dist/terminal-input-mode.d.ts +4 -0
- package/dist/terminal-input-mode.js +35 -6
- package/dist/terminal-key-input.js +15 -6
- package/dist/terminal-profiles.d.ts +35 -0
- package/dist/terminal-profiles.js +246 -4
- package/dist/tool-call-display.d.ts +2 -2
- package/dist/tool-call-display.js +6 -6
- package/dist/validation/ws-outbound-schema-metadata.d.ts +677 -28
- package/package.json +1 -1
|
@@ -164,6 +164,8 @@ export type AgentPersonalityVoiceCues = z.infer<typeof AgentPersonalityVoiceCues
|
|
|
164
164
|
export declare const AgentPersonalitySchema: z.ZodObject<{
|
|
165
165
|
id: z.ZodString;
|
|
166
166
|
name: z.ZodString;
|
|
167
|
+
icon: z.ZodOptional<z.ZodString>;
|
|
168
|
+
color: z.ZodOptional<z.ZodString>;
|
|
167
169
|
provider: z.ZodString;
|
|
168
170
|
model: z.ZodString;
|
|
169
171
|
effortLevel: z.ZodOptional<z.ZodString>;
|
|
@@ -218,4 +220,137 @@ export declare const VisualizerVoiceCuesGenerateResponseSchema: z.ZodObject<{
|
|
|
218
220
|
}, z.core.$loose>;
|
|
219
221
|
}, z.core.$strip>;
|
|
220
222
|
export type VisualizerVoiceCuesResult = z.infer<typeof VisualizerVoiceCuesGenerateResponseSchema>["payload"];
|
|
223
|
+
export declare const ProfileMemoryListRequestMessageSchema: z.ZodObject<{
|
|
224
|
+
workspaceId: z.ZodOptional<z.ZodString>;
|
|
225
|
+
projectRoot: z.ZodOptional<z.ZodString>;
|
|
226
|
+
requestId: z.ZodString;
|
|
227
|
+
personalityId: z.ZodString;
|
|
228
|
+
type: z.ZodLiteral<"profile.memory.list.request">;
|
|
229
|
+
}, z.core.$strip>;
|
|
230
|
+
export declare const ProfileMemoryListResponseMessageSchema: z.ZodObject<{
|
|
231
|
+
payload: z.ZodObject<{
|
|
232
|
+
requestId: z.ZodString;
|
|
233
|
+
personalityId: z.ZodString;
|
|
234
|
+
personalityName: z.ZodString;
|
|
235
|
+
enabled: z.ZodBoolean;
|
|
236
|
+
entries: z.ZodArray<z.ZodObject<{
|
|
237
|
+
id: z.ZodString;
|
|
238
|
+
text: z.ZodString;
|
|
239
|
+
scope: z.ZodString;
|
|
240
|
+
projectRoot: z.ZodOptional<z.ZodString>;
|
|
241
|
+
createdAt: z.ZodString;
|
|
242
|
+
updatedAt: z.ZodString;
|
|
243
|
+
source: z.ZodString;
|
|
244
|
+
reinforcedCount: z.ZodOptional<z.ZodNumber>;
|
|
245
|
+
transferredFrom: z.ZodOptional<z.ZodString>;
|
|
246
|
+
}, z.core.$loose>>;
|
|
247
|
+
brief: z.ZodString;
|
|
248
|
+
briefTokens: z.ZodNumber;
|
|
249
|
+
briefOmittedCount: z.ZodOptional<z.ZodNumber>;
|
|
250
|
+
projectRoot: z.ZodOptional<z.ZodString>;
|
|
251
|
+
}, z.core.$strip>;
|
|
252
|
+
type: z.ZodLiteral<"profile.memory.list.response">;
|
|
253
|
+
}, z.core.$strip>;
|
|
254
|
+
export declare const ProfileMemoryUpdateRequestMessageSchema: z.ZodObject<{
|
|
255
|
+
workspaceId: z.ZodOptional<z.ZodString>;
|
|
256
|
+
text: z.ZodOptional<z.ZodString>;
|
|
257
|
+
scope: z.ZodOptional<z.ZodString>;
|
|
258
|
+
projectRoot: z.ZodOptional<z.ZodString>;
|
|
259
|
+
requestId: z.ZodString;
|
|
260
|
+
personalityId: z.ZodString;
|
|
261
|
+
entryId: z.ZodOptional<z.ZodString>;
|
|
262
|
+
drop: z.ZodOptional<z.ZodBoolean>;
|
|
263
|
+
type: z.ZodLiteral<"profile.memory.update.request">;
|
|
264
|
+
}, z.core.$strip>;
|
|
265
|
+
export declare const ProfileMemoryUpdateResponseMessageSchema: z.ZodObject<{
|
|
266
|
+
payload: z.ZodObject<{
|
|
267
|
+
requestId: z.ZodString;
|
|
268
|
+
ok: z.ZodBoolean;
|
|
269
|
+
error: z.ZodOptional<z.ZodString>;
|
|
270
|
+
}, z.core.$strip>;
|
|
271
|
+
type: z.ZodLiteral<"profile.memory.update.response">;
|
|
272
|
+
}, z.core.$strip>;
|
|
273
|
+
export declare const ProfileMemoryTransferRequestMessageSchema: z.ZodObject<{
|
|
274
|
+
mode: z.ZodString;
|
|
275
|
+
requestId: z.ZodString;
|
|
276
|
+
fromPersonalityId: z.ZodString;
|
|
277
|
+
toPersonalityId: z.ZodOptional<z.ZodString>;
|
|
278
|
+
type: z.ZodLiteral<"profile.memory.transfer.request">;
|
|
279
|
+
}, z.core.$strip>;
|
|
280
|
+
export declare const ProfileMemoryTransferResponseMessageSchema: z.ZodObject<{
|
|
281
|
+
payload: z.ZodObject<{
|
|
282
|
+
requestId: z.ZodString;
|
|
283
|
+
ok: z.ZodBoolean;
|
|
284
|
+
transferred: z.ZodOptional<z.ZodNumber>;
|
|
285
|
+
merged: z.ZodOptional<z.ZodNumber>;
|
|
286
|
+
error: z.ZodOptional<z.ZodString>;
|
|
287
|
+
}, z.core.$strip>;
|
|
288
|
+
type: z.ZodLiteral<"profile.memory.transfer.response">;
|
|
289
|
+
}, z.core.$strip>;
|
|
290
|
+
export declare const ProfileMemoryStatsRequestMessageSchema: z.ZodObject<{
|
|
291
|
+
requestId: z.ZodString;
|
|
292
|
+
type: z.ZodLiteral<"profile.memory.stats.request">;
|
|
293
|
+
}, z.core.$strip>;
|
|
294
|
+
export declare const ProfileMemoryStatsResponseMessageSchema: z.ZodObject<{
|
|
295
|
+
payload: z.ZodObject<{
|
|
296
|
+
requestId: z.ZodString;
|
|
297
|
+
counts: z.ZodRecord<z.ZodString, z.ZodNumber>;
|
|
298
|
+
}, z.core.$strip>;
|
|
299
|
+
type: z.ZodLiteral<"profile.memory.stats.response">;
|
|
300
|
+
}, z.core.$strip>;
|
|
301
|
+
export declare const AgentProfileStatsRequestSchema: z.ZodObject<{
|
|
302
|
+
requestId: z.ZodString;
|
|
303
|
+
type: z.ZodLiteral<"agent.profile.stats.request">;
|
|
304
|
+
}, z.core.$strip>;
|
|
305
|
+
export declare const AgentProfileStatsResponseSchema: z.ZodObject<{
|
|
306
|
+
payload: z.ZodObject<{
|
|
307
|
+
requestId: z.ZodString;
|
|
308
|
+
stats: z.ZodRecord<z.ZodString, z.ZodNumber>;
|
|
309
|
+
}, z.core.$loose>;
|
|
310
|
+
type: z.ZodLiteral<"agent.profile.stats.response">;
|
|
311
|
+
}, z.core.$strip>;
|
|
312
|
+
export declare const AgentProfileGeneratePromptRequestSchema: z.ZodObject<{
|
|
313
|
+
name: z.ZodString;
|
|
314
|
+
requestId: z.ZodString;
|
|
315
|
+
roles: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
316
|
+
glowA: z.ZodOptional<z.ZodString>;
|
|
317
|
+
glowB: z.ZodOptional<z.ZodString>;
|
|
318
|
+
cwd: z.ZodOptional<z.ZodString>;
|
|
319
|
+
type: z.ZodLiteral<"agent.profile.generate_prompt.request">;
|
|
320
|
+
}, z.core.$strip>;
|
|
321
|
+
export declare const AgentProfileGeneratePromptResponseSchema: z.ZodObject<{
|
|
322
|
+
payload: z.ZodObject<{
|
|
323
|
+
requestId: z.ZodString;
|
|
324
|
+
profile: z.ZodOptional<z.ZodString>;
|
|
325
|
+
error: z.ZodOptional<z.ZodString>;
|
|
326
|
+
}, z.core.$loose>;
|
|
327
|
+
type: z.ZodLiteral<"agent.profile.generate_prompt.response">;
|
|
328
|
+
}, z.core.$strip>;
|
|
329
|
+
export declare const AgentProfileGenerateVoiceCuesRequestSchema: z.ZodObject<{
|
|
330
|
+
prompt: z.ZodOptional<z.ZodString>;
|
|
331
|
+
name: z.ZodString;
|
|
332
|
+
requestId: z.ZodString;
|
|
333
|
+
roles: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
334
|
+
cwd: z.ZodOptional<z.ZodString>;
|
|
335
|
+
moment: z.ZodOptional<z.ZodEnum<{
|
|
336
|
+
join: "join";
|
|
337
|
+
thinking: "thinking";
|
|
338
|
+
waiting: "waiting";
|
|
339
|
+
done: "done";
|
|
340
|
+
}>>;
|
|
341
|
+
type: z.ZodLiteral<"agent.profile.generate_voice_cues.request">;
|
|
342
|
+
}, z.core.$strip>;
|
|
343
|
+
export declare const AgentProfileGenerateVoiceCuesResponseSchema: z.ZodObject<{
|
|
344
|
+
payload: z.ZodObject<{
|
|
345
|
+
requestId: z.ZodString;
|
|
346
|
+
cues: z.ZodOptional<z.ZodObject<{
|
|
347
|
+
join: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
348
|
+
thinking: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
349
|
+
waiting: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
350
|
+
done: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
351
|
+
}, z.core.$loose>>;
|
|
352
|
+
error: z.ZodOptional<z.ZodString>;
|
|
353
|
+
}, z.core.$loose>;
|
|
354
|
+
type: z.ZodLiteral<"agent.profile.generate_voice_cues.response">;
|
|
355
|
+
}, z.core.$strip>;
|
|
221
356
|
//# sourceMappingURL=personality-schemas.d.ts.map
|
|
@@ -276,6 +276,10 @@ export const AgentPersonalitySchema = z
|
|
|
276
276
|
.object({
|
|
277
277
|
id: z.string().min(1),
|
|
278
278
|
name: z.string().min(1),
|
|
279
|
+
/** A key into the client's icon registry, not a glyph. Unknown keys draw the default. */
|
|
280
|
+
icon: z.string().optional(),
|
|
281
|
+
/** An identity colour name shared with host badges. Unknown values draw unthemed. */
|
|
282
|
+
color: z.string().optional(),
|
|
279
283
|
provider: z.string().min(1),
|
|
280
284
|
model: z.string().min(1),
|
|
281
285
|
// Canonical effort level ("off".."max"); resolved to the bound model's
|
|
@@ -337,4 +341,63 @@ export const VisualizerVoiceCuesGenerateResponseSchema = z.object({
|
|
|
337
341
|
})
|
|
338
342
|
.passthrough(),
|
|
339
343
|
});
|
|
344
|
+
// ─── Profile-named RPC twins ──────────────────────────────────────────────────
|
|
345
|
+
//
|
|
346
|
+
// COMPAT(agentProfileRpcs): added in v0.8.13, drop the legacy halves when the
|
|
347
|
+
// daemon floor >= v0.8.13.
|
|
348
|
+
//
|
|
349
|
+
// The stored template converged on Paseo's `AgentProfile`, so the wire follows.
|
|
350
|
+
// These are the same messages under conforming names (see docs/rpc-namespacing.md,
|
|
351
|
+
// which three of the legacy names violate). Derived with `.omit().extend()`
|
|
352
|
+
// rather than copied so the two halves cannot drift.
|
|
353
|
+
//
|
|
354
|
+
// The daemon ACCEPTS both halves from today. The client keeps EMITTING the
|
|
355
|
+
// legacy literals until the floor rises: a new client must not break against an
|
|
356
|
+
// old daemon, and the feature contract forbids writing a degraded fallback path.
|
|
357
|
+
//
|
|
358
|
+
// One name is not a straight translation. `agentPersonalities.generate_profile`
|
|
359
|
+
// generates a personality PROMPT, not a profile - a genuine trap once "profile"
|
|
360
|
+
// means the stored template - so its twin is named `generate_prompt`.
|
|
361
|
+
export const ProfileMemoryListRequestMessageSchema = PersonalityMemoryListRequestMessageSchema.omit({
|
|
362
|
+
type: true,
|
|
363
|
+
}).extend({ type: z.literal("profile.memory.list.request") });
|
|
364
|
+
export const ProfileMemoryListResponseMessageSchema = PersonalityMemoryListResponseMessageSchema.omit({ type: true }).extend({
|
|
365
|
+
type: z.literal("profile.memory.list.response"),
|
|
366
|
+
});
|
|
367
|
+
export const ProfileMemoryUpdateRequestMessageSchema = PersonalityMemoryUpdateRequestMessageSchema.omit({ type: true }).extend({
|
|
368
|
+
type: z.literal("profile.memory.update.request"),
|
|
369
|
+
});
|
|
370
|
+
export const ProfileMemoryUpdateResponseMessageSchema = PersonalityMemoryUpdateResponseMessageSchema.omit({ type: true }).extend({
|
|
371
|
+
type: z.literal("profile.memory.update.response"),
|
|
372
|
+
});
|
|
373
|
+
export const ProfileMemoryTransferRequestMessageSchema = PersonalityMemoryTransferRequestMessageSchema.omit({ type: true }).extend({
|
|
374
|
+
type: z.literal("profile.memory.transfer.request"),
|
|
375
|
+
});
|
|
376
|
+
export const ProfileMemoryTransferResponseMessageSchema = PersonalityMemoryTransferResponseMessageSchema.omit({ type: true }).extend({
|
|
377
|
+
type: z.literal("profile.memory.transfer.response"),
|
|
378
|
+
});
|
|
379
|
+
export const ProfileMemoryStatsRequestMessageSchema = PersonalityMemoryStatsRequestMessageSchema.omit({ type: true }).extend({
|
|
380
|
+
type: z.literal("profile.memory.stats.request"),
|
|
381
|
+
});
|
|
382
|
+
export const ProfileMemoryStatsResponseMessageSchema = PersonalityMemoryStatsResponseMessageSchema.omit({ type: true }).extend({
|
|
383
|
+
type: z.literal("profile.memory.stats.response"),
|
|
384
|
+
});
|
|
385
|
+
export const AgentProfileStatsRequestSchema = AgentPersonalitiesGetStatsRequestSchema.omit({
|
|
386
|
+
type: true,
|
|
387
|
+
}).extend({ type: z.literal("agent.profile.stats.request") });
|
|
388
|
+
export const AgentProfileStatsResponseSchema = AgentPersonalitiesGetStatsResponseSchema.omit({
|
|
389
|
+
type: true,
|
|
390
|
+
}).extend({ type: z.literal("agent.profile.stats.response") });
|
|
391
|
+
export const AgentProfileGeneratePromptRequestSchema = AgentPersonalitiesGenerateProfileRequestSchema.omit({ type: true }).extend({
|
|
392
|
+
type: z.literal("agent.profile.generate_prompt.request"),
|
|
393
|
+
});
|
|
394
|
+
export const AgentProfileGeneratePromptResponseSchema = AgentPersonalitiesGenerateProfileResponseSchema.omit({ type: true }).extend({
|
|
395
|
+
type: z.literal("agent.profile.generate_prompt.response"),
|
|
396
|
+
});
|
|
397
|
+
export const AgentProfileGenerateVoiceCuesRequestSchema = VisualizerVoiceCuesGenerateRequestSchema.omit({ type: true }).extend({
|
|
398
|
+
type: z.literal("agent.profile.generate_voice_cues.request"),
|
|
399
|
+
});
|
|
400
|
+
export const AgentProfileGenerateVoiceCuesResponseSchema = VisualizerVoiceCuesGenerateResponseSchema.omit({ type: true }).extend({
|
|
401
|
+
type: z.literal("agent.profile.generate_voice_cues.response"),
|
|
402
|
+
});
|
|
340
403
|
//# sourceMappingURL=personality-schemas.js.map
|
|
@@ -141,6 +141,13 @@ const MOCK_LOAD_TEST_MODES = [
|
|
|
141
141
|
isUnattended: true,
|
|
142
142
|
userSelectable: false,
|
|
143
143
|
},
|
|
144
|
+
{
|
|
145
|
+
id: "approval-test",
|
|
146
|
+
label: "Approval Test",
|
|
147
|
+
description: "Alternate development-only permission mode for preference tests",
|
|
148
|
+
icon: "ShieldCheck",
|
|
149
|
+
colorTier: "safe",
|
|
150
|
+
},
|
|
144
151
|
];
|
|
145
152
|
const MOCK_SLOW_MODES = [
|
|
146
153
|
{
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { AgentModelDefinition, AgentSelectOption, ProviderSnapshotEntry } from "./agent-types.js";
|
|
2
|
+
export interface CompactProviderSnapshotModel extends Omit<AgentModelDefinition, "provider" | "thinkingOptions"> {
|
|
3
|
+
thinkingSet?: number;
|
|
4
|
+
}
|
|
5
|
+
export interface CompactProviderSnapshotEntry extends Omit<ProviderSnapshotEntry, "models"> {
|
|
6
|
+
models?: CompactProviderSnapshotModel[];
|
|
7
|
+
}
|
|
8
|
+
export interface ProviderSnapshotThinkingSet {
|
|
9
|
+
options: AgentSelectOption[];
|
|
10
|
+
defaultOptionId?: string;
|
|
11
|
+
}
|
|
12
|
+
export interface CompactProviderSnapshot {
|
|
13
|
+
entries: CompactProviderSnapshotEntry[];
|
|
14
|
+
thinkingSets: ProviderSnapshotThinkingSet[];
|
|
15
|
+
}
|
|
16
|
+
export declare function compactProviderSnapshot(entries: ProviderSnapshotEntry[]): CompactProviderSnapshot;
|
|
17
|
+
export declare function expandProviderSnapshot(snapshot: CompactProviderSnapshot): ProviderSnapshotEntry[];
|
|
18
|
+
//# sourceMappingURL=provider-snapshot-codec.d.ts.map
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
function thinkingSetKey(set) {
|
|
2
|
+
return JSON.stringify(set);
|
|
3
|
+
}
|
|
4
|
+
function compactModel({ provider: _provider, thinkingOptions, defaultThinkingOptionId, ...modelFields }, thinkingSets, thinkingSetIndexes) {
|
|
5
|
+
const compact = modelFields;
|
|
6
|
+
if (thinkingOptions === undefined) {
|
|
7
|
+
if (defaultThinkingOptionId !== undefined) {
|
|
8
|
+
compact.defaultThinkingOptionId = defaultThinkingOptionId;
|
|
9
|
+
}
|
|
10
|
+
return compact;
|
|
11
|
+
}
|
|
12
|
+
const thinkingSet = {
|
|
13
|
+
options: thinkingOptions,
|
|
14
|
+
...(defaultThinkingOptionId !== undefined ? { defaultOptionId: defaultThinkingOptionId } : {}),
|
|
15
|
+
};
|
|
16
|
+
const key = thinkingSetKey(thinkingSet);
|
|
17
|
+
const existingIndex = thinkingSetIndexes.get(key);
|
|
18
|
+
if (existingIndex !== undefined) {
|
|
19
|
+
compact.thinkingSet = existingIndex;
|
|
20
|
+
return compact;
|
|
21
|
+
}
|
|
22
|
+
const index = thinkingSets.length;
|
|
23
|
+
thinkingSets.push(thinkingSet);
|
|
24
|
+
thinkingSetIndexes.set(key, index);
|
|
25
|
+
compact.thinkingSet = index;
|
|
26
|
+
return compact;
|
|
27
|
+
}
|
|
28
|
+
export function compactProviderSnapshot(entries) {
|
|
29
|
+
const thinkingSets = [];
|
|
30
|
+
const thinkingSetIndexes = new Map();
|
|
31
|
+
const compactEntries = entries.map((entry) => {
|
|
32
|
+
if (entry.models === undefined) {
|
|
33
|
+
return entry;
|
|
34
|
+
}
|
|
35
|
+
return {
|
|
36
|
+
...entry,
|
|
37
|
+
models: entry.models.map((model) => compactModel(model, thinkingSets, thinkingSetIndexes)),
|
|
38
|
+
};
|
|
39
|
+
});
|
|
40
|
+
return { entries: compactEntries, thinkingSets };
|
|
41
|
+
}
|
|
42
|
+
function expandModel(provider, model, thinkingSets) {
|
|
43
|
+
const { thinkingSet: thinkingSetIndex, ...modelFields } = model;
|
|
44
|
+
if (thinkingSetIndex === undefined) {
|
|
45
|
+
return { provider, ...modelFields };
|
|
46
|
+
}
|
|
47
|
+
const thinkingSet = thinkingSets[thinkingSetIndex];
|
|
48
|
+
if (!thinkingSet) {
|
|
49
|
+
throw new RangeError(`Provider snapshot references missing thinking set ${thinkingSetIndex}`);
|
|
50
|
+
}
|
|
51
|
+
return {
|
|
52
|
+
provider,
|
|
53
|
+
...modelFields,
|
|
54
|
+
thinkingOptions: thinkingSet.options,
|
|
55
|
+
...(thinkingSet.defaultOptionId !== undefined
|
|
56
|
+
? { defaultThinkingOptionId: thinkingSet.defaultOptionId }
|
|
57
|
+
: {}),
|
|
58
|
+
};
|
|
59
|
+
}
|
|
60
|
+
export function expandProviderSnapshot(snapshot) {
|
|
61
|
+
return snapshot.entries.map((entry) => {
|
|
62
|
+
const { models, ...entryFields } = entry;
|
|
63
|
+
if (models === undefined)
|
|
64
|
+
return entryFields;
|
|
65
|
+
return {
|
|
66
|
+
...entryFields,
|
|
67
|
+
models: models.map((model) => expandModel(entryFields.provider, model, snapshot.thinkingSets)),
|
|
68
|
+
};
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
//# sourceMappingURL=provider-snapshot-codec.js.map
|
|
@@ -33,15 +33,16 @@ export declare const ScheduleCreateRequestSchema: z.ZodObject<{
|
|
|
33
33
|
local: "local";
|
|
34
34
|
}>>;
|
|
35
35
|
title: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
36
|
+
providerOptions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodJSONSchema>>;
|
|
36
37
|
approvalPolicy: z.ZodOptional<z.ZodString>;
|
|
37
38
|
sandboxMode: z.ZodOptional<z.ZodString>;
|
|
38
39
|
networkAccess: z.ZodOptional<z.ZodBoolean>;
|
|
39
40
|
webSearch: z.ZodOptional<z.ZodBoolean>;
|
|
40
|
-
featureValues: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
41
41
|
extra: z.ZodOptional<z.ZodObject<{
|
|
42
42
|
codex: z.ZodOptional<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
43
43
|
claude: z.ZodOptional<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
44
44
|
}, z.core.$strip>>;
|
|
45
|
+
featureValues: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
45
46
|
systemPrompt: z.ZodOptional<z.ZodString>;
|
|
46
47
|
mcpServers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
47
48
|
}, z.core.$strip>;
|
|
@@ -148,15 +149,16 @@ export declare const ScheduleCreateResponseSchema: z.ZodObject<{
|
|
|
148
149
|
local: "local";
|
|
149
150
|
}>>;
|
|
150
151
|
title: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
152
|
+
providerOptions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodJSONSchema>>;
|
|
151
153
|
approvalPolicy: z.ZodOptional<z.ZodString>;
|
|
152
154
|
sandboxMode: z.ZodOptional<z.ZodString>;
|
|
153
155
|
networkAccess: z.ZodOptional<z.ZodBoolean>;
|
|
154
156
|
webSearch: z.ZodOptional<z.ZodBoolean>;
|
|
155
|
-
featureValues: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
156
157
|
extra: z.ZodOptional<z.ZodObject<{
|
|
157
158
|
codex: z.ZodOptional<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
158
159
|
claude: z.ZodOptional<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
159
160
|
}, z.core.$strip>>;
|
|
161
|
+
featureValues: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
160
162
|
systemPrompt: z.ZodOptional<z.ZodString>;
|
|
161
163
|
mcpServers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
162
164
|
}, z.core.$strip>;
|
|
@@ -219,15 +221,16 @@ export declare const ScheduleListResponseSchema: z.ZodObject<{
|
|
|
219
221
|
local: "local";
|
|
220
222
|
}>>;
|
|
221
223
|
title: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
224
|
+
providerOptions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodJSONSchema>>;
|
|
222
225
|
approvalPolicy: z.ZodOptional<z.ZodString>;
|
|
223
226
|
sandboxMode: z.ZodOptional<z.ZodString>;
|
|
224
227
|
networkAccess: z.ZodOptional<z.ZodBoolean>;
|
|
225
228
|
webSearch: z.ZodOptional<z.ZodBoolean>;
|
|
226
|
-
featureValues: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
227
229
|
extra: z.ZodOptional<z.ZodObject<{
|
|
228
230
|
codex: z.ZodOptional<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
229
231
|
claude: z.ZodOptional<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
230
232
|
}, z.core.$strip>>;
|
|
233
|
+
featureValues: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
231
234
|
systemPrompt: z.ZodOptional<z.ZodString>;
|
|
232
235
|
mcpServers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
233
236
|
}, z.core.$strip>;
|
|
@@ -290,15 +293,16 @@ export declare const ScheduleInspectResponseSchema: z.ZodObject<{
|
|
|
290
293
|
local: "local";
|
|
291
294
|
}>>;
|
|
292
295
|
title: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
296
|
+
providerOptions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodJSONSchema>>;
|
|
293
297
|
approvalPolicy: z.ZodOptional<z.ZodString>;
|
|
294
298
|
sandboxMode: z.ZodOptional<z.ZodString>;
|
|
295
299
|
networkAccess: z.ZodOptional<z.ZodBoolean>;
|
|
296
300
|
webSearch: z.ZodOptional<z.ZodBoolean>;
|
|
297
|
-
featureValues: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
298
301
|
extra: z.ZodOptional<z.ZodObject<{
|
|
299
302
|
codex: z.ZodOptional<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
300
303
|
claude: z.ZodOptional<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
301
304
|
}, z.core.$strip>>;
|
|
305
|
+
featureValues: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
302
306
|
systemPrompt: z.ZodOptional<z.ZodString>;
|
|
303
307
|
mcpServers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
304
308
|
}, z.core.$strip>;
|
|
@@ -404,15 +408,16 @@ export declare const SchedulePauseResponseSchema: z.ZodObject<{
|
|
|
404
408
|
local: "local";
|
|
405
409
|
}>>;
|
|
406
410
|
title: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
411
|
+
providerOptions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodJSONSchema>>;
|
|
407
412
|
approvalPolicy: z.ZodOptional<z.ZodString>;
|
|
408
413
|
sandboxMode: z.ZodOptional<z.ZodString>;
|
|
409
414
|
networkAccess: z.ZodOptional<z.ZodBoolean>;
|
|
410
415
|
webSearch: z.ZodOptional<z.ZodBoolean>;
|
|
411
|
-
featureValues: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
412
416
|
extra: z.ZodOptional<z.ZodObject<{
|
|
413
417
|
codex: z.ZodOptional<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
414
418
|
claude: z.ZodOptional<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
415
419
|
}, z.core.$strip>>;
|
|
420
|
+
featureValues: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
416
421
|
systemPrompt: z.ZodOptional<z.ZodString>;
|
|
417
422
|
mcpServers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
418
423
|
}, z.core.$strip>;
|
|
@@ -475,15 +480,16 @@ export declare const ScheduleResumeResponseSchema: z.ZodObject<{
|
|
|
475
480
|
local: "local";
|
|
476
481
|
}>>;
|
|
477
482
|
title: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
483
|
+
providerOptions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodJSONSchema>>;
|
|
478
484
|
approvalPolicy: z.ZodOptional<z.ZodString>;
|
|
479
485
|
sandboxMode: z.ZodOptional<z.ZodString>;
|
|
480
486
|
networkAccess: z.ZodOptional<z.ZodBoolean>;
|
|
481
487
|
webSearch: z.ZodOptional<z.ZodBoolean>;
|
|
482
|
-
featureValues: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
483
488
|
extra: z.ZodOptional<z.ZodObject<{
|
|
484
489
|
codex: z.ZodOptional<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
485
490
|
claude: z.ZodOptional<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
486
491
|
}, z.core.$strip>>;
|
|
492
|
+
featureValues: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
487
493
|
systemPrompt: z.ZodOptional<z.ZodString>;
|
|
488
494
|
mcpServers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
489
495
|
}, z.core.$strip>;
|
|
@@ -554,15 +560,16 @@ export declare const ScheduleRunOnceResponseSchema: z.ZodObject<{
|
|
|
554
560
|
local: "local";
|
|
555
561
|
}>>;
|
|
556
562
|
title: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
563
|
+
providerOptions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodJSONSchema>>;
|
|
557
564
|
approvalPolicy: z.ZodOptional<z.ZodString>;
|
|
558
565
|
sandboxMode: z.ZodOptional<z.ZodString>;
|
|
559
566
|
networkAccess: z.ZodOptional<z.ZodBoolean>;
|
|
560
567
|
webSearch: z.ZodOptional<z.ZodBoolean>;
|
|
561
|
-
featureValues: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
562
568
|
extra: z.ZodOptional<z.ZodObject<{
|
|
563
569
|
codex: z.ZodOptional<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
564
570
|
claude: z.ZodOptional<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
565
571
|
}, z.core.$strip>>;
|
|
572
|
+
featureValues: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
566
573
|
systemPrompt: z.ZodOptional<z.ZodString>;
|
|
567
574
|
mcpServers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
568
575
|
}, z.core.$strip>;
|
|
@@ -643,15 +650,16 @@ export declare const ScheduleUpdateResponseSchema: z.ZodObject<{
|
|
|
643
650
|
local: "local";
|
|
644
651
|
}>>;
|
|
645
652
|
title: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
653
|
+
providerOptions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodJSONSchema>>;
|
|
646
654
|
approvalPolicy: z.ZodOptional<z.ZodString>;
|
|
647
655
|
sandboxMode: z.ZodOptional<z.ZodString>;
|
|
648
656
|
networkAccess: z.ZodOptional<z.ZodBoolean>;
|
|
649
657
|
webSearch: z.ZodOptional<z.ZodBoolean>;
|
|
650
|
-
featureValues: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
651
658
|
extra: z.ZodOptional<z.ZodObject<{
|
|
652
659
|
codex: z.ZodOptional<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
653
660
|
claude: z.ZodOptional<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
654
661
|
}, z.core.$strip>>;
|
|
662
|
+
featureValues: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
655
663
|
systemPrompt: z.ZodOptional<z.ZodString>;
|
|
656
664
|
mcpServers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
657
665
|
}, z.core.$strip>;
|
package/dist/schedule/types.d.ts
CHANGED
|
@@ -32,15 +32,16 @@ export declare const ScheduleTargetSchema: z.ZodDiscriminatedUnion<[z.ZodObject<
|
|
|
32
32
|
local: "local";
|
|
33
33
|
}>>;
|
|
34
34
|
title: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
35
|
+
providerOptions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodJSONSchema>>;
|
|
35
36
|
approvalPolicy: z.ZodOptional<z.ZodString>;
|
|
36
37
|
sandboxMode: z.ZodOptional<z.ZodString>;
|
|
37
38
|
networkAccess: z.ZodOptional<z.ZodBoolean>;
|
|
38
39
|
webSearch: z.ZodOptional<z.ZodBoolean>;
|
|
39
|
-
featureValues: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
40
40
|
extra: z.ZodOptional<z.ZodObject<{
|
|
41
41
|
codex: z.ZodOptional<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
42
42
|
claude: z.ZodOptional<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
43
43
|
}, z.core.$strip>>;
|
|
44
|
+
featureValues: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
44
45
|
systemPrompt: z.ZodOptional<z.ZodString>;
|
|
45
46
|
mcpServers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
46
47
|
}, z.core.$strip>;
|
|
@@ -95,15 +96,16 @@ export declare const StoredScheduleSchema: z.ZodObject<{
|
|
|
95
96
|
local: "local";
|
|
96
97
|
}>>;
|
|
97
98
|
title: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
99
|
+
providerOptions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodJSONSchema>>;
|
|
98
100
|
approvalPolicy: z.ZodOptional<z.ZodString>;
|
|
99
101
|
sandboxMode: z.ZodOptional<z.ZodString>;
|
|
100
102
|
networkAccess: z.ZodOptional<z.ZodBoolean>;
|
|
101
103
|
webSearch: z.ZodOptional<z.ZodBoolean>;
|
|
102
|
-
featureValues: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
103
104
|
extra: z.ZodOptional<z.ZodObject<{
|
|
104
105
|
codex: z.ZodOptional<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
105
106
|
claude: z.ZodOptional<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
106
107
|
}, z.core.$strip>>;
|
|
108
|
+
featureValues: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
107
109
|
systemPrompt: z.ZodOptional<z.ZodString>;
|
|
108
110
|
mcpServers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
109
111
|
}, z.core.$strip>;
|
|
@@ -178,15 +180,16 @@ export declare const ScheduleSummarySchema: z.ZodObject<{
|
|
|
178
180
|
local: "local";
|
|
179
181
|
}>>;
|
|
180
182
|
title: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
183
|
+
providerOptions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodJSONSchema>>;
|
|
181
184
|
approvalPolicy: z.ZodOptional<z.ZodString>;
|
|
182
185
|
sandboxMode: z.ZodOptional<z.ZodString>;
|
|
183
186
|
networkAccess: z.ZodOptional<z.ZodBoolean>;
|
|
184
187
|
webSearch: z.ZodOptional<z.ZodBoolean>;
|
|
185
|
-
featureValues: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
186
188
|
extra: z.ZodOptional<z.ZodObject<{
|
|
187
189
|
codex: z.ZodOptional<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
188
190
|
claude: z.ZodOptional<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
189
191
|
}, z.core.$strip>>;
|
|
192
|
+
featureValues: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
190
193
|
systemPrompt: z.ZodOptional<z.ZodString>;
|
|
191
194
|
mcpServers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
192
195
|
}, z.core.$strip>;
|
package/dist/schedule/types.js
CHANGED
|
@@ -32,11 +32,17 @@ export const ScheduleTargetSchema = z.discriminatedUnion("type", [
|
|
|
32
32
|
archiveOnFinish: z.boolean().optional(),
|
|
33
33
|
isolation: z.enum(["local", "worktree"]).optional(),
|
|
34
34
|
title: z.string().trim().min(1).nullable().optional(),
|
|
35
|
+
providerOptions: z.record(z.string(), z.json()).optional(),
|
|
36
|
+
// COMPAT(flatProviderConfigFields): schedules persisted before v0.4.0 carry
|
|
37
|
+
// these flat provider fields instead of providerOptions, and Zod strips
|
|
38
|
+
// unknown keys - without them a stored schedule silently loses its
|
|
39
|
+
// approval/sandbox/network settings on the next rewrite. Re-added
|
|
40
|
+
// 2026-08-22; drop together with the AgentSessionConfigSchema copies when
|
|
41
|
+
// the client floor >= 0.8.13 (target 2027-02-22).
|
|
35
42
|
approvalPolicy: z.string().trim().min(1).optional(),
|
|
36
43
|
sandboxMode: z.string().trim().min(1).optional(),
|
|
37
44
|
networkAccess: z.boolean().optional(),
|
|
38
45
|
webSearch: z.boolean().optional(),
|
|
39
|
-
featureValues: z.record(z.string(), z.unknown()).optional(),
|
|
40
46
|
extra: z
|
|
41
47
|
.object({
|
|
42
48
|
codex: z.record(z.string(), z.unknown()).optional(),
|
|
@@ -44,6 +50,7 @@ export const ScheduleTargetSchema = z.discriminatedUnion("type", [
|
|
|
44
50
|
})
|
|
45
51
|
.partial()
|
|
46
52
|
.optional(),
|
|
53
|
+
featureValues: z.record(z.string(), z.unknown()).optional(),
|
|
47
54
|
systemPrompt: z.string().optional(),
|
|
48
55
|
mcpServers: z.record(z.string(), z.unknown()).optional(),
|
|
49
56
|
}),
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Ranked text matching shared by the app's pickers and the daemon's history
|
|
3
|
+
* search. A match is a tier plus the offset it was found at; lower is better on
|
|
4
|
+
* both, so callers sort ascending and never have to invent a scale.
|
|
5
|
+
*
|
|
6
|
+
* Typo tolerance is opt-in via `fuzzy`. The pickers leave it off — a combobox
|
|
7
|
+
* over a known list wants exact narrowing — while history search turns it on
|
|
8
|
+
* because the user is recalling a title from memory.
|
|
9
|
+
*/
|
|
10
|
+
export interface MatchScore {
|
|
11
|
+
tier: number;
|
|
12
|
+
offset: number;
|
|
13
|
+
spread?: number;
|
|
14
|
+
}
|
|
15
|
+
export interface MatchOptions {
|
|
16
|
+
/** Omit or pass null to match exactly. `fuzzyPolicyForToken` picks a policy. */
|
|
17
|
+
fuzzy?: FuzzyPolicy | null;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* How much a typo in one query token is forgiven. Short tokens get
|
|
21
|
+
* transpositions and nothing else: at four characters a free substitution turns
|
|
22
|
+
* "main" into "mail", "maid", and "rain", while a swap can only ever reach the
|
|
23
|
+
* word the user meant. Null means the token is matched exactly.
|
|
24
|
+
*/
|
|
25
|
+
export interface FuzzyPolicy {
|
|
26
|
+
maxEdits: number;
|
|
27
|
+
transpositionsOnly: boolean;
|
|
28
|
+
}
|
|
29
|
+
export declare function fuzzyPolicyForToken(token: string): FuzzyPolicy | null;
|
|
30
|
+
export declare function scoreMatch(query: string, text: string, options?: MatchOptions): MatchScore | null;
|
|
31
|
+
export interface MatchRange {
|
|
32
|
+
start: number;
|
|
33
|
+
length: number;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Where a score's match actually landed, so a caller can mark it. Derived from
|
|
37
|
+
* a score rather than produced alongside one: ranking touches every candidate
|
|
38
|
+
* and needs no ranges, while only the handful of rows that get rendered do.
|
|
39
|
+
*
|
|
40
|
+
* The tier decides the shape. A substring hit is one span; a subsequence hit is
|
|
41
|
+
* the scattered characters it walked; a typo hit marks the whole word, because
|
|
42
|
+
* the characters the user got wrong are not in the text to point at.
|
|
43
|
+
*/
|
|
44
|
+
export declare function matchRanges(query: string, text: string, score: MatchScore): MatchRange[];
|
|
45
|
+
export declare function compareMatchScores(a: MatchScore, b: MatchScore): number;
|
|
46
|
+
export declare function tokenizeQuery(query: string): string[];
|
|
47
|
+
export interface TextFieldsOptions {
|
|
48
|
+
/**
|
|
49
|
+
* Forgive typos. The budget is per token rather than per query, because a
|
|
50
|
+
* query mixes long words that can absorb an edit with short ones that cannot.
|
|
51
|
+
*/
|
|
52
|
+
typoTolerant?: boolean;
|
|
53
|
+
}
|
|
54
|
+
export declare function scoreTextFields(query: string, fields: string[], options?: TextFieldsOptions): MatchScore | null;
|
|
55
|
+
//# sourceMappingURL=text-match.d.ts.map
|