@osovv/vv-opencode 0.18.0 → 0.19.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/README.md +42 -42
- package/dist/cli.js +5 -5
- package/dist/cli.js.map +1 -1
- package/dist/commands/agent.js +9 -193
- package/dist/commands/agent.js.map +1 -1
- package/dist/commands/completion.js +28 -25
- package/dist/commands/completion.js.map +1 -1
- package/dist/commands/config-validate.js +58 -5
- package/dist/commands/config-validate.js.map +1 -1
- package/dist/commands/doctor.js +11 -2
- package/dist/commands/doctor.js.map +1 -1
- package/dist/commands/init.d.ts +2 -1
- package/dist/commands/init.js +30 -28
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/patch-provider.d.ts +19 -0
- package/dist/commands/patch-provider.js +23 -2
- package/dist/commands/patch-provider.js.map +1 -1
- package/dist/commands/preset.d.ts +3 -11
- package/dist/commands/preset.js +81 -85
- package/dist/commands/preset.js.map +1 -1
- package/dist/commands/role.d.ts +20 -0
- package/dist/commands/role.js +184 -0
- package/dist/commands/role.js.map +1 -0
- package/dist/commands/status.js +17 -2
- package/dist/commands/status.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.js +7 -6
- package/dist/index.js.map +1 -1
- package/dist/lib/agent-models.d.ts +10 -1
- package/dist/lib/agent-models.js +34 -15
- package/dist/lib/agent-models.js.map +1 -1
- package/dist/lib/model-roles.d.ts +44 -0
- package/dist/lib/model-roles.js +144 -0
- package/dist/lib/model-roles.js.map +1 -0
- package/dist/lib/opencode.d.ts +21 -0
- package/dist/lib/opencode.js +178 -31
- package/dist/lib/opencode.js.map +1 -1
- package/dist/lib/vvoc-config.d.ts +24 -10
- package/dist/lib/vvoc-config.js +166 -104
- package/dist/lib/vvoc-config.js.map +1 -1
- package/dist/plugins/guardian/index.js +124 -15
- package/dist/plugins/guardian/index.js.map +1 -1
- package/dist/plugins/memory/index.js +116 -10
- package/dist/plugins/memory/index.js.map +1 -1
- package/dist/plugins/memory-store.d.ts +0 -2
- package/dist/plugins/memory-store.js +2 -3
- package/dist/plugins/memory-store.js.map +1 -1
- package/dist/plugins/model-roles/index.d.ts +2 -0
- package/dist/plugins/model-roles/index.js +230 -0
- package/dist/plugins/model-roles/index.js.map +1 -0
- package/package.json +6 -2
- package/schemas/vvoc/v1.json +1 -1
- package/schemas/vvoc/v2.json +1 -1
- package/schemas/vvoc/v3.json +127 -0
package/dist/lib/vvoc-config.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
// FILE: src/lib/vvoc-config.ts
|
|
2
|
-
// VERSION: 2.
|
|
2
|
+
// VERSION: 2.3.0
|
|
3
3
|
// START_MODULE_CONTRACT
|
|
4
4
|
// PURPOSE: Define the canonical vvoc.json document shape, schema versions, normalization rules, and validation helpers.
|
|
5
|
-
// SCOPE: Versioned schema constants, preset-aware default config generation, strict and lenient config parsing, section rendering/parsing helpers, and schema plus semantic validation for vvoc-owned configuration.
|
|
5
|
+
// SCOPE: Versioned schema constants, preset-aware default config generation including managed built-in presets, strict and lenient config parsing, section rendering/parsing helpers, and schema plus semantic validation for vvoc-owned configuration including OpenCode alias-model defaults.
|
|
6
6
|
// DEPENDS: [ajv/dist/2020, src/lib/agent-models.ts, src/lib/package.ts]
|
|
7
7
|
// LINKS: [M-CLI-CONFIG, M-CLI-CONFIG-VALIDATE, M-CLI-PRESET, M-PLUGIN-GUARDIAN, M-PLUGIN-MEMORY-STORE, M-PLUGIN-SECRETS-REDACTION-INTERNAL-CONFIG]
|
|
8
8
|
// ROLE: RUNTIME
|
|
@@ -41,18 +41,18 @@
|
|
|
41
41
|
//
|
|
42
42
|
// START_CHANGE_SUMMARY
|
|
43
43
|
// LAST_CHANGE: [v2.0.0 - Added vvoc.json schema v2 with declarative named presets and version-aware v1 normalization.]
|
|
44
|
+
// LAST_CHANGE: [v2.3.0 - Switched the built-in vv-openai preset to the vv-managed OpenAI alias model so the default target can carry xhigh reasoning exactly.]
|
|
44
45
|
// END_CHANGE_SUMMARY
|
|
45
46
|
import { Ajv2020 } from "ajv/dist/2020.js";
|
|
46
|
-
import {
|
|
47
|
+
import { BUILTIN_ROLE_NAMES, parseModelSelection } from "./model-roles.js";
|
|
47
48
|
import { PACKAGE_NAME, PACKAGE_VERSION } from "./package.js";
|
|
48
49
|
const DEFAULT_GUARDIAN_TIMEOUT_MS = 90_000;
|
|
49
50
|
const DEFAULT_GUARDIAN_APPROVAL_RISK_THRESHOLD = 80;
|
|
50
51
|
const DEFAULT_MEMORY_SEARCH_LIMIT = 8;
|
|
51
52
|
const DEFAULT_SECRETS_REDACTION_TTL_MS = 3_600_000;
|
|
52
53
|
const DEFAULT_SECRETS_REDACTION_MAX_MAPPINGS = 10_000;
|
|
53
|
-
const
|
|
54
|
-
export const
|
|
55
|
-
export const VVOC_CONFIG_SCHEMA_URL = `https://cdn.jsdelivr.net/npm/${PACKAGE_NAME}@${PACKAGE_VERSION}/schemas/vvoc/v2.json`;
|
|
54
|
+
export const VVOC_CONFIG_VERSION = 3;
|
|
55
|
+
export const VVOC_CONFIG_SCHEMA_URL = `https://cdn.jsdelivr.net/npm/${PACKAGE_NAME}@${PACKAGE_VERSION}/schemas/vvoc/v3.json`;
|
|
56
56
|
const JSON_SCHEMA_DRAFT_2020_12 = "https://json-schema.org/draft/2020-12/schema";
|
|
57
57
|
const BUILTIN_SECRETS_REDACTION_PATTERNS = [
|
|
58
58
|
"email",
|
|
@@ -69,6 +69,7 @@ const BUILTIN_SECRETS_REDACTION_PATTERNS = [
|
|
|
69
69
|
"syn_key",
|
|
70
70
|
"hex_token",
|
|
71
71
|
];
|
|
72
|
+
const BUILTIN_VVOC_PRESET_NAMES = ["vv-openai", "vv-zai", "vv-minimax"];
|
|
72
73
|
const GUARDIAN_CONFIG_SCHEMA = {
|
|
73
74
|
type: "object",
|
|
74
75
|
additionalProperties: false,
|
|
@@ -143,11 +144,11 @@ const SECRETS_REDACTION_CONFIG_SCHEMA = {
|
|
|
143
144
|
},
|
|
144
145
|
},
|
|
145
146
|
};
|
|
146
|
-
const
|
|
147
|
+
const ROLE_ASSIGNMENTS_SCHEMA = {
|
|
147
148
|
type: "object",
|
|
148
|
-
|
|
149
|
+
propertyNames: { minLength: 1, pattern: "^[a-z][a-z0-9-]*$" },
|
|
149
150
|
minProperties: 1,
|
|
150
|
-
|
|
151
|
+
additionalProperties: { type: "string", minLength: 1 },
|
|
151
152
|
};
|
|
152
153
|
const VVOC_PRESET_SCHEMA = {
|
|
153
154
|
type: "object",
|
|
@@ -155,30 +156,7 @@ const VVOC_PRESET_SCHEMA = {
|
|
|
155
156
|
required: ["agents"],
|
|
156
157
|
properties: {
|
|
157
158
|
description: { type: "string", minLength: 1 },
|
|
158
|
-
agents:
|
|
159
|
-
},
|
|
160
|
-
};
|
|
161
|
-
const VVOC_CONFIG_V1_SCHEMA = {
|
|
162
|
-
$schema: JSON_SCHEMA_DRAFT_2020_12,
|
|
163
|
-
$id: VVOC_CONFIG_V1_SCHEMA_URL,
|
|
164
|
-
title: "vvoc config",
|
|
165
|
-
description: "Canonical vvoc configuration document (v1).",
|
|
166
|
-
type: "object",
|
|
167
|
-
additionalProperties: false,
|
|
168
|
-
required: ["$schema", "version", "guardian", "memory", "secretsRedaction"],
|
|
169
|
-
properties: {
|
|
170
|
-
$schema: {
|
|
171
|
-
type: "string",
|
|
172
|
-
minLength: 1,
|
|
173
|
-
description: "Hosted JSON Schema URL for vvoc.json.",
|
|
174
|
-
},
|
|
175
|
-
version: {
|
|
176
|
-
type: "integer",
|
|
177
|
-
const: 1,
|
|
178
|
-
},
|
|
179
|
-
guardian: GUARDIAN_CONFIG_SCHEMA,
|
|
180
|
-
memory: MEMORY_CONFIG_SCHEMA,
|
|
181
|
-
secretsRedaction: SECRETS_REDACTION_CONFIG_SCHEMA,
|
|
159
|
+
agents: ROLE_ASSIGNMENTS_SCHEMA,
|
|
182
160
|
},
|
|
183
161
|
};
|
|
184
162
|
export const VVOC_CONFIG_SCHEMA = {
|
|
@@ -188,7 +166,7 @@ export const VVOC_CONFIG_SCHEMA = {
|
|
|
188
166
|
description: "Canonical vvoc configuration document.",
|
|
189
167
|
type: "object",
|
|
190
168
|
additionalProperties: false,
|
|
191
|
-
required: ["$schema", "version", "guardian", "memory", "secretsRedaction", "presets"],
|
|
169
|
+
required: ["$schema", "version", "roles", "guardian", "memory", "secretsRedaction", "presets"],
|
|
192
170
|
properties: {
|
|
193
171
|
$schema: {
|
|
194
172
|
type: "string",
|
|
@@ -199,6 +177,12 @@ export const VVOC_CONFIG_SCHEMA = {
|
|
|
199
177
|
type: "integer",
|
|
200
178
|
const: VVOC_CONFIG_VERSION,
|
|
201
179
|
},
|
|
180
|
+
roles: {
|
|
181
|
+
type: "object",
|
|
182
|
+
propertyNames: { minLength: 1, pattern: "^[a-z][a-z0-9-]*$" },
|
|
183
|
+
minProperties: BUILTIN_ROLE_NAMES.length,
|
|
184
|
+
additionalProperties: { type: "string", minLength: 1 },
|
|
185
|
+
},
|
|
202
186
|
guardian: GUARDIAN_CONFIG_SCHEMA,
|
|
203
187
|
memory: MEMORY_CONFIG_SCHEMA,
|
|
204
188
|
secretsRedaction: SECRETS_REDACTION_CONFIG_SCHEMA,
|
|
@@ -210,7 +194,6 @@ export const VVOC_CONFIG_SCHEMA = {
|
|
|
210
194
|
},
|
|
211
195
|
};
|
|
212
196
|
const ajv = new Ajv2020({ allErrors: true, strict: false });
|
|
213
|
-
const validateWithV1Schema = ajv.compile(VVOC_CONFIG_V1_SCHEMA);
|
|
214
197
|
const validateWithSchema = ajv.compile(VVOC_CONFIG_SCHEMA);
|
|
215
198
|
// START_BLOCK_DEFAULT_CONFIG_BUILDERS
|
|
216
199
|
export function createGuardianConfig(overrides = {}) {
|
|
@@ -247,40 +230,61 @@ export function createDefaultSecretsRedactionConfig() {
|
|
|
247
230
|
};
|
|
248
231
|
}
|
|
249
232
|
export function createDefaultVvocPresets() {
|
|
250
|
-
return
|
|
251
|
-
|
|
252
|
-
|
|
233
|
+
return createBuiltinVvocPresets();
|
|
234
|
+
}
|
|
235
|
+
function createDefaultRoleAssignments(overrides = {}) {
|
|
236
|
+
const defaults = {
|
|
237
|
+
default: "openai/vv-gpt-5.4-xhigh",
|
|
238
|
+
smart: "openai/vv-gpt-5.4-xhigh",
|
|
239
|
+
fast: "openai/gpt-5.4-mini",
|
|
240
|
+
vision: "openai/gpt-4.1",
|
|
241
|
+
};
|
|
242
|
+
const roles = { ...defaults };
|
|
243
|
+
for (const [roleId, modelSelection] of Object.entries(overrides)) {
|
|
244
|
+
if (typeof modelSelection !== "string") {
|
|
245
|
+
continue;
|
|
246
|
+
}
|
|
247
|
+
const normalizedRoleId = normalizeRoleId(roleId, `role ${roleId}`);
|
|
248
|
+
roles[normalizedRoleId] = normalizeRoleModelSelection(modelSelection, `role ${normalizedRoleId}`);
|
|
249
|
+
}
|
|
250
|
+
return roles;
|
|
251
|
+
}
|
|
252
|
+
function createBuiltinVvocPresets() {
|
|
253
|
+
return {
|
|
254
|
+
"vv-openai": createVvocPreset({
|
|
255
|
+
description: "Starter OpenAI role assignments for built-in vvoc roles.",
|
|
253
256
|
agents: {
|
|
254
|
-
default: "openai/gpt-5.4
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
257
|
+
default: "openai/vv-gpt-5.4-xhigh",
|
|
258
|
+
smart: "openai/vv-gpt-5.4-xhigh",
|
|
259
|
+
fast: "openai/gpt-5.4-mini",
|
|
260
|
+
vision: "openai/gpt-4.1",
|
|
258
261
|
},
|
|
259
|
-
},
|
|
260
|
-
zai: {
|
|
261
|
-
description: "Starter ZAI
|
|
262
|
+
}),
|
|
263
|
+
"vv-zai": createVvocPreset({
|
|
264
|
+
description: "Starter ZAI role assignments for built-in vvoc roles.",
|
|
262
265
|
agents: {
|
|
263
266
|
default: "zai-coding-plan/glm-5.1",
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
+
smart: "zai-coding-plan/glm-5.1",
|
|
268
|
+
fast: "zai-coding-plan/glm-4.5-airx",
|
|
269
|
+
vision: "zai-coding-plan/glm-4.5v",
|
|
267
270
|
},
|
|
268
|
-
},
|
|
269
|
-
minimax: {
|
|
270
|
-
description: "Starter MiniMax
|
|
271
|
+
}),
|
|
272
|
+
"vv-minimax": createVvocPreset({
|
|
273
|
+
description: "Starter MiniMax role assignments for built-in vvoc roles.",
|
|
271
274
|
agents: {
|
|
272
|
-
default: "minimax-coding-plan/
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
275
|
+
default: "minimax-coding-plan/MiniMax-M2.7",
|
|
276
|
+
smart: "minimax-coding-plan/MiniMax-M2.7",
|
|
277
|
+
fast: "minimax-coding-plan/MiniMax-M2.1",
|
|
278
|
+
vision: "minimax-coding-plan/MiniMax-M2.1",
|
|
276
279
|
},
|
|
277
|
-
},
|
|
278
|
-
}
|
|
280
|
+
}),
|
|
281
|
+
};
|
|
279
282
|
}
|
|
280
283
|
export function createDefaultVvocConfig() {
|
|
281
284
|
return {
|
|
282
285
|
$schema: VVOC_CONFIG_SCHEMA_URL,
|
|
283
286
|
version: VVOC_CONFIG_VERSION,
|
|
287
|
+
roles: createDefaultRoleAssignments(),
|
|
284
288
|
guardian: createGuardianConfig(),
|
|
285
289
|
memory: createMemoryConfig(),
|
|
286
290
|
secretsRedaction: createDefaultSecretsRedactionConfig(),
|
|
@@ -369,22 +373,22 @@ export function loadLenientVvocConfigText(text, label, warnings) {
|
|
|
369
373
|
warnings.push(`${label}: expected a top-level object`);
|
|
370
374
|
return createDefaultVvocConfig();
|
|
371
375
|
}
|
|
372
|
-
|
|
376
|
+
readLenientSupportedVersion(value.version, `${label}: version`, warnings);
|
|
373
377
|
return {
|
|
374
378
|
$schema: VVOC_CONFIG_SCHEMA_URL,
|
|
375
379
|
version: VVOC_CONFIG_VERSION,
|
|
380
|
+
roles: loadLenientRoleAssignments(value.roles, `${label}: roles`, warnings),
|
|
376
381
|
guardian: loadLenientGuardianConfig(value.guardian, `${label}: guardian`, warnings),
|
|
377
382
|
memory: loadLenientMemoryConfig(value.memory, `${label}: memory`, warnings),
|
|
378
383
|
secretsRedaction: loadLenientSecretsRedactionConfig(value.secretsRedaction, `${label}: secretsRedaction`, warnings),
|
|
379
|
-
presets:
|
|
380
|
-
? loadLenientVvocPresets(value.presets, `${label}: presets`, warnings)
|
|
381
|
-
: createDefaultVvocPresets(),
|
|
384
|
+
presets: loadLenientVvocPresets(value.presets, `${label}: presets`, warnings),
|
|
382
385
|
};
|
|
383
386
|
}
|
|
384
387
|
export function renderVvocConfig(config = createDefaultVvocConfig()) {
|
|
385
388
|
return renderJson({
|
|
386
389
|
$schema: VVOC_CONFIG_SCHEMA_URL,
|
|
387
390
|
version: VVOC_CONFIG_VERSION,
|
|
391
|
+
roles: createDefaultRoleAssignments(config.roles),
|
|
388
392
|
guardian: createGuardianConfig(config.guardian),
|
|
389
393
|
memory: createMemoryConfig(config.memory),
|
|
390
394
|
secretsRedaction: createSecretsRedactionConfig(config.secretsRedaction),
|
|
@@ -394,9 +398,8 @@ export function renderVvocConfig(config = createDefaultVvocConfig()) {
|
|
|
394
398
|
// END_BLOCK_CANONICAL_CONFIG_PARSE_RENDER
|
|
395
399
|
// START_BLOCK_SCHEMA_VALIDATION
|
|
396
400
|
export function validateVvocConfigDocument(document) {
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
return (validator.errors ?? []).map(formatSchemaError);
|
|
401
|
+
if (!validateWithSchema(document)) {
|
|
402
|
+
return (validateWithSchema.errors ?? []).map(formatSchemaError);
|
|
400
403
|
}
|
|
401
404
|
if (isPlainObject(document) && document.version === VVOC_CONFIG_VERSION) {
|
|
402
405
|
return validatePresetSemantics(document);
|
|
@@ -406,25 +409,18 @@ export function validateVvocConfigDocument(document) {
|
|
|
406
409
|
// END_BLOCK_SCHEMA_VALIDATION
|
|
407
410
|
function normalizeStrictVvocConfig(value) {
|
|
408
411
|
const sourceVersion = readSupportedVersion(value.version, "version");
|
|
409
|
-
const baseConfig = {
|
|
410
|
-
$schema: VVOC_CONFIG_SCHEMA_URL,
|
|
411
|
-
version: VVOC_CONFIG_VERSION,
|
|
412
|
-
guardian: createGuardianConfig(value.guardian),
|
|
413
|
-
memory: createMemoryConfig(value.memory),
|
|
414
|
-
secretsRedaction: createSecretsRedactionConfig(value.secretsRedaction),
|
|
415
|
-
};
|
|
416
412
|
return {
|
|
417
413
|
sourceSchema: readNonEmptyString(value.$schema, "$schema"),
|
|
418
414
|
sourceVersion,
|
|
419
|
-
config:
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
:
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
415
|
+
config: {
|
|
416
|
+
$schema: VVOC_CONFIG_SCHEMA_URL,
|
|
417
|
+
version: VVOC_CONFIG_VERSION,
|
|
418
|
+
roles: createDefaultRoleAssignments(value.roles),
|
|
419
|
+
guardian: createGuardianConfig(value.guardian),
|
|
420
|
+
memory: createMemoryConfig(value.memory),
|
|
421
|
+
secretsRedaction: createSecretsRedactionConfig(value.secretsRedaction),
|
|
422
|
+
presets: createVvocPresets(value.presets),
|
|
423
|
+
},
|
|
428
424
|
};
|
|
429
425
|
}
|
|
430
426
|
function createSecretsRedactionConfig(overrides = {}) {
|
|
@@ -445,12 +441,19 @@ function createSecretsRedactionConfig(overrides = {}) {
|
|
|
445
441
|
};
|
|
446
442
|
}
|
|
447
443
|
function createVvocPresets(overrides = {}) {
|
|
448
|
-
const presets =
|
|
444
|
+
const presets = createBuiltinVvocPresets();
|
|
449
445
|
for (const [presetName, preset] of Object.entries(overrides)) {
|
|
446
|
+
// Managed built-ins are always rewritten from vvoc defaults.
|
|
447
|
+
if (isBuiltinVvocPresetName(presetName)) {
|
|
448
|
+
continue;
|
|
449
|
+
}
|
|
450
450
|
presets[presetName] = createVvocPreset(preset);
|
|
451
451
|
}
|
|
452
452
|
return presets;
|
|
453
453
|
}
|
|
454
|
+
function isBuiltinVvocPresetName(name) {
|
|
455
|
+
return BUILTIN_VVOC_PRESET_NAMES.includes(name);
|
|
456
|
+
}
|
|
454
457
|
function createVvocPreset(overrides = {}) {
|
|
455
458
|
return compactObject({
|
|
456
459
|
description: normalizeOptionalString(overrides.description),
|
|
@@ -459,12 +462,12 @@ function createVvocPreset(overrides = {}) {
|
|
|
459
462
|
}
|
|
460
463
|
function createVvocPresetAgents(overrides = {}) {
|
|
461
464
|
const agents = {};
|
|
462
|
-
for (const
|
|
463
|
-
|
|
464
|
-
if (value === undefined) {
|
|
465
|
+
for (const [roleId, modelSelection] of Object.entries(overrides)) {
|
|
466
|
+
if (typeof modelSelection !== "string") {
|
|
465
467
|
continue;
|
|
466
468
|
}
|
|
467
|
-
|
|
469
|
+
const normalizedRoleId = normalizeRoleId(roleId, `preset role ${roleId}`);
|
|
470
|
+
agents[normalizedRoleId] = normalizeRoleModelSelection(modelSelection, `preset role ${normalizedRoleId}`);
|
|
468
471
|
}
|
|
469
472
|
return agents;
|
|
470
473
|
}
|
|
@@ -682,6 +685,9 @@ function loadLenientVvocPresets(value, label, warnings) {
|
|
|
682
685
|
warnings.push(`${label}: preset names must be non-empty strings`);
|
|
683
686
|
continue;
|
|
684
687
|
}
|
|
688
|
+
if (isBuiltinVvocPresetName(presetName)) {
|
|
689
|
+
continue;
|
|
690
|
+
}
|
|
685
691
|
if (!isPlainObject(presetValue)) {
|
|
686
692
|
warnings.push(`${label}.${presetName}: expected an object`);
|
|
687
693
|
continue;
|
|
@@ -696,7 +702,7 @@ function loadLenientVvocPresets(value, label, warnings) {
|
|
|
696
702
|
}
|
|
697
703
|
presets[presetName] = createVvocPreset({ description, agents });
|
|
698
704
|
}
|
|
699
|
-
return
|
|
705
|
+
return createVvocPresets(presets);
|
|
700
706
|
}
|
|
701
707
|
function loadLenientVvocPresetAgents(value, label, warnings) {
|
|
702
708
|
if (!isPlainObject(value)) {
|
|
@@ -704,30 +710,55 @@ function loadLenientVvocPresetAgents(value, label, warnings) {
|
|
|
704
710
|
return {};
|
|
705
711
|
}
|
|
706
712
|
const agents = {};
|
|
707
|
-
for (const [
|
|
708
|
-
|
|
709
|
-
|
|
713
|
+
for (const [roleId, modelValue] of Object.entries(value)) {
|
|
714
|
+
let normalizedRoleId;
|
|
715
|
+
try {
|
|
716
|
+
normalizedRoleId = normalizeRoleId(roleId, `${label}.${roleId}`);
|
|
717
|
+
}
|
|
718
|
+
catch (error) {
|
|
719
|
+
warnings.push(error instanceof Error ? error.message : String(error));
|
|
710
720
|
continue;
|
|
711
721
|
}
|
|
712
722
|
try {
|
|
713
|
-
agents[
|
|
723
|
+
agents[normalizedRoleId] = normalizeRoleModelSelection(modelValue, `${label}.${normalizedRoleId}`);
|
|
714
724
|
}
|
|
715
725
|
catch (error) {
|
|
716
|
-
warnings.push(`${label}.${
|
|
726
|
+
warnings.push(`${label}.${normalizedRoleId}: ${error instanceof Error ? error.message : String(error)}`);
|
|
717
727
|
}
|
|
718
728
|
}
|
|
719
729
|
return agents;
|
|
720
730
|
}
|
|
721
731
|
function readLenientSupportedVersion(value, label, warnings) {
|
|
722
|
-
if (value ===
|
|
723
|
-
return VVOC_CONFIG_VERSION;
|
|
724
|
-
}
|
|
725
|
-
if (value === 1 || value === VVOC_CONFIG_VERSION) {
|
|
732
|
+
if (value === VVOC_CONFIG_VERSION) {
|
|
726
733
|
return value;
|
|
727
734
|
}
|
|
728
|
-
warnings.push(`${label}: expected
|
|
735
|
+
warnings.push(`${label}: expected ${VVOC_CONFIG_VERSION}`);
|
|
729
736
|
return VVOC_CONFIG_VERSION;
|
|
730
737
|
}
|
|
738
|
+
function loadLenientRoleAssignments(value, label, warnings) {
|
|
739
|
+
if (!isPlainObject(value)) {
|
|
740
|
+
warnings.push(`${label}: expected an object`);
|
|
741
|
+
return createDefaultRoleAssignments();
|
|
742
|
+
}
|
|
743
|
+
const roles = {};
|
|
744
|
+
for (const [roleId, modelSelection] of Object.entries(value)) {
|
|
745
|
+
let normalizedRoleId;
|
|
746
|
+
try {
|
|
747
|
+
normalizedRoleId = normalizeRoleId(roleId, `${label}.${roleId}`);
|
|
748
|
+
}
|
|
749
|
+
catch (error) {
|
|
750
|
+
warnings.push(error instanceof Error ? error.message : String(error));
|
|
751
|
+
continue;
|
|
752
|
+
}
|
|
753
|
+
try {
|
|
754
|
+
roles[normalizedRoleId] = normalizeRoleModelSelection(modelSelection, `${label}.${normalizedRoleId}`);
|
|
755
|
+
}
|
|
756
|
+
catch (error) {
|
|
757
|
+
warnings.push(error instanceof Error ? error.message : String(error));
|
|
758
|
+
}
|
|
759
|
+
}
|
|
760
|
+
return createDefaultRoleAssignments(roles);
|
|
761
|
+
}
|
|
731
762
|
function readLenientOptionalString(value, label, warnings) {
|
|
732
763
|
if (typeof value !== "string" || !value.trim()) {
|
|
733
764
|
warnings.push(`${label}: expected a non-empty string`);
|
|
@@ -761,10 +792,10 @@ function parseStrictJson(text, label) {
|
|
|
761
792
|
}
|
|
762
793
|
}
|
|
763
794
|
function readSupportedVersion(value, label) {
|
|
764
|
-
if (value ===
|
|
795
|
+
if (value === VVOC_CONFIG_VERSION) {
|
|
765
796
|
return value;
|
|
766
797
|
}
|
|
767
|
-
throw new Error(`${label}: expected
|
|
798
|
+
throw new Error(`${label}: expected ${VVOC_CONFIG_VERSION}`);
|
|
768
799
|
}
|
|
769
800
|
function readNonEmptyString(value, label) {
|
|
770
801
|
if (typeof value !== "string" || !value.trim()) {
|
|
@@ -810,27 +841,58 @@ function renderJson(value) {
|
|
|
810
841
|
return `${JSON.stringify(value, null, 2)}\n`;
|
|
811
842
|
}
|
|
812
843
|
function validatePresetSemantics(document) {
|
|
844
|
+
const rolesValue = document.roles;
|
|
845
|
+
const errors = [];
|
|
846
|
+
if (isPlainObject(rolesValue)) {
|
|
847
|
+
for (const builtInRoleName of BUILTIN_ROLE_NAMES) {
|
|
848
|
+
if (!Object.hasOwn(rolesValue, builtInRoleName)) {
|
|
849
|
+
errors.push(`/roles missing required property "${builtInRoleName}"`);
|
|
850
|
+
}
|
|
851
|
+
}
|
|
852
|
+
for (const [roleId, modelValue] of Object.entries(rolesValue)) {
|
|
853
|
+
const location = `/roles/${roleId}`;
|
|
854
|
+
try {
|
|
855
|
+
normalizeRoleId(roleId, location);
|
|
856
|
+
normalizeRoleModelSelection(modelValue, location);
|
|
857
|
+
}
|
|
858
|
+
catch (error) {
|
|
859
|
+
errors.push(error instanceof Error ? error.message : String(error));
|
|
860
|
+
}
|
|
861
|
+
}
|
|
862
|
+
}
|
|
813
863
|
const presetsValue = document.presets;
|
|
814
864
|
if (!isPlainObject(presetsValue)) {
|
|
815
|
-
return
|
|
865
|
+
return errors;
|
|
816
866
|
}
|
|
817
|
-
const errors = [];
|
|
818
867
|
for (const [presetName, presetValue] of Object.entries(presetsValue)) {
|
|
819
868
|
if (!isPlainObject(presetValue) || !isPlainObject(presetValue.agents)) {
|
|
820
869
|
continue;
|
|
821
870
|
}
|
|
822
|
-
for (const [
|
|
823
|
-
const location = `/presets/${presetName}/agents/${
|
|
871
|
+
for (const [roleId, modelValue] of Object.entries(presetValue.agents)) {
|
|
872
|
+
const location = `/presets/${presetName}/agents/${roleId}`;
|
|
824
873
|
try {
|
|
825
|
-
|
|
874
|
+
normalizeRoleId(roleId, location);
|
|
875
|
+
normalizeRoleModelSelection(modelValue, location);
|
|
826
876
|
}
|
|
827
877
|
catch (error) {
|
|
828
|
-
errors.push(
|
|
878
|
+
errors.push(error instanceof Error ? error.message : String(error));
|
|
829
879
|
}
|
|
830
880
|
}
|
|
831
881
|
}
|
|
832
882
|
return errors;
|
|
833
883
|
}
|
|
884
|
+
function normalizeRoleModelSelection(value, label) {
|
|
885
|
+
const modelSelection = readNonEmptyString(value, label);
|
|
886
|
+
const parsed = parseModelSelection(modelSelection);
|
|
887
|
+
return parsed.normalized;
|
|
888
|
+
}
|
|
889
|
+
function normalizeRoleId(value, label) {
|
|
890
|
+
const roleId = readNonEmptyString(value, label);
|
|
891
|
+
if (!/^[a-z][a-z0-9-]*$/.test(roleId)) {
|
|
892
|
+
throw new Error(`${label}: expected lowercase letters, digits, and hyphens`);
|
|
893
|
+
}
|
|
894
|
+
return roleId;
|
|
895
|
+
}
|
|
834
896
|
function formatSchemaError(error) {
|
|
835
897
|
const path = error.instancePath || "/";
|
|
836
898
|
if (error.keyword === "required") {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vvoc-config.js","sourceRoot":"","sources":["../../src/lib/vvoc-config.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"vvoc-config.js","sourceRoot":"","sources":["../../src/lib/vvoc-config.ts"],"names":[],"mappings":"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"}
|