@fnndsc/cumin 3.22.1 → 3.23.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/cache/index.d.ts +2 -2
- package/dist/cache/index.js +3 -1
- package/dist/cache/index.js.map +1 -1
- package/dist/cache/procCache.d.ts +110 -1
- package/dist/cache/procCache.js +191 -8
- package/dist/cache/procCache.js.map +1 -1
- package/dist/connect/chrisConnection.d.ts +27 -0
- package/dist/connect/chrisConnection.js +38 -0
- package/dist/connect/chrisConnection.js.map +1 -1
- package/package.json +2 -2
package/dist/cache/index.d.ts
CHANGED
|
@@ -12,8 +12,8 @@ export type { QueryIndexEntry, QueryIndexEntrySnapshot, QueryIndexSnapshot, Quer
|
|
|
12
12
|
export { queryIndexCheckpointPath_get, queryIndexCheckpoint_restore, queryIndexCheckpoint_save, queryIndexCheckpoint_watch, QUERY_INDEX_CHECKPOINT_FLOOR_MS, } from './queryIndexCheckpoint.js';
|
|
13
13
|
export type { QueryIndexRestoreResult } from './queryIndexCheckpoint.js';
|
|
14
14
|
export { listingsForFeeds_note, listingsForFeeds_drop, listingsForRoster_note, listingInvalidation_flush, listingInvalidation_reset, LISTING_INVALIDATION_WINDOW_MS, } from './listingInvalidation.js';
|
|
15
|
-
export { ProcCache, procCache_get, status_isTerminal, feed_isActive, feedTopology_changed, PROC_TERMINAL_STATUSES, PROC_ARRIVAL_TTL_MS, PROC_FEED_LOAD_FAILURE_TTL_MS } from './procCache.js';
|
|
16
|
-
export type { RosterFolders, ProcInstance, ProcFeed, ProcFeedScopeCounts, ProcWarmupProgress, ProcFeedLoadProgress, ProcRosterSyncKind, ProcCacheState, ProcCacheLifecycle, ProcCacheSnapshot, ProcFeedSnapshot, ProcCacheChange, ProcCacheListener, } from './procCache.js';
|
|
15
|
+
export { ProcCache, procCache_get, status_isTerminal, feed_isActive, feedTopology_changed, feedStatus_ofCounts, PROC_TERMINAL_STATUSES, PROC_ARRIVAL_TTL_MS, PROC_LANDED_TTL_MS, PROC_FEED_LOAD_FAILURE_TTL_MS } from './procCache.js';
|
|
16
|
+
export type { RosterFolders, ProcInstance, ProcFeed, ProcFeedScopeCounts, ProcWarmupProgress, ProcFeedLoadProgress, ProcLandedFeed, ProcJobGroup, ProcRosterSyncKind, ProcCacheState, ProcCacheLifecycle, ProcCacheSnapshot, ProcFeedSnapshot, ProcCacheChange, ProcCacheListener, } from './procCache.js';
|
|
17
17
|
export type { ProcPromptState, ProcPromptProgress } from '@fnndsc/menu';
|
|
18
18
|
export { procCheckpointPath_get, procCheckpointDir_get, procCheckpoint_restore, procCheckpoint_save, procCheckpointFeed_save, procCheckpointRoster_save, procCheckpoint_watch, } from './procCheckpoint.js';
|
|
19
19
|
export type { ProcCheckpointRestoreResult } from './procCheckpoint.js';
|
package/dist/cache/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.procCheckpoint_watch = exports.procCheckpointRoster_save = exports.procCheckpointFeed_save = exports.procCheckpoint_save = exports.procCheckpoint_restore = exports.procCheckpointDir_get = exports.procCheckpointPath_get = exports.PROC_FEED_LOAD_FAILURE_TTL_MS = exports.PROC_ARRIVAL_TTL_MS = exports.PROC_TERMINAL_STATUSES = exports.feedTopology_changed = exports.feed_isActive = exports.status_isTerminal = exports.procCache_get = exports.ProcCache = exports.LISTING_INVALIDATION_WINDOW_MS = exports.listingInvalidation_reset = exports.listingInvalidation_flush = exports.listingsForRoster_note = exports.listingsForFeeds_drop = exports.listingsForFeeds_note = exports.QUERY_INDEX_CHECKPOINT_FLOOR_MS = exports.queryIndexCheckpoint_watch = exports.queryIndexCheckpoint_save = exports.queryIndexCheckpoint_restore = exports.queryIndexCheckpointPath_get = exports.queryCriteria_parse = exports.queryKey_build = exports.queryIndex_get = exports.QueryIndex = exports.listCheckpoint_watch = exports.listCheckpoint_save = exports.listCheckpoint_restore = exports.listCheckpointPath_get = exports.LIST_CACHE_MAX_ENTRIES = exports.LIST_CACHE_PLUGIN_INDEX_TTL_MS = exports.LIST_CACHE_SIGNAL_FREE_TTL_MS = exports.LIST_CACHE_SIGNAL_BACKED_TTL_MS = exports.listCache_get = exports.ListCache = void 0;
|
|
3
|
+
exports.procCheckpoint_watch = exports.procCheckpointRoster_save = exports.procCheckpointFeed_save = exports.procCheckpoint_save = exports.procCheckpoint_restore = exports.procCheckpointDir_get = exports.procCheckpointPath_get = exports.PROC_FEED_LOAD_FAILURE_TTL_MS = exports.PROC_LANDED_TTL_MS = exports.PROC_ARRIVAL_TTL_MS = exports.PROC_TERMINAL_STATUSES = exports.feedStatus_ofCounts = exports.feedTopology_changed = exports.feed_isActive = exports.status_isTerminal = exports.procCache_get = exports.ProcCache = exports.LISTING_INVALIDATION_WINDOW_MS = exports.listingInvalidation_reset = exports.listingInvalidation_flush = exports.listingsForRoster_note = exports.listingsForFeeds_drop = exports.listingsForFeeds_note = exports.QUERY_INDEX_CHECKPOINT_FLOOR_MS = exports.queryIndexCheckpoint_watch = exports.queryIndexCheckpoint_save = exports.queryIndexCheckpoint_restore = exports.queryIndexCheckpointPath_get = exports.queryCriteria_parse = exports.queryKey_build = exports.queryIndex_get = exports.QueryIndex = exports.listCheckpoint_watch = exports.listCheckpoint_save = exports.listCheckpoint_restore = exports.listCheckpointPath_get = exports.LIST_CACHE_MAX_ENTRIES = exports.LIST_CACHE_PLUGIN_INDEX_TTL_MS = exports.LIST_CACHE_SIGNAL_FREE_TTL_MS = exports.LIST_CACHE_SIGNAL_BACKED_TTL_MS = exports.listCache_get = exports.ListCache = void 0;
|
|
4
4
|
/**
|
|
5
5
|
* @file Cache module exports.
|
|
6
6
|
*
|
|
@@ -42,8 +42,10 @@ Object.defineProperty(exports, "procCache_get", { enumerable: true, get: functio
|
|
|
42
42
|
Object.defineProperty(exports, "status_isTerminal", { enumerable: true, get: function () { return procCache_js_1.status_isTerminal; } });
|
|
43
43
|
Object.defineProperty(exports, "feed_isActive", { enumerable: true, get: function () { return procCache_js_1.feed_isActive; } });
|
|
44
44
|
Object.defineProperty(exports, "feedTopology_changed", { enumerable: true, get: function () { return procCache_js_1.feedTopology_changed; } });
|
|
45
|
+
Object.defineProperty(exports, "feedStatus_ofCounts", { enumerable: true, get: function () { return procCache_js_1.feedStatus_ofCounts; } });
|
|
45
46
|
Object.defineProperty(exports, "PROC_TERMINAL_STATUSES", { enumerable: true, get: function () { return procCache_js_1.PROC_TERMINAL_STATUSES; } });
|
|
46
47
|
Object.defineProperty(exports, "PROC_ARRIVAL_TTL_MS", { enumerable: true, get: function () { return procCache_js_1.PROC_ARRIVAL_TTL_MS; } });
|
|
48
|
+
Object.defineProperty(exports, "PROC_LANDED_TTL_MS", { enumerable: true, get: function () { return procCache_js_1.PROC_LANDED_TTL_MS; } });
|
|
47
49
|
Object.defineProperty(exports, "PROC_FEED_LOAD_FAILURE_TTL_MS", { enumerable: true, get: function () { return procCache_js_1.PROC_FEED_LOAD_FAILURE_TTL_MS; } });
|
|
48
50
|
var procCheckpoint_js_1 = require("./procCheckpoint.js");
|
|
49
51
|
Object.defineProperty(exports, "procCheckpointPath_get", { enumerable: true, get: function () { return procCheckpoint_js_1.procCheckpointPath_get; } });
|
package/dist/cache/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cache/index.ts"],"names":[],"mappings":";;;AAAA;;;;GAIG;AACH,+CAOwB;AANtB,yGAAA,SAAS,OAAA;AACT,6GAAA,aAAa,OAAA;AACb,+HAAA,+BAA+B,OAAA;AAC/B,6HAAA,6BAA6B,OAAA;AAC7B,8HAAA,8BAA8B,OAAA;AAC9B,sHAAA,sBAAsB,OAAA;AAGxB,yDAK6B;AAJ3B,2HAAA,sBAAsB,OAAA;AACtB,2HAAA,sBAAsB,OAAA;AACtB,wHAAA,mBAAmB,OAAA;AACnB,yHAAA,oBAAoB,OAAA;AAGtB,iDAKyB;AAJvB,2GAAA,UAAU,OAAA;AACV,+GAAA,cAAc,OAAA;AACd,+GAAA,cAAc,OAAA;AACd,oHAAA,mBAAmB,OAAA;AAQrB,qEAMmC;AALjC,uIAAA,4BAA4B,OAAA;AAC5B,uIAAA,4BAA4B,OAAA;AAC5B,oIAAA,yBAAyB,OAAA;AACzB,qIAAA,0BAA0B,OAAA;AAC1B,0IAAA,+BAA+B,OAAA;AAGjC,mEAOkC;AANhC,+HAAA,qBAAqB,OAAA;AACrB,+HAAA,qBAAqB,OAAA;AACrB,gIAAA,sBAAsB,OAAA;AACtB,mIAAA,yBAAyB,OAAA;AACzB,mIAAA,yBAAyB,OAAA;AACzB,wIAAA,8BAA8B,OAAA;AAEhC,+
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cache/index.ts"],"names":[],"mappings":";;;AAAA;;;;GAIG;AACH,+CAOwB;AANtB,yGAAA,SAAS,OAAA;AACT,6GAAA,aAAa,OAAA;AACb,+HAAA,+BAA+B,OAAA;AAC/B,6HAAA,6BAA6B,OAAA;AAC7B,8HAAA,8BAA8B,OAAA;AAC9B,sHAAA,sBAAsB,OAAA;AAGxB,yDAK6B;AAJ3B,2HAAA,sBAAsB,OAAA;AACtB,2HAAA,sBAAsB,OAAA;AACtB,wHAAA,mBAAmB,OAAA;AACnB,yHAAA,oBAAoB,OAAA;AAGtB,iDAKyB;AAJvB,2GAAA,UAAU,OAAA;AACV,+GAAA,cAAc,OAAA;AACd,+GAAA,cAAc,OAAA;AACd,oHAAA,mBAAmB,OAAA;AAQrB,qEAMmC;AALjC,uIAAA,4BAA4B,OAAA;AAC5B,uIAAA,4BAA4B,OAAA;AAC5B,oIAAA,yBAAyB,OAAA;AACzB,qIAAA,0BAA0B,OAAA;AAC1B,0IAAA,+BAA+B,OAAA;AAGjC,mEAOkC;AANhC,+HAAA,qBAAqB,OAAA;AACrB,+HAAA,qBAAqB,OAAA;AACrB,gIAAA,sBAAsB,OAAA;AACtB,mIAAA,yBAAyB,OAAA;AACzB,mIAAA,yBAAyB,OAAA;AACzB,wIAAA,8BAA8B,OAAA;AAEhC,+CAAuO;AAA9N,yGAAA,SAAS,OAAA;AAAE,6GAAA,aAAa,OAAA;AAAE,iHAAA,iBAAiB,OAAA;AAAE,6GAAA,aAAa,OAAA;AAAE,oHAAA,oBAAoB,OAAA;AAAE,mHAAA,mBAAmB,OAAA;AAAE,sHAAA,sBAAsB,OAAA;AAAE,mHAAA,mBAAmB,OAAA;AAAE,kHAAA,kBAAkB,OAAA;AAAE,6HAAA,6BAA6B,OAAA;AA6B9M,yDAQ6B;AAP3B,2HAAA,sBAAsB,OAAA;AACtB,0HAAA,qBAAqB,OAAA;AACrB,2HAAA,sBAAsB,OAAA;AACtB,wHAAA,mBAAmB,OAAA;AACnB,4HAAA,uBAAuB,OAAA;AACvB,8HAAA,yBAAyB,OAAA;AACzB,yHAAA,oBAAoB,OAAA"}
|
|
@@ -150,8 +150,63 @@ export interface RosterFolders {
|
|
|
150
150
|
shared?: string;
|
|
151
151
|
public?: string;
|
|
152
152
|
}
|
|
153
|
+
/**
|
|
154
|
+
* A feed's status from its job counts: an error anywhere is the feed's
|
|
155
|
+
* error; else anything still moving is the feed moving; else it finished.
|
|
156
|
+
*
|
|
157
|
+
* @param feed - The feed's counts.
|
|
158
|
+
* @returns A DAG status word: `finishedWithError`, `started`, `scheduled`, `created`, `cancelled` or `finishedSuccessfully`.
|
|
159
|
+
*/
|
|
160
|
+
export declare function feedStatus_ofCounts(feed: ProcFeed): string;
|
|
153
161
|
/** How long a roster arrival stays annunciated after it lands. */
|
|
154
162
|
export declare const PROC_ARRIVAL_TTL_MS: number;
|
|
163
|
+
/**
|
|
164
|
+
* How long a feed whose topology just landed stays reported as landed.
|
|
165
|
+
* The prompt is pushed about once a second while the index moves, so a
|
|
166
|
+
* surface that reads every push sees each landing several times and keeps
|
|
167
|
+
* one; a surface that missed a push still sees it on the next.
|
|
168
|
+
*/
|
|
169
|
+
export declare const PROC_LANDED_TTL_MS: number;
|
|
170
|
+
/**
|
|
171
|
+
* One feed as it landed in the index: enough to place it in the space of
|
|
172
|
+
* everything run here, and nothing a surface would have to ask for.
|
|
173
|
+
*
|
|
174
|
+
* @property id - The feed.
|
|
175
|
+
* @property jobs - How many plugin instances it holds.
|
|
176
|
+
* @property status - The feed's own status, derived from its job counts.
|
|
177
|
+
* @property chain - Its plugin names by first appearance, root first: the
|
|
178
|
+
* shape a pipeline leaves, shared with every feed that ran the same way.
|
|
179
|
+
* @property groups - Its jobs collapsed by plugin per place in the
|
|
180
|
+
* pipeline: the feed's shape with counts for weight, a handful of
|
|
181
|
+
* entries however many jobs it holds.
|
|
182
|
+
*/
|
|
183
|
+
export interface ProcLandedFeed {
|
|
184
|
+
id: number;
|
|
185
|
+
/** The feed's name, for a surface that names what it draws. */
|
|
186
|
+
title: string;
|
|
187
|
+
jobs: number;
|
|
188
|
+
status: string;
|
|
189
|
+
chain: string[];
|
|
190
|
+
groups: ProcJobGroup[];
|
|
191
|
+
}
|
|
192
|
+
/**
|
|
193
|
+
* One node of a feed's collapsed shape: every job of one plugin hanging
|
|
194
|
+
* from the same parent group, as one node with a count.
|
|
195
|
+
*
|
|
196
|
+
* @property plugin - The plugin name.
|
|
197
|
+
* @property count - How many jobs the node stands for.
|
|
198
|
+
* @property status - The worst word among them: an error anywhere is the
|
|
199
|
+
* group's, else anything still moving, else finished.
|
|
200
|
+
* @property parent - The index of the parent group, or null at the root.
|
|
201
|
+
*/
|
|
202
|
+
export interface ProcJobGroup {
|
|
203
|
+
plugin: string;
|
|
204
|
+
count: number;
|
|
205
|
+
/** How many of them ended in error, so a surface can hue by share rather than by the worst. */
|
|
206
|
+
errored: number;
|
|
207
|
+
status: string;
|
|
208
|
+
parent: number | null;
|
|
209
|
+
}
|
|
155
210
|
/** Availability and freshness states for the persistent process cache. */
|
|
156
211
|
export type ProcCacheState = 'empty' | 'restored' | 'reconciling' | 'current' | 'failed';
|
|
157
212
|
/**
|
|
@@ -217,6 +272,14 @@ export declare class ProcCache {
|
|
|
217
272
|
private instances;
|
|
218
273
|
private feedRoots;
|
|
219
274
|
private children;
|
|
275
|
+
/**
|
|
276
|
+
* Every instance known for a feed, root or not. The root walk above is
|
|
277
|
+
* the feed's TOPOLOGY; this is its ROLL, and it is what a landing reads:
|
|
278
|
+
* CUBE lists instances newest first, so a cold sweep meets a feed's
|
|
279
|
+
* leaves before its root, and a shape walked from roots stayed empty
|
|
280
|
+
* for the whole of a big feed until its oldest instance arrived.
|
|
281
|
+
*/
|
|
282
|
+
private byFeed;
|
|
220
283
|
/** Feed IDs whose instance topology has been fully fetched. */
|
|
221
284
|
private topologyLoaded;
|
|
222
285
|
/** In-flight topology fetch promises — prevents duplicate API calls. */
|
|
@@ -230,6 +293,13 @@ export declare class ProcCache {
|
|
|
230
293
|
private rosterSync;
|
|
231
294
|
/** Feeds the roster gained (created or shared) with the moment they landed. */
|
|
232
295
|
private arrivals;
|
|
296
|
+
/**
|
|
297
|
+
* Feeds the index read something of lately, by when it last did: a feed
|
|
298
|
+
* lands when its first instance is seen and lands again as more are, so
|
|
299
|
+
* a surface drawing the space sees each feed appear and fill out while
|
|
300
|
+
* the global sweep pages through everything.
|
|
301
|
+
*/
|
|
302
|
+
private landed;
|
|
233
303
|
/**
|
|
234
304
|
* Folder listings whose membership changes when a feed arrives or
|
|
235
305
|
* departs, addressed by how the identity can see the feed. Empty until
|
|
@@ -320,6 +390,14 @@ export declare class ProcCache {
|
|
|
320
390
|
instance_get(id: number): ProcInstance | undefined;
|
|
321
391
|
instances_count(): number;
|
|
322
392
|
instancesForFeed_count(feedID: number): number;
|
|
393
|
+
/**
|
|
394
|
+
* Every instance the cache holds for a feed, whether or not its parent
|
|
395
|
+
* has arrived: the roll, in id order.
|
|
396
|
+
*
|
|
397
|
+
* @param feedID - The feed.
|
|
398
|
+
* @returns The instance ids, ascending.
|
|
399
|
+
*/
|
|
400
|
+
feedInstanceIDs_all(feedID: number): number[];
|
|
323
401
|
children_get(parentID: number): number[];
|
|
324
402
|
/**
|
|
325
403
|
* Returns every instance ID belonging to a feed, walking the anchor tree from its
|
|
@@ -387,7 +465,7 @@ export declare class ProcCache {
|
|
|
387
465
|
* @returns Source instance IDs, or `[]`.
|
|
388
466
|
*/
|
|
389
467
|
joinParents_get(id: number): number[];
|
|
390
|
-
topologyLoaded_mark(feedID: number): void;
|
|
468
|
+
topologyLoaded_mark(feedID: number, at?: number): void;
|
|
391
469
|
topologyLoaded_has(feedID: number): boolean;
|
|
392
470
|
loading_set(feedID: number, promise: Promise<void>): void;
|
|
393
471
|
loading_get(feedID: number): Promise<void> | undefined;
|
|
@@ -505,6 +583,37 @@ export declare class ProcCache {
|
|
|
505
583
|
* @param now - The current time (default now).
|
|
506
584
|
* @returns Feed ids that arrived within {@link PROC_ARRIVAL_TTL_MS}.
|
|
507
585
|
*/
|
|
586
|
+
/**
|
|
587
|
+
* The feeds the index read something of in the last while, each as it
|
|
588
|
+
* stands now: its size so far, its status, and the shape of its pipeline
|
|
589
|
+
* so far.
|
|
590
|
+
*
|
|
591
|
+
* @param now - The clock, for the window.
|
|
592
|
+
* @returns The landed feeds, earliest landing first.
|
|
593
|
+
*/
|
|
594
|
+
topologyLanded_recent(now?: number): ProcLandedFeed[];
|
|
595
|
+
/**
|
|
596
|
+
* A feed's plugin names by first appearance, root first — the shape its
|
|
597
|
+
* pipeline left. A feed that ran dircopy, then dcm2niix, then fastsurfer
|
|
598
|
+
* shares its first two names with every feed that began the same way.
|
|
599
|
+
*
|
|
600
|
+
* Read from the feed's roll, not its root walk: while a sweep is still
|
|
601
|
+
* bringing a feed in, an instance whose parent has not arrived counts as
|
|
602
|
+
* depth zero, and the chain settles as the parents land.
|
|
603
|
+
*
|
|
604
|
+
* @param feedID - The feed.
|
|
605
|
+
* @returns The names, in order of the shallowest instance that bore each.
|
|
606
|
+
*/
|
|
607
|
+
pluginChain_of(feedID: number): string[];
|
|
608
|
+
/**
|
|
609
|
+
* A feed's jobs collapsed by plugin per place in the pipeline: the shape
|
|
610
|
+
* with counts for weight. Jobs of one plugin under one parent group are
|
|
611
|
+
* one node; a fan of three hundred conversions is a node of 300.
|
|
612
|
+
*
|
|
613
|
+
* @param feedID - The feed.
|
|
614
|
+
* @returns The groups, parents before children, root first.
|
|
615
|
+
*/
|
|
616
|
+
pluginGroups_of(feedID: number): ProcJobGroup[];
|
|
508
617
|
arrivals_recent(now?: number): number[];
|
|
509
618
|
/**
|
|
510
619
|
* Resets reconciliation progress while retaining restored topology.
|
package/dist/cache/procCache.js
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ProcCache = exports.PROC_ARRIVAL_TTL_MS = exports.PROC_FEED_LOAD_FAILURE_TTL_MS = exports.PROC_TERMINAL_STATUSES = void 0;
|
|
3
|
+
exports.ProcCache = exports.PROC_LANDED_TTL_MS = exports.PROC_ARRIVAL_TTL_MS = exports.PROC_FEED_LOAD_FAILURE_TTL_MS = exports.PROC_TERMINAL_STATUSES = void 0;
|
|
4
4
|
exports.feed_isActive = feed_isActive;
|
|
5
5
|
exports.feedTopology_changed = feedTopology_changed;
|
|
6
6
|
exports.status_isTerminal = status_isTerminal;
|
|
7
|
+
exports.feedStatus_ofCounts = feedStatus_ofCounts;
|
|
7
8
|
exports.procCache_get = procCache_get;
|
|
8
9
|
/**
|
|
9
10
|
* @file Process Cache
|
|
@@ -72,8 +73,37 @@ function status_isTerminal(status) {
|
|
|
72
73
|
}
|
|
73
74
|
/** How long a failed feed load stays annunciated before the register forgets it. */
|
|
74
75
|
exports.PROC_FEED_LOAD_FAILURE_TTL_MS = 60000;
|
|
76
|
+
/**
|
|
77
|
+
* A feed's status from its job counts: an error anywhere is the feed's
|
|
78
|
+
* error; else anything still moving is the feed moving; else it finished.
|
|
79
|
+
*
|
|
80
|
+
* @param feed - The feed's counts.
|
|
81
|
+
* @returns A DAG status word: `finishedWithError`, `started`, `scheduled`, `created`, `cancelled` or `finishedSuccessfully`.
|
|
82
|
+
*/
|
|
83
|
+
function feedStatus_ofCounts(feed) {
|
|
84
|
+
// The words are a node's own (the DAG status vocabulary), so a feed on
|
|
85
|
+
// a surface wears the hue its jobs would.
|
|
86
|
+
if (feed.erroredJobs > 0)
|
|
87
|
+
return 'finishedWithError';
|
|
88
|
+
if (feed.startedJobs > 0)
|
|
89
|
+
return 'started';
|
|
90
|
+
if (feed.scheduledJobs > 0)
|
|
91
|
+
return 'scheduled';
|
|
92
|
+
if (feed.createdJobs > 0)
|
|
93
|
+
return 'created';
|
|
94
|
+
if (feed.cancelledJobs > 0 && feed.finishedJobs === 0)
|
|
95
|
+
return 'cancelled';
|
|
96
|
+
return 'finishedSuccessfully';
|
|
97
|
+
}
|
|
75
98
|
/** How long a roster arrival stays annunciated after it lands. */
|
|
76
99
|
exports.PROC_ARRIVAL_TTL_MS = 30 * 1000;
|
|
100
|
+
/**
|
|
101
|
+
* How long a feed whose topology just landed stays reported as landed.
|
|
102
|
+
* The prompt is pushed about once a second while the index moves, so a
|
|
103
|
+
* surface that reads every push sees each landing several times and keeps
|
|
104
|
+
* one; a surface that missed a push still sees it on the next.
|
|
105
|
+
*/
|
|
106
|
+
exports.PROC_LANDED_TTL_MS = 10 * 1000;
|
|
77
107
|
/**
|
|
78
108
|
* Strips an instance to its persistence-safe form: no params, no output
|
|
79
109
|
* path, and only a terminal status (an active one is re-observed live).
|
|
@@ -99,6 +129,14 @@ class ProcCache {
|
|
|
99
129
|
this.instances = new Map();
|
|
100
130
|
this.feedRoots = new Map();
|
|
101
131
|
this.children = new Map();
|
|
132
|
+
/**
|
|
133
|
+
* Every instance known for a feed, root or not. The root walk above is
|
|
134
|
+
* the feed's TOPOLOGY; this is its ROLL, and it is what a landing reads:
|
|
135
|
+
* CUBE lists instances newest first, so a cold sweep meets a feed's
|
|
136
|
+
* leaves before its root, and a shape walked from roots stayed empty
|
|
137
|
+
* for the whole of a big feed until its oldest instance arrived.
|
|
138
|
+
*/
|
|
139
|
+
this.byFeed = new Map();
|
|
102
140
|
/** Feed IDs whose instance topology has been fully fetched. */
|
|
103
141
|
this.topologyLoaded = new Set();
|
|
104
142
|
/** In-flight topology fetch promises — prevents duplicate API calls. */
|
|
@@ -112,6 +150,13 @@ class ProcCache {
|
|
|
112
150
|
this.rosterSync = null;
|
|
113
151
|
/** Feeds the roster gained (created or shared) with the moment they landed. */
|
|
114
152
|
this.arrivals = new Map();
|
|
153
|
+
/**
|
|
154
|
+
* Feeds the index read something of lately, by when it last did: a feed
|
|
155
|
+
* lands when its first instance is seen and lands again as more are, so
|
|
156
|
+
* a surface drawing the space sees each feed appear and fill out while
|
|
157
|
+
* the global sweep pages through everything.
|
|
158
|
+
*/
|
|
159
|
+
this.landed = new Map();
|
|
115
160
|
/**
|
|
116
161
|
* Folder listings whose membership changes when a feed arrives or
|
|
117
162
|
* departs, addressed by how the identity can see the feed. Empty until
|
|
@@ -275,7 +320,14 @@ class ProcCache {
|
|
|
275
320
|
* Adds a plugin instance to the topology cache.
|
|
276
321
|
*/
|
|
277
322
|
instance_add(inst) {
|
|
323
|
+
this.landed.set(inst.feedID, Date.now());
|
|
278
324
|
this.instances.set(inst.id, inst);
|
|
325
|
+
let roll = this.byFeed.get(inst.feedID);
|
|
326
|
+
if (roll === undefined) {
|
|
327
|
+
roll = new Set();
|
|
328
|
+
this.byFeed.set(inst.feedID, roll);
|
|
329
|
+
}
|
|
330
|
+
roll.add(inst.id);
|
|
279
331
|
if (inst.parentID === null) {
|
|
280
332
|
const roots = this.feedRoots.get(inst.feedID) ?? [];
|
|
281
333
|
if (!roots.includes(inst.id)) {
|
|
@@ -327,12 +379,17 @@ class ProcCache {
|
|
|
327
379
|
return this.instances.size;
|
|
328
380
|
}
|
|
329
381
|
instancesForFeed_count(feedID) {
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
382
|
+
return this.byFeed.get(feedID)?.size ?? 0;
|
|
383
|
+
}
|
|
384
|
+
/**
|
|
385
|
+
* Every instance the cache holds for a feed, whether or not its parent
|
|
386
|
+
* has arrived: the roll, in id order.
|
|
387
|
+
*
|
|
388
|
+
* @param feedID - The feed.
|
|
389
|
+
* @returns The instance ids, ascending.
|
|
390
|
+
*/
|
|
391
|
+
feedInstanceIDs_all(feedID) {
|
|
392
|
+
return [...(this.byFeed.get(feedID) ?? [])].sort((a, b) => a - b);
|
|
336
393
|
}
|
|
337
394
|
children_get(parentID) {
|
|
338
395
|
return this.children.get(parentID) ?? [];
|
|
@@ -362,6 +419,7 @@ class ProcCache {
|
|
|
362
419
|
if (!inst)
|
|
363
420
|
return;
|
|
364
421
|
this.instances.delete(id);
|
|
422
|
+
this.byFeed.get(inst.feedID)?.delete(id);
|
|
365
423
|
if (inst.parentID === null) {
|
|
366
424
|
const roots = this.feedRoots.get(inst.feedID) ?? [];
|
|
367
425
|
this.feedRoots.set(inst.feedID, roots.filter((r) => r !== id));
|
|
@@ -483,7 +541,12 @@ class ProcCache {
|
|
|
483
541
|
return this.instances.get(id)?.joinParentIDs ?? [];
|
|
484
542
|
}
|
|
485
543
|
// ── Topology loaded tracking ───────────────────────────────────────────────
|
|
486
|
-
topologyLoaded_mark(feedID) {
|
|
544
|
+
topologyLoaded_mark(feedID, at = Date.now()) {
|
|
545
|
+
// Completing is a landing too — a feed with no instances lands only
|
|
546
|
+
// here — but a feed marked again (a re-sweep) is not news, and a restore
|
|
547
|
+
// from a checkpoint marks without landing at all.
|
|
548
|
+
if (!this.topologyLoaded.has(feedID))
|
|
549
|
+
this.landed.set(feedID, at);
|
|
487
550
|
this.topologyLoaded.add(feedID);
|
|
488
551
|
this.change_emit({ scope: 'feed', feedID });
|
|
489
552
|
}
|
|
@@ -689,6 +752,124 @@ class ProcCache {
|
|
|
689
752
|
* @param now - The current time (default now).
|
|
690
753
|
* @returns Feed ids that arrived within {@link PROC_ARRIVAL_TTL_MS}.
|
|
691
754
|
*/
|
|
755
|
+
/**
|
|
756
|
+
* The feeds the index read something of in the last while, each as it
|
|
757
|
+
* stands now: its size so far, its status, and the shape of its pipeline
|
|
758
|
+
* so far.
|
|
759
|
+
*
|
|
760
|
+
* @param now - The clock, for the window.
|
|
761
|
+
* @returns The landed feeds, earliest landing first.
|
|
762
|
+
*/
|
|
763
|
+
topologyLanded_recent(now = Date.now()) {
|
|
764
|
+
const recent = [];
|
|
765
|
+
for (const [feedID, at] of this.landed) {
|
|
766
|
+
if (now - at > exports.PROC_LANDED_TTL_MS)
|
|
767
|
+
this.landed.delete(feedID);
|
|
768
|
+
else
|
|
769
|
+
recent.push({ feedID, at });
|
|
770
|
+
}
|
|
771
|
+
recent.sort((a, b) => a.at - b.at);
|
|
772
|
+
const landed = [];
|
|
773
|
+
for (const { feedID } of recent) {
|
|
774
|
+
const feed = this.feed_get(feedID);
|
|
775
|
+
if (feed === undefined)
|
|
776
|
+
continue;
|
|
777
|
+
landed.push({ id: feedID, title: feed.title, jobs: this.instancesForFeed_count(feedID), status: feedStatus_ofCounts(feed), chain: this.pluginChain_of(feedID), groups: this.pluginGroups_of(feedID) });
|
|
778
|
+
}
|
|
779
|
+
return landed;
|
|
780
|
+
}
|
|
781
|
+
/**
|
|
782
|
+
* A feed's plugin names by first appearance, root first — the shape its
|
|
783
|
+
* pipeline left. A feed that ran dircopy, then dcm2niix, then fastsurfer
|
|
784
|
+
* shares its first two names with every feed that began the same way.
|
|
785
|
+
*
|
|
786
|
+
* Read from the feed's roll, not its root walk: while a sweep is still
|
|
787
|
+
* bringing a feed in, an instance whose parent has not arrived counts as
|
|
788
|
+
* depth zero, and the chain settles as the parents land.
|
|
789
|
+
*
|
|
790
|
+
* @param feedID - The feed.
|
|
791
|
+
* @returns The names, in order of the shallowest instance that bore each.
|
|
792
|
+
*/
|
|
793
|
+
pluginChain_of(feedID) {
|
|
794
|
+
const ids = this.feedInstanceIDs_all(feedID);
|
|
795
|
+
const depth_of = (id, seen = new Set()) => {
|
|
796
|
+
const inst = this.instance_get(id);
|
|
797
|
+
if (inst === undefined || inst.parentID === null || seen.has(id))
|
|
798
|
+
return 0;
|
|
799
|
+
seen.add(id);
|
|
800
|
+
return 1 + depth_of(inst.parentID, seen);
|
|
801
|
+
};
|
|
802
|
+
const firstDepth = new Map();
|
|
803
|
+
for (const id of ids) {
|
|
804
|
+
const inst = this.instance_get(id);
|
|
805
|
+
if (inst === undefined)
|
|
806
|
+
continue;
|
|
807
|
+
const depth = depth_of(id);
|
|
808
|
+
const known = firstDepth.get(inst.pluginName);
|
|
809
|
+
if (known === undefined || depth < known)
|
|
810
|
+
firstDepth.set(inst.pluginName, depth);
|
|
811
|
+
}
|
|
812
|
+
return [...firstDepth.entries()].sort((a, b) => a[1] - b[1] || a[0].localeCompare(b[0])).map(([name]) => name);
|
|
813
|
+
}
|
|
814
|
+
/**
|
|
815
|
+
* A feed's jobs collapsed by plugin per place in the pipeline: the shape
|
|
816
|
+
* with counts for weight. Jobs of one plugin under one parent group are
|
|
817
|
+
* one node; a fan of three hundred conversions is a node of 300.
|
|
818
|
+
*
|
|
819
|
+
* @param feedID - The feed.
|
|
820
|
+
* @returns The groups, parents before children, root first.
|
|
821
|
+
*/
|
|
822
|
+
pluginGroups_of(feedID) {
|
|
823
|
+
// The roll, not the root walk: an instance whose parent has not landed
|
|
824
|
+
// yet is grouped as a root of its own until it has, so a feed takes a
|
|
825
|
+
// shape from its first instance rather than from its last.
|
|
826
|
+
const ids = this.feedInstanceIDs_all(feedID);
|
|
827
|
+
const byId = new Map();
|
|
828
|
+
for (const id of ids) {
|
|
829
|
+
const inst = this.instance_get(id);
|
|
830
|
+
if (inst !== undefined)
|
|
831
|
+
byId.set(id, inst);
|
|
832
|
+
}
|
|
833
|
+
const groups = [];
|
|
834
|
+
const groupIndexByKey = new Map();
|
|
835
|
+
const groupOfInstance = new Map();
|
|
836
|
+
const worst = (a, b) => {
|
|
837
|
+
const rank = (word) => (word === 'finishedWithError' ? 3 : (word === 'started' || word === 'scheduled' || word === 'created' || word === 'waiting' || word === 'registeringFiles') ? 2 : word === 'cancelled' ? 1 : 0);
|
|
838
|
+
return rank(a) >= rank(b) ? a : b;
|
|
839
|
+
};
|
|
840
|
+
const status_of = (inst) => {
|
|
841
|
+
const word = inst.status ?? 'unknown';
|
|
842
|
+
return word === 'finishedWithError' || word === 'finishedSuccessfully' || word === 'cancelled' ? word : (word === 'unknown' ? 'finishedSuccessfully' : word);
|
|
843
|
+
};
|
|
844
|
+
// Parents before children: a child's group needs its parent's index.
|
|
845
|
+
const place = (id, seen) => {
|
|
846
|
+
const known = groupOfInstance.get(id);
|
|
847
|
+
if (known !== undefined)
|
|
848
|
+
return known;
|
|
849
|
+
const inst = byId.get(id);
|
|
850
|
+
if (inst === undefined || seen.has(id))
|
|
851
|
+
return null;
|
|
852
|
+
seen.add(id);
|
|
853
|
+
const parentGroup = inst.parentID === null ? null : place(inst.parentID, seen);
|
|
854
|
+
const key = `${parentGroup ?? 'root'}|${inst.pluginName}`;
|
|
855
|
+
let index = groupIndexByKey.get(key);
|
|
856
|
+
if (index === undefined) {
|
|
857
|
+
index = groups.length;
|
|
858
|
+
groups.push({ plugin: inst.pluginName, count: 0, errored: 0, status: status_of(inst), parent: parentGroup });
|
|
859
|
+
groupIndexByKey.set(key, index);
|
|
860
|
+
}
|
|
861
|
+
const group = groups[index];
|
|
862
|
+
group.count += 1;
|
|
863
|
+
if (status_of(inst) === 'finishedWithError')
|
|
864
|
+
group.errored += 1;
|
|
865
|
+
group.status = worst(group.status, status_of(inst));
|
|
866
|
+
groupOfInstance.set(id, index);
|
|
867
|
+
return index;
|
|
868
|
+
};
|
|
869
|
+
for (const id of [...byId.keys()].sort((a, b) => a - b))
|
|
870
|
+
place(id, new Set());
|
|
871
|
+
return groups;
|
|
872
|
+
}
|
|
692
873
|
arrivals_recent(now = Date.now()) {
|
|
693
874
|
const recent = [];
|
|
694
875
|
for (const [feedID, at] of this.arrivals) {
|
|
@@ -841,9 +1022,11 @@ class ProcCache {
|
|
|
841
1022
|
* Clears all cache data. Called before a full rebuild.
|
|
842
1023
|
*/
|
|
843
1024
|
cache_clear() {
|
|
1025
|
+
this.landed.clear();
|
|
844
1026
|
(0, listingInvalidation_1.listingInvalidation_reset)();
|
|
845
1027
|
this.feeds.clear();
|
|
846
1028
|
this.instances.clear();
|
|
1029
|
+
this.byFeed.clear();
|
|
847
1030
|
this.feedRoots.clear();
|
|
848
1031
|
this.children.clear();
|
|
849
1032
|
this.topologyLoaded.clear();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"procCache.js","sourceRoot":"","sources":["../../src/cache/procCache.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"procCache.js","sourceRoot":"","sources":["../../src/cache/procCache.ts"],"names":[],"mappings":"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"}
|
|
@@ -24,6 +24,17 @@ interface ConnectOptions {
|
|
|
24
24
|
debug: boolean;
|
|
25
25
|
url: string;
|
|
26
26
|
}
|
|
27
|
+
/** What a login door hands over: an identity and a CUBE token minted for it. */
|
|
28
|
+
export interface TokenConnectOptions {
|
|
29
|
+
user: string;
|
|
30
|
+
url: string;
|
|
31
|
+
token: string;
|
|
32
|
+
}
|
|
33
|
+
/** Whether a handed-over token was accepted, and if not, what the server said. */
|
|
34
|
+
export interface TokenConnectOutcome {
|
|
35
|
+
connected: boolean;
|
|
36
|
+
reason?: string;
|
|
37
|
+
}
|
|
27
38
|
/** Credentials used to obtain a short-lived elevated CUBE token. */
|
|
28
39
|
export interface ElevationCredentials {
|
|
29
40
|
username: string;
|
|
@@ -63,6 +74,22 @@ export declare class ChRISConnection {
|
|
|
63
74
|
* @returns A Promise resolving to the authentication token on success, or null on failure.
|
|
64
75
|
*/
|
|
65
76
|
connection_connect(options: ConnectOptions): Promise<string | null>;
|
|
77
|
+
/**
|
|
78
|
+
* Establishes a connection from a CUBE token somebody else already minted.
|
|
79
|
+
*
|
|
80
|
+
* The password path exchanges a password for a token and saves it. A front
|
|
81
|
+
* that authenticated the operator itself — a login door on a shared host —
|
|
82
|
+
* holds the token and never the password, so it hands the token over as
|
|
83
|
+
* it is. The token is proved against the server BEFORE anything is
|
|
84
|
+
* written: a refused token leaves the saved context and the last-user
|
|
85
|
+
* pointer exactly as they were. Nothing here exits the process, and
|
|
86
|
+
* nothing lands on the error stack; the refusal travels in the outcome,
|
|
87
|
+
* because the caller is a boot that has its own row to write.
|
|
88
|
+
*
|
|
89
|
+
* @param options - The identity the token was minted for, and the token.
|
|
90
|
+
* @returns Connected, or refused with the server's reason.
|
|
91
|
+
*/
|
|
92
|
+
connection_connectWithToken(options: TokenConnectOptions): Promise<TokenConnectOutcome>;
|
|
66
93
|
/**
|
|
67
94
|
* Sets the ChRIS context based on a context string (e.g., user@url?folder=...).
|
|
68
95
|
* @param context - The context string.
|
|
@@ -121,6 +121,44 @@ class ChRISConnection {
|
|
|
121
121
|
process.exit(1);
|
|
122
122
|
}
|
|
123
123
|
}
|
|
124
|
+
/**
|
|
125
|
+
* Establishes a connection from a CUBE token somebody else already minted.
|
|
126
|
+
*
|
|
127
|
+
* The password path exchanges a password for a token and saves it. A front
|
|
128
|
+
* that authenticated the operator itself — a login door on a shared host —
|
|
129
|
+
* holds the token and never the password, so it hands the token over as
|
|
130
|
+
* it is. The token is proved against the server BEFORE anything is
|
|
131
|
+
* written: a refused token leaves the saved context and the last-user
|
|
132
|
+
* pointer exactly as they were. Nothing here exits the process, and
|
|
133
|
+
* nothing lands on the error stack; the refusal travels in the outcome,
|
|
134
|
+
* because the caller is a boot that has its own row to write.
|
|
135
|
+
*
|
|
136
|
+
* @param options - The identity the token was minted for, and the token.
|
|
137
|
+
* @returns Connected, or refused with the server's reason.
|
|
138
|
+
*/
|
|
139
|
+
async connection_connectWithToken(options) {
|
|
140
|
+
const { user, url, token } = options;
|
|
141
|
+
if (this.storageProvider) {
|
|
142
|
+
await (0, config_js_1.config_init)(this.storageProvider);
|
|
143
|
+
this._config = config_js_1.connectionConfig;
|
|
144
|
+
}
|
|
145
|
+
const client = (0, adapter_js_1.client_create)(url, token);
|
|
146
|
+
try {
|
|
147
|
+
await client.getUser();
|
|
148
|
+
}
|
|
149
|
+
catch (error) {
|
|
150
|
+
const reason = error instanceof Error ? error.message : String(error);
|
|
151
|
+
return { connected: false, reason: `${url} refused the token for ${user}: ${reason}` };
|
|
152
|
+
}
|
|
153
|
+
this.user = user;
|
|
154
|
+
this.chrisURL = url;
|
|
155
|
+
await this._config.context_set(user, url);
|
|
156
|
+
this.tokenFile = this._config.tokenFilepath;
|
|
157
|
+
this.authToken = token;
|
|
158
|
+
this.client = client;
|
|
159
|
+
await this.token_saveToFile(this.tokenFile, token);
|
|
160
|
+
return { connected: true };
|
|
161
|
+
}
|
|
124
162
|
/**
|
|
125
163
|
* Sets the ChRIS context based on a context string (e.g., user@url?folder=...).
|
|
126
164
|
* @param context - The context string.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chrisConnection.js","sourceRoot":"","sources":["../../src/connect/chrisConnection.ts"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;;;;;;
|
|
1
|
+
{"version":3,"file":"chrisConnection.js","sourceRoot":"","sources":["../../src/connect/chrisConnection.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fnndsc/cumin",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.23.1",
|
|
4
4
|
"description": "Utility library for ChILI and other ChRIS-related JavaScript applications",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -63,6 +63,6 @@
|
|
|
63
63
|
"@fnndsc/chrisapi": "^1.25.0",
|
|
64
64
|
"chalk": "^4.1.2",
|
|
65
65
|
"figlet": "^1.7.0",
|
|
66
|
-
"@fnndsc/menu": "^0.
|
|
66
|
+
"@fnndsc/menu": "^0.11.0"
|
|
67
67
|
}
|
|
68
68
|
}
|