@fnndsc/brasa 0.45.0 → 0.46.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/api/models.d.ts +37 -0
- package/dist/api/models.js.map +1 -1
- package/dist/buildinfo.json +1 -1
- package/dist/builtins/fs/pull.args.d.ts +0 -10
- package/dist/builtins/fs/pull.args.js +5 -30
- package/dist/builtins/fs/pull.args.js.map +1 -1
- package/dist/builtins/fs/pull.js +2 -48
- package/dist/builtins/fs/pull.js.map +1 -1
- package/dist/builtins/help.js +21 -5
- package/dist/builtins/help.js.map +1 -1
- package/dist/builtins/helpSections.js +3 -3
- package/dist/builtins/helpSections.js.map +1 -1
- package/dist/builtins/net/query.js +0 -3
- package/dist/builtins/net/query.js.map +1 -1
- package/dist/builtins/pluginExecute.d.ts +4 -1
- package/dist/builtins/pluginExecute.js +11 -12
- package/dist/builtins/pluginExecute.js.map +1 -1
- package/dist/builtins/res/expect.js +5 -2
- package/dist/builtins/res/expect.js.map +1 -1
- package/dist/builtins/res/gather.d.ts +2 -2
- package/dist/builtins/res/gather.js +11 -3
- package/dist/builtins/res/gather.js.map +1 -1
- package/dist/builtins/res/gather.kind.d.ts +9 -0
- package/dist/builtins/res/gather.kind.js +10 -0
- package/dist/builtins/res/gather.kind.js.map +1 -0
- package/dist/builtins/res/gather.process.d.ts +29 -0
- package/dist/builtins/res/gather.process.js +177 -0
- package/dist/builtins/res/gather.process.js.map +1 -0
- package/dist/builtins/res/pipeline.d.ts +16 -0
- package/dist/builtins/res/pipeline.js +38 -13
- package/dist/builtins/res/pipeline.js.map +1 -1
- package/dist/builtins/res/play.d.ts +2 -0
- package/dist/builtins/res/play.js +30 -7
- package/dist/builtins/res/play.js.map +1 -1
- package/dist/builtins/res/plugin.js +9 -30
- package/dist/builtins/res/plugin.js.map +1 -1
- package/dist/builtins/res/runWait.d.ts +10 -0
- package/dist/builtins/res/runWait.js +14 -0
- package/dist/builtins/res/runWait.js.map +1 -1
- package/dist/builtins/sys/variables.d.ts +25 -0
- package/dist/builtins/sys/variables.js +113 -0
- package/dist/builtins/sys/variables.js.map +1 -0
- package/dist/builtins/variablesPage.d.ts +9 -0
- package/dist/builtins/variablesPage.js +54 -0
- package/dist/builtins/variablesPage.js.map +1 -0
- package/dist/chris/binExecutables.d.ts +19 -0
- package/dist/chris/binExecutables.js +18 -0
- package/dist/chris/binExecutables.js.map +1 -0
- package/dist/chris/commandFallback.js +6 -22
- package/dist/chris/commandFallback.js.map +1 -1
- package/dist/chris/help.d.ts +2 -2
- package/dist/chris/help.js +27 -44
- package/dist/chris/help.js.map +1 -1
- package/dist/chris/references.js +14 -75
- package/dist/chris/references.js.map +1 -1
- package/dist/core/assignment.d.ts +13 -0
- package/dist/core/assignment.js +98 -0
- package/dist/core/assignment.js.map +1 -0
- package/dist/core/coreCommands.js +5 -0
- package/dist/core/coreCommands.js.map +1 -1
- package/dist/core/engine.js +14 -3
- package/dist/core/engine.js.map +1 -1
- package/dist/core/expansion.d.ts +13 -7
- package/dist/core/expansion.js +36 -19
- package/dist/core/expansion.js.map +1 -1
- package/dist/core/sink.d.ts +33 -0
- package/dist/core/sink.js +48 -0
- package/dist/core/sink.js.map +1 -1
- package/dist/core/variables.d.ts +121 -0
- package/dist/core/variables.js +316 -0
- package/dist/core/variables.js.map +1 -0
- package/dist/lib/parser.js +2 -2
- package/dist/notes.json +1 -1
- package/dist/session/answerAdapters.js +12 -0
- package/dist/session/answerAdapters.js.map +1 -1
- package/package.json +1 -1
- package/dist/builtins/pronouns.d.ts +0 -8
- package/dist/builtins/pronouns.js +0 -39
- package/dist/builtins/pronouns.js.map +0 -1
- package/dist/session/recent.d.ts +0 -68
- package/dist/session/recent.js +0 -99
- package/dist/session/recent.js.map +0 -1
|
@@ -0,0 +1,177 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @file `gather process`: one run over the whole cohort.
|
|
3
|
+
*
|
|
4
|
+
* A cohort is processed as a group: one feed whose `pl-dircopy` root holds
|
|
5
|
+
* every member's landed folder, and the named plugin or pipeline runs once
|
|
6
|
+
* off that root, reading the group from it. There is no loop: the iteration
|
|
7
|
+
* is in the data the plugin reads. This is the shape ARGUS's PROCESS builds
|
|
8
|
+
* from a press (#597), so a manifest and a press make the same feed.
|
|
9
|
+
*
|
|
10
|
+
* When the cohort already has a feed (a `pull --new-feed`, or ARGUS's
|
|
11
|
+
* CREATE FEED, noted it on the cohort), the run goes off that feed's root and
|
|
12
|
+
* nothing is copied twice; otherwise the feed is made here and noted on the
|
|
13
|
+
* cohort for the next run. The name resolves as a bare line resolves it in
|
|
14
|
+
* `/bin`. A series not pulled yet has no folder to copy, and the verb refuses
|
|
15
|
+
* by name rather than processing part of the cohort.
|
|
16
|
+
*
|
|
17
|
+
* It answers what the bare run would: `run.scheduled` for a plugin,
|
|
18
|
+
* `pipeline.scheduled` for a pipeline. Waiting, `--detach` and failure are
|
|
19
|
+
* the bare run's.
|
|
20
|
+
*
|
|
21
|
+
* @module
|
|
22
|
+
*/
|
|
23
|
+
import chalk from 'chalk';
|
|
24
|
+
import { feed_create } from '@fnndsc/salsa';
|
|
25
|
+
import { envelope_error } from '@fnndsc/menu';
|
|
26
|
+
import { sink_dataLine } from '../../core/sink.js';
|
|
27
|
+
import { binExecutableMatches_get } from '../../chris/binExecutables.js';
|
|
28
|
+
import { builtin_executePlugin } from '../pluginExecute.js';
|
|
29
|
+
import { builtin_pipeline } from './pipeline.js';
|
|
30
|
+
import { newFeed_cacheAdd, run_follow } from '../feedCreation.js';
|
|
31
|
+
import { cohort_read, cohort_write } from './gather.store.js';
|
|
32
|
+
/** The usage line a refusal points at. */
|
|
33
|
+
const USAGE = 'gather process <plugin|pipeline> [--title T] [--detach] [-- <its arguments>]';
|
|
34
|
+
/**
|
|
35
|
+
* Reads the words after `gather process`.
|
|
36
|
+
*
|
|
37
|
+
* @param words - The words, raw.
|
|
38
|
+
* @returns The request, or why it is not one.
|
|
39
|
+
*/
|
|
40
|
+
export function gatherProcessArgs_parse(words) {
|
|
41
|
+
const delimiter = words.indexOf('--');
|
|
42
|
+
const own = delimiter === -1 ? words : words.slice(0, delimiter);
|
|
43
|
+
const forwarded = delimiter === -1 ? [] : words.slice(delimiter + 1);
|
|
44
|
+
const parsed = { name: null, title: null, detach: false, forwarded, error: null };
|
|
45
|
+
for (let at = 0; at < own.length; at++) {
|
|
46
|
+
const word = own[at];
|
|
47
|
+
if (word === '--detach') {
|
|
48
|
+
parsed.detach = true;
|
|
49
|
+
continue;
|
|
50
|
+
}
|
|
51
|
+
if (word === '--title') {
|
|
52
|
+
const title = own[at + 1];
|
|
53
|
+
if (title === undefined || title.startsWith('--') || title.trim() === '') {
|
|
54
|
+
parsed.error ??= '--title needs a title';
|
|
55
|
+
continue;
|
|
56
|
+
}
|
|
57
|
+
parsed.title = title.trim();
|
|
58
|
+
at++;
|
|
59
|
+
continue;
|
|
60
|
+
}
|
|
61
|
+
if (word.startsWith('-')) {
|
|
62
|
+
parsed.error ??= `${word}: unknown option; the run's own arguments go after --`;
|
|
63
|
+
continue;
|
|
64
|
+
}
|
|
65
|
+
if (parsed.name !== null) {
|
|
66
|
+
parsed.error ??= `one plugin or pipeline at a time; ${word} is a second (its arguments go after --)`;
|
|
67
|
+
continue;
|
|
68
|
+
}
|
|
69
|
+
parsed.name = word;
|
|
70
|
+
}
|
|
71
|
+
if (parsed.name === null)
|
|
72
|
+
parsed.error ??= `name the plugin or pipeline to run over the cohort. Usage: ${USAGE}`;
|
|
73
|
+
return parsed;
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* Refuses, saying why.
|
|
77
|
+
*
|
|
78
|
+
* @param message - What the operator needs to know.
|
|
79
|
+
* @returns The error envelope.
|
|
80
|
+
*/
|
|
81
|
+
function process_refuse(message) {
|
|
82
|
+
process.exitCode = 1;
|
|
83
|
+
return envelope_error('', undefined, `${chalk.red(`gather process: ${message}`)}\n`);
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* Where a member is in CUBE: a pulled series' landed folder, a folder or
|
|
87
|
+
* file's own path; null for a series not pulled yet.
|
|
88
|
+
*
|
|
89
|
+
* @param member - The member.
|
|
90
|
+
* @returns Its CFS path, or null.
|
|
91
|
+
*/
|
|
92
|
+
function member_place(member) {
|
|
93
|
+
if (member.kind !== 'series')
|
|
94
|
+
return member.vfsPath;
|
|
95
|
+
const landed = member.folderPath;
|
|
96
|
+
return typeof landed === 'string' && landed.length > 0 ? landed : null;
|
|
97
|
+
}
|
|
98
|
+
/**
|
|
99
|
+
* What a member is called in a refusal.
|
|
100
|
+
*
|
|
101
|
+
* @param member - The member.
|
|
102
|
+
* @returns Its description, or the last part of its address.
|
|
103
|
+
*/
|
|
104
|
+
function member_word(member) {
|
|
105
|
+
return member.description ?? member.vfsPath.split('/').filter(Boolean).pop() ?? member.vfsPath;
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* The cohort's feed: the one noted on it, or one made now from every
|
|
109
|
+
* member's place and noted on the cohort.
|
|
110
|
+
*
|
|
111
|
+
* @param state - The cohort.
|
|
112
|
+
* @param places - Every member's CFS path.
|
|
113
|
+
* @param title - The title for a feed made now.
|
|
114
|
+
* @returns The feed and whether it was made now, or a refusal.
|
|
115
|
+
*/
|
|
116
|
+
async function cohortFeed_ensure(state, places, title) {
|
|
117
|
+
if (state.feed !== null)
|
|
118
|
+
return { feed: state.feed, made: false };
|
|
119
|
+
const feed = await feed_create(places, { title });
|
|
120
|
+
const feedId = Number(feed?.id);
|
|
121
|
+
const rootInstanceId = Number(feed?.pluginInstance?.data?.id);
|
|
122
|
+
const owner = typeof feed?.owner_username === 'string' ? feed.owner_username.trim() : '';
|
|
123
|
+
if (!Number.isInteger(feedId) || feedId <= 0 || !Number.isInteger(rootInstanceId) || rootInstanceId <= 0 || owner === '') {
|
|
124
|
+
return `could not make the cohort's feed '${title}'`;
|
|
125
|
+
}
|
|
126
|
+
newFeed_cacheAdd({ feedID: feedId, title, ownerUsername: owner, rootInstanceID: rootInstanceId });
|
|
127
|
+
run_follow(feedId);
|
|
128
|
+
const made = { feedId, rootInstanceId, path: `/home/${owner}/feeds/feed_${feedId}/pl-dircopy_${rootInstanceId}/data` };
|
|
129
|
+
await cohort_write({ ...state, feed: made });
|
|
130
|
+
sink_dataLine(chalk.green(`Feed created: ${feedId} (${places.length} member${places.length === 1 ? '' : 's'} in its root, ${rootInstanceId})`));
|
|
131
|
+
return { feed: made, made: true };
|
|
132
|
+
}
|
|
133
|
+
/**
|
|
134
|
+
* `gather process <name> [--title T] [--detach] [-- args]`: runs a plugin or
|
|
135
|
+
* a pipeline once over the whole cohort.
|
|
136
|
+
*
|
|
137
|
+
* @param words - The words after `gather process`, raw.
|
|
138
|
+
* @returns The run's envelope, or a refusal.
|
|
139
|
+
*/
|
|
140
|
+
export async function gather_process(words) {
|
|
141
|
+
const parsed = gatherProcessArgs_parse(words);
|
|
142
|
+
if (parsed.error !== null || parsed.name === null)
|
|
143
|
+
return process_refuse(parsed.error ?? USAGE);
|
|
144
|
+
const name = parsed.name;
|
|
145
|
+
const state = await cohort_read();
|
|
146
|
+
if (state.series.length === 0)
|
|
147
|
+
return process_refuse('the cohort is empty; gather add something first');
|
|
148
|
+
const waiting = state.series.filter((member) => member_place(member) === null);
|
|
149
|
+
if (waiting.length > 0) {
|
|
150
|
+
const named = waiting.slice(0, 5).map(member_word).join(', ') + (waiting.length > 5 ? `, and ${waiting.length - 5} more` : '');
|
|
151
|
+
return process_refuse(`${waiting.length} series ${waiting.length === 1 ? 'is' : 'are'} not pulled yet (${named}); pull \${gather} first`);
|
|
152
|
+
}
|
|
153
|
+
const matches = await binExecutableMatches_get(name);
|
|
154
|
+
if (matches.plugin !== undefined && matches.pipeline !== undefined) {
|
|
155
|
+
return process_refuse(`${name} names both a plugin and a pipeline in /bin; it cannot tell which to run`);
|
|
156
|
+
}
|
|
157
|
+
if (matches.plugin === undefined && matches.pipeline === undefined) {
|
|
158
|
+
return process_refuse(`no plugin or pipeline named ${name} in /bin`);
|
|
159
|
+
}
|
|
160
|
+
const places = state.series.map((member) => member_place(member));
|
|
161
|
+
const title = parsed.title ?? state.name ?? 'cohort';
|
|
162
|
+
const ensured = await cohortFeed_ensure(state, places, title);
|
|
163
|
+
if (typeof ensured === 'string')
|
|
164
|
+
return process_refuse(ensured);
|
|
165
|
+
const { feed, made } = ensured;
|
|
166
|
+
const detach = parsed.detach ? ['--detach'] : [];
|
|
167
|
+
const envelope = matches.pipeline !== undefined
|
|
168
|
+
? await builtin_pipeline(['run', name, '--previous', String(feed.rootInstanceId), ...detach, ...parsed.forwarded])
|
|
169
|
+
: await builtin_executePlugin(name, [...detach, ...parsed.forwarded], feed.path);
|
|
170
|
+
// The run went off a root, so it reads as continuing a feed; when that
|
|
171
|
+
// feed was made by this line, the answer says so, as a bare run's would.
|
|
172
|
+
if (made && envelope.model !== undefined && typeof envelope.model.data === 'object' && envelope.model.data !== null) {
|
|
173
|
+
return { ...envelope, model: { ...envelope.model, data: { ...envelope.model.data, newFeed: true } } };
|
|
174
|
+
}
|
|
175
|
+
return envelope;
|
|
176
|
+
}
|
|
177
|
+
//# sourceMappingURL=gather.process.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gather.process.js","sourceRoot":"","sources":["../../../src/builtins/res/gather.process.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,7 +15,23 @@
|
|
|
15
15
|
*
|
|
16
16
|
* @module
|
|
17
17
|
*/
|
|
18
|
+
import { type RunSettlement } from './runWait.js';
|
|
19
|
+
import type { PipelineScheduled } from '../../api/models.js';
|
|
18
20
|
import { type CommandEnvelope } from '@fnndsc/menu';
|
|
21
|
+
/** The model kind a scheduled pipeline travels under. */
|
|
22
|
+
export declare const PIPELINE_SCHEDULED_KIND: string;
|
|
23
|
+
/**
|
|
24
|
+
* A scheduled pipeline as a model: every node, as the process cache knows it
|
|
25
|
+
* once the feed was refreshed, and the nodes nothing in it runs off.
|
|
26
|
+
*
|
|
27
|
+
* @param pipelineName - The pipeline.
|
|
28
|
+
* @param workflowId - The workflow CUBE made.
|
|
29
|
+
* @param feedId - The feed its nodes joined.
|
|
30
|
+
* @param instanceIds - The nodes, in the order CUBE scheduled them.
|
|
31
|
+
* @param settlement - How the wait ended, or null when the line did not wait.
|
|
32
|
+
* @returns The model.
|
|
33
|
+
*/
|
|
34
|
+
export declare function pipelineScheduled_make(pipelineName: string, workflowId: number, feedId: number, instanceIds: ReadonlyArray<number>, settlement: RunSettlement | null): PipelineScheduled;
|
|
19
35
|
/**
|
|
20
36
|
* Manages ChRIS pipeline registration, inspection, and execution.
|
|
21
37
|
*
|
|
@@ -24,8 +24,7 @@ import { table_render } from '@fnndsc/chili/screen/screen.js';
|
|
|
24
24
|
import { args_checkHasHelpFlag, help_render } from '../help.js';
|
|
25
25
|
import { sink_get, sink_dataLine, sink_errLine } from '../../core/sink.js';
|
|
26
26
|
import { pipelineRunArgs_parse } from './pipeline.args.js';
|
|
27
|
-
import { runs_awaitSettled, settlement_render } from './runWait.js';
|
|
28
|
-
import { recentFeed_note, recentRuns_note } from '../../session/recent.js';
|
|
27
|
+
import { runs_awaitSettled, settlement_render, settlementStatus_of } from './runWait.js';
|
|
29
28
|
import { pipelineDiagram_handle } from './pipeline.diagram.js';
|
|
30
29
|
import { pipelineManifest_render, pipelineParameters_render } from './pipeline.manifest.js';
|
|
31
30
|
import { path_resolve } from '../utils.js';
|
|
@@ -205,15 +204,12 @@ async function pipelineRun_handle(args) {
|
|
|
205
204
|
}
|
|
206
205
|
sink_dataLine(chalk.green(`✓ Workflow ${workflowId} created — ${pluginInstanceIds.length} node(s) queued`));
|
|
207
206
|
sink_dataLine(chalk.gray(` Instance IDs: ${pluginInstanceIds.join(', ')}`));
|
|
208
|
-
// What a later line's pronouns refer to.
|
|
209
|
-
if (feedID !== undefined)
|
|
210
|
-
recentFeed_note(feedID);
|
|
211
|
-
recentRuns_note(pluginInstanceIds);
|
|
212
207
|
// A workflow that returns when CUBE accepts it reads as finished and is
|
|
213
208
|
// not: the wait holds this line, never the session, and Esc detaches it.
|
|
214
209
|
// `--detach` asks for the handle up front instead.
|
|
210
|
+
let settlement = null;
|
|
215
211
|
if (!parsed.detach) {
|
|
216
|
-
|
|
212
|
+
settlement = await runs_awaitSettled(pluginInstanceIds, pipelineResult.value.name);
|
|
217
213
|
sink_dataLine(settlement_render(settlement, pipelineResult.value.name));
|
|
218
214
|
if (settlement.outcome === 'settled' && settlement.failed > 0)
|
|
219
215
|
process.exitCode = 1;
|
|
@@ -226,16 +222,45 @@ async function pipelineRun_handle(args) {
|
|
|
226
222
|
}
|
|
227
223
|
}
|
|
228
224
|
}
|
|
229
|
-
// A scheduled
|
|
230
|
-
// it landed in
|
|
231
|
-
|
|
232
|
-
if (feedID === undefined || firstInstance === undefined)
|
|
225
|
+
// A scheduled pipeline is a model, as a plugin's run is: a surface lights
|
|
226
|
+
// the feed it landed in, and a capture holds every node it made.
|
|
227
|
+
if (feedID === undefined || pluginInstanceIds.length === 0)
|
|
233
228
|
return envelope_ok('');
|
|
234
229
|
return envelope_ok('', {
|
|
235
|
-
kind:
|
|
236
|
-
data:
|
|
230
|
+
kind: PIPELINE_SCHEDULED_KIND,
|
|
231
|
+
data: pipelineScheduled_make(pipelineResult.value.name, workflowId, feedID, pluginInstanceIds, settlement),
|
|
237
232
|
});
|
|
238
233
|
}
|
|
234
|
+
/** The model kind a scheduled pipeline travels under. */
|
|
235
|
+
export const PIPELINE_SCHEDULED_KIND = 'pipeline.scheduled';
|
|
236
|
+
/**
|
|
237
|
+
* A scheduled pipeline as a model: every node, as the process cache knows it
|
|
238
|
+
* once the feed was refreshed, and the nodes nothing in it runs off.
|
|
239
|
+
*
|
|
240
|
+
* @param pipelineName - The pipeline.
|
|
241
|
+
* @param workflowId - The workflow CUBE made.
|
|
242
|
+
* @param feedId - The feed its nodes joined.
|
|
243
|
+
* @param instanceIds - The nodes, in the order CUBE scheduled them.
|
|
244
|
+
* @param settlement - How the wait ended, or null when the line did not wait.
|
|
245
|
+
* @returns The model.
|
|
246
|
+
*/
|
|
247
|
+
export function pipelineScheduled_make(pipelineName, workflowId, feedId, instanceIds, settlement) {
|
|
248
|
+
const cache = procCache_get();
|
|
249
|
+
const instances = instanceIds.map((instanceId) => {
|
|
250
|
+
const known = cache.instance_get(instanceId);
|
|
251
|
+
return {
|
|
252
|
+
instanceId,
|
|
253
|
+
pluginName: known?.pluginName ?? 'unknown',
|
|
254
|
+
outputPath: known?.outputPath ?? null,
|
|
255
|
+
status: settlement === null ? 'detached' : settlementStatus_of(settlement, instanceId),
|
|
256
|
+
};
|
|
257
|
+
});
|
|
258
|
+
const parents = new Set(instanceIds
|
|
259
|
+
.map((instanceId) => cache.instance_get(instanceId)?.parentID)
|
|
260
|
+
.filter((parent) => typeof parent === 'number'));
|
|
261
|
+
const leaves = instanceIds.filter((instanceId) => !parents.has(instanceId));
|
|
262
|
+
return { pipelineName, workflowId, feedId, newFeed: false, instances, leaves };
|
|
263
|
+
}
|
|
239
264
|
/**
|
|
240
265
|
* Handles `pipeline source <name|id>`.
|
|
241
266
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pipeline.js","sourceRoot":"","sources":["../../../src/builtins/res/pipeline.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"pipeline.js","sourceRoot":"","sources":["../../../src/builtins/res/pipeline.ts"],"names":[],"mappings":"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"}
|
|
@@ -17,6 +17,8 @@ export interface Manifest {
|
|
|
17
17
|
name: string | null;
|
|
18
18
|
description: string | null;
|
|
19
19
|
params: ManifestParam[];
|
|
20
|
+
/** The variable whose model the play answers with (`@answers`), when the manifest names one. */
|
|
21
|
+
answers: string | null;
|
|
20
22
|
lines: ManifestLine[];
|
|
21
23
|
}
|
|
22
24
|
/** What a play did. */
|
|
@@ -11,8 +11,8 @@
|
|
|
11
11
|
* prints the same envelopes and exits 0 or non-zero. Neither run knows which
|
|
12
12
|
* it is.
|
|
13
13
|
*
|
|
14
|
-
* The file may say what it needs (`@param`)
|
|
15
|
-
*
|
|
14
|
+
* The file may say what it needs (`@param`), what it is (`@name`) and what it
|
|
15
|
+
* answers (`@answers`), and names what its own lines made (`A=$(…)`).
|
|
16
16
|
* It may not say where anything goes: placement is the surface's judgment,
|
|
17
17
|
* and a manifest that named panes would fork into a browser version and a
|
|
18
18
|
* headless one.
|
|
@@ -26,7 +26,8 @@ import { duration_parse } from '../../lib/duration.js';
|
|
|
26
26
|
import { recorder_mute, recorder_unmute } from '../../session/recorder.js';
|
|
27
27
|
import { sink_dataLine, sink_errLine } from '../../core/sink.js';
|
|
28
28
|
import { commandCancellation_enable, commandCancellation_signalGet } from '../../core/cancellation.js';
|
|
29
|
-
import {
|
|
29
|
+
import { reference_isReserved, reference_resolve, unresolvedStands_run } from '../../core/expansion.js';
|
|
30
|
+
import { VARIABLE_NAME, variable_get, variableScope_run } from '../../core/variables.js';
|
|
30
31
|
import { shellWords_referencesExpand, shellWords_tokenize } from '../../lib/parser.js';
|
|
31
32
|
import { errorStack } from '@fnndsc/fond';
|
|
32
33
|
import { envelope_ok, envelope_error } from '@fnndsc/menu';
|
|
@@ -59,6 +60,7 @@ export function manifest_parse(text) {
|
|
|
59
60
|
const lines = [];
|
|
60
61
|
let name = null;
|
|
61
62
|
let description = null;
|
|
63
|
+
let answers = null;
|
|
62
64
|
const raw = text.split('\n');
|
|
63
65
|
for (let index = 0; index < raw.length; index++) {
|
|
64
66
|
const line = raw[index];
|
|
@@ -73,6 +75,8 @@ export function manifest_parse(text) {
|
|
|
73
75
|
name = value;
|
|
74
76
|
else if (directive === '@description')
|
|
75
77
|
description = value;
|
|
78
|
+
else if (directive === '@answers')
|
|
79
|
+
answers = value;
|
|
76
80
|
else if (directive === '@param') {
|
|
77
81
|
const equals = value.indexOf('=');
|
|
78
82
|
if (equals === -1)
|
|
@@ -84,7 +88,7 @@ export function manifest_parse(text) {
|
|
|
84
88
|
}
|
|
85
89
|
lines.push({ number: index + 1, text: trimmed });
|
|
86
90
|
}
|
|
87
|
-
return { name, description, params, lines };
|
|
91
|
+
return { name, description, params, answers, lines };
|
|
88
92
|
}
|
|
89
93
|
/**
|
|
90
94
|
* Sleeps between lines, unless the play is cancelled.
|
|
@@ -246,8 +250,8 @@ export async function builtin_play(args) {
|
|
|
246
250
|
}
|
|
247
251
|
const manifest = manifest_parse(source.value.text);
|
|
248
252
|
// A manifest may not take a name the session answers for: shadowing a
|
|
249
|
-
//
|
|
250
|
-
// of a shared file could not tell which one they were looking at.
|
|
253
|
+
// built-in would make ${gather} mean two things in one language, and a
|
|
254
|
+
// reader of a shared file could not tell which one they were looking at.
|
|
251
255
|
const shadowed = manifest.params.filter((param) => reference_isReserved(param.name));
|
|
252
256
|
if (shadowed.length > 0) {
|
|
253
257
|
process.exitCode = 1;
|
|
@@ -269,6 +273,10 @@ export async function builtin_play(args) {
|
|
|
269
273
|
}
|
|
270
274
|
for (const [key, value] of parsed.params)
|
|
271
275
|
values.set(key, value);
|
|
276
|
+
if (manifest.answers !== null && !VARIABLE_NAME.test(manifest.answers)) {
|
|
277
|
+
process.exitCode = 1;
|
|
278
|
+
return envelope_error('', undefined, `${chalk.red(`play: ${parsed.manifest} answers '${manifest.answers}', which is not a variable's name.`)}\n`);
|
|
279
|
+
}
|
|
272
280
|
if (missing.length > 0) {
|
|
273
281
|
process.exitCode = 1;
|
|
274
282
|
return envelope_error('', undefined, `${chalk.red(`play: ${manifest.name ?? parsed.manifest} needs ${missing.map((name) => `--param ${name}=…`).join(' ')}`)}\n`);
|
|
@@ -284,12 +292,14 @@ export async function builtin_play(args) {
|
|
|
284
292
|
const { line_execute } = await import('../../core/engine.js');
|
|
285
293
|
let ran = 0;
|
|
286
294
|
let stoppedAt = null;
|
|
295
|
+
// What the manifest answers with, read before its scope ends with it.
|
|
296
|
+
let answered;
|
|
287
297
|
depth += 1;
|
|
288
298
|
// What a play runs is already written down in the file it is playing: a
|
|
289
299
|
// recording that captured it too would hold every line twice.
|
|
290
300
|
recorder_mute();
|
|
291
301
|
try {
|
|
292
|
-
await
|
|
302
|
+
await variableScope_run(values, async () => {
|
|
293
303
|
for (const line of manifest.lines) {
|
|
294
304
|
// A dry run shows what WOULD run, expanded by the kernel's own
|
|
295
305
|
// expander rather than a second one living here: a reference nothing
|
|
@@ -319,6 +329,8 @@ export async function builtin_play(args) {
|
|
|
319
329
|
break;
|
|
320
330
|
}
|
|
321
331
|
}
|
|
332
|
+
if (manifest.answers !== null)
|
|
333
|
+
answered = variable_get(manifest.answers);
|
|
322
334
|
});
|
|
323
335
|
}
|
|
324
336
|
finally {
|
|
@@ -339,6 +351,17 @@ export async function builtin_play(args) {
|
|
|
339
351
|
return envelope_error('', undefined, `${chalk.red(`play: ${parsed.manifest} stopped at line ${stoppedAt} after ${ran} of ${manifest.lines.length} lines (${took})`)}\n`);
|
|
340
352
|
}
|
|
341
353
|
const what = parsed.dryRun ? 'would play' : 'played';
|
|
354
|
+
if (parsed.dryRun && manifest.answers !== null)
|
|
355
|
+
sink_dataLine(chalk.cyan(`▸ @answers ${manifest.answers}`));
|
|
356
|
+
// A manifest that declares its answer hands back that variable's model,
|
|
357
|
+
// so `X=$(play f)` holds what the flow made, as a verb's capture would.
|
|
358
|
+
if (!parsed.dryRun && manifest.answers !== null) {
|
|
359
|
+
if (answered === undefined) {
|
|
360
|
+
process.exitCode = 1;
|
|
361
|
+
return envelope_error('', undefined, `${chalk.red(`play: ${parsed.manifest} answers ${manifest.answers}, and ${manifest.answers} was never set`)}\n`);
|
|
362
|
+
}
|
|
363
|
+
return envelope_ok(`${chalk.green(`play: ${what} ${ran} line${ran === 1 ? '' : 's'} of ${parsed.manifest} (${took}), answering ${manifest.answers}`)}\n`, { kind: answered.answer.kind, data: answered.answer.data });
|
|
364
|
+
}
|
|
342
365
|
return envelope_ok(`${chalk.green(`play: ${what} ${ran} line${ran === 1 ? '' : 's'} of ${parsed.manifest} (${took})`)}\n`, model);
|
|
343
366
|
}
|
|
344
367
|
//# sourceMappingURL=play.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"play.js","sourceRoot":"","sources":["../../../src/builtins/res/play.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"play.js","sourceRoot":"","sources":["../../../src/builtins/res/play.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAC3E,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACjE,OAAO,EAAE,0BAA0B,EAAE,6BAA6B,EAAE,MAAM,4BAA4B,CAAC;AACvG,OAAO,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AACxG,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,iBAAiB,EAAiB,MAAM,yBAAyB,CAAC;AACxG,OAAO,EAAE,2BAA2B,EAAE,mBAAmB,EAA2C,MAAM,qBAAqB,CAAC;AAChI,OAAO,EAAE,UAAU,EAAe,MAAM,cAAc,CAAC;AACvD,OAAO,EAAmB,WAAW,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC5E,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAEvD,sEAAsE;AACtE,MAAM,CAAC,MAAM,eAAe,GAAW,iBAAiB,CAAC;AAEzD,8EAA8E;AAC9E,MAAM,WAAW,GAAW,CAAC,CAAC;AAE9B,oCAAoC;AACpC,IAAI,KAAK,GAAW,CAAC,CAAC;AAEtB,yEAAyE;AACzE,oDAAoD;AACpD,iBAAiB,CAAC;IAChB,IAAI,EAAE,WAAW;IACjB,IAAI,EAAE,GAAY,EAAE,CAAC,KAAK;IAC1B,KAAK,EAAE,GAAS,EAAE,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC;IACjC,OAAO,EAAE,CAAC,KAAc,EAAQ,EAAE,GAAG,KAAK,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CACtF,CAAC,CAAC;AAsCH;;;;;;;;GAQG;AACH,MAAM,UAAU,cAAc,CAAC,IAAY;IACzC,MAAM,MAAM,GAAoB,EAAE,CAAC;IACnC,MAAM,KAAK,GAAmB,EAAE,CAAC;IACjC,IAAI,IAAI,GAAkB,IAAI,CAAC;IAC/B,IAAI,WAAW,GAAkB,IAAI,CAAC;IACtC,IAAI,OAAO,GAAkB,IAAI,CAAC;IAElC,MAAM,GAAG,GAAa,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACvC,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,GAAG,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC;QAChD,MAAM,IAAI,GAAW,GAAG,CAAC,KAAK,CAAC,CAAC;QAChC,MAAM,OAAO,GAAW,IAAI,CAAC,IAAI,EAAE,CAAC;QACpC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,SAAS;QAE9D,IAAI,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YAC5B,MAAM,KAAK,GAAW,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAC3C,MAAM,SAAS,GAAW,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;YAC3E,MAAM,KAAK,GAAW,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YAC1E,IAAI,SAAS,KAAK,OAAO;gBAAE,IAAI,GAAG,KAAK,CAAC;iBACnC,IAAI,SAAS,KAAK,cAAc;gBAAE,WAAW,GAAG,KAAK,CAAC;iBACtD,IAAI,SAAS,KAAK,UAAU;gBAAE,OAAO,GAAG,KAAK,CAAC;iBAC9C,IAAI,SAAS,KAAK,QAAQ,EAAE,CAAC;gBAChC,MAAM,MAAM,GAAW,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;gBAC1C,IAAI,MAAM,KAAK,CAAC,CAAC;oBAAE,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;;oBAClD,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YACtG,CAAC;YACD,SAAS;QACX,CAAC;QAED,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,GAAG,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;IACnD,CAAC;IAED,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;AACvD,CAAC;AAKD;;;;;;GAMG;AACH,KAAK,UAAU,UAAU,CAAC,EAAU,EAAE,MAA+B;IACnE,IAAI,MAAM,EAAE,OAAO,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IAC3C,OAAO,MAAM,IAAI,OAAO,CAAU,CAAC,OAAO,EAAQ,EAAE;QAClD,MAAM,OAAO,GAAG,GAAS,EAAE,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QACrE,MAAM,KAAK,GAAkC,UAAU,CAAC,GAAS,EAAE;YACjE,MAAM,EAAE,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAC9C,OAAO,CAAC,IAAI,CAAC,CAAC;QAChB,CAAC,EAAE,EAAE,CAAC,CAAC;QACP,MAAM,EAAE,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IAC7D,CAAC,CAAC,CAAC;AACL,CAAC;AAGD;;;;;;;;;;;;GAYG;AACH,KAAK,UAAU,iBAAiB,CAAC,MAAc;IAC7C,MAAM,QAAQ,GAAW,MAAM,YAAY,CAAC,MAAM,CAAC,CAAC;IACpD,sEAAsE;IACtE,wEAAwE;IACxE,mDAAmD;IACnD,MAAM,IAAI,GAAW,UAAU,CAAC,eAAe,EAAE,CAAC;IAClD,MAAM,IAAI,GAAmB,MAAM,eAAe,CAAC,QAAQ,CAAC,CAAC;IAC7D,IAAI,IAAI,CAAC,EAAE;QAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC;IAC9E,UAAU,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;IAElC,IAAI,CAAC;QACH,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,CAAC;QACtD,MAAM,IAAI,GAAW,MAAM,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACpD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC;IACrD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC;IACvB,CAAC;AACH,CAAC;AAGD;;;;;;;;GAQG;AACH,KAAK,UAAU,YAAY,CAAC,IAAY;IACtC,MAAM,KAAK,GAAgB,mBAAmB,CAAC,IAAI,CAAC,CAAC;IACrD,MAAM,QAAQ,GAAuB,MAAM,oBAAoB,CAC7D,KAAK,IAAiC,EAAE,CAAC,MAAM,2BAA2B,CAAC,KAAK,EAAE,iBAAiB,EAAE,IAAI,CAAC,CAC3G,CAAC;IACF,IAAI,CAAC,QAAQ,CAAC,EAAE;QAAE,OAAO,IAAI,CAAC;IAC9B,OAAO,QAAQ,CAAC,KAAK;SAClB,GAAG,CAAC,CAAC,IAAe,EAAU,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SAC1F,IAAI,CAAC,GAAG,CAAC,CAAC;AACf,CAAC;AAWD;;;;;;;;;GASG;AACH,MAAM,UAAU,cAAc,CAAC,IAAc;IAC3C,MAAM,MAAM,GAAwB,IAAI,GAAG,EAAE,CAAC;IAC9C,IAAI,QAAQ,GAAkB,IAAI,CAAC;IACnC,IAAI,MAAM,GAAW,CAAC,CAAC;IACvB,IAAI,MAAM,GAAY,KAAK,CAAC;IAC5B,IAAI,UAAU,GAAkB,IAAI,CAAC;IAErC,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC;QACjD,MAAM,KAAK,GAAW,IAAI,CAAC,KAAK,CAAC,CAAC;QAClC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,MAAM,IAAI,GAAuB,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;YACjD,MAAM,MAAM,GAAW,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YACnE,IAAI,IAAI,KAAK,SAAS,IAAI,MAAM,IAAI,CAAC,EAAE,CAAC;gBACtC,UAAU,GAAG,0BAA0B,CAAC;gBACxC,MAAM;YACR,CAAC;YACD,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;YAC1D,KAAK,EAAE,CAAC;QACV,CAAC;aAAM,IAAI,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9B,8DAA8D;YAC9D,iEAAiE;YACjE,mEAAmE;YACnE,MAAM,KAAK,GAAuB,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;YAClD,MAAM,EAAE,GAAkB,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;YAC7E,IAAI,EAAE,KAAK,IAAI,IAAI,EAAE,GAAG,CAAC,EAAE,CAAC;gBAC1B,UAAU,GAAG,oCAAoC,CAAC;gBAClD,MAAM;YACR,CAAC;YACD,MAAM,GAAG,EAAE,CAAC;YACZ,KAAK,EAAE,CAAC;QACV,CAAC;aAAM,IAAI,KAAK,KAAK,WAAW,EAAE,CAAC;YACjC,MAAM,GAAG,IAAI,CAAC;QAChB,CAAC;aAAM,IAAI,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9B,oEAAoE;YACpE,8DAA8D;YAC9D,UAAU,GAAG,yDAAyD,CAAC;YACvE,MAAM;QACR,CAAC;aAAM,IAAI,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YAClC,UAAU,GAAG,kBAAkB,KAAK,EAAE,CAAC;YACvC,MAAM;QACR,CAAC;aAAM,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;YAC7B,QAAQ,GAAG,KAAK,CAAC;QACnB,CAAC;aAAM,CAAC;YACN,UAAU,GAAG,uBAAuB,KAAK,EAAE,CAAC;YAC5C,MAAM;QACR,CAAC;IACH,CAAC;IAED,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC;AAC1D,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,IAAc;IAC/C,MAAM,MAAM,GAAa,cAAc,CAAC,IAAI,CAAC,CAAC;IAC9C,IAAI,MAAM,CAAC,UAAU,KAAK,IAAI,EAAE,CAAC;QAC/B,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QACrB,OAAO,cAAc,CAAC,EAAE,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC,GAAG,CAAC,SAAS,MAAM,CAAC,UAAU,EAAE,CAAC,IAAI,CAAC,CAAC;IACvF,CAAC;IACD,IAAI,MAAM,CAAC,QAAQ,KAAK,IAAI,EAAE,CAAC;QAC7B,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QACrB,OAAO,cAAc,CAAC,EAAE,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC,GAAG,CAAC,gFAAgF,CAAC,IAAI,CAAC,CAAC;IAC3I,CAAC;IACD,IAAI,KAAK,IAAI,WAAW,EAAE,CAAC;QACzB,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QACrB,OAAO,cAAc,CAAC,EAAE,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC,GAAG,CAAC,SAAS,MAAM,CAAC,QAAQ,4EAA4E,CAAC,IAAI,CAAC,CAAC;IAC/J,CAAC;IAED,MAAM,MAAM,GAA2C,MAAM,iBAAiB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAChG,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;QACf,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QACrB,OAAO,cAAc,CAAC,EAAE,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC,GAAG,CAAC,qBAAqB,MAAM,CAAC,QAAQ,0EAA0E,CAAC,IAAI,CAAC,CAAC;IACzK,CAAC;IAED,MAAM,QAAQ,GAAa,cAAc,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAE7D,sEAAsE;IACtE,uEAAuE;IACvE,yEAAyE;IACzE,MAAM,QAAQ,GAAoB,QAAQ,CAAC,MAAM,CAAC,MAAM,CACtD,CAAC,KAAoB,EAAW,EAAE,CAAC,oBAAoB,CAAC,KAAK,CAAC,IAAI,CAAC,CACpE,CAAC;IACF,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxB,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QACrB,OAAO,cAAc,CAAC,EAAE,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC,GAAG,CAC/C,SAAS,MAAM,CAAC,QAAQ,aAAa,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAoB,EAAU,EAAE,CAAC,UAAU,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,0CAA0C,CACjK,IAAI,CAAC,CAAC;IACT,CAAC;IAED,qEAAqE;IACrE,oEAAoE;IACpE,8CAA8C;IAC9C,MAAM,MAAM,GAAwB,IAAI,GAAG,EAAE,CAAC;IAC9C,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,KAAK,MAAM,KAAK,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC;QACpC,MAAM,KAAK,GAAuB,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAChE,IAAI,KAAK,KAAK,SAAS;YAAE,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;aAClD,IAAI,KAAK,CAAC,QAAQ,KAAK,SAAS;YAAE,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;;YACzE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC;IACD,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,MAAM;QAAE,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IAEjE,IAAI,QAAQ,CAAC,OAAO,KAAK,IAAI,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QACvE,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QACrB,OAAO,cAAc,CAAC,EAAE,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC,GAAG,CAAC,SAAS,MAAM,CAAC,QAAQ,aAAa,QAAQ,CAAC,OAAO,oCAAoC,CAAC,IAAI,CAAC,CAAC;IACpJ,CAAC;IAED,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvB,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QACrB,OAAO,cAAc,CAAC,EAAE,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC,GAAG,CAC/C,SAAS,QAAQ,CAAC,IAAI,IAAI,MAAM,CAAC,QAAQ,UAAU,OAAO,CAAC,GAAG,CAAC,CAAC,IAAY,EAAU,EAAE,CAAC,WAAW,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAC1H,IAAI,CAAC,CAAC;IACT,CAAC;IAED,IAAI,QAAQ,CAAC,IAAI,KAAK,IAAI;QAAE,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;IACrE,IAAI,QAAQ,CAAC,WAAW,KAAK,IAAI;QAAE,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC;IAEnF,MAAM,OAAO,GAAW,IAAI,CAAC,GAAG,EAAE,CAAC;IACnC,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC;QAAE,0BAA0B,EAAE,CAAC;IACpD,MAAM,MAAM,GAA4B,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,6BAA6B,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;IAExG,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,MAAM,CAAC,sBAAsB,CAAC,CAAC;IAC9D,IAAI,GAAG,GAAW,CAAC,CAAC;IACpB,IAAI,SAAS,GAAkB,IAAI,CAAC;IACpC,sEAAsE;IACtE,IAAI,QAA8B,CAAC;IAEnC,KAAK,IAAI,CAAC,CAAC;IACX,wEAAwE;IACxE,8DAA8D;IAC9D,aAAa,EAAE,CAAC;IAChB,IAAI,CAAC;QACH,MAAM,iBAAiB,CAAC,MAAM,EAAE,KAAK,IAAmB,EAAE;YAC1D,KAAK,MAAM,IAAI,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;gBAClC,+DAA+D;gBAC/D,qEAAqE;gBACrE,qEAAqE;gBACrE,WAAW;gBACX,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;oBAClB,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,MAAM,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;oBAChE,GAAG,IAAI,CAAC,CAAC;oBACT,SAAS;gBACX,CAAC;gBAED,kEAAkE;gBAClE,kEAAkE;gBAClE,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;gBAE5C,MAAM,SAAS,GAAsB,MAAM,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACnE,GAAG,IAAI,CAAC,CAAC;gBACT,MAAM,OAAO,GAAY,SAAS,CAAC,IAAI,CAAC,CAAC,QAAyB,EAAW,EAAE,CAAC,QAAQ,CAAC,MAAM,KAAK,OAAO,CAAC,CAAC;gBAC7G,IAAI,OAAO,IAAI,OAAO,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;oBACtC,+DAA+D;oBAC/D,8CAA8C;oBAC9C,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,MAAM,CAAC,QAAQ,IAAI,IAAI,CAAC,MAAM,sBAAsB,CAAC,CAAC,CAAC;oBACnF,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC;oBACxB,MAAM;gBACR,CAAC;gBAED,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,MAAM,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC;oBAClE,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC,oBAAoB,MAAM,CAAC,QAAQ,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;oBAClF,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC;oBACxB,MAAM;gBACR,CAAC;YACH,CAAC;YACD,IAAI,QAAQ,CAAC,OAAO,KAAK,IAAI;gBAAE,QAAQ,GAAG,YAAY,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACzE,CAAC,CAAC,CAAC;IACL,CAAC;YAAS,CAAC;QACT,eAAe,EAAE,CAAC;QAClB,KAAK,IAAI,CAAC,CAAC;IACb,CAAC;IAED,MAAM,OAAO,GAAgB;QAC3B,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,GAAG;QACH,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,MAAM;QAC5B,SAAS;QACT,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO;KAChC,CAAC;IACF,MAAM,KAAK,GAAG,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;IACvD,MAAM,IAAI,GAAW,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC;IAEhE,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;QACvB,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QACrB,OAAO,cAAc,CAAC,EAAE,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC,GAAG,CAAC,SAAS,MAAM,CAAC,QAAQ,oBAAoB,SAAS,UAAU,GAAG,OAAO,QAAQ,CAAC,KAAK,CAAC,MAAM,WAAW,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC;IAC3K,CAAC;IAED,MAAM,IAAI,GAAW,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,QAAQ,CAAC;IAC7D,IAAI,MAAM,CAAC,MAAM,IAAI,QAAQ,CAAC,OAAO,KAAK,IAAI;QAAE,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IAC5G,wEAAwE;IACxE,wEAAwE;IACxE,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,QAAQ,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;QAChD,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;YACrB,OAAO,cAAc,CAAC,EAAE,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC,GAAG,CAAC,SAAS,MAAM,CAAC,QAAQ,YAAY,QAAQ,CAAC,OAAO,SAAS,QAAQ,CAAC,OAAO,gBAAgB,CAAC,IAAI,CAAC,CAAC;QACxJ,CAAC;QACD,OAAO,WAAW,CAChB,GAAG,KAAK,CAAC,KAAK,CAAC,SAAS,IAAI,IAAI,GAAG,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,OAAO,MAAM,CAAC,QAAQ,KAAK,IAAI,gBAAgB,QAAQ,CAAC,OAAO,EAAE,CAAC,IAAI,EACrI,EAAE,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,CAC3D,CAAC;IACJ,CAAC;IACD,OAAO,WAAW,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,SAAS,IAAI,IAAI,GAAG,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,OAAO,MAAM,CAAC,QAAQ,KAAK,IAAI,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;AACpI,CAAC"}
|
|
@@ -13,12 +13,10 @@
|
|
|
13
13
|
*/
|
|
14
14
|
import chalk from 'chalk';
|
|
15
15
|
import { commandArgs_process, cliOptions_from } from '../utils.js';
|
|
16
|
-
import { runs_awaitSettled, settlement_render } from './runWait.js';
|
|
17
16
|
import { plugins_fetchList } from '@fnndsc/chili/commands/plugins/list.js';
|
|
18
17
|
import { pluginFields_fetch } from '@fnndsc/chili/commands/plugins/fields.js';
|
|
19
|
-
import { plugin_execute } from '@fnndsc/chili/commands/plugin/run.js';
|
|
20
18
|
import { plugin_add } from '@fnndsc/chili/commands/plugins/add.js';
|
|
21
|
-
import { pluginList_render
|
|
19
|
+
import { pluginList_render } from '@fnndsc/chili/views/plugin.js';
|
|
22
20
|
import { table_render } from '@fnndsc/chili/screen/screen.js';
|
|
23
21
|
import { spinner } from '../../lib/spinner.js';
|
|
24
22
|
import { chili_capture } from '@fnndsc/chili/screen/output.js';
|
|
@@ -36,7 +34,7 @@ export async function builtin_plugin(args) {
|
|
|
36
34
|
const parsed = commandArgs_process(args);
|
|
37
35
|
const subcommand = parsed._[0];
|
|
38
36
|
if (!subcommand) {
|
|
39
|
-
return envelope_ok(`${chalk.red("Usage: plugin <list|
|
|
37
|
+
return envelope_ok(`${chalk.red("Usage: plugin <list|add|info|inspect|search> ...")}\n`);
|
|
40
38
|
}
|
|
41
39
|
try {
|
|
42
40
|
if (subcommand === 'list') {
|
|
@@ -48,31 +46,12 @@ export async function builtin_plugin(args) {
|
|
|
48
46
|
return envelope_ok(rendered);
|
|
49
47
|
}
|
|
50
48
|
else if (subcommand === 'run') {
|
|
51
|
-
//
|
|
52
|
-
//
|
|
53
|
-
//
|
|
54
|
-
//
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
const searchable = clean[1];
|
|
58
|
-
if (!searchable) {
|
|
59
|
-
return envelope_ok(`${chalk.red("Usage: plugin run [--detach] <plugin> [args...]")}\n`);
|
|
60
|
-
}
|
|
61
|
-
const params = clean.slice(2).join(' ');
|
|
62
|
-
const instance = await plugin_execute(searchable, params);
|
|
63
|
-
if (!instance) {
|
|
64
|
-
process.exitCode = 1;
|
|
65
|
-
return envelope_error('', undefined, `${chalk.red("Plugin execution failed.")}\n`);
|
|
66
|
-
}
|
|
67
|
-
if (detach) {
|
|
68
|
-
return envelope_ok(`${pluginRun_render(instance)}\n`);
|
|
69
|
-
}
|
|
70
|
-
// A run that returns before its output exists reads as done and is
|
|
71
|
-
// not: the wait holds this line, never the session, and Esc detaches.
|
|
72
|
-
const settlement = await runs_awaitSettled([instance.id], searchable);
|
|
73
|
-
if (settlement.outcome === 'settled' && settlement.failed > 0)
|
|
74
|
-
process.exitCode = 1;
|
|
75
|
-
return envelope_ok(`${pluginRun_render(instance)}\n${settlement_render(settlement, searchable)}\n`);
|
|
49
|
+
// A plugin runs by its name, as a line of its own: `pl-dcm2niix …`
|
|
50
|
+
// runs where the session stands, makes or joins the feed, and answers
|
|
51
|
+
// the run as a model. `plugin run` was a thin pass to CUBE that did
|
|
52
|
+
// none of that.
|
|
53
|
+
process.exitCode = 1;
|
|
54
|
+
return envelope_error('', undefined, `${chalk.red('plugin run is retired: run a plugin by its name, where you stand — pl-dcm2niix-v1.0.2 …, or A=$(pl-dcm2niix-v1.0.2 …) to name the run.')}\n`);
|
|
76
55
|
}
|
|
77
56
|
else if (subcommand === 'add') {
|
|
78
57
|
return await plugin_addInteractive(parsed);
|
|
@@ -92,7 +71,7 @@ export async function builtin_plugin(args) {
|
|
|
92
71
|
return await builtin_plugin(['list', `--search`, query]);
|
|
93
72
|
}
|
|
94
73
|
process.exitCode = 1;
|
|
95
|
-
return envelope_error('', undefined, `${chalk.yellow(`Unknown subcommand: ${subcommand}. Usage: plugin <list|
|
|
74
|
+
return envelope_error('', undefined, `${chalk.yellow(`Unknown subcommand: ${subcommand}. Usage: plugin <list|add|info|inspect|search>`)}\n`);
|
|
96
75
|
}
|
|
97
76
|
catch (e) {
|
|
98
77
|
const msg = e instanceof Error ? e.message : String(e);
|