dev-cockpit 0.3.4 → 0.4.1
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/commands/init-config-wizard.d.ts.map +1 -1
- package/dist/core/config.d.ts +44 -59
- package/dist/core/config.d.ts.map +1 -1
- package/dist/core/migrations.d.ts.map +1 -1
- package/dist/health/remediations.d.ts +7 -0
- package/dist/health/remediations.d.ts.map +1 -1
- package/dist/health/useHealth.d.ts.map +1 -1
- package/dist/index.js +81 -18
- package/dist/index.js.map +2 -2
- package/examples/cockpit.schema.json +3 -8
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init-config-wizard.d.ts","sourceRoot":"","sources":["../../src/commands/init-config-wizard.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"init-config-wizard.d.ts","sourceRoot":"","sources":["../../src/commands/init-config-wizard.ts"],"names":[],"mappings":"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"}
|
package/dist/core/config.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
/** Schema version constant. Bumps reserved for breaking changes (see ADR 0004). */
|
|
3
|
-
export declare const CONFIG_VERSION =
|
|
3
|
+
export declare const CONFIG_VERSION = 3;
|
|
4
4
|
export declare const BaseCockpitConfigSchema: z.ZodObject<{
|
|
5
5
|
version: z.ZodNumber;
|
|
6
6
|
appName: z.ZodString;
|
|
@@ -47,12 +47,12 @@ export declare const BaseCockpitConfigSchema: z.ZodObject<{
|
|
|
47
47
|
path: z.ZodString;
|
|
48
48
|
label: z.ZodOptional<z.ZodString>;
|
|
49
49
|
}, "strip", z.ZodTypeAny, {
|
|
50
|
-
path: string;
|
|
51
50
|
id: string;
|
|
51
|
+
path: string;
|
|
52
52
|
label?: string | undefined;
|
|
53
53
|
}, {
|
|
54
|
-
path: string;
|
|
55
54
|
id: string;
|
|
55
|
+
path: string;
|
|
56
56
|
label?: string | undefined;
|
|
57
57
|
}>, "many">>>;
|
|
58
58
|
docker: z.ZodOptional<z.ZodObject<{
|
|
@@ -113,15 +113,6 @@ export declare const BaseCockpitConfigSchema: z.ZodObject<{
|
|
|
113
113
|
onTransitionTo?: string[] | undefined;
|
|
114
114
|
}>]>>;
|
|
115
115
|
remediation: z.ZodObject<{
|
|
116
|
-
/**
|
|
117
|
-
* Optional keypress binding on the Health pane. When omitted, the
|
|
118
|
-
* remediation is documentation-only — the row shows the label but pressing
|
|
119
|
-
* any key does nothing for this entry. Useful when several health entries
|
|
120
|
-
* share the same shell command and you only want ONE row to be the
|
|
121
|
-
* trigger — see `docker compose up -d` covering all four container-running
|
|
122
|
-
* checks in the awc wrapper config.
|
|
123
|
-
*/
|
|
124
|
-
key: z.ZodOptional<z.ZodString>;
|
|
125
116
|
label: z.ZodString;
|
|
126
117
|
command: z.ZodString;
|
|
127
118
|
cwd: z.ZodOptional<z.ZodString>;
|
|
@@ -129,23 +120,20 @@ export declare const BaseCockpitConfigSchema: z.ZodObject<{
|
|
|
129
120
|
label: string;
|
|
130
121
|
command: string;
|
|
131
122
|
cwd?: string | undefined;
|
|
132
|
-
key?: string | undefined;
|
|
133
123
|
}, {
|
|
134
124
|
label: string;
|
|
135
125
|
command: string;
|
|
136
126
|
cwd?: string | undefined;
|
|
137
|
-
key?: string | undefined;
|
|
138
127
|
}>;
|
|
139
128
|
}, "strip", z.ZodTypeAny, {
|
|
140
|
-
type: string;
|
|
141
|
-
id: string;
|
|
142
|
-
label: string;
|
|
143
129
|
remediation: {
|
|
144
130
|
label: string;
|
|
145
131
|
command: string;
|
|
146
132
|
cwd?: string | undefined;
|
|
147
|
-
key?: string | undefined;
|
|
148
133
|
};
|
|
134
|
+
id: string;
|
|
135
|
+
type: string;
|
|
136
|
+
label: string;
|
|
149
137
|
path?: string | undefined;
|
|
150
138
|
command?: string | undefined;
|
|
151
139
|
cwd?: string | undefined;
|
|
@@ -161,15 +149,14 @@ export declare const BaseCockpitConfigSchema: z.ZodObject<{
|
|
|
161
149
|
host?: string | undefined;
|
|
162
150
|
args?: string[] | undefined;
|
|
163
151
|
}, {
|
|
164
|
-
type: string;
|
|
165
|
-
id: string;
|
|
166
|
-
label: string;
|
|
167
152
|
remediation: {
|
|
168
153
|
label: string;
|
|
169
154
|
command: string;
|
|
170
155
|
cwd?: string | undefined;
|
|
171
|
-
key?: string | undefined;
|
|
172
156
|
};
|
|
157
|
+
id: string;
|
|
158
|
+
type: string;
|
|
159
|
+
label: string;
|
|
173
160
|
path?: string | undefined;
|
|
174
161
|
command?: string | undefined;
|
|
175
162
|
cwd?: string | undefined;
|
|
@@ -290,29 +277,29 @@ export declare const BaseCockpitConfigSchema: z.ZodObject<{
|
|
|
290
277
|
id: string;
|
|
291
278
|
label: string;
|
|
292
279
|
command: string;
|
|
293
|
-
cwd?: string | undefined;
|
|
294
280
|
key?: string | undefined;
|
|
281
|
+
cwd?: string | undefined;
|
|
295
282
|
scope?: string | undefined;
|
|
296
283
|
}, {
|
|
297
284
|
id: string;
|
|
298
285
|
label: string;
|
|
299
286
|
command: string;
|
|
300
|
-
cwd?: string | undefined;
|
|
301
287
|
key?: string | undefined;
|
|
288
|
+
cwd?: string | undefined;
|
|
302
289
|
scope?: string | undefined;
|
|
303
290
|
}>, {
|
|
304
291
|
id: string;
|
|
305
292
|
label: string;
|
|
306
293
|
command: string;
|
|
307
|
-
cwd?: string | undefined;
|
|
308
294
|
key?: string | undefined;
|
|
295
|
+
cwd?: string | undefined;
|
|
309
296
|
scope?: string | undefined;
|
|
310
297
|
}, {
|
|
311
298
|
id: string;
|
|
312
299
|
label: string;
|
|
313
300
|
command: string;
|
|
314
|
-
cwd?: string | undefined;
|
|
315
301
|
key?: string | undefined;
|
|
302
|
+
cwd?: string | undefined;
|
|
316
303
|
scope?: string | undefined;
|
|
317
304
|
}>, "many">>>;
|
|
318
305
|
/**
|
|
@@ -335,26 +322,16 @@ export declare const BaseCockpitConfigSchema: z.ZodObject<{
|
|
|
335
322
|
onTransitionTo?: string[] | undefined;
|
|
336
323
|
} | undefined;
|
|
337
324
|
}[];
|
|
338
|
-
|
|
339
|
-
path: string;
|
|
340
|
-
id: string;
|
|
341
|
-
label?: string | undefined;
|
|
342
|
-
}[];
|
|
343
|
-
appName: string;
|
|
344
|
-
highlights: {
|
|
345
|
-
pattern: string;
|
|
346
|
-
severity: "info" | "warn" | "error";
|
|
347
|
-
}[];
|
|
325
|
+
keybindings: Record<string, string | string[]>;
|
|
348
326
|
health: {
|
|
349
|
-
type: string;
|
|
350
|
-
id: string;
|
|
351
|
-
label: string;
|
|
352
327
|
remediation: {
|
|
353
328
|
label: string;
|
|
354
329
|
command: string;
|
|
355
330
|
cwd?: string | undefined;
|
|
356
|
-
key?: string | undefined;
|
|
357
331
|
};
|
|
332
|
+
id: string;
|
|
333
|
+
type: string;
|
|
334
|
+
label: string;
|
|
358
335
|
path?: string | undefined;
|
|
359
336
|
command?: string | undefined;
|
|
360
337
|
cwd?: string | undefined;
|
|
@@ -370,6 +347,16 @@ export declare const BaseCockpitConfigSchema: z.ZodObject<{
|
|
|
370
347
|
host?: string | undefined;
|
|
371
348
|
args?: string[] | undefined;
|
|
372
349
|
}[];
|
|
350
|
+
repos: {
|
|
351
|
+
id: string;
|
|
352
|
+
path: string;
|
|
353
|
+
label?: string | undefined;
|
|
354
|
+
}[];
|
|
355
|
+
appName: string;
|
|
356
|
+
highlights: {
|
|
357
|
+
pattern: string;
|
|
358
|
+
severity: "info" | "warn" | "error";
|
|
359
|
+
}[];
|
|
373
360
|
help: {
|
|
374
361
|
sources: string[];
|
|
375
362
|
defaultPage?: string | undefined;
|
|
@@ -394,14 +381,13 @@ export declare const BaseCockpitConfigSchema: z.ZodObject<{
|
|
|
394
381
|
composer: {
|
|
395
382
|
packageDirs: string[];
|
|
396
383
|
};
|
|
397
|
-
|
|
398
|
-
defaultPane: "repos" | "health" | "help" | "output";
|
|
384
|
+
defaultPane: "health" | "repos" | "help" | "output";
|
|
399
385
|
actions: {
|
|
400
386
|
id: string;
|
|
401
387
|
label: string;
|
|
402
388
|
command: string;
|
|
403
|
-
cwd?: string | undefined;
|
|
404
389
|
key?: string | undefined;
|
|
390
|
+
cwd?: string | undefined;
|
|
405
391
|
scope?: string | undefined;
|
|
406
392
|
}[];
|
|
407
393
|
profile: Record<string, unknown>;
|
|
@@ -434,25 +420,16 @@ export declare const BaseCockpitConfigSchema: z.ZodObject<{
|
|
|
434
420
|
onTransitionTo?: string[] | undefined;
|
|
435
421
|
} | undefined;
|
|
436
422
|
}[] | undefined;
|
|
437
|
-
|
|
438
|
-
path: string;
|
|
439
|
-
id: string;
|
|
440
|
-
label?: string | undefined;
|
|
441
|
-
}[] | undefined;
|
|
442
|
-
highlights?: {
|
|
443
|
-
pattern: string;
|
|
444
|
-
severity?: "info" | "warn" | "error" | undefined;
|
|
445
|
-
}[] | undefined;
|
|
423
|
+
keybindings?: Record<string, string | string[]> | undefined;
|
|
446
424
|
health?: {
|
|
447
|
-
type: string;
|
|
448
|
-
id: string;
|
|
449
|
-
label: string;
|
|
450
425
|
remediation: {
|
|
451
426
|
label: string;
|
|
452
427
|
command: string;
|
|
453
428
|
cwd?: string | undefined;
|
|
454
|
-
key?: string | undefined;
|
|
455
429
|
};
|
|
430
|
+
id: string;
|
|
431
|
+
type: string;
|
|
432
|
+
label: string;
|
|
456
433
|
path?: string | undefined;
|
|
457
434
|
command?: string | undefined;
|
|
458
435
|
cwd?: string | undefined;
|
|
@@ -468,6 +445,15 @@ export declare const BaseCockpitConfigSchema: z.ZodObject<{
|
|
|
468
445
|
host?: string | undefined;
|
|
469
446
|
args?: string[] | undefined;
|
|
470
447
|
}[] | undefined;
|
|
448
|
+
repos?: {
|
|
449
|
+
id: string;
|
|
450
|
+
path: string;
|
|
451
|
+
label?: string | undefined;
|
|
452
|
+
}[] | undefined;
|
|
453
|
+
highlights?: {
|
|
454
|
+
pattern: string;
|
|
455
|
+
severity?: "info" | "warn" | "error" | undefined;
|
|
456
|
+
}[] | undefined;
|
|
471
457
|
help?: {
|
|
472
458
|
sources?: string[] | undefined;
|
|
473
459
|
defaultPage?: string | undefined;
|
|
@@ -492,14 +478,13 @@ export declare const BaseCockpitConfigSchema: z.ZodObject<{
|
|
|
492
478
|
composer?: {
|
|
493
479
|
packageDirs?: string[] | undefined;
|
|
494
480
|
} | undefined;
|
|
495
|
-
|
|
496
|
-
defaultPane?: "repos" | "health" | "help" | "output" | undefined;
|
|
481
|
+
defaultPane?: "health" | "repos" | "help" | "output" | undefined;
|
|
497
482
|
actions?: {
|
|
498
483
|
id: string;
|
|
499
484
|
label: string;
|
|
500
485
|
command: string;
|
|
501
|
-
cwd?: string | undefined;
|
|
502
486
|
key?: string | undefined;
|
|
487
|
+
cwd?: string | undefined;
|
|
503
488
|
scope?: string | undefined;
|
|
504
489
|
}[] | undefined;
|
|
505
490
|
profile?: Record<string, unknown> | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/core/config.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,mFAAmF;AACnF,eAAO,MAAM,cAAc,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/core/config.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,mFAAmF;AACnF,eAAO,MAAM,cAAc,IAAI,CAAC;AA0KhC,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAhBlC;;;;;;WAMG;;QAEH,iDAAiD;;QAEjD,gEAAgE;;;;;;;;;;;;QApChE;;;;;;WAMG;;;;;;;;IAwDH,2EAA2E;;IAE3E,yEAAyE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAEzE;;;;OAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAEH,CAAC;AAEH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAExE;;;;GAIG;AACH,wBAAgB,oBAAoB,CAClC,GAAG,EAAE,iBAAiB,CAAC,aAAa,CAAC,GAAG,SAAS,GAChD,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAS1B;AAID,qBAAa,kBAAmB,SAAQ,KAAK;aAEzB,QAAQ,EAAE,MAAM;aAChB,KAAK,EAAE,OAAO;aACd,SAAS,EAAE,MAAM;gBAFjB,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,OAAO,EACd,SAAS,EAAE,MAAM;CAOpC;AAED,qBAAa,qBAAsB,SAAQ,KAAK;aAE5B,QAAQ,EAAE,MAAM;aAChB,KAAK,EAAE,OAAO;gBADd,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,OAAO;CAKjC;AAID,MAAM,WAAW,iBAAiB;IAChC;;;;OAIG;IACH,eAAe,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;IAC7C;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,GAAE,iBAAsB,GAAG,iBAAiB,CA0C5F"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migrations.d.ts","sourceRoot":"","sources":["../../src/core/migrations.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,MAAM,MAAM,cAAc,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"migrations.d.ts","sourceRoot":"","sources":["../../src/core/migrations.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,MAAM,MAAM,cAAc,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AA0DvF,2EAA2E;AAC3E,eAAO,MAAM,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAGpD,CAAC;AAEF,qBAAa,cAAe,SAAQ,KAAK;aAErB,WAAW,EAAE,MAAM;aACnB,SAAS,EAAE,MAAM;gBADjB,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,EACjC,MAAM,EAAE,MAAM;CAKjB;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAC3B,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC5B,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,GAChB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAiBzB"}
|
|
@@ -10,6 +10,13 @@ export type RemediationKey = string;
|
|
|
10
10
|
* Returns an empty array when nothing matches.
|
|
11
11
|
*/
|
|
12
12
|
export declare function findChecksByKey(key: RemediationKey, checks: HealthCheck[], keybindings?: Record<string, string[]>): HealthCheck[];
|
|
13
|
+
/**
|
|
14
|
+
* Dedup a list of matched health checks by their remediation effect so that
|
|
15
|
+
* a multi-id keybinding whose rows happen to share `command|cwd` fires the
|
|
16
|
+
* work exactly once. Order is preserved (first occurrence wins); `run`-shaped
|
|
17
|
+
* remediations carry no comparable key and are never folded.
|
|
18
|
+
*/
|
|
19
|
+
export declare function dedupeRemediations(checks: HealthCheck[]): HealthCheck[];
|
|
13
20
|
export declare function runRemediation(key: RemediationKey, checks: HealthCheck[], ctx: HealthContext, workspaceRoot: string, keybindings?: Record<string, string[]>): Promise<void>;
|
|
14
21
|
/**
|
|
15
22
|
* @deprecated kept for callers that need single-target lookups. Prefer
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"remediations.d.ts","sourceRoot":"","sources":["../../src/health/remediations.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE1E,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC;AAEpC;;;;;;;;GAQG;AACH,wBAAgB,eAAe,CAC7B,GAAG,EAAE,cAAc,EACnB,MAAM,EAAE,WAAW,EAAE,EACrB,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,GACrC,WAAW,EAAE,CASf;AAED,wBAAsB,cAAc,CAClC,GAAG,EAAE,cAAc,EACnB,MAAM,EAAE,WAAW,EAAE,EACrB,GAAG,EAAE,aAAa,EAClB,aAAa,EAAE,MAAM,EACrB,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,GACrC,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"remediations.d.ts","sourceRoot":"","sources":["../../src/health/remediations.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE1E,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC;AAEpC;;;;;;;;GAQG;AACH,wBAAgB,eAAe,CAC7B,GAAG,EAAE,cAAc,EACnB,MAAM,EAAE,WAAW,EAAE,EACrB,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,GACrC,WAAW,EAAE,CASf;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,WAAW,EAAE,GAAG,WAAW,EAAE,CAevE;AAED,wBAAsB,cAAc,CAClC,GAAG,EAAE,cAAc,EACnB,MAAM,EAAE,WAAW,EAAE,EACrB,GAAG,EAAE,aAAa,EAClB,aAAa,EAAE,MAAM,EACrB,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,GACrC,OAAO,CAAC,IAAI,CAAC,CAQf;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAC7B,GAAG,EAAE,cAAc,EACnB,MAAM,EAAE,WAAW,EAAE,GACpB,WAAW,GAAG,SAAS,CAEzB;AAED,wBAAsB,mBAAmB,CACvC,WAAW,EAAE,WAAW,EACxB,GAAG,EAAE,aAAa,EAClB,aAAa,EAAE,MAAM,EACrB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,IAAI,CAAC,CAiCf"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useHealth.d.ts","sourceRoot":"","sources":["../../src/health/useHealth.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AAC7E,OAAO,EAA6B,KAAK,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1F,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"useHealth.d.ts","sourceRoot":"","sources":["../../src/health/useHealth.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AAC7E,OAAO,EAA6B,KAAK,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1F,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAUrD,OAAO,KAAK,EAAE,WAAW,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhF,kEAAkE;AAClE,MAAM,WAAW,aAAa;IAC5B,uEAAuE;IACvE,uBAAuB,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,KAAK,MAAM,IAAI,CAAC;CAC5E;AAED,MAAM,WAAW,gBAAgB;IAC/B,yDAAyD;IACzD,aAAa,EAAE,MAAM,CAAC;IACtB,0DAA0D;IAC1D,aAAa,CAAC,EAAE,WAAW,EAAE,CAAC;IAC9B,4DAA4D;IAC5D,aAAa,CAAC,EAAE,iBAAiB,EAAE,CAAC;IACpC,+EAA+E;IAC/E,GAAG,CAAC,EAAE,aAAa,CAAC;IACpB,oCAAoC;IACpC,aAAa,EAAE,mBAAmB,CAAC;IACnC,0DAA0D;IAC1D,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,4DAA4D;IAC5D,kBAAkB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9D;;;OAGG;IACH,iBAAiB,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,KAAK,MAAM,IAAI,CAAC;IACzE;;;OAGG;IACH,SAAS,CAAC,EAAE,CAAC,QAAQ,EAAE,YAAY,EAAE,KAAK,IAAI,CAAC;IAC/C;;;;;OAKG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;CACxC;AAED,MAAM,WAAW,eAAe;IAC9B,cAAc,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,mBAAmB,GAAG,IAAI,CAAC;CAC7D;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,gBAAgB,GAAG,SAAS,GAAG,eAAe,GAAG,IAAI,CAwGpF"}
|
package/dist/index.js
CHANGED
|
@@ -83869,8 +83869,40 @@ var v1ToV2 = (raw) => {
|
|
|
83869
83869
|
if (watchers === void 0) return { ...rest, version: 2 };
|
|
83870
83870
|
return { ...rest, processes: watchers, version: 2 };
|
|
83871
83871
|
};
|
|
83872
|
+
var v2ToV3 = (raw) => {
|
|
83873
|
+
const existing = raw["keybindings"] ?? {};
|
|
83874
|
+
const merged = {};
|
|
83875
|
+
for (const [k, v] of Object.entries(existing)) {
|
|
83876
|
+
const ids = Array.isArray(v) ? v : [v];
|
|
83877
|
+
merged[k] = ids.filter((s) => typeof s === "string" && s.length > 0);
|
|
83878
|
+
}
|
|
83879
|
+
const health = Array.isArray(raw["health"]) ? raw["health"] : [];
|
|
83880
|
+
const migratedHealth = health.map((entry) => {
|
|
83881
|
+
if (!entry || typeof entry !== "object") return entry;
|
|
83882
|
+
const e = entry;
|
|
83883
|
+
const rem = e["remediation"];
|
|
83884
|
+
const id = e["id"];
|
|
83885
|
+
if (!rem || typeof rem.key !== "string" || !id) return entry;
|
|
83886
|
+
const key = rem.key;
|
|
83887
|
+
const bucket = merged[key] ?? [];
|
|
83888
|
+
if (!bucket.includes(id)) bucket.push(id);
|
|
83889
|
+
merged[key] = bucket;
|
|
83890
|
+
const remRest = {};
|
|
83891
|
+
for (const [k, v] of Object.entries(rem)) {
|
|
83892
|
+
if (k !== "key") remRest[k] = v;
|
|
83893
|
+
}
|
|
83894
|
+
return { ...e, remediation: remRest };
|
|
83895
|
+
});
|
|
83896
|
+
const result = { ...raw, version: 3 };
|
|
83897
|
+
result["health"] = migratedHealth;
|
|
83898
|
+
if (Object.keys(merged).length > 0) {
|
|
83899
|
+
result["keybindings"] = merged;
|
|
83900
|
+
}
|
|
83901
|
+
return result;
|
|
83902
|
+
};
|
|
83872
83903
|
var MIGRATORS = {
|
|
83873
|
-
1: v1ToV2
|
|
83904
|
+
1: v1ToV2,
|
|
83905
|
+
2: v2ToV3
|
|
83874
83906
|
};
|
|
83875
83907
|
var MigrationError = class extends Error {
|
|
83876
83908
|
constructor(fromVersion, toVersion, reason) {
|
|
@@ -83900,7 +83932,7 @@ function runMigrations(raw, fromVersion, toVersion) {
|
|
|
83900
83932
|
}
|
|
83901
83933
|
|
|
83902
83934
|
// src/core/config.ts
|
|
83903
|
-
var CONFIG_VERSION =
|
|
83935
|
+
var CONFIG_VERSION = 3;
|
|
83904
83936
|
var NotifyOverrideSchema = external_exports.union([
|
|
83905
83937
|
external_exports.literal(false),
|
|
83906
83938
|
external_exports.object({
|
|
@@ -83935,15 +83967,6 @@ var HighlightSchema = external_exports.object({
|
|
|
83935
83967
|
severity: external_exports.enum(["info", "warn", "error"]).optional().default("info")
|
|
83936
83968
|
});
|
|
83937
83969
|
var RemediationSchema = external_exports.object({
|
|
83938
|
-
/**
|
|
83939
|
-
* Optional keypress binding on the Health pane. When omitted, the
|
|
83940
|
-
* remediation is documentation-only — the row shows the label but pressing
|
|
83941
|
-
* any key does nothing for this entry. Useful when several health entries
|
|
83942
|
-
* share the same shell command and you only want ONE row to be the
|
|
83943
|
-
* trigger — see `docker compose up -d` covering all four container-running
|
|
83944
|
-
* checks in the awc wrapper config.
|
|
83945
|
-
*/
|
|
83946
|
-
key: external_exports.string().optional(),
|
|
83947
83970
|
label: external_exports.string(),
|
|
83948
83971
|
command: external_exports.string(),
|
|
83949
83972
|
cwd: external_exports.string().optional()
|
|
@@ -88194,10 +88217,27 @@ function findChecksByKey(key, checks, keybindings) {
|
|
|
88194
88217
|
const c3 = checks.find((c4) => c4.remediation.key === key);
|
|
88195
88218
|
return c3 ? [c3] : [];
|
|
88196
88219
|
}
|
|
88220
|
+
function dedupeRemediations(checks) {
|
|
88221
|
+
const seen = /* @__PURE__ */ new Set();
|
|
88222
|
+
const out = [];
|
|
88223
|
+
for (const check of checks) {
|
|
88224
|
+
const rem = check.remediation;
|
|
88225
|
+
if ("run" in rem) {
|
|
88226
|
+
out.push(check);
|
|
88227
|
+
continue;
|
|
88228
|
+
}
|
|
88229
|
+
const dedupKey = `${rem.command}|${rem.cwd ?? ""}`;
|
|
88230
|
+
if (seen.has(dedupKey)) continue;
|
|
88231
|
+
seen.add(dedupKey);
|
|
88232
|
+
out.push(check);
|
|
88233
|
+
}
|
|
88234
|
+
return out;
|
|
88235
|
+
}
|
|
88197
88236
|
async function runRemediation(key, checks, ctx, workspaceRoot, keybindings) {
|
|
88198
88237
|
const matched = findChecksByKey(key, checks, keybindings);
|
|
88238
|
+
const toFire = dedupeRemediations(matched);
|
|
88199
88239
|
await Promise.all(
|
|
88200
|
-
|
|
88240
|
+
toFire.map(
|
|
88201
88241
|
(check) => dispatchRemediation(check.remediation, ctx, workspaceRoot, check.id)
|
|
88202
88242
|
)
|
|
88203
88243
|
);
|
|
@@ -88545,8 +88585,9 @@ function useHealth(opts) {
|
|
|
88545
88585
|
const keybindings = optsRef.current?.keybindings;
|
|
88546
88586
|
const matched = findChecksByKey(key, list3, keybindings);
|
|
88547
88587
|
if (matched.length === 0) return null;
|
|
88548
|
-
const
|
|
88549
|
-
const
|
|
88588
|
+
const toFire = dedupeRemediations(matched);
|
|
88589
|
+
const first = toFire[0];
|
|
88590
|
+
const banner = toFire.length === 1 ? first.remediation.label : `${toFire.length} remediations`;
|
|
88550
88591
|
const promise = runRemediation(
|
|
88551
88592
|
key,
|
|
88552
88593
|
list3,
|
|
@@ -91846,6 +91887,29 @@ function quote(value) {
|
|
|
91846
91887
|
if (/^[A-Za-z0-9_./-]+$/.test(value)) return value;
|
|
91847
91888
|
return `'${value.replace(/'/g, "''")}'`;
|
|
91848
91889
|
}
|
|
91890
|
+
function renderKeybindings(checks) {
|
|
91891
|
+
const bindings = {};
|
|
91892
|
+
for (const c3 of checks) {
|
|
91893
|
+
const key = c3.remediation.key;
|
|
91894
|
+
if (!key) continue;
|
|
91895
|
+
if (!bindings[key]) bindings[key] = [];
|
|
91896
|
+
if (!bindings[key].includes(c3.id)) bindings[key].push(c3.id);
|
|
91897
|
+
}
|
|
91898
|
+
const entries = Object.entries(bindings);
|
|
91899
|
+
if (entries.length === 0) return [];
|
|
91900
|
+
const out = ["keybindings:"];
|
|
91901
|
+
for (const [key, ids] of entries) {
|
|
91902
|
+
if (ids.length === 1) {
|
|
91903
|
+
out.push(indent(`${quote(key)}: ${quote(ids[0])}`, 1));
|
|
91904
|
+
} else {
|
|
91905
|
+
out.push(indent(`${quote(key)}:`, 1));
|
|
91906
|
+
for (const id of ids) {
|
|
91907
|
+
out.push(indent(`- ${quote(id)}`, 2));
|
|
91908
|
+
}
|
|
91909
|
+
}
|
|
91910
|
+
}
|
|
91911
|
+
return out;
|
|
91912
|
+
}
|
|
91849
91913
|
function renderHealth(checks) {
|
|
91850
91914
|
if (checks.length === 0) return [];
|
|
91851
91915
|
const out = ["health:"];
|
|
@@ -91873,9 +91937,6 @@ function renderHealth(checks) {
|
|
|
91873
91937
|
break;
|
|
91874
91938
|
}
|
|
91875
91939
|
out.push(indent(` remediation:`, 1));
|
|
91876
|
-
if (c3.remediation.key) {
|
|
91877
|
-
out.push(indent(` key: ${quote(c3.remediation.key)}`, 1));
|
|
91878
|
-
}
|
|
91879
91940
|
out.push(indent(` label: ${quote(c3.remediation.label)}`, 1));
|
|
91880
91941
|
out.push(indent(` command: ${quote(c3.remediation.command)}`, 1));
|
|
91881
91942
|
}
|
|
@@ -91940,7 +92001,7 @@ function renderWizardYaml(result) {
|
|
|
91940
92001
|
blocks.push([
|
|
91941
92002
|
"# Generated by `dev-cockpit init-config --interactive`. Edit freely.",
|
|
91942
92003
|
"",
|
|
91943
|
-
"version:
|
|
92004
|
+
"version: 3",
|
|
91944
92005
|
`appName: ${quote(result.appName)}`
|
|
91945
92006
|
]);
|
|
91946
92007
|
const processes = renderProcesses(result.processes);
|
|
@@ -91953,6 +92014,8 @@ function renderWizardYaml(result) {
|
|
|
91953
92014
|
if (highlights.length > 0) blocks.push(highlights);
|
|
91954
92015
|
const health = renderHealth(result.health);
|
|
91955
92016
|
if (health.length > 0) blocks.push(health);
|
|
92017
|
+
const keybindings = renderKeybindings(result.health);
|
|
92018
|
+
if (keybindings.length > 0) blocks.push(keybindings);
|
|
91956
92019
|
const actions = renderActions(result.actions);
|
|
91957
92020
|
if (actions.length > 0) blocks.push(actions);
|
|
91958
92021
|
blocks.push(["notifications:", indent(`enabled: ${result.notifications.enabled}`, 1)]);
|