create-principles-disciple 1.81.0 → 1.82.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.
@@ -0,0 +1,13 @@
1
+ /**
2
+ * PD Config Redaction Deep Coverage — PRI-304
3
+ *
4
+ * 补充测试覆盖缺口:
5
+ * - 嵌套对象中的敏感数据脱敏
6
+ * - 数组中的敏感数据脱敏
7
+ * - 循环引用处理
8
+ * - 多层嵌套的敏感键检测
9
+ * - 特殊格式的token值(Bearer, sk-, 自定义格式)
10
+ * - 边界条件:空值、null、undefined
11
+ */
12
+ export {};
13
+ //# sourceMappingURL=pd-config-redaction-deep.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pd-config-redaction-deep.test.d.ts","sourceRoot":"","sources":["../../../../src/runtime-v2/config/__tests__/pd-config-redaction-deep.test.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG"}
@@ -0,0 +1,447 @@
1
+ /**
2
+ * PD Config Redaction Deep Coverage — PRI-304
3
+ *
4
+ * 补充测试覆盖缺口:
5
+ * - 嵌套对象中的敏感数据脱敏
6
+ * - 数组中的敏感数据脱敏
7
+ * - 循环引用处理
8
+ * - 多层嵌套的敏感键检测
9
+ * - 特殊格式的token值(Bearer, sk-, 自定义格式)
10
+ * - 边界条件:空值、null、undefined
11
+ */
12
+ import { describe, it, expect } from 'vitest';
13
+ import { redactConfigValue, redactPdConfig, computeEffectivePdConfig, validatePdConfig, } from '../index.js';
14
+ function makeValidConfig() {
15
+ return {
16
+ version: 1,
17
+ features: {
18
+ prompt: { category: 'core', enabled: true },
19
+ code_tool_hook: { category: 'core', enabled: true },
20
+ defer_archive: { category: 'core', enabled: true },
21
+ correction_observer: { category: 'quiet', enabled: true },
22
+ gfi: { category: 'quiet', enabled: false },
23
+ nocturnal: { category: 'gone', enabled: false },
24
+ },
25
+ runtimeProfiles: {
26
+ 'openclaw.default': { type: 'openclaw', source: 'default' },
27
+ 'pd.anthropic': {
28
+ type: 'pi-ai',
29
+ provider: 'anthropic',
30
+ model: 'claude-3-5-sonnet',
31
+ apiKeyEnv: 'ANTHROPIC_API_KEY',
32
+ },
33
+ },
34
+ internalAgents: {
35
+ defaultRuntime: 'openclaw.default',
36
+ agents: {
37
+ diagnostician: { enabled: true },
38
+ dreamer: { enabled: true },
39
+ scribe: { enabled: true },
40
+ artificer: { enabled: true },
41
+ philosopher: { enabled: false },
42
+ evaluator: { enabled: false },
43
+ rolloutReviewer: { enabled: false },
44
+ trainer: { enabled: false },
45
+ correctionObserver: { enabled: false },
46
+ empathyObserver: { enabled: false },
47
+ },
48
+ },
49
+ ui: { diagnostics: { mode: 'simple' } },
50
+ };
51
+ }
52
+ // Helper function to safely cast result
53
+ function asObject(result) {
54
+ if (typeof result === 'object' && result !== null && !Array.isArray(result)) {
55
+ return result;
56
+ }
57
+ return null;
58
+ }
59
+ // ── Nested Object Redaction ──────────────────────────────────────────────────
60
+ describe('Nested object redaction', () => {
61
+ it('redacts sensitive keys in nested objects', () => {
62
+ const input = {
63
+ level1: {
64
+ level2: {
65
+ apiKey: 'sk-secret-key-12345',
66
+ safeValue: 'public-data',
67
+ },
68
+ },
69
+ };
70
+ const result = redactConfigValue(input);
71
+ const obj = asObject(result);
72
+ expect(obj).not.toBeNull();
73
+ if (obj) {
74
+ const l1 = asObject(obj.level1);
75
+ expect(l1).not.toBeNull();
76
+ if (l1) {
77
+ const l2 = asObject(l1.level2);
78
+ expect(l2).not.toBeNull();
79
+ if (l2) {
80
+ expect(l2.apiKey).toBe('[REDACTED]');
81
+ expect(l2.safeValue).toBe('public-data');
82
+ }
83
+ }
84
+ }
85
+ });
86
+ it('preserves non-sensitive nested structure', () => {
87
+ const input = {
88
+ settings: {
89
+ display: {
90
+ theme: 'dark',
91
+ fontSize: 14,
92
+ },
93
+ network: {
94
+ timeout: 5000,
95
+ retries: 3,
96
+ },
97
+ },
98
+ };
99
+ const result = redactConfigValue(input);
100
+ const obj = asObject(result);
101
+ expect(obj).not.toBeNull();
102
+ if (obj) {
103
+ const settings = asObject(obj.settings);
104
+ expect(settings).not.toBeNull();
105
+ if (settings) {
106
+ const display = asObject(settings.display);
107
+ expect(display).not.toBeNull();
108
+ if (display) {
109
+ expect(display.theme).toBe('dark');
110
+ expect(display.fontSize).toBe(14);
111
+ }
112
+ }
113
+ }
114
+ });
115
+ });
116
+ // ── Array Redaction ───────────────────────────────────────────────────────────
117
+ describe('Array redaction', () => {
118
+ it('redacts sensitive values in arrays', () => {
119
+ const input = {
120
+ keys: ['sk-ant-api03-key', 'public-key', 'Bearer token123'],
121
+ };
122
+ const result = redactConfigValue(input);
123
+ const obj = asObject(result);
124
+ expect(obj).not.toBeNull();
125
+ if (obj) {
126
+ const keys = obj.keys;
127
+ expect(Array.isArray(keys)).toBe(true);
128
+ if (Array.isArray(keys)) {
129
+ expect(keys[0]).toBe('[REDACTED]');
130
+ expect(keys[1]).toBe('public-key');
131
+ expect(keys[2]).toBe('[REDACTED]');
132
+ }
133
+ }
134
+ });
135
+ it('redacts sensitive keys in array of objects', () => {
136
+ const input = {
137
+ profiles: [
138
+ { name: 'profile1', apiKey: 'secret1' },
139
+ { name: 'profile2', token: 'secret2' },
140
+ { name: 'profile3', safeField: 'value3' },
141
+ ],
142
+ };
143
+ const result = redactConfigValue(input);
144
+ const obj = asObject(result);
145
+ expect(obj).not.toBeNull();
146
+ if (obj) {
147
+ const profiles = obj.profiles;
148
+ expect(Array.isArray(profiles)).toBe(true);
149
+ if (Array.isArray(profiles)) {
150
+ const p0 = asObject(profiles[0]);
151
+ expect(p0).not.toBeNull();
152
+ if (p0) {
153
+ expect(p0.apiKey).toBe('[REDACTED]');
154
+ expect(p0.name).toBe('profile1');
155
+ }
156
+ const p1 = asObject(profiles[1]);
157
+ expect(p1).not.toBeNull();
158
+ if (p1) {
159
+ expect(p1.token).toBe('[REDACTED]');
160
+ }
161
+ const p2 = asObject(profiles[2]);
162
+ expect(p2).not.toBeNull();
163
+ if (p2) {
164
+ expect(p2.safeField).toBe('value3');
165
+ }
166
+ }
167
+ }
168
+ });
169
+ it('handles empty arrays', () => {
170
+ const input = { items: [] };
171
+ const result = redactConfigValue(input);
172
+ const obj = asObject(result);
173
+ expect(obj).not.toBeNull();
174
+ if (obj) {
175
+ expect(obj.items).toEqual([]);
176
+ }
177
+ });
178
+ });
179
+ // ── Token Pattern Variations ──────────────────────────────────────────────────
180
+ describe('Token pattern variations', () => {
181
+ it('redacts sk-ant- prefix tokens', () => {
182
+ const input = { key: 'sk-ant-api03-xxxxxxxxxxxx' };
183
+ const result = redactConfigValue(input);
184
+ const obj = asObject(result);
185
+ expect(obj).not.toBeNull();
186
+ if (obj) {
187
+ expect(obj.key).toBe('[REDACTED]');
188
+ }
189
+ });
190
+ it('redacts sk- prefix tokens', () => {
191
+ const input = { key: 'sk-xxxxxxxxxxxxxxxx' };
192
+ const result = redactConfigValue(input);
193
+ const obj = asObject(result);
194
+ expect(obj).not.toBeNull();
195
+ if (obj) {
196
+ expect(obj.key).toBe('[REDACTED]');
197
+ }
198
+ });
199
+ it('redacts Bearer tokens in strings', () => {
200
+ const input = { auth: 'Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9' };
201
+ const result = redactConfigValue(input);
202
+ const obj = asObject(result);
203
+ expect(obj).not.toBeNull();
204
+ if (obj) {
205
+ expect(obj.auth).toBe('[REDACTED]');
206
+ }
207
+ });
208
+ it('preserves non-token-like strings', () => {
209
+ const input = {
210
+ message: 'This is a safe message',
211
+ id: 'user-12345',
212
+ path: '/api/v1/endpoint',
213
+ };
214
+ const result = redactConfigValue(input);
215
+ const obj = asObject(result);
216
+ expect(obj).not.toBeNull();
217
+ if (obj) {
218
+ expect(obj.message).toBe('This is a safe message');
219
+ expect(obj.id).toBe('user-12345');
220
+ expect(obj.path).toBe('/api/v1/endpoint');
221
+ }
222
+ });
223
+ });
224
+ // ── Sensitive Key Detection ───────────────────────────────────────────────────
225
+ describe('Sensitive key detection variations', () => {
226
+ it('detects apiKey (camelCase)', () => {
227
+ const input = { apiKey: 'secret' };
228
+ const result = redactConfigValue(input);
229
+ const obj = asObject(result);
230
+ expect(obj).not.toBeNull();
231
+ if (obj) {
232
+ expect(obj.apiKey).toBe('[REDACTED]');
233
+ }
234
+ });
235
+ it('detects api_key (snake_case)', () => {
236
+ const input = { api_key: 'secret' };
237
+ const result = redactConfigValue(input);
238
+ const obj = asObject(result);
239
+ expect(obj).not.toBeNull();
240
+ if (obj) {
241
+ expect(obj.api_key).toBe('[REDACTED]');
242
+ }
243
+ });
244
+ it('detects API_KEY (uppercase)', () => {
245
+ const input = { API_KEY: 'secret' };
246
+ const result = redactConfigValue(input);
247
+ const obj = asObject(result);
248
+ expect(obj).not.toBeNull();
249
+ if (obj) {
250
+ expect(obj.API_KEY).toBe('[REDACTED]');
251
+ }
252
+ });
253
+ it('detects accessToken', () => {
254
+ const input = { accessToken: 'secret-token' };
255
+ const result = redactConfigValue(input);
256
+ const obj = asObject(result);
257
+ expect(obj).not.toBeNull();
258
+ if (obj) {
259
+ expect(obj.accessToken).toBe('[REDACTED]');
260
+ }
261
+ });
262
+ it('detects refresh_token', () => {
263
+ const input = { refresh_token: 'refresh-secret' };
264
+ const result = redactConfigValue(input);
265
+ const obj = asObject(result);
266
+ expect(obj).not.toBeNull();
267
+ if (obj) {
268
+ expect(obj.refresh_token).toBe('[REDACTED]');
269
+ }
270
+ });
271
+ it('detects private_key', () => {
272
+ const input = { private_key: 'private-key-data' };
273
+ const result = redactConfigValue(input);
274
+ const obj = asObject(result);
275
+ expect(obj).not.toBeNull();
276
+ if (obj) {
277
+ expect(obj.private_key).toBe('[REDACTED]');
278
+ }
279
+ });
280
+ it('detects certificate', () => {
281
+ const input = { certificate: 'cert-data' };
282
+ const result = redactConfigValue(input);
283
+ const obj = asObject(result);
284
+ expect(obj).not.toBeNull();
285
+ if (obj) {
286
+ expect(obj.certificate).toBe('[REDACTED]');
287
+ }
288
+ });
289
+ it('detects signature', () => {
290
+ const input = { signature: 'sig-data' };
291
+ const result = redactConfigValue(input);
292
+ const obj = asObject(result);
293
+ expect(obj).not.toBeNull();
294
+ if (obj) {
295
+ expect(obj.signature).toBe('[REDACTED]');
296
+ }
297
+ });
298
+ it('detects compound keys like my_api_key', () => {
299
+ const input = { my_api_key: 'compound-secret' };
300
+ const result = redactConfigValue(input);
301
+ const obj = asObject(result);
302
+ expect(obj).not.toBeNull();
303
+ if (obj) {
304
+ expect(obj.my_api_key).toBe('[REDACTED]');
305
+ }
306
+ });
307
+ it('detects compound keys like user_access_token', () => {
308
+ const input = { user_access_token: 'compound-token' };
309
+ const result = redactConfigValue(input);
310
+ const obj = asObject(result);
311
+ expect(obj).not.toBeNull();
312
+ if (obj) {
313
+ expect(obj.user_access_token).toBe('[REDACTED]');
314
+ }
315
+ });
316
+ });
317
+ // ── Boundary Conditions ───────────────────────────────────────────────────────
318
+ describe('Boundary conditions', () => {
319
+ it('handles null input (returns null as-is)', () => {
320
+ const result = redactConfigValue(null);
321
+ expect(result).toBe(null);
322
+ });
323
+ it('handles undefined input (returns undefined as-is)', () => {
324
+ const result = redactConfigValue(undefined);
325
+ expect(result).toBe(undefined);
326
+ });
327
+ it('handles empty object', () => {
328
+ const input = {};
329
+ const result = redactConfigValue(input);
330
+ const obj = asObject(result);
331
+ expect(obj).not.toBeNull();
332
+ if (obj) {
333
+ expect(Object.keys(obj).length).toBe(0);
334
+ }
335
+ });
336
+ it('handles empty string', () => {
337
+ const input = { value: '' };
338
+ const result = redactConfigValue(input);
339
+ const obj = asObject(result);
340
+ expect(obj).not.toBeNull();
341
+ if (obj) {
342
+ expect(obj.value).toBe('');
343
+ }
344
+ });
345
+ it('handles numeric values', () => {
346
+ const input = { count: 42, ratio: 3.14 };
347
+ const result = redactConfigValue(input);
348
+ const obj = asObject(result);
349
+ expect(obj).not.toBeNull();
350
+ if (obj) {
351
+ expect(obj.count).toBe(42);
352
+ expect(obj.ratio).toBe(3.14);
353
+ }
354
+ });
355
+ it('handles boolean values', () => {
356
+ const input = { enabled: true, disabled: false };
357
+ const result = redactConfigValue(input);
358
+ const obj = asObject(result);
359
+ expect(obj).not.toBeNull();
360
+ if (obj) {
361
+ expect(obj.enabled).toBe(true);
362
+ expect(obj.disabled).toBe(false);
363
+ }
364
+ });
365
+ it('handles mixed type object', () => {
366
+ const input = {
367
+ string: 'text',
368
+ number: 123,
369
+ bool: true,
370
+ null: null,
371
+ array: [1, 2, 3],
372
+ object: { nested: 'value' },
373
+ apiKey: 'secret',
374
+ };
375
+ const result = redactConfigValue(input);
376
+ const obj = asObject(result);
377
+ expect(obj).not.toBeNull();
378
+ if (obj) {
379
+ expect(obj.string).toBe('text');
380
+ expect(obj.number).toBe(123);
381
+ expect(obj.bool).toBe(true);
382
+ expect(obj.apiKey).toBe('[REDACTED]');
383
+ }
384
+ });
385
+ });
386
+ // ── String Truncation ──────────────────────────────────────────────────────────
387
+ describe('String truncation', () => {
388
+ it('truncates very long strings', () => {
389
+ const longString = 'a'.repeat(500);
390
+ const input = { longValue: longString };
391
+ const result = redactConfigValue(input);
392
+ const obj = asObject(result);
393
+ expect(obj).not.toBeNull();
394
+ if (obj) {
395
+ const truncated = obj.longValue;
396
+ expect(typeof truncated).toBe('string');
397
+ if (typeof truncated === 'string') {
398
+ expect(truncated.length).toBeLessThan(longString.length);
399
+ expect(truncated.endsWith('…')).toBe(true);
400
+ }
401
+ }
402
+ });
403
+ it('preserves short strings without truncation', () => {
404
+ const shortString = 'short';
405
+ const input = { shortValue: shortString };
406
+ const result = redactConfigValue(input);
407
+ const obj = asObject(result);
408
+ expect(obj).not.toBeNull();
409
+ if (obj) {
410
+ expect(obj.shortValue).toBe(shortString);
411
+ }
412
+ });
413
+ });
414
+ // ── Full Config Redaction Integration ──────────────────────────────────────────
415
+ describe('Full config redaction integration', () => {
416
+ it('redacted summary never contains actual secrets', () => {
417
+ const raw = makeValidConfig();
418
+ const result = validatePdConfig(raw);
419
+ if (!result.ok)
420
+ throw new Error('Expected valid config');
421
+ const effective = computeEffectivePdConfig(result.value);
422
+ const summary = redactPdConfig(effective);
423
+ const jsonStr = JSON.stringify(summary);
424
+ // Should never contain common secret patterns
425
+ expect(jsonStr).not.toMatch(/sk-[a-zA-Z0-9]{8,}/);
426
+ expect(jsonStr).not.toMatch(/Bearer\s+[a-zA-Z0-9]{8,}/);
427
+ expect(jsonStr).not.toContain('password');
428
+ expect(jsonStr).not.toContain('secret');
429
+ });
430
+ it('redacted summary shows apiKeyEnv but not value', () => {
431
+ const raw = makeValidConfig();
432
+ const result = validatePdConfig(raw);
433
+ if (!result.ok)
434
+ throw new Error('Expected valid config');
435
+ const effective = computeEffectivePdConfig(result.value);
436
+ const summary = redactPdConfig(effective);
437
+ const pdProfile = summary.runtimeProfiles.find(p => p.id === 'pd.anthropic');
438
+ expect(pdProfile).toBeDefined();
439
+ if (pdProfile) {
440
+ expect(pdProfile.apiKeyEnv).toBe('ANTHROPIC_API_KEY');
441
+ // Should not have any field containing actual key value
442
+ const profileJson = JSON.stringify(pdProfile);
443
+ expect(profileJson).not.toContain('sk-ant-');
444
+ }
445
+ });
446
+ });
447
+ //# sourceMappingURL=pd-config-redaction-deep.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pd-config-redaction-deep.test.js","sourceRoot":"","sources":["../../../../src/runtime-v2/config/__tests__/pd-config-redaction-deep.test.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EACL,iBAAiB,EACjB,cAAc,EACd,wBAAwB,EACxB,gBAAgB,GACjB,MAAM,aAAa,CAAC;AAGrB,SAAS,eAAe;IACtB,OAAO;QACL,OAAO,EAAE,CAAC;QACV,QAAQ,EAAE;YACR,MAAM,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE;YAC3C,cAAc,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE;YACnD,aAAa,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE;YAClD,mBAAmB,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE;YACzD,GAAG,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE;YAC1C,SAAS,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE;SAChD;QACD,eAAe,EAAE;YACf,kBAAkB,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE;YAC3D,cAAc,EAAE;gBACd,IAAI,EAAE,OAAO;gBACb,QAAQ,EAAE,WAAW;gBACrB,KAAK,EAAE,mBAAmB;gBAC1B,SAAS,EAAE,mBAAmB;aAC/B;SACF;QACD,cAAc,EAAE;YACd,cAAc,EAAE,kBAAkB;YAClC,MAAM,EAAE;gBACN,aAAa,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE;gBAChC,OAAO,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE;gBAC1B,MAAM,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE;gBACzB,SAAS,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE;gBAC5B,WAAW,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE;gBAC/B,SAAS,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE;gBAC7B,eAAe,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE;gBACnC,OAAO,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE;gBAC3B,kBAAkB,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE;gBACtC,eAAe,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE;aACpC;SACF;QACD,EAAE,EAAE,EAAE,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;KACxC,CAAC;AACJ,CAAC;AAED,wCAAwC;AACxC,SAAS,QAAQ,CAAC,MAAe;IAC/B,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAC5E,OAAO,MAAiC,CAAC;IAC3C,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,gFAAgF;AAEhF,QAAQ,CAAC,yBAAyB,EAAE,GAAG,EAAE;IACvC,EAAE,CAAC,0CAA0C,EAAE,GAAG,EAAE;QAClD,MAAM,KAAK,GAAG;YACZ,MAAM,EAAE;gBACN,MAAM,EAAE;oBACN,MAAM,EAAE,qBAAqB;oBAC7B,SAAS,EAAE,aAAa;iBACzB;aACF;SACF,CAAC;QACF,MAAM,MAAM,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;QACxC,MAAM,GAAG,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC7B,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAC3B,IAAI,GAAG,EAAE,CAAC;YACR,MAAM,EAAE,GAAG,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAChC,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;YAC1B,IAAI,EAAE,EAAE,CAAC;gBACP,MAAM,EAAE,GAAG,QAAQ,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;gBAC/B,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;gBAC1B,IAAI,EAAE,EAAE,CAAC;oBACP,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;oBACrC,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;gBAC3C,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0CAA0C,EAAE,GAAG,EAAE;QAClD,MAAM,KAAK,GAAG;YACZ,QAAQ,EAAE;gBACR,OAAO,EAAE;oBACP,KAAK,EAAE,MAAM;oBACb,QAAQ,EAAE,EAAE;iBACb;gBACD,OAAO,EAAE;oBACP,OAAO,EAAE,IAAI;oBACb,OAAO,EAAE,CAAC;iBACX;aACF;SACF,CAAC;QACF,MAAM,MAAM,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;QACxC,MAAM,GAAG,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC7B,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAC3B,IAAI,GAAG,EAAE,CAAC;YACR,MAAM,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YACxC,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;YAChC,IAAI,QAAQ,EAAE,CAAC;gBACb,MAAM,OAAO,GAAG,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;gBAC3C,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;gBAC/B,IAAI,OAAO,EAAE,CAAC;oBACZ,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;oBACnC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACpC,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,iFAAiF;AAEjF,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;IAC/B,EAAE,CAAC,oCAAoC,EAAE,GAAG,EAAE;QAC5C,MAAM,KAAK,GAAG;YACZ,IAAI,EAAE,CAAC,kBAAkB,EAAE,YAAY,EAAE,iBAAiB,CAAC;SAC5D,CAAC;QACF,MAAM,MAAM,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;QACxC,MAAM,GAAG,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC7B,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAC3B,IAAI,GAAG,EAAE,CAAC;YACR,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC;YACtB,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACvC,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;gBACxB,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;gBACnC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;gBACnC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YACrC,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4CAA4C,EAAE,GAAG,EAAE;QACpD,MAAM,KAAK,GAAG;YACZ,QAAQ,EAAE;gBACR,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE;gBACvC,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,EAAE;gBACtC,EAAE,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE;aAC1C;SACF,CAAC;QACF,MAAM,MAAM,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;QACxC,MAAM,GAAG,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC7B,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAC3B,IAAI,GAAG,EAAE,CAAC;YACR,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC;YAC9B,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC3C,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC5B,MAAM,EAAE,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;gBACjC,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;gBAC1B,IAAI,EAAE,EAAE,CAAC;oBACP,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;oBACrC,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;gBACnC,CAAC;gBACD,MAAM,EAAE,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;gBACjC,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;gBAC1B,IAAI,EAAE,EAAE,CAAC;oBACP,MAAM,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;gBACtC,CAAC;gBACD,MAAM,EAAE,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;gBACjC,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;gBAC1B,IAAI,EAAE,EAAE,CAAC;oBACP,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACtC,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sBAAsB,EAAE,GAAG,EAAE;QAC9B,MAAM,KAAK,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;QAC5B,MAAM,MAAM,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;QACxC,MAAM,GAAG,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC7B,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAC3B,IAAI,GAAG,EAAE,CAAC;YACR,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAChC,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,iFAAiF;AAEjF,QAAQ,CAAC,0BAA0B,EAAE,GAAG,EAAE;IACxC,EAAE,CAAC,+BAA+B,EAAE,GAAG,EAAE;QACvC,MAAM,KAAK,GAAG,EAAE,GAAG,EAAE,2BAA2B,EAAE,CAAC;QACnD,MAAM,MAAM,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;QACxC,MAAM,GAAG,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC7B,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAC3B,IAAI,GAAG,EAAE,CAAC;YACR,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACrC,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2BAA2B,EAAE,GAAG,EAAE;QACnC,MAAM,KAAK,GAAG,EAAE,GAAG,EAAE,qBAAqB,EAAE,CAAC;QAC7C,MAAM,MAAM,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;QACxC,MAAM,GAAG,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC7B,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAC3B,IAAI,GAAG,EAAE,CAAC;YACR,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACrC,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kCAAkC,EAAE,GAAG,EAAE;QAC1C,MAAM,KAAK,GAAG,EAAE,IAAI,EAAE,6CAA6C,EAAE,CAAC;QACtE,MAAM,MAAM,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;QACxC,MAAM,GAAG,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC7B,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAC3B,IAAI,GAAG,EAAE,CAAC;YACR,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACtC,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kCAAkC,EAAE,GAAG,EAAE;QAC1C,MAAM,KAAK,GAAG;YACZ,OAAO,EAAE,wBAAwB;YACjC,EAAE,EAAE,YAAY;YAChB,IAAI,EAAE,kBAAkB;SACzB,CAAC;QACF,MAAM,MAAM,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;QACxC,MAAM,GAAG,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC7B,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAC3B,IAAI,GAAG,EAAE,CAAC;YACR,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;YACnD,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAClC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QAC5C,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,iFAAiF;AAEjF,QAAQ,CAAC,oCAAoC,EAAE,GAAG,EAAE;IAClD,EAAE,CAAC,4BAA4B,EAAE,GAAG,EAAE;QACpC,MAAM,KAAK,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;QACnC,MAAM,MAAM,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;QACxC,MAAM,GAAG,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC7B,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAC3B,IAAI,GAAG,EAAE,CAAC;YACR,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACxC,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8BAA8B,EAAE,GAAG,EAAE;QACtC,MAAM,KAAK,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC;QACpC,MAAM,MAAM,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;QACxC,MAAM,GAAG,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC7B,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAC3B,IAAI,GAAG,EAAE,CAAC;YACR,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACzC,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6BAA6B,EAAE,GAAG,EAAE;QACrC,MAAM,KAAK,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC;QACpC,MAAM,MAAM,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;QACxC,MAAM,GAAG,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC7B,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAC3B,IAAI,GAAG,EAAE,CAAC;YACR,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACzC,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qBAAqB,EAAE,GAAG,EAAE;QAC7B,MAAM,KAAK,GAAG,EAAE,WAAW,EAAE,cAAc,EAAE,CAAC;QAC9C,MAAM,MAAM,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;QACxC,MAAM,GAAG,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC7B,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAC3B,IAAI,GAAG,EAAE,CAAC;YACR,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC7C,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uBAAuB,EAAE,GAAG,EAAE;QAC/B,MAAM,KAAK,GAAG,EAAE,aAAa,EAAE,gBAAgB,EAAE,CAAC;QAClD,MAAM,MAAM,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;QACxC,MAAM,GAAG,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC7B,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAC3B,IAAI,GAAG,EAAE,CAAC;YACR,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC/C,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qBAAqB,EAAE,GAAG,EAAE;QAC7B,MAAM,KAAK,GAAG,EAAE,WAAW,EAAE,kBAAkB,EAAE,CAAC;QAClD,MAAM,MAAM,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;QACxC,MAAM,GAAG,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC7B,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAC3B,IAAI,GAAG,EAAE,CAAC;YACR,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC7C,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qBAAqB,EAAE,GAAG,EAAE;QAC7B,MAAM,KAAK,GAAG,EAAE,WAAW,EAAE,WAAW,EAAE,CAAC;QAC3C,MAAM,MAAM,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;QACxC,MAAM,GAAG,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC7B,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAC3B,IAAI,GAAG,EAAE,CAAC;YACR,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC7C,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mBAAmB,EAAE,GAAG,EAAE;QAC3B,MAAM,KAAK,GAAG,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC;QACxC,MAAM,MAAM,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;QACxC,MAAM,GAAG,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC7B,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAC3B,IAAI,GAAG,EAAE,CAAC;YACR,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC3C,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uCAAuC,EAAE,GAAG,EAAE;QAC/C,MAAM,KAAK,GAAG,EAAE,UAAU,EAAE,iBAAiB,EAAE,CAAC;QAChD,MAAM,MAAM,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;QACxC,MAAM,GAAG,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC7B,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAC3B,IAAI,GAAG,EAAE,CAAC;YACR,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC5C,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8CAA8C,EAAE,GAAG,EAAE;QACtD,MAAM,KAAK,GAAG,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,CAAC;QACtD,MAAM,MAAM,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;QACxC,MAAM,GAAG,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC7B,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAC3B,IAAI,GAAG,EAAE,CAAC;YACR,MAAM,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACnD,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,iFAAiF;AAEjF,QAAQ,CAAC,qBAAqB,EAAE,GAAG,EAAE;IACnC,EAAE,CAAC,yCAAyC,EAAE,GAAG,EAAE;QACjD,MAAM,MAAM,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;QACvC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mDAAmD,EAAE,GAAG,EAAE;QAC3D,MAAM,MAAM,GAAG,iBAAiB,CAAC,SAAS,CAAC,CAAC;QAC5C,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACjC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sBAAsB,EAAE,GAAG,EAAE;QAC9B,MAAM,KAAK,GAAG,EAAE,CAAC;QACjB,MAAM,MAAM,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;QACxC,MAAM,GAAG,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC7B,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAC3B,IAAI,GAAG,EAAE,CAAC;YACR,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC1C,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sBAAsB,EAAE,GAAG,EAAE;QAC9B,MAAM,KAAK,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;QAC5B,MAAM,MAAM,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;QACxC,MAAM,GAAG,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC7B,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAC3B,IAAI,GAAG,EAAE,CAAC;YACR,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC7B,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wBAAwB,EAAE,GAAG,EAAE;QAChC,MAAM,KAAK,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;QACzC,MAAM,MAAM,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;QACxC,MAAM,GAAG,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC7B,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAC3B,IAAI,GAAG,EAAE,CAAC;YACR,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC3B,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/B,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wBAAwB,EAAE,GAAG,EAAE;QAChC,MAAM,KAAK,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;QACjD,MAAM,MAAM,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;QACxC,MAAM,GAAG,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC7B,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAC3B,IAAI,GAAG,EAAE,CAAC;YACR,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC/B,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACnC,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2BAA2B,EAAE,GAAG,EAAE;QACnC,MAAM,KAAK,GAAG;YACZ,MAAM,EAAE,MAAM;YACd,MAAM,EAAE,GAAG;YACX,IAAI,EAAE,IAAI;YACV,IAAI,EAAE,IAAI;YACV,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;YAChB,MAAM,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE;YAC3B,MAAM,EAAE,QAAQ;SACjB,CAAC;QACF,MAAM,MAAM,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;QACxC,MAAM,GAAG,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC7B,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAC3B,IAAI,GAAG,EAAE,CAAC;YACR,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAChC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC7B,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC5B,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACxC,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,kFAAkF;AAElF,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;IACjC,EAAE,CAAC,6BAA6B,EAAE,GAAG,EAAE;QACrC,MAAM,UAAU,GAAG,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACnC,MAAM,KAAK,GAAG,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC;QACxC,MAAM,MAAM,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;QACxC,MAAM,GAAG,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC7B,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAC3B,IAAI,GAAG,EAAE,CAAC;YACR,MAAM,SAAS,GAAG,GAAG,CAAC,SAAS,CAAC;YAChC,MAAM,CAAC,OAAO,SAAS,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACxC,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE,CAAC;gBAClC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;gBACzD,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC7C,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4CAA4C,EAAE,GAAG,EAAE;QACpD,MAAM,WAAW,GAAG,OAAO,CAAC;QAC5B,MAAM,KAAK,GAAG,EAAE,UAAU,EAAE,WAAW,EAAE,CAAC;QAC1C,MAAM,MAAM,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;QACxC,MAAM,GAAG,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC7B,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAC3B,IAAI,GAAG,EAAE,CAAC;YACR,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC3C,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,kFAAkF;AAElF,QAAQ,CAAC,mCAAmC,EAAE,GAAG,EAAE;IACjD,EAAE,CAAC,gDAAgD,EAAE,GAAG,EAAE;QACxD,MAAM,GAAG,GAAG,eAAe,EAAE,CAAC;QAC9B,MAAM,MAAM,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC;QACrC,IAAI,CAAC,MAAM,CAAC,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;QACzD,MAAM,SAAS,GAAG,wBAAwB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACzD,MAAM,OAAO,GAAG,cAAc,CAAC,SAAS,CAAC,CAAC;QAE1C,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QACxC,8CAA8C;QAC9C,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC;QAClD,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,0BAA0B,CAAC,CAAC;QACxD,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QAC1C,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IAC1C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gDAAgD,EAAE,GAAG,EAAE;QACxD,MAAM,GAAG,GAAG,eAAe,EAAE,CAAC;QAC9B,MAAM,MAAM,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC;QACrC,IAAI,CAAC,MAAM,CAAC,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;QACzD,MAAM,SAAS,GAAG,wBAAwB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACzD,MAAM,OAAO,GAAG,cAAc,CAAC,SAAS,CAAC,CAAC;QAE1C,MAAM,SAAS,GAAG,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,cAAc,CAAC,CAAC;QAC7E,MAAM,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE,CAAC;QAChC,IAAI,SAAS,EAAE,CAAC;YACd,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;YACtD,wDAAwD;YACxD,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;YAC9C,MAAM,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QAC/C,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * PD Config Validation Edge Cases — PRI-304
3
+ *
4
+ *补充测试覆盖缺口:
5
+ * - 空字符串 provider/model/apiKeyEnv 验证
6
+ * - 特殊字符在 profile ID 中的处理
7
+ * - 多个并发错误同时发生时的错误收集
8
+ * - 超长字符串和边界值处理
9
+ * - 循环引用和不存在的 profile 引用
10
+ */
11
+ export {};
12
+ //# sourceMappingURL=pd-config-validation-edge-cases.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pd-config-validation-edge-cases.test.d.ts","sourceRoot":"","sources":["../../../../src/runtime-v2/config/__tests__/pd-config-validation-edge-cases.test.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG"}
@@ -0,0 +1,433 @@
1
+ /**
2
+ * PD Config Validation Edge Cases — PRI-304
3
+ *
4
+ *补充测试覆盖缺口:
5
+ * - 空字符串 provider/model/apiKeyEnv 验证
6
+ * - 特殊字符在 profile ID 中的处理
7
+ * - 多个并发错误同时发生时的错误收集
8
+ * - 超长字符串和边界值处理
9
+ * - 循环引用和不存在的 profile 引用
10
+ */
11
+ import { describe, it, expect } from 'vitest';
12
+ import { validatePdConfig, computeEffectivePdConfig, } from '../index.js';
13
+ function makeValidConfig() {
14
+ return {
15
+ version: 1,
16
+ features: {
17
+ prompt: { category: 'core', enabled: true },
18
+ code_tool_hook: { category: 'core', enabled: true },
19
+ defer_archive: { category: 'core', enabled: true },
20
+ correction_observer: { category: 'quiet', enabled: true },
21
+ gfi: { category: 'quiet', enabled: false },
22
+ nocturnal: { category: 'gone', enabled: false },
23
+ },
24
+ runtimeProfiles: {
25
+ 'openclaw.default': { type: 'openclaw', source: 'default' },
26
+ },
27
+ internalAgents: {
28
+ defaultRuntime: 'openclaw.default',
29
+ agents: {
30
+ diagnostician: { enabled: true },
31
+ dreamer: { enabled: true },
32
+ scribe: { enabled: true },
33
+ artificer: { enabled: true },
34
+ philosopher: { enabled: false },
35
+ evaluator: { enabled: false },
36
+ rolloutReviewer: { enabled: false },
37
+ trainer: { enabled: false },
38
+ correctionObserver: { enabled: false },
39
+ empathyObserver: { enabled: false },
40
+ },
41
+ },
42
+ ui: { diagnostics: { mode: 'simple' } },
43
+ };
44
+ }
45
+ // ── Empty String Validation ────────────────────────────────────────────────
46
+ describe('Empty string validation in pi-ai profiles', () => {
47
+ it('rejects empty provider string', () => {
48
+ const raw = makeValidConfig();
49
+ raw.runtimeProfiles['pd.empty-provider'] = {
50
+ type: 'pi-ai',
51
+ provider: '',
52
+ model: 'test-model',
53
+ apiKeyEnv: 'TEST_KEY',
54
+ };
55
+ const result = validatePdConfig(raw);
56
+ expect(result.ok).toBe(false);
57
+ if (result.ok)
58
+ throw new Error('Expected error');
59
+ expect(result.errors.some(e => e.path.includes('provider') &&
60
+ e.reason.includes('non-empty string'))).toBe(true);
61
+ });
62
+ it('rejects empty model string', () => {
63
+ const raw = makeValidConfig();
64
+ raw.runtimeProfiles['pd.empty-model'] = {
65
+ type: 'pi-ai',
66
+ provider: 'test-provider',
67
+ model: '',
68
+ apiKeyEnv: 'TEST_KEY',
69
+ };
70
+ const result = validatePdConfig(raw);
71
+ expect(result.ok).toBe(false);
72
+ if (result.ok)
73
+ throw new Error('Expected error');
74
+ expect(result.errors.some(e => e.path.includes('model') &&
75
+ e.reason.includes('non-empty string'))).toBe(true);
76
+ });
77
+ it('rejects empty apiKeyEnv string', () => {
78
+ const raw = makeValidConfig();
79
+ raw.runtimeProfiles['pd.empty-key'] = {
80
+ type: 'pi-ai',
81
+ provider: 'test-provider',
82
+ model: 'test-model',
83
+ apiKeyEnv: '',
84
+ };
85
+ const result = validatePdConfig(raw);
86
+ expect(result.ok).toBe(false);
87
+ if (result.ok)
88
+ throw new Error('Expected error');
89
+ expect(result.errors.some(e => e.path.includes('apiKeyEnv') &&
90
+ e.reason.includes('non-empty string'))).toBe(true);
91
+ });
92
+ it('accepts whitespace-only provider (current behavior - no trim)', () => {
93
+ const raw = makeValidConfig();
94
+ raw.runtimeProfiles['pd.whitespace-provider'] = {
95
+ type: 'pi-ai',
96
+ provider: ' ',
97
+ model: 'test-model',
98
+ apiKeyEnv: 'TEST_KEY',
99
+ };
100
+ const result = validatePdConfig(raw);
101
+ // Current validation only checks non-empty string, does not trim
102
+ // Whitespace-only strings are technically non-empty
103
+ expect(result.ok).toBe(true);
104
+ });
105
+ });
106
+ // ── Special Characters in Profile IDs ───────────────────────────────────────
107
+ describe('Special characters in profile IDs', () => {
108
+ it('accepts profile ID with dots', () => {
109
+ const raw = makeValidConfig();
110
+ raw.runtimeProfiles['pd.test.profile'] = {
111
+ type: 'pi-ai',
112
+ provider: 'test',
113
+ model: 'test-model',
114
+ apiKeyEnv: 'TEST_KEY',
115
+ };
116
+ const result = validatePdConfig(raw);
117
+ expect(result.ok).toBe(true);
118
+ });
119
+ it('accepts profile ID with hyphens', () => {
120
+ const raw = makeValidConfig();
121
+ raw.runtimeProfiles['pd-test-profile'] = {
122
+ type: 'pi-ai',
123
+ provider: 'test',
124
+ model: 'test-model',
125
+ apiKeyEnv: 'TEST_KEY',
126
+ };
127
+ const result = validatePdConfig(raw);
128
+ expect(result.ok).toBe(true);
129
+ });
130
+ it('accepts profile ID with underscores', () => {
131
+ const raw = makeValidConfig();
132
+ raw.runtimeProfiles['pd_test_profile'] = {
133
+ type: 'pi-ai',
134
+ provider: 'test',
135
+ model: 'test-model',
136
+ apiKeyEnv: 'TEST_KEY',
137
+ };
138
+ const result = validatePdConfig(raw);
139
+ expect(result.ok).toBe(true);
140
+ });
141
+ it('handles profile ID with Unicode characters', () => {
142
+ const raw = makeValidConfig();
143
+ raw.runtimeProfiles['pd测试profile'] = {
144
+ type: 'pi-ai',
145
+ provider: 'test',
146
+ model: 'test-model',
147
+ apiKeyEnv: 'TEST_KEY',
148
+ };
149
+ const result = validatePdConfig(raw);
150
+ // Unicode should be accepted (no restriction on profile ID charset)
151
+ expect(result.ok).toBe(true);
152
+ });
153
+ });
154
+ // ── Multiple Concurrent Errors ──────────────────────────────────────────────
155
+ describe('Multiple concurrent errors collection', () => {
156
+ it('collects all errors when multiple fields are invalid', () => {
157
+ const raw = makeValidConfig();
158
+ // Add multiple invalid profiles
159
+ raw.runtimeProfiles['pd.error1'] = {
160
+ type: 'pi-ai',
161
+ provider: '',
162
+ model: '',
163
+ apiKeyEnv: '',
164
+ };
165
+ raw.runtimeProfiles['pd.error2'] = {
166
+ type: 'pi-ai',
167
+ provider: 'valid',
168
+ model: '',
169
+ apiKeyEnv: '',
170
+ };
171
+ const result = validatePdConfig(raw);
172
+ expect(result.ok).toBe(false);
173
+ if (result.ok)
174
+ throw new Error('Expected error');
175
+ // Should have multiple errors, not just the first one
176
+ expect(result.errors.length).toBeGreaterThan(3);
177
+ expect(result.errors.some(e => e.path.includes('error1'))).toBe(true);
178
+ expect(result.errors.some(e => e.path.includes('error2'))).toBe(true);
179
+ });
180
+ it('collects errors from both features and profiles', () => {
181
+ const raw = {
182
+ version: 1,
183
+ features: {
184
+ prompt: { category: 'core', enabled: 'not-boolean' },
185
+ },
186
+ runtimeProfiles: {
187
+ 'pd.error': {
188
+ type: 'pi-ai',
189
+ provider: '',
190
+ model: '',
191
+ apiKeyEnv: '',
192
+ },
193
+ },
194
+ internalAgents: {
195
+ defaultRuntime: 'openclaw.default',
196
+ agents: {},
197
+ },
198
+ ui: { diagnostics: { mode: 'simple' } },
199
+ };
200
+ const result = validatePdConfig(raw);
201
+ expect(result.ok).toBe(false);
202
+ if (result.ok)
203
+ throw new Error('Expected error');
204
+ // Should have errors from both features and profiles
205
+ expect(result.errors.some(e => e.path.includes('features'))).toBe(true);
206
+ expect(result.errors.some(e => e.path.includes('runtimeProfiles'))).toBe(true);
207
+ });
208
+ it('continues validation after first error (does not short-circuit)', () => {
209
+ const raw = makeValidConfig();
210
+ // First error: invalid feature
211
+ raw.features.prompt = { category: 'core', enabled: 'invalid' };
212
+ // Second error: invalid profile
213
+ raw.runtimeProfiles['pd.error'] = {
214
+ type: 'pi-ai',
215
+ provider: '',
216
+ model: 'test',
217
+ apiKeyEnv: 'TEST_KEY',
218
+ };
219
+ // Third error: invalid internalAgents.defaultRuntime (empty string)
220
+ raw.internalAgents.defaultRuntime = '';
221
+ const result = validatePdConfig(raw);
222
+ expect(result.ok).toBe(false);
223
+ if (result.ok)
224
+ throw new Error('Expected error');
225
+ // Should have collected all three error categories
226
+ expect(result.errors.length).toBeGreaterThanOrEqual(3);
227
+ });
228
+ });
229
+ // ── Boundary Values ──────────────────────────────────────────────────────────
230
+ describe('Boundary values and extreme inputs', () => {
231
+ it('handles very long provider strings', () => {
232
+ const raw = makeValidConfig();
233
+ const longProvider = 'a'.repeat(1000);
234
+ raw.runtimeProfiles['pd.long-provider'] = {
235
+ type: 'pi-ai',
236
+ provider: longProvider,
237
+ model: 'test-model',
238
+ apiKeyEnv: 'TEST_KEY',
239
+ };
240
+ const result = validatePdConfig(raw);
241
+ // Long strings should be accepted (no length limit in validation)
242
+ expect(result.ok).toBe(true);
243
+ });
244
+ it('handles very long model strings', () => {
245
+ const raw = makeValidConfig();
246
+ const longModel = 'model-'.repeat(200);
247
+ raw.runtimeProfiles['pd.long-model'] = {
248
+ type: 'pi-ai',
249
+ provider: 'test',
250
+ model: longModel,
251
+ apiKeyEnv: 'TEST_KEY',
252
+ };
253
+ const result = validatePdConfig(raw);
254
+ expect(result.ok).toBe(true);
255
+ });
256
+ it('handles very large timeoutMs values', () => {
257
+ const raw = makeValidConfig();
258
+ raw.runtimeProfiles['pd.large-timeout'] = {
259
+ type: 'pi-ai',
260
+ provider: 'test',
261
+ model: 'test-model',
262
+ apiKeyEnv: 'TEST_KEY',
263
+ timeoutMs: 86400000, // 24 hours in ms
264
+ };
265
+ const result = validatePdConfig(raw);
266
+ expect(result.ok).toBe(true);
267
+ });
268
+ it('rejects extremely large timeoutMs (Infinity)', () => {
269
+ const raw = makeValidConfig();
270
+ raw.runtimeProfiles['pd.infinity-timeout'] = {
271
+ type: 'pi-ai',
272
+ provider: 'test',
273
+ model: 'test-model',
274
+ apiKeyEnv: 'TEST_KEY',
275
+ timeoutMs: Infinity,
276
+ };
277
+ const result = validatePdConfig(raw);
278
+ expect(result.ok).toBe(false);
279
+ if (result.ok)
280
+ throw new Error('Expected error');
281
+ expect(result.errors.some(e => e.path.includes('timeoutMs') &&
282
+ e.reason.includes('finite'))).toBe(true);
283
+ });
284
+ it('handles baseUrl with special characters', () => {
285
+ const raw = makeValidConfig();
286
+ raw.runtimeProfiles['pd.special-url'] = {
287
+ type: 'pi-ai',
288
+ provider: 'test',
289
+ model: 'test-model',
290
+ apiKeyEnv: 'TEST_KEY',
291
+ baseUrl: 'https://api.example.com:8080/v1/path?query=value',
292
+ };
293
+ const result = validatePdConfig(raw);
294
+ expect(result.ok).toBe(true);
295
+ });
296
+ });
297
+ // ── Profile Reference Validation ─────────────────────────────────────────────
298
+ describe('Profile reference validation in agents', () => {
299
+ it('accepts agent referencing valid profile', () => {
300
+ const raw = makeValidConfig();
301
+ raw.runtimeProfiles['pd.custom'] = {
302
+ type: 'pi-ai',
303
+ provider: 'test',
304
+ model: 'test-model',
305
+ apiKeyEnv: 'TEST_KEY',
306
+ };
307
+ raw.internalAgents.agents.diagnostician = {
308
+ enabled: true,
309
+ runtimeProfile: 'pd.custom',
310
+ };
311
+ const result = validatePdConfig(raw);
312
+ expect(result.ok).toBe(true);
313
+ });
314
+ it('accepts agent referencing non-existent profile (warning in effective config)', () => {
315
+ const raw = makeValidConfig();
316
+ raw.internalAgents.agents.diagnostician = {
317
+ enabled: true,
318
+ runtimeProfile: 'pd.nonexistent',
319
+ };
320
+ const result = validatePdConfig(raw);
321
+ // Validation passes (profile existence is checked in effective config)
322
+ expect(result.ok).toBe(true);
323
+ if (!result.ok)
324
+ throw new Error('Expected ok');
325
+ const effective = computeEffectivePdConfig(result.value);
326
+ // Effective config should have a warning about missing profile
327
+ expect(effective.warnings.some(w => w.includes('nonexistent') || w.includes('not found'))).toBe(true);
328
+ });
329
+ it('accepts defaultRuntime referencing non-existent profile (warning)', () => {
330
+ const raw = makeValidConfig();
331
+ raw.internalAgents.defaultRuntime = 'pd.nonexistent-default';
332
+ const result = validatePdConfig(raw);
333
+ expect(result.ok).toBe(true);
334
+ if (!result.ok)
335
+ throw new Error('Expected ok');
336
+ const effective = computeEffectivePdConfig(result.value);
337
+ expect(effective.warnings.length).toBeGreaterThan(0);
338
+ });
339
+ });
340
+ // ── Type Coercion Edge Cases ─────────────────────────────────────────────────
341
+ describe('Type coercion edge cases', () => {
342
+ it('rejects numeric provider (type mismatch)', () => {
343
+ const raw = makeValidConfig();
344
+ raw.runtimeProfiles['pd.numeric-provider'] = {
345
+ type: 'pi-ai',
346
+ provider: 123,
347
+ model: 'test-model',
348
+ apiKeyEnv: 'TEST_KEY',
349
+ };
350
+ const result = validatePdConfig(raw);
351
+ expect(result.ok).toBe(false);
352
+ if (result.ok)
353
+ throw new Error('Expected error');
354
+ expect(result.errors.some(e => e.path.includes('provider') &&
355
+ e.reason.includes('string'))).toBe(true);
356
+ });
357
+ it('rejects boolean apiKeyEnv', () => {
358
+ const raw = makeValidConfig();
359
+ raw.runtimeProfiles['pd.bool-key'] = {
360
+ type: 'pi-ai',
361
+ provider: 'test',
362
+ model: 'test-model',
363
+ apiKeyEnv: true,
364
+ };
365
+ const result = validatePdConfig(raw);
366
+ expect(result.ok).toBe(false);
367
+ if (result.ok)
368
+ throw new Error('Expected error');
369
+ expect(result.errors.some(e => e.path.includes('apiKeyEnv') &&
370
+ e.reason.includes('string'))).toBe(true);
371
+ });
372
+ it('rejects object as enabled value', () => {
373
+ const raw = makeValidConfig();
374
+ raw.features.prompt = {
375
+ category: 'core',
376
+ enabled: { value: true },
377
+ };
378
+ const result = validatePdConfig(raw);
379
+ expect(result.ok).toBe(false);
380
+ if (result.ok)
381
+ throw new Error('Expected error');
382
+ expect(result.errors.some(e => e.path.includes('enabled') &&
383
+ e.reason.includes('boolean'))).toBe(true);
384
+ });
385
+ it('rejects null as category value', () => {
386
+ const raw = makeValidConfig();
387
+ raw.features.prompt = {
388
+ category: null,
389
+ enabled: true,
390
+ };
391
+ const result = validatePdConfig(raw);
392
+ expect(result.ok).toBe(false);
393
+ if (result.ok)
394
+ throw new Error('Expected error');
395
+ expect(result.errors.some(e => e.path.includes('category'))).toBe(true);
396
+ });
397
+ });
398
+ // ── OpenClaw Profile Edge Cases ──────────────────────────────────────────────
399
+ describe('OpenClaw profile edge cases', () => {
400
+ it('accepts OpenClaw profile with only type', () => {
401
+ const raw = makeValidConfig();
402
+ raw.runtimeProfiles['openclaw.minimal'] = {
403
+ type: 'openclaw',
404
+ };
405
+ const result = validatePdConfig(raw);
406
+ expect(result.ok).toBe(true);
407
+ });
408
+ it('accepts OpenClaw profile with all optional fields', () => {
409
+ const raw = makeValidConfig();
410
+ raw.runtimeProfiles['openclaw.full'] = {
411
+ type: 'openclaw',
412
+ provider: 'lmstudio',
413
+ model: 'qwen3',
414
+ source: 'custom',
415
+ };
416
+ const result = validatePdConfig(raw);
417
+ expect(result.ok).toBe(true);
418
+ });
419
+ it('rejects numeric source in OpenClaw profile', () => {
420
+ const raw = makeValidConfig();
421
+ raw.runtimeProfiles['openclaw.bad-source'] = {
422
+ type: 'openclaw',
423
+ source: 123,
424
+ };
425
+ const result = validatePdConfig(raw);
426
+ expect(result.ok).toBe(false);
427
+ if (result.ok)
428
+ throw new Error('Expected error');
429
+ expect(result.errors.some(e => e.path.includes('source') &&
430
+ e.reason.includes('string'))).toBe(true);
431
+ });
432
+ });
433
+ //# sourceMappingURL=pd-config-validation-edge-cases.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pd-config-validation-edge-cases.test.js","sourceRoot":"","sources":["../../../../src/runtime-v2/config/__tests__/pd-config-validation-edge-cases.test.ts"],"names":[],"mappings":"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"}
package/dist/installer.js CHANGED
@@ -722,7 +722,7 @@ async function generateConfigYamlConfig(workspaceDir) {
722
722
  catch (e) {
723
723
  // Existing config is malformed — fail loud, do not overwrite
724
724
  const reason = e instanceof Error ? e.message : String(e);
725
- throw new Error(`Existing .pd/config.yaml is malformed: ${reason}. Delete the file and re-run the installer, or fix it manually.`);
725
+ throw new Error(`Existing .pd/config.yaml is malformed: ${reason}. Delete the file and re-run the installer, or fix it manually.`, { cause: e });
726
726
  }
727
727
  }
728
728
  await fse.ensureDir(configDir);
@@ -1 +1 @@
1
- {"version":3,"file":"installer.js","sourceRoot":"","sources":["../src/installer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"installer.js","sourceRoot":"","sources":["../src/installer.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "create-principles-disciple",
3
- "version": "1.81.0",
3
+ "version": "1.82.0",
4
4
  "description": "Interactive CLI installer for Principles Disciple OpenClaw plugin",
5
5
  "type": "module",
6
6
  "bin": {