@fnndsc/cumin 3.25.0 → 3.26.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.
@@ -136,6 +136,15 @@ export declare class ListCache {
136
136
  private stats;
137
137
  /** Listeners told after any mutation a persister would want to see. */
138
138
  private listeners;
139
+ /**
140
+ * The folder records CUBE answered for a path (`filebrowser/search?path=`),
141
+ * kept beside the listings and dropped by the same invalidations. Three
142
+ * callers resolved the same path independently on every navigation —
143
+ * three identical requests — and the next visit asked again. The value
144
+ * is the lookup's promise, so callers in flight together share one
145
+ * request; a miss (null) or a failure is never kept.
146
+ */
147
+ private folders;
139
148
  /**
140
149
  * Registers a callback for checkpoint-worthy mutations (set, update,
141
150
  * dirty, invalidate).
@@ -201,6 +210,32 @@ export declare class ListCache {
201
210
  *
202
211
  * @param path - The path to mark dirty.
203
212
  */
213
+ /**
214
+ * The folder record kept for a path, while its listing's TTL holds.
215
+ *
216
+ * @param path - The folder's path.
217
+ * @returns The lookup's promise, or null when none is kept or it expired.
218
+ */
219
+ folder_get(path: string): Promise<unknown> | null;
220
+ /**
221
+ * Keeps a folder lookup for a path. A lookup that answers null or
222
+ * rejects is forgotten as it settles: a folder that is not there may
223
+ * be made in a moment, and a failure is not an answer.
224
+ *
225
+ * @param path - The folder's path.
226
+ * @param promise - The lookup under way.
227
+ */
228
+ folder_set(path: string, promise: Promise<unknown>): void;
229
+ /**
230
+ * Drops the folder records a listing invalidation calls into question:
231
+ * the path's own and everything beneath it (a removed or renamed entry
232
+ * takes its subtree's records with it).
233
+ *
234
+ * @param path - The invalidated listing's path; omitted, every record.
235
+ */
236
+ private folders_drop;
237
+ /** How many folder records are kept (for a readout or a test). */
238
+ folders_count(): number;
204
239
  cache_markDirty(path: string): void;
205
240
  /**
206
241
  * Optimistically updates cache after a mutation.
@@ -165,6 +165,15 @@ class ListCache {
165
165
  };
166
166
  /** Listeners told after any mutation a persister would want to see. */
167
167
  this.listeners = new Set();
168
+ /**
169
+ * The folder records CUBE answered for a path (`filebrowser/search?path=`),
170
+ * kept beside the listings and dropped by the same invalidations. Three
171
+ * callers resolved the same path independently on every navigation —
172
+ * three identical requests — and the next visit asked again. The value
173
+ * is the lookup's promise, so callers in flight together share one
174
+ * request; a miss (null) or a failure is never kept.
175
+ */
176
+ this.folders = new Map();
168
177
  }
169
178
  /**
170
179
  * Gets the singleton instance of ListCache.
@@ -243,6 +252,57 @@ class ListCache {
243
252
  *
244
253
  * @param path - The path to mark dirty.
245
254
  */
255
+ /**
256
+ * The folder record kept for a path, while its listing's TTL holds.
257
+ *
258
+ * @param path - The folder's path.
259
+ * @returns The lookup's promise, or null when none is kept or it expired.
260
+ */
261
+ folder_get(path) {
262
+ const kept = this.folders.get(path);
263
+ if (kept === undefined)
264
+ return null;
265
+ if (Date.now() - kept.timestamp > kept.ttl) {
266
+ this.folders.delete(path);
267
+ return null;
268
+ }
269
+ return kept.promise;
270
+ }
271
+ /**
272
+ * Keeps a folder lookup for a path. A lookup that answers null or
273
+ * rejects is forgotten as it settles: a folder that is not there may
274
+ * be made in a moment, and a failure is not an answer.
275
+ *
276
+ * @param path - The folder's path.
277
+ * @param promise - The lookup under way.
278
+ */
279
+ folder_set(path, promise) {
280
+ this.folders.set(path, { promise, timestamp: Date.now(), ttl: this.ttl_get(path) });
281
+ promise.then((folder) => { if (folder === null || folder === undefined)
282
+ this.folders.delete(path); }, () => { this.folders.delete(path); });
283
+ }
284
+ /**
285
+ * Drops the folder records a listing invalidation calls into question:
286
+ * the path's own and everything beneath it (a removed or renamed entry
287
+ * takes its subtree's records with it).
288
+ *
289
+ * @param path - The invalidated listing's path; omitted, every record.
290
+ */
291
+ folders_drop(path) {
292
+ if (path === undefined) {
293
+ this.folders.clear();
294
+ return;
295
+ }
296
+ this.folders.delete(path);
297
+ const prefix = path.endsWith('/') ? path : `${path}/`;
298
+ for (const key of this.folders.keys())
299
+ if (key.startsWith(prefix))
300
+ this.folders.delete(key);
301
+ }
302
+ /** How many folder records are kept (for a readout or a test). */
303
+ folders_count() {
304
+ return this.folders.size;
305
+ }
246
306
  cache_markDirty(path) {
247
307
  const entry = this.cache.get(path);
248
308
  if (entry) {
@@ -279,6 +339,7 @@ class ListCache {
279
339
  else {
280
340
  this.cache.clear();
281
341
  }
342
+ this.folders_drop(path);
282
343
  this.change_emit();
283
344
  }
284
345
  /**
@@ -292,6 +353,7 @@ class ListCache {
292
353
  * itself is removed along with all entries under `path + '/'`.
293
354
  */
294
355
  cache_invalidateTree(path) {
356
+ this.folders_drop(path);
295
357
  this.cache.delete(path);
296
358
  const prefix = path.endsWith("/") ? path : `${path}/`;
297
359
  for (const key of this.cache.keys()) {
@@ -1 +1 @@
1
- {"version":3,"file":"listCache.js","sourceRoot":"","sources":["../../src/cache/listCache.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"listCache.js","sourceRoot":"","sources":["../../src/cache/listCache.ts"],"names":[],"mappings":"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"}
@@ -40,6 +40,7 @@ exports.pipelineSourceFilesPage_get = pipelineSourceFilesPage_get;
40
40
  exports.pipelineSourceFiles_drain = pipelineSourceFiles_drain;
41
41
  exports.downloadToken_create = downloadToken_create;
42
42
  const adapter_1 = require("./adapter");
43
+ const pipelineMemo_1 = require("../pipelines/pipelineMemo");
43
44
  /**
44
45
  * Walks every page of a paginated CUBE list, yielding one step per page.
45
46
  *
@@ -370,9 +371,16 @@ async function pluginParameters_drain(handle) {
370
371
  * @throws {Error} Propagates chrisapi/network errors.
371
372
  */
372
373
  async function pipeline_get(client, pipelineID) {
373
- const resource = await (0, adapter_1.resource_call)(client, 'getPipeline', pipelineID);
374
+ // The item a search or an earlier get served answers first: chrisapi's
375
+ // getPipeline is a list-by-id, and the pipings hang off the item either way.
376
+ const kept = (0, pipelineMemo_1.pipelineResource_recall)(client, pipelineID);
377
+ const resource = kept !== null
378
+ ? kept
379
+ : await (0, adapter_1.resource_call)(client, 'getPipeline', pipelineID);
374
380
  if (!resource)
375
381
  return null;
382
+ if (kept === null)
383
+ (0, pipelineMemo_1.pipelineResource_keep)(client, pipelineID, resource);
376
384
  const pipingsPage_get = async (params) => {
377
385
  const page = await (0, adapter_1.resource_call)(resource, 'getPluginPipings', params);
378
386
  const rawItems = typeof page?.getItems === 'function'
@@ -1 +1 @@
1
- {"version":3,"file":"contract.js","sourceRoot":"","sources":["../../src/chrisapi/contract.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"contract.js","sourceRoot":"","sources":["../../src/chrisapi/contract.ts"],"names":[],"mappings":"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"}
@@ -15,6 +15,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
15
15
  Object.defineProperty(exports, "__esModule", { value: true });
16
16
  exports.chrisConnection = exports.ChRISConnection = exports.Client = void 0;
17
17
  exports.chrisConnection_init = chrisConnection_init;
18
+ const folderMemo_1 = require("../filebrowser/folderMemo");
19
+ const requestLedger_1 = require("../net/requestLedger");
18
20
  const adapter_js_1 = require("../chrisapi/adapter.js");
19
21
  Object.defineProperty(exports, "Client", { enumerable: true, get: function () { return adapter_js_1.Client; } });
20
22
  const config_js_1 = require("../config/config.js");
@@ -52,6 +54,9 @@ class ChRISConnection {
52
54
  this.chrisURL = null;
53
55
  this.client = null;
54
56
  this.elevatedClientContext = new node_async_hooks_1.AsyncLocalStorage();
57
+ // Every request the session makes is counted from the moment there is
58
+ // a session to make them (netstat reads the ledger).
59
+ (0, requestLedger_1.requestLedger_start)();
55
60
  if (config && storageProvider) {
56
61
  this.init(config, storageProvider);
57
62
  }
@@ -276,7 +281,8 @@ class ChRISConnection {
276
281
  this.chrisURL &&
277
282
  this.authToken) {
278
283
  if (!this.client) {
279
- this.client = (0, adapter_js_1.client_create)(this.chrisURL, this.authToken);
284
+ // One folder lookup per path per session (see filebrowser/folderMemo).
285
+ this.client = (0, folderMemo_1.folderLookup_memoize)((0, adapter_js_1.client_create)(this.chrisURL, this.authToken));
280
286
  }
281
287
  }
282
288
  return this.client;
@@ -1 +1 @@
1
- {"version":3,"file":"chrisConnection.js","sourceRoot":"","sources":["../../src/connect/chrisConnection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chrisConnection.js","sourceRoot":"","sources":["../../src/connect/chrisConnection.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * @file One folder lookup per path per session: the chrisapi client's
3
+ * `getFileBrowserFolderByPath` memoised through the listing cache.
4
+ *
5
+ * Every navigation asked CUBE `filebrowser/search?path=` for the same
6
+ * path three times — the path resolver, `cd`'s validation and the listing
7
+ * each resolved it on their own — and asked again on the next visit. The
8
+ * record is kept beside the folder's listing, under the listing's own
9
+ * TTL, and dropped by the same invalidations the poller of record and
10
+ * local mutations already make (epic #367): no second clock. A lookup in
11
+ * flight is shared; a miss or a failure is never kept.
12
+ */
13
+ import type { Client } from '../chrisapi/adapter.js';
14
+ /**
15
+ * Wraps a client's folder lookup with the session's memo. Idempotent.
16
+ *
17
+ * @param client - A connected chrisapi Client.
18
+ * @returns The same client, its `getFileBrowserFolderByPath` memoised.
19
+ */
20
+ export declare function folderLookup_memoize(client: Client): Client;
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.folderLookup_memoize = folderLookup_memoize;
4
+ const listCache_1 = require("../cache/listCache");
5
+ /** How a memoised client is marked, so it is wrapped once. */
6
+ const MEMOISED = Symbol('folderLookup_memoised');
7
+ /**
8
+ * Wraps a client's folder lookup with the session's memo. Idempotent.
9
+ *
10
+ * @param client - A connected chrisapi Client.
11
+ * @returns The same client, its `getFileBrowserFolderByPath` memoised.
12
+ */
13
+ function folderLookup_memoize(client) {
14
+ const wrapped = client;
15
+ if (wrapped[MEMOISED] === true)
16
+ return client;
17
+ // A client without the lookup (a stub, an older chrisapi) is left as it is.
18
+ if (typeof wrapped.getFileBrowserFolderByPath !== 'function')
19
+ return client;
20
+ wrapped[MEMOISED] = true;
21
+ const lookup = wrapped.getFileBrowserFolderByPath.bind(wrapped);
22
+ wrapped.getFileBrowserFolderByPath = (path, timeout) => {
23
+ const kept = (0, listCache_1.listCache_get)().folder_get(path);
24
+ if (kept !== null)
25
+ return kept;
26
+ const fresh = lookup(path, timeout);
27
+ (0, listCache_1.listCache_get)().folder_set(path, fresh);
28
+ return fresh;
29
+ };
30
+ return client;
31
+ }
32
+ //# sourceMappingURL=folderMemo.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"folderMemo.js","sourceRoot":"","sources":["../../src/filebrowser/folderMemo.ts"],"names":[],"mappings":";;AA8BA,oDAeC;AAhCD,kDAAmD;AAEnD,8DAA8D;AAC9D,MAAM,QAAQ,GAAkB,MAAM,CAAC,uBAAuB,CAAC,CAAC;AAQhE;;;;;GAKG;AACH,SAAgB,oBAAoB,CAAC,MAAc;IACjD,MAAM,OAAO,GAAuB,MAA4B,CAAC;IACjE,IAAI,OAAO,CAAC,QAAQ,CAAC,KAAK,IAAI;QAAE,OAAO,MAAM,CAAC;IAC9C,4EAA4E;IAC5E,IAAI,OAAO,OAAO,CAAC,0BAA0B,KAAK,UAAU;QAAE,OAAO,MAAM,CAAC;IAC5E,OAAO,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC;IACzB,MAAM,MAAM,GAAyD,OAAO,CAAC,0BAA0B,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACtH,OAAO,CAAC,0BAA0B,GAAG,CAAC,IAAY,EAAE,OAAgB,EAAoB,EAAE;QACxF,MAAM,IAAI,GAA4B,IAAA,yBAAa,GAAE,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACvE,IAAI,IAAI,KAAK,IAAI;YAAE,OAAO,IAAI,CAAC;QAC/B,MAAM,KAAK,GAAqB,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACtD,IAAA,yBAAa,GAAE,CAAC,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACxC,OAAO,KAAK,CAAC;IACf,CAAC,CAAC;IACF,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -14,6 +14,34 @@ const contract_js_1 = require("../chrisapi/contract.js");
14
14
  const errorStack_js_1 = require("../error/errorStack.js");
15
15
  const chrisResourceGroup_js_1 = require("../resources/chrisResourceGroup.js");
16
16
  const result_js_1 = require("../utils/result.js");
17
+ /** The group items a session's groups listing served, by id, per client. */
18
+ const groupItems = new WeakMap();
19
+ /**
20
+ * The listed group items of one client, made on first use.
21
+ *
22
+ * @param client - The connection's chrisapi client.
23
+ * @returns That client's items by group id.
24
+ */
25
+ function groupItems_for(client) {
26
+ const kept = groupItems.get(client);
27
+ if (kept !== undefined)
28
+ return kept;
29
+ const made = new Map();
30
+ groupItems.set(client, made);
31
+ return made;
32
+ }
33
+ /**
34
+ * Reads the member a membership row names, without a request.
35
+ *
36
+ * @param membership - The membership row resource.
37
+ * @returns The member, or null when the row carries no user id and name.
38
+ */
39
+ function membershipMember_read(membership) {
40
+ const row = (0, adapter_js_1.itemData_get)(membership);
41
+ if (!row || typeof row.user_id !== 'number' || typeof row.user_username !== 'string')
42
+ return null;
43
+ return { id: row.user_id, username: row.user_username };
44
+ }
17
45
  /**
18
46
  * Group handler for ChRIS user groups.
19
47
  */
@@ -33,6 +61,12 @@ class ChRISGroupGroup extends chrisResourceGroup_js_1.ChRISResourceGroup {
33
61
  errorStack_js_1.errorStack.stack_push('error', 'Not connected to ChRIS. Please log in.');
34
62
  return null;
35
63
  }
64
+ // The item the groups listing served answers first: chrisapi's getGroup
65
+ // is a list-by-id, and the boot's warm listed every group that way
66
+ // right after listing them all (73 searches on a 73-group CUBE).
67
+ const listed = groupItems_for(client).get(groupID);
68
+ if (listed !== undefined)
69
+ return listed;
36
70
  const group = await client.getGroup(groupID);
37
71
  if (!group)
38
72
  errorStack_js_1.errorStack.stack_push('error', `Group ${groupID} was not found.`);
@@ -50,8 +84,16 @@ class ChRISGroupGroup extends chrisResourceGroup_js_1.ChRISResourceGroup {
50
84
  errorStack_js_1.errorStack.stack_push('error', 'Not connected to ChRIS. Please log in.');
51
85
  return (0, result_js_1.Err)();
52
86
  }
87
+ const items = groupItems_for(client);
53
88
  const groups = await (0, contract_js_1.listPages_drain)(async (offset, limit) => {
54
89
  const page = await client.getGroups({ limit, offset });
90
+ // The items are kept by id: a group's members are read off its item.
91
+ const served = typeof page.getItems === 'function' ? (0, adapter_js_1.items_get)(page) : [];
92
+ for (const item of served) {
93
+ const data = (0, adapter_js_1.itemData_get)(item);
94
+ if (data && typeof data.id === 'number')
95
+ items.set(data.id, item);
96
+ }
55
97
  return (0, contract_js_1.collectionPage_wrap)(page, (0, adapter_js_1.listData_get)(page));
56
98
  });
57
99
  return (0, result_js_1.Ok)(groups);
@@ -78,9 +120,14 @@ class ChRISGroupGroup extends chrisResourceGroup_js_1.ChRISResourceGroup {
78
120
  const page = await group.getUsers({ limit, offset });
79
121
  return (0, contract_js_1.collectionPage_wrap)(page, (0, adapter_js_1.items_get)(page));
80
122
  })) {
81
- // Membership rows carry only a link to the user; one detail request
82
- // per row (parallel within the page) is what the API offers.
123
+ // A membership row names its user (user_id, user_username): the
124
+ // page is the answer. The linked user is fetched only for a row
125
+ // that does not — the boot's group warm once asked CUBE for every
126
+ // member one by one (51 requests on the dev CUBE).
83
127
  const pageMembers = await Promise.all(step.items.map(async (membershipResource) => {
128
+ const named = membershipMember_read(membershipResource);
129
+ if (named)
130
+ return named;
84
131
  const userResource = await membershipResource.getUser();
85
132
  const member = (0, adapter_js_1.itemData_get)(userResource);
86
133
  if (!member)
@@ -110,8 +157,8 @@ class ChRISGroupGroup extends chrisResourceGroup_js_1.ChRISResourceGroup {
110
157
  if (!group)
111
158
  return (0, result_js_1.Err)();
112
159
  const membershipResource = await group.adminAddUser(username);
113
- const userResource = await membershipResource.getUser();
114
- const membership = (0, adapter_js_1.itemData_get)(userResource);
160
+ const membership = membershipMember_read(membershipResource)
161
+ ?? (0, adapter_js_1.itemData_get)(await membershipResource.getUser());
115
162
  if (!membership) {
116
163
  errorStack_js_1.errorStack.stack_push('error', `CUBE returned no membership for ${username}.`);
117
164
  return (0, result_js_1.Err)();
@@ -1 +1 @@
1
- {"version":3,"file":"chrisGroups.js","sourceRoot":"","sources":["../../src/groups/chrisGroups.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chrisGroups.js","sourceRoot":"","sources":["../../src/groups/chrisGroups.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -25,10 +25,12 @@ export * from "./resources/chrisResourceGroup";
25
25
  export * from "./resources/chrisObjContext";
26
26
  export * from "./resources/chrisEmbeddedResourceGroup";
27
27
  export * from "./filebrowser/chrisFileBrowser";
28
+ export * from "./filebrowser/folderMemo";
28
29
  export * from "./filebrowser/chrisFiles";
29
30
  export * from "./filebrowser/chrisPACS";
30
31
  export * from "./filebrowser/chrisPipeline";
31
32
  export * from "./io/chrisIO";
33
+ export * from "./net/requestLedger";
32
34
  export * from "./io/io";
33
35
  export * from "./io/node_io";
34
36
  export * from "./utils/keypair";
@@ -39,6 +41,7 @@ export * from "./utils/envelope";
39
41
  export * from "./cache";
40
42
  export * from "./path/chrisPath";
41
43
  export * from "./pipelines/chrisPipeline";
44
+ export * from "./pipelines/pipelineMemo";
42
45
  export * from "./users/chrisUsers";
43
46
  export * from "./tags/chrisTags";
44
47
  export * from "./groups/chrisGroups";
package/dist/index.js CHANGED
@@ -43,10 +43,12 @@ __exportStar(require("./resources/chrisResourceGroup"), exports);
43
43
  __exportStar(require("./resources/chrisObjContext"), exports);
44
44
  __exportStar(require("./resources/chrisEmbeddedResourceGroup"), exports);
45
45
  __exportStar(require("./filebrowser/chrisFileBrowser"), exports);
46
+ __exportStar(require("./filebrowser/folderMemo"), exports);
46
47
  __exportStar(require("./filebrowser/chrisFiles"), exports);
47
48
  __exportStar(require("./filebrowser/chrisPACS"), exports);
48
49
  __exportStar(require("./filebrowser/chrisPipeline"), exports);
49
50
  __exportStar(require("./io/chrisIO"), exports);
51
+ __exportStar(require("./net/requestLedger"), exports);
50
52
  __exportStar(require("./io/io"), exports);
51
53
  __exportStar(require("./io/node_io"), exports);
52
54
  __exportStar(require("./utils/keypair"), exports);
@@ -57,6 +59,7 @@ __exportStar(require("./utils/envelope"), exports);
57
59
  __exportStar(require("./cache"), exports);
58
60
  __exportStar(require("./path/chrisPath"), exports);
59
61
  __exportStar(require("./pipelines/chrisPipeline"), exports);
62
+ __exportStar(require("./pipelines/pipelineMemo"), exports);
60
63
  __exportStar(require("./users/chrisUsers"), exports);
61
64
  __exportStar(require("./tags/chrisTags"), exports);
62
65
  __exportStar(require("./groups/chrisGroups"), exports);
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;AAEA;;;;;;;;GAQG;;;;;;;;;;;;;;;;;AAuHH,4CAKC;AA1HD,qCAAmB;AACnB,qDAAmC;AACnC,kDAAgC;AAChC,oDAAkC;AAClC,4DAA0C;AAC1C,yDAAuC;AACvC,yDAAuC;AACvC,mEAAiD;AACjD,6DAA2C;AAC3C,mDAAiC;AACjC,yDAAuC;AACvC,sDAAoC;AACpC,6DAA2C;AAC3C,iEAA+C;AAC/C,8DAA4C;AAC5C,yEAAuD;AACvD,iEAA+C;AAC/C,2DAAyC;AACzC,0DAAwC;AACxC,8DAA4C;AAC5C,+CAA6B;AAC7B,0CAAwB;AACxB,+CAA6B;AAC7B,kDAAgC;AAChC,qDAAmC;AACnC,iDAA+B;AAC/B,gDAA8B;AAC9B,mDAAiC;AACjC,0CAAwB;AACxB,mDAAiC;AACjC,4DAA0C;AAC1C,qDAAmC;AACnC,mDAAiC;AACjC,uDAAqC;AACrC,iEAA+C;AAC/C,6DAA2C;AAC3C,yDAAuC;AAEvC,iFAAiF;AACjF,8CAA2E;AAAlE,uGAAA,YAAY,OAAA;AAAE,uGAAA,YAAY,OAAA;AAAE,oGAAA,SAAS,OAAA;AAC9C,wCAAiH;AAAxG,gGAAA,QAAQ,OAAA;AAAE,iGAAA,SAAS,OAAA;AAAE,kGAAA,UAAU,OAAA;AAAE,yGAAA,iBAAiB,OAAA;AAAE,mGAAA,WAAW,OAAA;AAExE,yEAAyE;AACzE,0EAA0E;AAC1E,gDAc6B;AAb3B,yGAAA,aAAa,OAAA;AACb,+GAAA,mBAAmB,OAAA;AACnB,mHAAA,uBAAuB,OAAA;AACvB,8GAAA,kBAAkB,OAAA;AAClB,uGAAA,WAAW,OAAA;AACX,kHAAA,sBAAsB,OAAA;AACtB,wGAAA,YAAY,OAAA;AACZ,uHAAA,2BAA2B,OAAA;AAC3B,qHAAA,yBAAyB,OAAA;AACzB,gHAAA,oBAAoB,OAAA;AACpB,0GAAA,cAAc,OAAA;AAAE,kHAAA,sBAAsB,OAAA;AACtC,2GAAA,eAAe,OAAA;AACf,+GAAA,mBAAmB,OAAA;AAsDrB;;;;;GAKG;AACI,KAAK,UAAU,gBAAgB,CAAC,GAAW;IAChD,MAAM,OAAO,GAAW,OAAO,CAAC;IAChC,wCAAwC;IACxC,6CAA6C;IAC7C,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,IAAI;IACjB,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;AAC5B,CAAC;AAED,gEAAgE;AAChE,qCAAqC;AACrC,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;IAC5B,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;QACrB,OAAO,CAAC,KAAK,CAAC,oBAAoB,EAAE,KAAK,CAAC,CAAC;QAC3C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;AAEA;;;;;;;;GAQG;;;;;;;;;;;;;;;;;AA0HH,4CAKC;AA7HD,qCAAmB;AACnB,qDAAmC;AACnC,kDAAgC;AAChC,oDAAkC;AAClC,4DAA0C;AAC1C,yDAAuC;AACvC,yDAAuC;AACvC,mEAAiD;AACjD,6DAA2C;AAC3C,mDAAiC;AACjC,yDAAuC;AACvC,sDAAoC;AACpC,6DAA2C;AAC3C,iEAA+C;AAC/C,8DAA4C;AAC5C,yEAAuD;AACvD,iEAA+C;AAC/C,2DAAyC;AACzC,2DAAyC;AACzC,0DAAwC;AACxC,8DAA4C;AAC5C,+CAA6B;AAC7B,sDAAoC;AACpC,0CAAwB;AACxB,+CAA6B;AAC7B,kDAAgC;AAChC,qDAAmC;AACnC,iDAA+B;AAC/B,gDAA8B;AAC9B,mDAAiC;AACjC,0CAAwB;AACxB,mDAAiC;AACjC,4DAA0C;AAC1C,2DAAyC;AACzC,qDAAmC;AACnC,mDAAiC;AACjC,uDAAqC;AACrC,iEAA+C;AAC/C,6DAA2C;AAC3C,yDAAuC;AAEvC,iFAAiF;AACjF,8CAA2E;AAAlE,uGAAA,YAAY,OAAA;AAAE,uGAAA,YAAY,OAAA;AAAE,oGAAA,SAAS,OAAA;AAC9C,wCAAiH;AAAxG,gGAAA,QAAQ,OAAA;AAAE,iGAAA,SAAS,OAAA;AAAE,kGAAA,UAAU,OAAA;AAAE,yGAAA,iBAAiB,OAAA;AAAE,mGAAA,WAAW,OAAA;AAExE,yEAAyE;AACzE,0EAA0E;AAC1E,gDAc6B;AAb3B,yGAAA,aAAa,OAAA;AACb,+GAAA,mBAAmB,OAAA;AACnB,mHAAA,uBAAuB,OAAA;AACvB,8GAAA,kBAAkB,OAAA;AAClB,uGAAA,WAAW,OAAA;AACX,kHAAA,sBAAsB,OAAA;AACtB,wGAAA,YAAY,OAAA;AACZ,uHAAA,2BAA2B,OAAA;AAC3B,qHAAA,yBAAyB,OAAA;AACzB,gHAAA,oBAAoB,OAAA;AACpB,0GAAA,cAAc,OAAA;AAAE,kHAAA,sBAAsB,OAAA;AACtC,2GAAA,eAAe,OAAA;AACf,+GAAA,mBAAmB,OAAA;AAsDrB;;;;;GAKG;AACI,KAAK,UAAU,gBAAgB,CAAC,GAAW;IAChD,MAAM,OAAO,GAAW,OAAO,CAAC;IAChC,wCAAwC;IACxC,6CAA6C;IAC7C,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,IAAI;IACjB,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;AAC5B,CAAC;AAED,gEAAgE;AAChE,qCAAqC;AACrC,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;IAC5B,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;QACrB,OAAO,CAAC,KAAK,CAAC,oBAAoB,EAAE,KAAK,CAAC,CAAC;QAC3C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,78 @@
1
+ /** One request as the ledger saw it. */
2
+ export interface LedgerEntry {
3
+ /** Milliseconds since the ledger started. */
4
+ at: number;
5
+ method: string;
6
+ /** The endpoint family: `filebrowser/search`, `filebrowser/:id/children`, `plugins`, … */
7
+ family: string;
8
+ /** The path with its query, as sent (capped). */
9
+ path: string;
10
+ /** The response status; 0 when the request failed before one. */
11
+ status: number;
12
+ /** How long it took, request to response headers. */
13
+ ms: number;
14
+ }
15
+ /** A family's tally. */
16
+ export interface LedgerFamily {
17
+ family: string;
18
+ count: number;
19
+ /** Milliseconds spent, summed. */
20
+ ms: number;
21
+ }
22
+ /** What `netstat` reads out. */
23
+ export interface LedgerSnapshot {
24
+ /** When the count began: the session, or the last reset (ISO 8601). */
25
+ since: string;
26
+ /** Requests since then. */
27
+ total: number;
28
+ /** Milliseconds spent on them, summed. */
29
+ ms: number;
30
+ /** By family, most requests first. */
31
+ families: LedgerFamily[];
32
+ /** The last requests, oldest first. */
33
+ last: LedgerEntry[];
34
+ }
35
+ /** How many entries the ledger keeps. */
36
+ export declare const LEDGER_KEPT: number;
37
+ /**
38
+ * Names a request's endpoint family: the path below `/api/v1/`, ids
39
+ * replaced by `:id`, the query dropped, trailing slash dropped.
40
+ *
41
+ * @param path - The request path, query and all.
42
+ * @returns The family, or `root` for the API root.
43
+ */
44
+ export declare function requestFamily_of(path: string): string;
45
+ /**
46
+ * Notes a request as it starts.
47
+ *
48
+ * @param request - The request object the channel carried (the key).
49
+ * @param method - Its method.
50
+ * @param path - Its path.
51
+ */
52
+ export declare function ledger_requestStart(request: object, method: string, path: string): void;
53
+ /**
54
+ * Notes a request as it ends, however it ended.
55
+ *
56
+ * @param request - The request object the channel carried.
57
+ * @param status - The response status, or 0 for a failure.
58
+ */
59
+ export declare function ledger_requestEnd(request: object, status: number): void;
60
+ /**
61
+ * Starts listening. Idempotent: the connection calls it as it is made,
62
+ * and a second call changes nothing.
63
+ */
64
+ export declare function requestLedger_start(): void;
65
+ /**
66
+ * Forgets the count: the next snapshot counts from now. The last entries
67
+ * are kept so a reset mid-navigation still shows what just happened.
68
+ */
69
+ export declare function requestLedger_reset(): void;
70
+ /**
71
+ * Reads the ledger.
72
+ *
73
+ * @param options - `last`: how many recent entries to carry (default 20).
74
+ * @returns The snapshot, families most-requested first.
75
+ */
76
+ export declare function requestLedger_snapshot(options?: {
77
+ last?: number;
78
+ }): LedgerSnapshot;
@@ -0,0 +1,158 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.LEDGER_KEPT = void 0;
4
+ exports.requestFamily_of = requestFamily_of;
5
+ exports.ledger_requestStart = ledger_requestStart;
6
+ exports.ledger_requestEnd = ledger_requestEnd;
7
+ exports.requestLedger_start = requestLedger_start;
8
+ exports.requestLedger_reset = requestLedger_reset;
9
+ exports.requestLedger_snapshot = requestLedger_snapshot;
10
+ /**
11
+ * @file The request ledger: every call the kernel makes to CUBE, counted.
12
+ *
13
+ * A navigation that felt slow turned out to be fourteen requests where
14
+ * four would do, and nothing in the session could say so — the count was
15
+ * found with a preload hack on a private daemon. The ledger makes the
16
+ * wire a readout: how many requests since the session (or the last
17
+ * reset), by endpoint family, with the last ones timed. `netstat` reads
18
+ * it; smoke asserts budgets against it; an operator on a slow day asks
19
+ * it before guessing.
20
+ *
21
+ * It listens on Node's own diagnostics channels — the http client (what
22
+ * axios rides) and undici (what fetch rides) — so nothing is patched and
23
+ * every caller is seen.
24
+ */
25
+ const node_diagnostics_channel_1 = require("node:diagnostics_channel");
26
+ /** How many entries the ledger keeps. */
27
+ exports.LEDGER_KEPT = 200;
28
+ /** A path longer than this is cut, with an ellipsis. */
29
+ const PATH_KEPT = 160;
30
+ let started = false;
31
+ let origin = Date.now();
32
+ let since = new Date(origin).toISOString();
33
+ let total = 0;
34
+ let msTotal = 0;
35
+ const families = new Map();
36
+ const entries = [];
37
+ const open = new WeakMap();
38
+ /**
39
+ * Names a request's endpoint family: the path below `/api/v1/`, ids
40
+ * replaced by `:id`, the query dropped, trailing slash dropped.
41
+ *
42
+ * @param path - The request path, query and all.
43
+ * @returns The family, or `root` for the API root.
44
+ */
45
+ function requestFamily_of(path) {
46
+ const bare = path.split('?')[0] ?? '';
47
+ const below = bare.replace(/^.*?\/api\/v1\/?/, '').replace(/\/+$/, '');
48
+ if (below === '')
49
+ return 'root';
50
+ return below.split('/').map((segment) => (/^\d+$/.test(segment) ? ':id' : segment)).join('/');
51
+ }
52
+ const path_cap = (path) => (path.length > PATH_KEPT ? `${path.slice(0, PATH_KEPT - 1)}…` : path);
53
+ function entry_record(method, path, status, t0) {
54
+ const ms = Math.round(performance.now() - t0);
55
+ const family = requestFamily_of(path);
56
+ total += 1;
57
+ msTotal += ms;
58
+ const tally = families.get(family) ?? { family, count: 0, ms: 0 };
59
+ tally.count += 1;
60
+ tally.ms += ms;
61
+ families.set(family, tally);
62
+ entries.push({ at: Date.now() - origin, method, family, path: path_cap(path), status, ms });
63
+ if (entries.length > exports.LEDGER_KEPT)
64
+ entries.splice(0, entries.length - exports.LEDGER_KEPT);
65
+ }
66
+ /**
67
+ * Notes a request as it starts.
68
+ *
69
+ * @param request - The request object the channel carried (the key).
70
+ * @param method - Its method.
71
+ * @param path - Its path.
72
+ */
73
+ function ledger_requestStart(request, method, path) {
74
+ open.set(request, { t0: performance.now(), method, path });
75
+ }
76
+ /**
77
+ * Notes a request as it ends, however it ended.
78
+ *
79
+ * @param request - The request object the channel carried.
80
+ * @param status - The response status, or 0 for a failure.
81
+ */
82
+ function ledger_requestEnd(request, status) {
83
+ const begun = open.get(request);
84
+ if (begun === undefined)
85
+ return;
86
+ open.delete(request);
87
+ entry_record(begun.method, begun.path, status, begun.t0);
88
+ }
89
+ /**
90
+ * Starts listening. Idempotent: the connection calls it as it is made,
91
+ * and a second call changes nothing.
92
+ */
93
+ function requestLedger_start() {
94
+ if (started)
95
+ return;
96
+ started = true;
97
+ const method_of = (request) => (typeof request.method === 'string' ? request.method : 'GET');
98
+ const path_of = (request) => (typeof request.path === 'string' ? request.path : '');
99
+ (0, node_diagnostics_channel_1.subscribe)('http.client.request.start', (message) => {
100
+ const { request } = message;
101
+ if (request !== undefined && request !== null)
102
+ ledger_requestStart(request, method_of(request), path_of(request));
103
+ });
104
+ (0, node_diagnostics_channel_1.subscribe)('http.client.response.finish', (message) => {
105
+ const { request, response } = message;
106
+ if (request !== undefined && request !== null)
107
+ ledger_requestEnd(request, typeof response?.statusCode === 'number' ? response.statusCode : 0);
108
+ });
109
+ (0, node_diagnostics_channel_1.subscribe)('http.client.request.error', (message) => {
110
+ const { request } = message;
111
+ if (request !== undefined && request !== null)
112
+ ledger_requestEnd(request, 0);
113
+ });
114
+ (0, node_diagnostics_channel_1.subscribe)('undici:request:create', (message) => {
115
+ const { request } = message;
116
+ if (request !== undefined && request !== null)
117
+ ledger_requestStart(request, method_of(request), path_of(request));
118
+ });
119
+ (0, node_diagnostics_channel_1.subscribe)('undici:request:headers', (message) => {
120
+ const { request, response } = message;
121
+ if (request !== undefined && request !== null)
122
+ ledger_requestEnd(request, typeof response?.statusCode === 'number' ? response.statusCode : 0);
123
+ });
124
+ (0, node_diagnostics_channel_1.subscribe)('undici:request:error', (message) => {
125
+ const { request } = message;
126
+ if (request !== undefined && request !== null)
127
+ ledger_requestEnd(request, 0);
128
+ });
129
+ }
130
+ /**
131
+ * Forgets the count: the next snapshot counts from now. The last entries
132
+ * are kept so a reset mid-navigation still shows what just happened.
133
+ */
134
+ function requestLedger_reset() {
135
+ origin = Date.now();
136
+ since = new Date(origin).toISOString();
137
+ total = 0;
138
+ msTotal = 0;
139
+ families.clear();
140
+ entries.length = 0;
141
+ }
142
+ /**
143
+ * Reads the ledger.
144
+ *
145
+ * @param options - `last`: how many recent entries to carry (default 20).
146
+ * @returns The snapshot, families most-requested first.
147
+ */
148
+ function requestLedger_snapshot(options = {}) {
149
+ const last = Math.max(0, Math.min(exports.LEDGER_KEPT, options.last ?? 20));
150
+ return {
151
+ since,
152
+ total,
153
+ ms: msTotal,
154
+ families: [...families.values()].sort((a, b) => b.count - a.count || a.family.localeCompare(b.family)),
155
+ last: entries.slice(-last),
156
+ };
157
+ }
158
+ //# sourceMappingURL=requestLedger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"requestLedger.js","sourceRoot":"","sources":["../../src/net/requestLedger.ts"],"names":[],"mappings":"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"}
@@ -76,6 +76,11 @@ export declare function pipelines_list(search?: string): Promise<Result<Pipeline
76
76
  /**
77
77
  * Resolves a pipeline by name (exact match first, then substring) or numeric ID string.
78
78
  *
79
+ * One resolution per specifier per session: the answer is kept on the
80
+ * connection's client (see pipelineMemo), so a diagram asked again — the
81
+ * browser asks one per pipeline card on every visit to /bin — costs no
82
+ * search. A miss is never kept.
83
+ *
79
84
  * @param nameOrId - Pipeline name or numeric ID.
80
85
  * @returns Result containing the matched PipelineRecord.
81
86
  */
@@ -18,10 +18,13 @@ exports.pipeline_resolve = pipeline_resolve;
18
18
  exports.pipeline_createWorkflow = pipeline_createWorkflow;
19
19
  const chrisConnection_js_1 = require("../connect/chrisConnection.js");
20
20
  const adapter_js_1 = require("../chrisapi/adapter.js");
21
+ const pipelineMemo_js_1 = require("./pipelineMemo.js");
21
22
  const contract_js_1 = require("../chrisapi/contract.js");
22
23
  const chrisResourceGroup_js_1 = require("../resources/chrisResourceGroup.js");
23
24
  const errorStack_js_1 = require("../error/errorStack.js");
24
25
  const result_js_1 = require("../utils/result.js");
26
+ /** How many pipelines a name search reads: exact names seldom collide. */
27
+ const PIPELINE_SEARCH_LIMIT = 100;
25
28
  /**
26
29
  * Group handler for ChRIS pipelines.
27
30
  */
@@ -55,18 +58,54 @@ async function pipelines_list(search) {
55
58
  /**
56
59
  * Resolves a pipeline by name (exact match first, then substring) or numeric ID string.
57
60
  *
61
+ * One resolution per specifier per session: the answer is kept on the
62
+ * connection's client (see pipelineMemo), so a diagram asked again — the
63
+ * browser asks one per pipeline card on every visit to /bin — costs no
64
+ * search. A miss is never kept.
65
+ *
58
66
  * @param nameOrId - Pipeline name or numeric ID.
59
67
  * @returns Result containing the matched PipelineRecord.
60
68
  */
61
69
  async function pipeline_resolve(nameOrId) {
70
+ const client = await chrisConnection_js_1.chrisConnection.client_get();
71
+ if (!client) {
72
+ errorStack_js_1.errorStack.stack_push('error', 'Not connected to ChRIS');
73
+ return (0, result_js_1.Err)();
74
+ }
75
+ const kept = (0, pipelineMemo_js_1.pipelineRecord_recall)(client, nameOrId);
76
+ if (kept !== null)
77
+ return (0, result_js_1.Ok)(kept);
78
+ const resolved = await pipelineResolve_fetch(client, nameOrId);
79
+ if (resolved.ok)
80
+ (0, pipelineMemo_js_1.pipelineRecord_keep)(client, nameOrId, resolved.value);
81
+ return resolved;
82
+ }
83
+ /**
84
+ * Keeps the chrisapi items a pipeline listing served, by id, so the
85
+ * pipings can be read off them without listing the pipeline again.
86
+ *
87
+ * @param client - The connection's client.
88
+ * @param page - The list response.
89
+ */
90
+ function pipelineItems_keep(client, page) {
91
+ const items = (0, adapter_js_1.items_get)(page);
92
+ for (const item of items) {
93
+ const data = (0, adapter_js_1.itemData_get)(item);
94
+ if (data && typeof data.id === 'number')
95
+ (0, pipelineMemo_js_1.pipelineResource_keep)(client, data.id, item);
96
+ }
97
+ }
98
+ /**
99
+ * Resolves a pipeline against CUBE: the wire half of pipeline_resolve.
100
+ *
101
+ * @param client - The connection's client.
102
+ * @param nameOrId - Pipeline name or numeric ID.
103
+ * @returns Result containing the matched PipelineRecord.
104
+ */
105
+ async function pipelineResolve_fetch(client, nameOrId) {
62
106
  const isNumericID = /^\d+$/.test(nameOrId);
63
107
  if (isNumericID) {
64
108
  const numericId = parseInt(nameOrId, 10);
65
- const client = await chrisConnection_js_1.chrisConnection.client_get();
66
- if (!client) {
67
- errorStack_js_1.errorStack.stack_push('error', 'Not connected to ChRIS');
68
- return (0, result_js_1.Err)();
69
- }
70
109
  try {
71
110
  const pipeline = await client.getPipeline(numericId);
72
111
  const data = (0, adapter_js_1.itemData_get)(pipeline);
@@ -74,6 +113,7 @@ async function pipeline_resolve(nameOrId) {
74
113
  errorStack_js_1.errorStack.stack_push('error', `Pipeline with ID ${numericId} not found`);
75
114
  return (0, result_js_1.Err)();
76
115
  }
116
+ (0, pipelineMemo_js_1.pipelineResource_keep)(client, data.id, pipeline);
77
117
  return (0, result_js_1.Ok)(data);
78
118
  }
79
119
  catch (error) {
@@ -82,52 +122,79 @@ async function pipeline_resolve(nameOrId) {
82
122
  return (0, result_js_1.Err)();
83
123
  }
84
124
  }
85
- const listResult = await pipelines_list(nameOrId);
86
- if (!listResult.ok)
125
+ // A /bin slug names its pipeline's id (`<base>_id<N>`, minted by the
126
+ // listing from the record), so the id is the identity: one list by id
127
+ // answers, where a name search for the slug is a certain miss and the
128
+ // id only its fallback — two requests. A pipeline CUBE itself named
129
+ // `..._idN` is listed in /bin under its own id, so a bare slug never
130
+ // means it.
131
+ const slugID = nameOrId.match(/_id(\d+)$/);
132
+ if (slugID) {
133
+ try {
134
+ const pipeline = await client.getPipeline(parseInt(slugID[1], 10));
135
+ const data = (0, adapter_js_1.itemData_get)(pipeline);
136
+ if (data) {
137
+ (0, pipelineMemo_js_1.pipelineResource_keep)(client, data.id, pipeline);
138
+ return (0, result_js_1.Ok)(data);
139
+ }
140
+ }
141
+ catch (_e) { }
142
+ }
143
+ // The search is read as a page, not through pipelines_list, so the items
144
+ // it served can be kept: a pipeline's pipings hang off its item.
145
+ let page;
146
+ try {
147
+ page = await (0, adapter_js_1.resource_call)(client, 'getPipelines', { name: nameOrId, limit: PIPELINE_SEARCH_LIMIT });
148
+ }
149
+ catch (error) {
150
+ const msg = error instanceof Error ? error.message : String(error);
151
+ errorStack_js_1.errorStack.stack_push('error', `pipelines_list: ${msg}`);
87
152
  return (0, result_js_1.Err)();
88
- const exact = listResult.value.find((p) => p.name === nameOrId);
153
+ }
154
+ pipelineItems_keep(client, page);
155
+ const found = (0, adapter_js_1.listData_get)(page);
156
+ const exact = found.find((p) => p.name === nameOrId);
89
157
  if (exact)
90
158
  return (0, result_js_1.Ok)(exact);
91
- if (listResult.value.length === 1)
92
- return (0, result_js_1.Ok)(listResult.value[0]);
93
- if (listResult.value.length === 0) {
94
- const fallbackClient = await chrisConnection_js_1.chrisConnection.client_get();
95
- if (fallbackClient) {
96
- // ID-suffix fallback: slug of form "{name}_id{N}" generated for pipelines without source files
97
- const idSuffixMatch = nameOrId.match(/_id(\d+)$/);
98
- if (idSuffixMatch) {
99
- const directId = parseInt(idSuffixMatch[1], 10);
100
- try {
101
- const pipeline = await fallbackClient.getPipeline(directId);
102
- const directData = (0, adapter_js_1.itemData_get)(pipeline);
103
- if (directData) {
104
- return (0, result_js_1.Ok)(directData);
105
- }
106
- }
107
- catch (_e) { }
108
- }
109
- // Slug fallback: treat nameOrId as a source file fname fragment
159
+ if (found.length === 1)
160
+ return (0, result_js_1.Ok)(found[0]);
161
+ if (found.length === 0) {
162
+ const fallbackClient = client;
163
+ // ID-suffix fallback: slug of form "{name}_id{N}" generated for pipelines without source files
164
+ const idSuffixMatch = nameOrId.match(/_id(\d+)$/);
165
+ if (idSuffixMatch) {
166
+ const directId = parseInt(idSuffixMatch[1], 10);
110
167
  try {
111
- const sfList = await (0, adapter_js_1.resource_call)(fallbackClient, 'getPipelineSourceFiles', { fname: nameOrId, limit: 1 });
112
- const sfItems = (0, adapter_js_1.items_get)(sfList).filter((item) => {
113
- const base = item.data.fname.split('/').pop() ?? '';
114
- return base.replace(/\.(ya?ml)$/i, '') === nameOrId;
115
- });
116
- if (sfItems.length > 0 && sfItems[0].data.pipeline_name) {
117
- const byName = await pipelines_list(sfItems[0].data.pipeline_name);
118
- if (byName.ok) {
119
- const exactByName = byName.value.find((p) => p.name === sfItems[0].data.pipeline_name);
120
- if (exactByName)
121
- return (0, result_js_1.Ok)(exactByName);
122
- }
168
+ const pipeline = await fallbackClient.getPipeline(directId);
169
+ const directData = (0, adapter_js_1.itemData_get)(pipeline);
170
+ if (directData) {
171
+ (0, pipelineMemo_js_1.pipelineResource_keep)(client, directData.id, pipeline);
172
+ return (0, result_js_1.Ok)(directData);
123
173
  }
124
174
  }
125
175
  catch (_e) { }
126
176
  }
177
+ // Slug fallback: treat nameOrId as a source file fname fragment
178
+ try {
179
+ const sfList = await (0, adapter_js_1.resource_call)(fallbackClient, 'getPipelineSourceFiles', { fname: nameOrId, limit: 1 });
180
+ const sfItems = (0, adapter_js_1.items_get)(sfList).filter((item) => {
181
+ const base = item.data.fname.split('/').pop() ?? '';
182
+ return base.replace(/\.(ya?ml)$/i, '') === nameOrId;
183
+ });
184
+ if (sfItems.length > 0 && sfItems[0].data.pipeline_name) {
185
+ const byName = await pipelines_list(sfItems[0].data.pipeline_name);
186
+ if (byName.ok) {
187
+ const exactByName = byName.value.find((p) => p.name === sfItems[0].data.pipeline_name);
188
+ if (exactByName)
189
+ return (0, result_js_1.Ok)(exactByName);
190
+ }
191
+ }
192
+ }
193
+ catch (_e) { }
127
194
  errorStack_js_1.errorStack.stack_push('error', `No pipeline matching '${nameOrId}'`);
128
195
  return (0, result_js_1.Err)();
129
196
  }
130
- errorStack_js_1.errorStack.stack_push('error', `Ambiguous: ${listResult.value.length} pipelines match '${nameOrId}'. Use ID or full name.`);
197
+ errorStack_js_1.errorStack.stack_push('error', `Ambiguous: ${found.length} pipelines match '${nameOrId}'. Use ID or full name.`);
131
198
  return (0, result_js_1.Err)();
132
199
  }
133
200
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"chrisPipeline.js","sourceRoot":"","sources":["../../src/pipelines/chrisPipeline.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chrisPipeline.js","sourceRoot":"","sources":["../../src/pipelines/chrisPipeline.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,63 @@
1
+ /**
2
+ * @file One pipeline resolution per specifier per session.
3
+ *
4
+ * A pipeline diagram cost CUBE a name search, then the same pipeline listed
5
+ * again by id (chrisapi's `getPipeline` is a list-by-id), then its pipings
6
+ * and defaults — and the browser's PREVIEW projection asks for a diagram
7
+ * per pipeline card on every visit to /bin. A registered pipeline's record
8
+ * (id, name) is immutable, as its topology is, so a resolution is kept for
9
+ * the life of the connection's client, and the chrisapi item the search
10
+ * served is kept beside it: the pipings hang off that item, and nothing
11
+ * need list the pipeline a second time to reach them. A miss is never
12
+ * kept, so a pipeline registered after the memo was filled still resolves.
13
+ */
14
+ import type { PipelineRecord } from './chrisPipeline.js';
15
+ /**
16
+ * Recalls a resolution.
17
+ *
18
+ * @param client - The connection's chrisapi client.
19
+ * @param specifier - The name or id string that was asked.
20
+ * @returns The record, or null when this session never resolved it.
21
+ */
22
+ export declare function pipelineRecord_recall(client: object, specifier: string): PipelineRecord | null;
23
+ /**
24
+ * Keeps a resolution under the specifier asked and under the record's own
25
+ * name and id, so any of the three answers next time.
26
+ *
27
+ * @param client - The connection's chrisapi client.
28
+ * @param specifier - The name or id string that was asked.
29
+ * @param record - The record it resolved to.
30
+ */
31
+ export declare function pipelineRecord_keep(client: object, specifier: string, record: PipelineRecord): void;
32
+ /**
33
+ * Recalls the chrisapi item of a pipeline.
34
+ *
35
+ * @param client - The connection's chrisapi client.
36
+ * @param pipelineID - The pipeline's id.
37
+ * @returns The item, or null when none was served this session.
38
+ */
39
+ export declare function pipelineResource_recall(client: object, pipelineID: number): object | null;
40
+ /**
41
+ * Keeps the chrisapi item a search or a get served.
42
+ *
43
+ * @param client - The connection's chrisapi client.
44
+ * @param pipelineID - The pipeline's id.
45
+ * @param resource - The chrisapi pipeline item.
46
+ */
47
+ export declare function pipelineResource_keep(client: object, pipelineID: number, resource: object): void;
48
+ /**
49
+ * Forgets one pipeline: its item and every specifier that resolved to it.
50
+ * Called when an item kept turns out not to answer (the pipeline was
51
+ * removed under the session), so the next ask resolves afresh.
52
+ *
53
+ * @param client - The connection's chrisapi client.
54
+ * @param pipelineID - The pipeline's id.
55
+ */
56
+ export declare function pipeline_forget(client: object, pipelineID: number): void;
57
+ /**
58
+ * How many resolutions a client's memo holds (for tests and readouts).
59
+ *
60
+ * @param client - The connection's chrisapi client.
61
+ * @returns The count of specifiers kept.
62
+ */
63
+ export declare function pipelineMemo_count(client: object): number;
@@ -0,0 +1,94 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.pipelineRecord_recall = pipelineRecord_recall;
4
+ exports.pipelineRecord_keep = pipelineRecord_keep;
5
+ exports.pipelineResource_recall = pipelineResource_recall;
6
+ exports.pipelineResource_keep = pipelineResource_keep;
7
+ exports.pipeline_forget = pipeline_forget;
8
+ exports.pipelineMemo_count = pipelineMemo_count;
9
+ /** Memos by client: a new connection starts empty. */
10
+ const memos = new WeakMap();
11
+ /**
12
+ * The memo of one client, made on first use.
13
+ *
14
+ * @param client - The connection's chrisapi client.
15
+ * @returns That client's memo.
16
+ */
17
+ function memo_for(client) {
18
+ const kept = memos.get(client);
19
+ if (kept !== undefined)
20
+ return kept;
21
+ const made = { records: new Map(), resources: new Map() };
22
+ memos.set(client, made);
23
+ return made;
24
+ }
25
+ /**
26
+ * Recalls a resolution.
27
+ *
28
+ * @param client - The connection's chrisapi client.
29
+ * @param specifier - The name or id string that was asked.
30
+ * @returns The record, or null when this session never resolved it.
31
+ */
32
+ function pipelineRecord_recall(client, specifier) {
33
+ return memo_for(client).records.get(specifier) ?? null;
34
+ }
35
+ /**
36
+ * Keeps a resolution under the specifier asked and under the record's own
37
+ * name and id, so any of the three answers next time.
38
+ *
39
+ * @param client - The connection's chrisapi client.
40
+ * @param specifier - The name or id string that was asked.
41
+ * @param record - The record it resolved to.
42
+ */
43
+ function pipelineRecord_keep(client, specifier, record) {
44
+ const memo = memo_for(client);
45
+ memo.records.set(specifier, record);
46
+ memo.records.set(record.name, record);
47
+ memo.records.set(String(record.id), record);
48
+ }
49
+ /**
50
+ * Recalls the chrisapi item of a pipeline.
51
+ *
52
+ * @param client - The connection's chrisapi client.
53
+ * @param pipelineID - The pipeline's id.
54
+ * @returns The item, or null when none was served this session.
55
+ */
56
+ function pipelineResource_recall(client, pipelineID) {
57
+ return memo_for(client).resources.get(pipelineID) ?? null;
58
+ }
59
+ /**
60
+ * Keeps the chrisapi item a search or a get served.
61
+ *
62
+ * @param client - The connection's chrisapi client.
63
+ * @param pipelineID - The pipeline's id.
64
+ * @param resource - The chrisapi pipeline item.
65
+ */
66
+ function pipelineResource_keep(client, pipelineID, resource) {
67
+ memo_for(client).resources.set(pipelineID, resource);
68
+ }
69
+ /**
70
+ * Forgets one pipeline: its item and every specifier that resolved to it.
71
+ * Called when an item kept turns out not to answer (the pipeline was
72
+ * removed under the session), so the next ask resolves afresh.
73
+ *
74
+ * @param client - The connection's chrisapi client.
75
+ * @param pipelineID - The pipeline's id.
76
+ */
77
+ function pipeline_forget(client, pipelineID) {
78
+ const memo = memo_for(client);
79
+ memo.resources.delete(pipelineID);
80
+ for (const [specifier, record] of memo.records) {
81
+ if (record.id === pipelineID)
82
+ memo.records.delete(specifier);
83
+ }
84
+ }
85
+ /**
86
+ * How many resolutions a client's memo holds (for tests and readouts).
87
+ *
88
+ * @param client - The connection's chrisapi client.
89
+ * @returns The count of specifiers kept.
90
+ */
91
+ function pipelineMemo_count(client) {
92
+ return memos.get(client)?.records.size ?? 0;
93
+ }
94
+ //# sourceMappingURL=pipelineMemo.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pipelineMemo.js","sourceRoot":"","sources":["../../src/pipelines/pipelineMemo.ts"],"names":[],"mappings":";;AA+CA,sDAEC;AAUD,kDAKC;AASD,0DAEC;AASD,sDAEC;AAUD,0CAMC;AAQD,gDAEC;AAzFD,sDAAsD;AACtD,MAAM,KAAK,GAAkC,IAAI,OAAO,EAAE,CAAC;AAE3D;;;;;GAKG;AACH,SAAS,QAAQ,CAAC,MAAc;IAC9B,MAAM,IAAI,GAA6B,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACzD,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IACpC,MAAM,IAAI,GAAiB,EAAE,OAAO,EAAE,IAAI,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,GAAG,EAAE,EAAE,CAAC;IACxE,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IACxB,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,qBAAqB,CAAC,MAAc,EAAE,SAAiB;IACrE,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC;AACzD,CAAC;AAED;;;;;;;GAOG;AACH,SAAgB,mBAAmB,CAAC,MAAc,EAAE,SAAiB,EAAE,MAAsB;IAC3F,MAAM,IAAI,GAAiB,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC5C,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IACpC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACtC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;AAC9C,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,uBAAuB,CAAC,MAAc,EAAE,UAAkB;IACxE,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC;AAC5D,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,qBAAqB,CAAC,MAAc,EAAE,UAAkB,EAAE,QAAgB;IACxF,QAAQ,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;AACvD,CAAC;AAED;;;;;;;GAOG;AACH,SAAgB,eAAe,CAAC,MAAc,EAAE,UAAkB;IAChE,MAAM,IAAI,GAAiB,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC5C,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IAClC,KAAK,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;QAC/C,IAAI,MAAM,CAAC,EAAE,KAAK,UAAU;YAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IAC/D,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,SAAgB,kBAAkB,CAAC,MAAc;IAC/C,OAAO,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,IAAI,IAAI,CAAC,CAAC;AAC9C,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fnndsc/cumin",
3
- "version": "3.25.0",
3
+ "version": "3.26.0",
4
4
  "description": "Utility library for ChILI and other ChRIS-related JavaScript applications",
5
5
  "repository": {
6
6
  "type": "git",
@@ -23,6 +23,11 @@
23
23
  "types": "./dist/index.d.ts",
24
24
  "require": "./dist/index.js"
25
25
  },
26
+ "./request-ledger": {
27
+ "import": "./dist/net/requestLedger.js",
28
+ "types": "./dist/net/requestLedger.d.ts",
29
+ "require": "./dist/net/requestLedger.js"
30
+ },
26
31
  "./dicom-payload": {
27
32
  "import": "./dist/pacs/dicomPayload.js",
28
33
  "types": "./dist/pacs/dicomPayload.d.ts",
@@ -63,6 +68,6 @@
63
68
  "@fnndsc/chrisapi": "^1.25.0",
64
69
  "chalk": "^4.1.2",
65
70
  "figlet": "^1.7.0",
66
- "@fnndsc/menu": "^0.13.0"
71
+ "@fnndsc/menu": "^0.14.0"
67
72
  }
68
73
  }