@fnndsc/chell 5.2.3 → 5.3.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/README.md +102 -15
- package/dist/config/settings.js +14 -4
- package/dist/config/settings.js.map +1 -1
- package/dist/core/boot.js +12 -3
- package/dist/core/boot.js.map +1 -1
- package/dist/core/cliSurface.js +30 -6
- package/dist/core/cliSurface.js.map +1 -1
- package/dist/core/progressRenderer.d.ts +13 -0
- package/dist/core/progressRenderer.js +61 -2
- package/dist/core/progressRenderer.js.map +1 -1
- package/dist/core/prompt/index.d.ts +3 -5
- package/dist/core/prompt/index.js.map +1 -1
- package/dist/core/prompt/palette.d.ts +41 -0
- package/dist/core/prompt/palette.js +35 -0
- package/dist/core/prompt/palette.js.map +1 -0
- package/dist/core/prompt/theme_default.js +27 -10
- package/dist/core/prompt/theme_default.js.map +1 -1
- package/dist/core/prompt/theme_p10k.d.ts +3 -3
- package/dist/core/prompt/theme_p10k.js +73 -36
- package/dist/core/prompt/theme_p10k.js.map +1 -1
- package/dist/core/prompt/utils.d.ts +11 -0
- package/dist/core/prompt/utils.js +18 -0
- package/dist/core/prompt/utils.js.map +1 -1
- package/dist/core/repl.js +11 -2
- package/dist/core/repl.js.map +1 -1
- package/dist/core/startupWarmup.d.ts +5 -1
- package/dist/core/startupWarmup.js +129 -19
- package/dist/core/startupWarmup.js.map +1 -1
- package/dist/lib/bootsequence.d.ts +2 -2
- package/dist/lib/bootsequence.js +1 -0
- package/dist/lib/bootsequence.js.map +1 -1
- package/dist/remote/client.js +27 -1
- package/dist/remote/client.js.map +1 -1
- package/dist/remote/remoteEngine.d.ts +41 -8
- package/dist/remote/remoteEngine.js +119 -41
- package/dist/remote/remoteEngine.js.map +1 -1
- package/package.json +12 -11
|
@@ -8,10 +8,70 @@
|
|
|
8
8
|
*
|
|
9
9
|
* @module
|
|
10
10
|
*/
|
|
11
|
-
import { error_stripDebugPrefix, prefetch_path, prefetch_withSpinner, session, vfs, } from '@fnndsc/brasa';
|
|
12
|
-
import { daemon_launch } from '@fnndsc/calypso';
|
|
13
|
-
import { errorStack, procCache_get } from '@fnndsc/cumin';
|
|
14
|
-
import { procCache_refresh, procTopology_status, procTopology_warmup } from '@fnndsc/salsa';
|
|
11
|
+
import { error_stripDebugPrefix, prefetch_path, prefetch_withSpinner, repl_question, session, vfs, } from '@fnndsc/brasa';
|
|
12
|
+
import { daemon_launch, identity_forSession } from '@fnndsc/calypso';
|
|
13
|
+
import { chrisContext, errorStack, procCache_get, procCheckpoint_restore, procCheckpoint_watch, } from '@fnndsc/cumin';
|
|
14
|
+
import { procCache_refresh, procTopology_reconcileFeeds, procTopology_status, procTopology_warmup, vfsDispatcher, } from '@fnndsc/salsa';
|
|
15
|
+
/** Number of attempts for a blocking startup cache operation. */
|
|
16
|
+
const STARTUP_WARMUP_ATTEMPTS = 3;
|
|
17
|
+
/** Brief backoff before the second and third startup attempts. */
|
|
18
|
+
const STARTUP_WARMUP_RETRY_DELAYS_MS = [250, 500];
|
|
19
|
+
/** Sentinel used to prevent CALYPSO from binding after the operator exits boot. */
|
|
20
|
+
class DaemonWarmupAbortedError extends Error {
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Waits briefly between transient startup attempts without retaining a timer.
|
|
24
|
+
*
|
|
25
|
+
* @param attempt - One-based attempt that just failed.
|
|
26
|
+
* @returns Nothing after the corresponding retry delay.
|
|
27
|
+
*/
|
|
28
|
+
async function startupRetry_wait(attempt) {
|
|
29
|
+
const delay = STARTUP_WARMUP_RETRY_DELAYS_MS[attempt - 1] ?? 0;
|
|
30
|
+
if (delay === 0)
|
|
31
|
+
return;
|
|
32
|
+
await new Promise((resolve) => { setTimeout(resolve, delay); });
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Runs one blocking warm-up action with a bounded retry policy.
|
|
36
|
+
*
|
|
37
|
+
* @param label - Stable boot-step label.
|
|
38
|
+
* @param message - Description shown while the action is running.
|
|
39
|
+
* @param interactive - Whether an interactive spinner may render.
|
|
40
|
+
* @param reporter - Optional boot-status reporter.
|
|
41
|
+
* @param action - One attempt at the cache operation.
|
|
42
|
+
* @returns The first successful result, or the last failed result.
|
|
43
|
+
*/
|
|
44
|
+
async function startupPrefetch_retry(label, message, interactive, reporter, action) {
|
|
45
|
+
let last = { ok: false, message: 'Warm-up did not run.' };
|
|
46
|
+
for (let attempt = 1; attempt <= STARTUP_WARMUP_ATTEMPTS; attempt++) {
|
|
47
|
+
last = await prefetch_withSpinner(label, message, interactive, action);
|
|
48
|
+
if (last.ok || attempt === STARTUP_WARMUP_ATTEMPTS)
|
|
49
|
+
return last;
|
|
50
|
+
reporter?.log('retry', label, `Attempt ${attempt}/${STARTUP_WARMUP_ATTEMPTS} failed: ${last.message ?? 'unknown error'}; retrying.`);
|
|
51
|
+
await startupRetry_wait(attempt);
|
|
52
|
+
}
|
|
53
|
+
return last;
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Asks a terminal operator whether a daemon with incomplete caches may start.
|
|
57
|
+
*
|
|
58
|
+
* A non-interactive launch retains the existing availability-first behavior:
|
|
59
|
+
* it starts degraded rather than hanging or silently terminating.
|
|
60
|
+
*
|
|
61
|
+
* @param failures - Labels of cache steps that exhausted their retries.
|
|
62
|
+
* @returns Whether to start degraded or exit before binding the daemon.
|
|
63
|
+
*/
|
|
64
|
+
async function daemonWarmupFailure_decide(failures) {
|
|
65
|
+
if (!process.stdin.isTTY || !process.stdout.isTTY)
|
|
66
|
+
return 'continue';
|
|
67
|
+
try {
|
|
68
|
+
const answer = await repl_question(`Warm-up incomplete (${failures.join(', ')}). Continue with degraded caches? [c]ontinue/[E]xit: `);
|
|
69
|
+
return /^(c|continue)$/i.test(answer.trim()) ? 'continue' : 'exit';
|
|
70
|
+
}
|
|
71
|
+
catch {
|
|
72
|
+
return 'exit';
|
|
73
|
+
}
|
|
74
|
+
}
|
|
15
75
|
/**
|
|
16
76
|
* Warms startup caches and begins non-blocking job-topology warming.
|
|
17
77
|
*
|
|
@@ -26,7 +86,7 @@ import { procCache_refresh, procTopology_status, procTopology_warmup } from '@fn
|
|
|
26
86
|
export async function startupWarmup_run(flags, user, interactive, reporter, reportTopologySettlement = false) {
|
|
27
87
|
const result = { failures: [] };
|
|
28
88
|
if (!session.offline && flags.plugins) {
|
|
29
|
-
const pluginsResult = await
|
|
89
|
+
const pluginsResult = await startupPrefetch_retry('Plugins', 'Prefetching /bin for completions', interactive, reporter, async () => {
|
|
30
90
|
const listingResult = await vfs.data_get('/bin');
|
|
31
91
|
if (listingResult.ok) {
|
|
32
92
|
return {
|
|
@@ -57,10 +117,31 @@ export async function startupWarmup_run(flags, user, interactive, reporter, repo
|
|
|
57
117
|
reporter?.log('skip', 'Plugins', 'Offline mode');
|
|
58
118
|
reporter?.log('skip', 'Pipelines', 'Offline mode');
|
|
59
119
|
}
|
|
120
|
+
if (!session.offline) {
|
|
121
|
+
const groupsResult = await startupPrefetch_retry('Groups', 'Resolving /etc/group memberships', interactive, reporter, async () => {
|
|
122
|
+
const projection = await vfsDispatcher.read('/etc/group');
|
|
123
|
+
if (projection.ok) {
|
|
124
|
+
const count = projection.value.split('\n').filter(Boolean).length;
|
|
125
|
+
return { ok: true, count };
|
|
126
|
+
}
|
|
127
|
+
const error = errorStack.stack_pop();
|
|
128
|
+
return { ok: false, message: error?.message ?? 'Failed to resolve /etc/group' };
|
|
129
|
+
});
|
|
130
|
+
if (groupsResult.ok) {
|
|
131
|
+
reporter?.log('ok', 'Groups', `Cached ${groupsResult.count ?? 0} group(s)`);
|
|
132
|
+
}
|
|
133
|
+
else {
|
|
134
|
+
result.failures.push('Groups');
|
|
135
|
+
reporter?.log('fail', 'Groups', groupsResult.message || 'Failed to resolve /etc/group');
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
else {
|
|
139
|
+
reporter?.log('skip', 'Groups', 'Offline mode');
|
|
140
|
+
}
|
|
60
141
|
if (!session.offline && flags.feeds) {
|
|
61
142
|
const feedPath = user ? `/home/${user}/feeds` : undefined;
|
|
62
143
|
if (feedPath) {
|
|
63
|
-
const feedsResult = await
|
|
144
|
+
const feedsResult = await startupPrefetch_retry('Feeds', 'Prefetching user feeds', interactive, reporter, () => prefetch_path(feedPath));
|
|
64
145
|
if (feedsResult.ok) {
|
|
65
146
|
result.feeds = feedsResult.count;
|
|
66
147
|
reporter?.log('ok', 'Feeds', `Cached ${feedsResult.count ?? 0} item(s) from ${feedPath}`);
|
|
@@ -74,7 +155,7 @@ export async function startupWarmup_run(flags, user, interactive, reporter, repo
|
|
|
74
155
|
reporter?.log('skip', 'Feeds', 'No user context');
|
|
75
156
|
}
|
|
76
157
|
if (flags.publicFeeds) {
|
|
77
|
-
const publicResult = await
|
|
158
|
+
const publicResult = await startupPrefetch_retry('Public', 'Prefetching public feeds', interactive, reporter, () => prefetch_path('/PUBLIC'));
|
|
78
159
|
if (publicResult.ok) {
|
|
79
160
|
result.public = publicResult.count;
|
|
80
161
|
reporter?.log('ok', 'Public', `Cached ${publicResult.count ?? 0} item(s) from /PUBLIC`);
|
|
@@ -92,20 +173,37 @@ export async function startupWarmup_run(flags, user, interactive, reporter, repo
|
|
|
92
173
|
reporter?.log('skip', 'Feeds', 'Offline mode');
|
|
93
174
|
}
|
|
94
175
|
if (!session.offline && flags.jobs) {
|
|
95
|
-
|
|
176
|
+
let checkpoint = null;
|
|
177
|
+
let reconciliationFeedIDs = [];
|
|
178
|
+
if (reportTopologySettlement && user) {
|
|
179
|
+
const cubeUrl = await chrisContext.ChRISURL_get();
|
|
180
|
+
if (cubeUrl) {
|
|
181
|
+
const identity = identity_forSession(user, cubeUrl);
|
|
182
|
+
checkpoint = await procCheckpoint_restore(identity);
|
|
183
|
+
procCheckpoint_watch(identity);
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
const jobsResult = await startupPrefetch_retry('Jobs', 'Indexing /proc/jobs (feed list)...', interactive, reporter, async () => {
|
|
96
187
|
try {
|
|
97
|
-
await procCache_refresh();
|
|
188
|
+
reconciliationFeedIDs = await procCache_refresh();
|
|
98
189
|
return { ok: true, count: procCache_get().feedIDs_get().length };
|
|
99
190
|
}
|
|
100
191
|
catch (error) {
|
|
192
|
+
if (procCache_get().lifecycle_get().checkpointAt)
|
|
193
|
+
procCache_get().cache_clear();
|
|
101
194
|
const message = error instanceof Error ? error.message : String(error);
|
|
102
195
|
return { ok: false, message };
|
|
103
196
|
}
|
|
104
197
|
});
|
|
105
198
|
if (jobsResult.ok) {
|
|
106
|
-
|
|
199
|
+
const jobsMessage = checkpoint?.restored
|
|
200
|
+
? `Restored ${checkpoint.count} job(s); indexed ${jobsResult.count ?? 0} feed(s) — topology reconciling in background`
|
|
201
|
+
: `Indexed ${jobsResult.count ?? 0} feed(s) — topology reconciling in background`;
|
|
202
|
+
reporter?.log('ok', 'Jobs', jobsMessage);
|
|
107
203
|
errorStack.scope_run(() => {
|
|
108
|
-
const topologySweep =
|
|
204
|
+
const topologySweep = checkpoint?.restored
|
|
205
|
+
? procTopology_reconcileFeeds(reconciliationFeedIDs)
|
|
206
|
+
: procTopology_warmup();
|
|
109
207
|
if (reportTopologySettlement) {
|
|
110
208
|
void topologySweep.then(() => {
|
|
111
209
|
const topology = procTopology_status();
|
|
@@ -148,15 +246,27 @@ export async function startupWarmup_run(flags, user, interactive, reporter, repo
|
|
|
148
246
|
* @param interactive - Whether progress may use an interactive spinner.
|
|
149
247
|
* @param reporter - Daemon boot status logger.
|
|
150
248
|
*/
|
|
151
|
-
export async function daemonSession_run(engine, user, flags, interactive, reporter) {
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
249
|
+
export async function daemonSession_run(engine, user, flags, interactive, reporter, recovery = daemonWarmupFailure_decide) {
|
|
250
|
+
try {
|
|
251
|
+
await daemon_launch(engine, async () => {
|
|
252
|
+
const cache = await startupWarmup_run(flags, user, interactive, reporter, true);
|
|
253
|
+
if (cache.failures.length === 0) {
|
|
254
|
+
reporter.log('ok', 'Engine', 'Ready');
|
|
255
|
+
return;
|
|
256
|
+
}
|
|
257
|
+
if (await recovery(cache.failures) === 'exit') {
|
|
258
|
+
reporter.log('fail', 'Engine', `Startup aborted after incomplete warm-up: ${cache.failures.join(', ')}`);
|
|
259
|
+
throw new DaemonWarmupAbortedError();
|
|
260
|
+
}
|
|
158
261
|
reporter.log('fail', 'Engine', `Starting with incomplete warm-up: ${cache.failures.join(', ')}`);
|
|
262
|
+
});
|
|
263
|
+
}
|
|
264
|
+
catch (error) {
|
|
265
|
+
if (error instanceof DaemonWarmupAbortedError) {
|
|
266
|
+
process.exitCode = 1;
|
|
267
|
+
return;
|
|
159
268
|
}
|
|
160
|
-
|
|
269
|
+
throw error;
|
|
270
|
+
}
|
|
161
271
|
}
|
|
162
272
|
//# sourceMappingURL=startupWarmup.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"startupWarmup.js","sourceRoot":"","sources":["../../src/core/startupWarmup.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,EACL,sBAAsB,EACtB,aAAa,EACb,oBAAoB,EACpB,OAAO,EACP,GAAG,GAGJ,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"startupWarmup.js","sourceRoot":"","sources":["../../src/core/startupWarmup.ts"],"names":[],"mappings":"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"}
|
|
@@ -27,9 +27,9 @@ export interface BootPanels {
|
|
|
27
27
|
chris: BootInfoItem[];
|
|
28
28
|
}
|
|
29
29
|
/**
|
|
30
|
-
* Status of a boot step: ok, skip, or fail.
|
|
30
|
+
* Status of a boot step: ok, retry, skip, or fail.
|
|
31
31
|
*/
|
|
32
|
-
export type BootStatus = 'ok' | 'skip' | 'fail';
|
|
32
|
+
export type BootStatus = 'ok' | 'retry' | 'skip' | 'fail';
|
|
33
33
|
/**
|
|
34
34
|
* Creates a boot logger that renders a titled status box.
|
|
35
35
|
*
|
package/dist/lib/bootsequence.js
CHANGED
|
@@ -28,6 +28,7 @@ export function bootLogger_create(title, useAscii) {
|
|
|
28
28
|
const statusTag = (status) => {
|
|
29
29
|
switch (status) {
|
|
30
30
|
case 'ok': return chalk.green('[ OK ]');
|
|
31
|
+
case 'retry': return chalk.yellow('[RETRY]');
|
|
31
32
|
case 'skip': return chalk.yellow('[SKIP]');
|
|
32
33
|
case 'fail': return chalk.red('[FAIL]');
|
|
33
34
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bootsequence.js","sourceRoot":"","sources":["../../src/lib/bootsequence.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"bootsequence.js","sourceRoot":"","sources":["../../src/lib/bootsequence.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAmB1B,SAAS,kBAAkB,CAAC,IAAY;IACtC,8EAA8E;IAC9E,OAAO,IAAI,CAAC,OAAO,CAAC,6EAA6E,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC;AAChH,CAAC;AAgBD;;;;;;GAMG;AACH,MAAM,UAAU,iBAAiB,CAAC,KAAa,EAAE,QAAiB;IAChE,MAAM,KAAK,GAAW,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IAC3C,MAAM,QAAQ,GAAW,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IAC9C,MAAM,QAAQ,GAAW,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IAC9C,MAAM,QAAQ,GAAW,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IAC9C,MAAM,QAAQ,GAAW,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IAC9C,MAAM,GAAG,GAAW,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;IAEjE,MAAM,OAAO,GAAW,GAAG,QAAQ,GAAG,GAAG,GAAG,QAAQ,EAAE,CAAC;IACvD,MAAM,OAAO,GAAW,GAAG,QAAQ,GAAG,GAAG,GAAG,QAAQ,EAAE,CAAC;IACvD,MAAM,SAAS,GAAG,CAAC,KAAa,EAAU,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAE9D,MAAM,SAAS,GAAG,CAAC,MAAkB,EAAU,EAAE;QAC/C,QAAQ,MAAM,EAAE,CAAC;YACf,KAAK,IAAI,CAAC,CAAC,OAAO,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YACxC,KAAK,OAAO,CAAC,CAAC,OAAO,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YAC7C,KAAK,MAAM,CAAC,CAAC,OAAO,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAC3C,KAAK,MAAM,CAAC,CAAC,OAAO,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC1C,CAAC;IACH,CAAC,CAAC;IAEF,OAAO;QACL,YAAY,KAAW,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC9C,YAAY,KAAW,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC9C,GAAG,CAAC,MAAkB,EAAE,KAAa,EAAE,OAAe;YACpD,OAAO,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,MAAM,CAAC,IAAI,SAAS,CAAC,KAAK,CAAC,IAAI,OAAO,EAAE,CAAC,CAAC;QACrE,CAAC;KACF,CAAC;AACJ,CAAC;AAED,SAAS,UAAU,CAAC,KAAa,EAAE,IAAoB,EAAE,QAAiB,EAAE,QAAiB;IAC3F,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IACjC,MAAM,KAAK,GAAW,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IAC3C,MAAM,IAAI,GAAW,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IAC1C,MAAM,QAAQ,GAAW,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IAC9C,MAAM,QAAQ,GAAW,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IAC9C,MAAM,QAAQ,GAAW,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IAC9C,MAAM,QAAQ,GAAW,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IAE9C,MAAM,QAAQ,GAAW,IAAI,CAAC,MAAM,CAAC,CAAC,GAAW,EAAE,IAAkB,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAC1H,MAAM,QAAQ,GAAW,IAAI,CAAC,MAAM,CAAC,CAAC,GAAW,EAAE,IAAkB,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC5H,MAAM,UAAU,GAAW,IAAI,CAAC,GAAG,CAAC,QAAQ,GAAG,QAAQ,GAAG,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAC/E,MAAM,IAAI,GAAW,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IAE9C,MAAM,WAAW,GAAW,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IACrD,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,CAAC,IAAI,CAAC,GAAG,QAAQ,GAAG,IAAI,GAAG,QAAQ,EAAE,CAAC,CAAC;IAC5C,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,GAAG,IAAI,EAAE,CAAC,CAAC;IAChF,IAAI,CAAC,OAAO,CAAC,CAAC,IAAkB,EAAE,EAAE;QAClC,MAAM,UAAU,GAAW,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;QAC1E,MAAM,MAAM,GAAW,kBAAkB,CAAC,UAAU,CAAC,CAAC;QACtD,MAAM,QAAQ,GAAW,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,UAAU,GAAG,MAAM,CAAC,CAAC;QAE1D,MAAM,KAAK,GAAW,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QACzG,MAAM,KAAK,GAAW,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;QACtE,MAAM,UAAU,GAAW,GAAG,KAAK,IAAI,KAAK,GAAG,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;QACtE,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,UAAU,GAAG,IAAI,EAAE,CAAC,CAAC;IAC5C,CAAC,CAAC,CAAC;IACH,KAAK,CAAC,IAAI,CAAC,GAAG,QAAQ,GAAG,IAAI,GAAG,QAAQ,EAAE,CAAC,CAAC;IAC5C,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,YAAY,CAAC,KAAa,EAAE,IAAoB;IACvD,MAAM,QAAQ,GAAW,IAAI,CAAC,MAAM,CAAC,CAAC,GAAW,EAAE,IAAkB,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAC1H,MAAM,QAAQ,GAAW,IAAI,CAAC,MAAM,CAAC,CAAC,GAAW,EAAE,IAAkB,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC5H,OAAO,IAAI,CAAC,GAAG,CAAC,QAAQ,GAAG,QAAQ,GAAG,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AAC7D,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAa,EAAE,IAAqB;IAC5D,MAAM,EAAE,GAAW,IAAI,CAAC,MAAM,CAAC,CAAC,GAAW,EAAE,CAAgB,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;IAClG,MAAM,EAAE,GAAW,IAAI,CAAC,MAAM,CAAC,CAAC,GAAW,EAAE,CAAgB,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;IACnG,MAAM,EAAE,GAAW,IAAI,CAAC,MAAM,CAAC,CAAC,GAAW,EAAE,CAAgB,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;IACtG,OAAO,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AAC1D,CAAC;AAED,SAAS,sBAAsB,CAC7B,KAAa,EACb,IAAqB,EACrB,QAAiB,EACjB,QAAiB,EACjB,QAAgB;IAEhB,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IACjC,MAAM,KAAK,GAAW,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IAC3C,MAAM,IAAI,GAAW,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IAC1C,MAAM,QAAQ,GAAW,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IAC9C,MAAM,QAAQ,GAAW,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IAC9C,MAAM,QAAQ,GAAW,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IAC9C,MAAM,QAAQ,GAAW,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IAE9C,MAAM,OAAO,GAAW,IAAI,CAAC,MAAM,CAAC,CAAC,GAAW,EAAE,CAAgB,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;IACvG,MAAM,UAAU,GAAW,IAAI,CAAC,MAAM,CAAC,CAAC,GAAW,EAAE,CAAgB,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;IAC3G,MAAM,OAAO,GAAW,IAAI,CAAC,MAAM,CAAC,CAAC,GAAW,EAAE,CAAgB,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;IAC3G,MAAM,YAAY,GAAW,OAAO,GAAG,CAAC,GAAG,UAAU,GAAG,CAAC,GAAG,OAAO,CAAC;IACpE,MAAM,UAAU,GAAW,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,QAAQ,CAAC,CAAC;IAC9E,yCAAyC;IACzC,MAAM,OAAO,GAAW,UAAU,GAAG,CAAC,UAAU,GAAG,YAAY,CAAC,CAAC;IAEjE,MAAM,IAAI,GAAW,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IAC9C,MAAM,WAAW,GAAW,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IACrD,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,CAAC,IAAI,CAAC,GAAG,QAAQ,GAAG,IAAI,GAAG,QAAQ,EAAE,CAAC,CAAC;IAC5C,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,GAAG,IAAI,EAAE,CAAC,CAAC;IAEhF,IAAI,CAAC,OAAO,CAAC,CAAC,IAAmB,EAAE,EAAE;QACnC,MAAM,EAAE,GAAW,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAChG,MAAM,EAAE,GAAW,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACjG,MAAM,EAAE,GAAW,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC1G,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC;IAClD,CAAC,CAAC,CAAC;IAEH,KAAK,CAAC,IAAI,CAAC,GAAG,QAAQ,GAAG,IAAI,GAAG,QAAQ,EAAE,CAAC,CAAC;IAC5C,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAa,EAAE,IAAoB,EAAE,QAAiB,EAAE,QAAiB,EAAE,QAAgB;IACrH,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IACjC,MAAM,KAAK,GAAW,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IAC3C,MAAM,IAAI,GAAW,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IAC1C,MAAM,QAAQ,GAAW,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IAC9C,MAAM,QAAQ,GAAW,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IAC9C,MAAM,QAAQ,GAAW,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IAC9C,MAAM,QAAQ,GAAW,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IAE9C,MAAM,QAAQ,GAAW,IAAI,CAAC,MAAM,CAAC,CAAC,GAAW,EAAE,IAAkB,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAC1H,MAAM,QAAQ,GAAW,IAAI,CAAC,MAAM,CAAC,CAAC,GAAW,EAAE,IAAkB,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC5H,MAAM,UAAU,GAAW,IAAI,CAAC,GAAG,CAAC,QAAQ,GAAG,QAAQ,GAAG,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,QAAQ,CAAC,CAAC;IACzF,MAAM,IAAI,GAAW,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IAE9C,MAAM,WAAW,GAAW,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IACrD,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,CAAC,IAAI,CAAC,GAAG,QAAQ,GAAG,IAAI,GAAG,QAAQ,EAAE,CAAC,CAAC;IAC5C,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,GAAG,IAAI,EAAE,CAAC,CAAC;IAChF,IAAI,CAAC,OAAO,CAAC,CAAC,IAAkB,EAAE,EAAE;QAClC,MAAM,UAAU,GAAW,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;QAC1E,MAAM,MAAM,GAAW,kBAAkB,CAAC,UAAU,CAAC,CAAC;QACtD,MAAM,QAAQ,GAAW,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,UAAU,GAAG,MAAM,CAAC,CAAC;QAE1D,MAAM,KAAK,GAAW,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QACzG,MAAM,KAAK,GAAW,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;QACtE,MAAM,UAAU,GAAW,GAAG,KAAK,IAAI,KAAK,GAAG,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;QACtE,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,UAAU,GAAG,IAAI,EAAE,CAAC,CAAC;IAC5C,CAAC,CAAC,CAAC;IACH,KAAK,CAAC,IAAI,CAAC,GAAG,QAAQ,GAAG,IAAI,GAAG,QAAQ,EAAE,CAAC,CAAC;IAC5C,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,6BAA6B,CAC3C,SAAmB,EACnB,MAAkB,EAClB,QAAiB,EACjB,QAAiB;IAEjB,MAAM,OAAO,GAAW,IAAI,CAAC;IAC7B,MAAM,QAAQ,GAAW,IAAI,CAAC,GAAG,CAC/B,gBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,EACxC,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,EACnC,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,CACpC,CAAC;IAEF,MAAM,SAAS,GAAa,sBAAsB,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;IACzG,MAAM,QAAQ,GAAa,kBAAkB,CAAC,OAAO,EAAE,MAAM,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;IACnG,MAAM,QAAQ,GAAa,kBAAkB,CAAC,OAAO,EAAE,MAAM,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAEnG,MAAM,aAAa,GAAa,CAAC,GAAG,SAAS,EAAE,EAAE,EAAE,GAAG,QAAQ,EAAE,EAAE,EAAE,GAAG,QAAQ,CAAC,CAAC;IACjF,MAAM,UAAU,GAAW,aAAa,CAAC,MAAM,CAAC,CAAC,GAAW,EAAE,IAAY,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,kBAAkB,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC3H,MAAM,UAAU,GAAa,aAAa,CAAC,GAAG,CAAC,CAAC,IAAY,EAAE,EAAE;QAC9D,MAAM,UAAU,GAAW,kBAAkB,CAAC,IAAI,CAAC,CAAC;QACpD,IAAI,UAAU,IAAI,UAAU;YAAE,OAAO,IAAI,CAAC;QAC1C,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACzH,MAAM,QAAQ,GAAW,UAAU,GAAG,UAAU,CAAC;YACjD,MAAM,QAAQ,GAAW,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YACxC,MAAM,IAAI,GAAW,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;YACvC,OAAO,GAAG,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,QAAQ,EAAE,CAAC;QACrD,CAAC;QACD,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,UAAU,GAAG,UAAU,CAAC,EAAE,GAAG,CAAC,CAAC;IACnE,CAAC,CAAC,CAAC;IAEH,MAAM,SAAS,GAAW,SAAS,CAAC,MAAM,CAAC,CAAC,GAAW,EAAE,IAAY,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,kBAAkB,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACtH,MAAM,cAAc,GAAW,CAAC,CAAC;IACjC,MAAM,SAAS,GAAa,CAAC,EAAE,EAAE,GAAG,SAAS,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC;IAChG,MAAM,UAAU,GAAW,SAAS,GAAG,cAAc,GAAG,UAAU,CAAC;IACnE,MAAM,QAAQ,GAAW,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IAC9C,MAAM,SAAS,GAAW,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC;IAC1F,MAAM,SAAS,GAAW,GAAG,OAAO,GAAG,SAAS,IAAI,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,UAAU,GAAG,kBAAkB,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;IACnI,MAAM,IAAI,GAAW,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC;IAEnE,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IACvB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;QAC9B,MAAM,WAAW,GAAW,SAAS,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;QACtE,MAAM,YAAY,GAAW,UAAU,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QACjD,MAAM,IAAI,GAAW,GAAG,WAAW,GAAG,GAAG,CAAC,MAAM,CAAC,cAAc,CAAC,GAAG,YAAY,EAAE,CAAC,OAAO,EAAE,CAAC;QAC5F,OAAO,CAAC,GAAG,CAAC,GAAG,OAAO,GAAG,IAAI,EAAE,CAAC,CAAC;IACnC,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,oCAAoC,CAClD,SAAmB,EACnB,MAAkB,EAClB,QAAiB,EACjB,QAAiB;IAEjB,MAAM,OAAO,GAAW,IAAI,CAAC;IAC7B,MAAM,QAAQ,GAAW,IAAI,CAAC,GAAG,CAC/B,gBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,EACxC,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,EACnC,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,CACpC,CAAC;IAEF,MAAM,SAAS,GAAa,sBAAsB,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;IACzG,MAAM,QAAQ,GAAa,kBAAkB,CAAC,OAAO,EAAE,MAAM,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;IACnG,MAAM,QAAQ,GAAa,kBAAkB,CAAC,OAAO,EAAE,MAAM,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAEnG,MAAM,UAAU,GAAa,CAAC,GAAG,SAAS,EAAE,EAAE,EAAE,GAAG,QAAQ,EAAE,EAAE,EAAE,GAAG,QAAQ,CAAC,CAAC;IAC9E,MAAM,UAAU,GAAW,UAAU,CAAC,MAAM,CAAC,CAAC,GAAW,EAAE,IAAY,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,kBAAkB,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACxH,MAAM,SAAS,GAAW,SAAS,CAAC,MAAM,CAAC,CAAC,GAAW,EAAE,IAAY,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,kBAAkB,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACtH,MAAM,YAAY,GAAW,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;IAE7D,MAAM,QAAQ,GAAW,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IAC9C,MAAM,SAAS,GAAW,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC;IAC1F,MAAM,SAAS,GAAW,GAAG,OAAO,GAAG,SAAS,IAAI,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,YAAY,GAAG,kBAAkB,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;IAErI,MAAM,UAAU,GAAG,CAAC,IAAY,EAAU,EAAE;QAC1C,MAAM,IAAI,GAAW,YAAY,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;QAC7D,OAAO,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IACxD,CAAC,CAAC;IAEF,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IACvB,UAAU,CAAC,OAAO,CAAC,CAAC,IAAY,EAAE,EAAE;QAClC,OAAO,CAAC,GAAG,CAAC,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,OAAO,GAAG,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAClE,CAAC,CAAC,CAAC;IACH,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzB,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,SAAS,CAAC,OAAO,CAAC,CAAC,IAAY,EAAE,EAAE;YACjC,OAAO,CAAC,GAAG,CAAC,GAAG,OAAO,GAAG,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC/C,CAAC,CAAC,CAAC;IACL,CAAC;AACH,CAAC"}
|
package/dist/remote/client.js
CHANGED
|
@@ -21,7 +21,7 @@ import chalk from 'chalk';
|
|
|
21
21
|
import { REPL } from '../core/repl.js';
|
|
22
22
|
import { RemoteEngine } from './remoteEngine.js';
|
|
23
23
|
import { LocalBerthResolver } from '@fnndsc/calypso';
|
|
24
|
-
import { sink_set, StdoutSink, surface_get, surface_set } from '@fnndsc/brasa';
|
|
24
|
+
import { sink_set, StdoutSink, surface_get, surface_set, welcomeLine_build, welcomeLine_compose, fortune_random } from '@fnndsc/brasa';
|
|
25
25
|
import { cliSurface_create } from '../core/cliSurface.js';
|
|
26
26
|
import { TerminalProgressRenderer } from '../core/progressRenderer.js';
|
|
27
27
|
import { surfaceLine_execute } from '../core/surfaceDispatch.js';
|
|
@@ -139,6 +139,10 @@ export async function remote_run(identity, commandToExecute) {
|
|
|
139
139
|
// Pipeline segments run on this machine, through the client's own
|
|
140
140
|
// tools — never on the daemon host.
|
|
141
141
|
surface_get().pipeSegment(command, input),
|
|
142
|
+
onShell: (command) =>
|
|
143
|
+
// Host-shell escapes belong to the attached surface, so `!cmd` runs
|
|
144
|
+
// on this client machine and never on the daemon host.
|
|
145
|
+
surface_get().shellCommand(command),
|
|
142
146
|
onEdit: (content, extension) =>
|
|
143
147
|
// Editing happens in this machine's editor.
|
|
144
148
|
surface_get().localEdit({ content, extension }),
|
|
@@ -174,8 +178,30 @@ export async function remote_run(identity, commandToExecute) {
|
|
|
174
178
|
}
|
|
175
179
|
return;
|
|
176
180
|
}
|
|
181
|
+
// Greet with the daemon's own reported versions and build hash; a daemon
|
|
182
|
+
// that predates the handshake field falls back to the local install's.
|
|
183
|
+
const stack = engine.daemonStack();
|
|
184
|
+
const welcome = stack !== undefined
|
|
185
|
+
? welcomeLine_compose('chell', stack.chell, stack.build)
|
|
186
|
+
: welcomeLine_build('chell');
|
|
187
|
+
console.log(chalk.bold.cyan(welcome));
|
|
177
188
|
console.log(chalk.green(`[+] Attached to CALYPSO daemon ${berth.identity} at ${berth.url}`));
|
|
189
|
+
if (stack !== undefined) {
|
|
190
|
+
// Banner the daemon's whole stack, one aligned line per layer; older
|
|
191
|
+
// daemons report only chell and calypso.
|
|
192
|
+
const layers = [
|
|
193
|
+
['chell', stack.chell], ['brasa', stack.brasa], ['chili', stack.chili],
|
|
194
|
+
['salsa', stack.salsa], ['cumin', stack.cumin], ['calypso', stack.calypso],
|
|
195
|
+
];
|
|
196
|
+
const present = layers.filter((entry) => entry[1] !== undefined);
|
|
197
|
+
const pkgWidth = Math.max(...present.map(([pkg]) => pkg.length));
|
|
198
|
+
for (const [pkg, version] of present) {
|
|
199
|
+
console.log(chalk.gray(` ${pkg.padEnd(pkgWidth)} ${version}`));
|
|
200
|
+
}
|
|
201
|
+
}
|
|
178
202
|
console.log(chalk.gray(" Type 'exit' to detach.\n"));
|
|
203
|
+
console.log(chalk.gray(fortune_random(4)));
|
|
204
|
+
console.log('');
|
|
179
205
|
// The daemon pushes the themed prompt string; the REPL renders whatever the
|
|
180
206
|
// daemon last sent, falling back until the first push arrives.
|
|
181
207
|
const repl = new REPL(engine, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/remote/client.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AACH,OAAO,EAAE,eAAe,EAAkB,MAAM,wBAAwB,CAAC;AACzE,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AACvC,OAAO,EAAE,YAAY,
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/remote/client.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,6 +12,8 @@ export interface RemoteEngineOptions {
|
|
|
12
12
|
onPrompt?: (message: string, hidden: boolean) => Promise<string>;
|
|
13
13
|
/** Runs a pipeline segment on this machine and returns its output. */
|
|
14
14
|
onPipe?: (command: string, input: Buffer) => Promise<Buffer>;
|
|
15
|
+
/** Runs a host-shell command on this machine and returns its exit code. */
|
|
16
|
+
onShell?: (command: string) => Promise<number>;
|
|
15
17
|
/** Opens content in this machine's editor and returns the edited result. */
|
|
16
18
|
onEdit?: (content: string, extension: string | undefined) => Promise<{
|
|
17
19
|
content: string;
|
|
@@ -20,18 +22,39 @@ export interface RemoteEngineOptions {
|
|
|
20
22
|
/** Called when the connection closes unexpectedly. */
|
|
21
23
|
onClose?: () => void;
|
|
22
24
|
}
|
|
25
|
+
/**
|
|
26
|
+
* The daemon-reported stack identity from the attach handshake: its installed
|
|
27
|
+
* chell and calypso versions plus the short build hash. Absent on daemons that
|
|
28
|
+
* predate the field.
|
|
29
|
+
*
|
|
30
|
+
* @property chell - The daemon's installed chell version.
|
|
31
|
+
* @property calypso - The daemon's installed calypso version.
|
|
32
|
+
* @property build - The daemon's short build hash.
|
|
33
|
+
*/
|
|
34
|
+
export interface DaemonStack {
|
|
35
|
+
chell: string;
|
|
36
|
+
calypso: string;
|
|
37
|
+
build: string;
|
|
38
|
+
brasa?: string;
|
|
39
|
+
chili?: string;
|
|
40
|
+
salsa?: string;
|
|
41
|
+
cumin?: string;
|
|
42
|
+
}
|
|
23
43
|
/**
|
|
24
44
|
* A `BrasaEngine` implementation that drives a remote daemon.
|
|
25
45
|
*/
|
|
26
46
|
export declare class RemoteEngine implements BrasaEngine {
|
|
27
47
|
private readonly ws;
|
|
28
|
-
private readonly
|
|
48
|
+
private readonly requests;
|
|
29
49
|
private readonly onSession;
|
|
30
50
|
private readonly onPrompt;
|
|
31
51
|
private readonly onPipe;
|
|
52
|
+
private readonly onShell;
|
|
32
53
|
private readonly onEdit;
|
|
33
54
|
private latestPrompt;
|
|
55
|
+
private stackReport;
|
|
34
56
|
private nextId;
|
|
57
|
+
private activeExecuteId;
|
|
35
58
|
private readonly liveEnvelopeChannels;
|
|
36
59
|
/**
|
|
37
60
|
* @param ws - An open, already-attached socket to the daemon.
|
|
@@ -50,6 +73,8 @@ export declare class RemoteEngine implements BrasaEngine {
|
|
|
50
73
|
/** @inheritdoc */
|
|
51
74
|
line_execute(line: string): Promise<CommandEnvelope[]>;
|
|
52
75
|
/** @inheritdoc */
|
|
76
|
+
line_cancel(): boolean;
|
|
77
|
+
/** @inheritdoc */
|
|
53
78
|
line_complete(linePrefix: string): Promise<CompletionResult>;
|
|
54
79
|
/**
|
|
55
80
|
* Sends a correlated request and returns a promise for its reply.
|
|
@@ -87,6 +112,14 @@ export declare class RemoteEngine implements BrasaEngine {
|
|
|
87
112
|
* @param input - The base64-encoded input bytes.
|
|
88
113
|
*/
|
|
89
114
|
private pipe_run;
|
|
115
|
+
/**
|
|
116
|
+
* Runs a host-shell command the daemon delegated to this surface and returns
|
|
117
|
+
* only its exit status; the process owns this surface's terminal directly.
|
|
118
|
+
*
|
|
119
|
+
* @param shellId - Correlation id for the shell request.
|
|
120
|
+
* @param command - The shell command without the leading `!`.
|
|
121
|
+
*/
|
|
122
|
+
private shell_run;
|
|
90
123
|
/**
|
|
91
124
|
* Opens content in this machine's editor (the daemon asked for it) and
|
|
92
125
|
* returns the edited result. With no edit handler, returns the content
|
|
@@ -104,13 +137,6 @@ export declare class RemoteEngine implements BrasaEngine {
|
|
|
104
137
|
* @param chunk - The streamed text.
|
|
105
138
|
*/
|
|
106
139
|
private output_render;
|
|
107
|
-
/**
|
|
108
|
-
* Applies a settlement to the pending request for an id, if one exists.
|
|
109
|
-
*
|
|
110
|
-
* @param id - The correlation id.
|
|
111
|
-
* @param settle - The settlement to apply.
|
|
112
|
-
*/
|
|
113
|
-
private pending_settle;
|
|
114
140
|
/**
|
|
115
141
|
* The latest themed prompt string the daemon pushed, or empty before the
|
|
116
142
|
* first push.
|
|
@@ -118,6 +144,13 @@ export declare class RemoteEngine implements BrasaEngine {
|
|
|
118
144
|
* @returns The current prompt string.
|
|
119
145
|
*/
|
|
120
146
|
promptLine(): string;
|
|
147
|
+
/**
|
|
148
|
+
* The stack identity the daemon reported in its attach handshake.
|
|
149
|
+
*
|
|
150
|
+
* @returns The daemon's versions and build hash, or undefined when the
|
|
151
|
+
* daemon predates the field.
|
|
152
|
+
*/
|
|
153
|
+
daemonStack(): DaemonStack | undefined;
|
|
121
154
|
/**
|
|
122
155
|
* Closes the connection.
|
|
123
156
|
*/
|