@intentic/base 1.399.0 → 1.400.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.
@@ -40,7 +40,12 @@ export declare const gitCommandLabel: (args: readonly string[]) => string;
40
40
  export declare const observeGitCommands: (observer: (observation: GitObservation) => void) => void;
41
41
  export declare const gitRunCounts: () => Readonly<Record<string, number>>;
42
42
  export declare const UNLABELLED_GIT_CALLER = "unlabelled";
43
+ export declare const GIT_CALLER_JOIN = " \u203A ";
43
44
  export declare const withGitCaller: <T>(caller: string, run: () => T) => T;
45
+ export declare const currentGitCaller: () => string | undefined;
46
+ export declare const gitCallerWith: (label: string | undefined, tail: string) => string;
47
+ export declare const withGitCallerPart: <T>(part: string, run: () => T) => T;
48
+ export declare function inGitCallerPart<T, R>(part: string, source: AsyncGenerator<T, R>): AsyncGenerator<T, R>;
44
49
  export declare const gitRunCallers: () => Readonly<Record<string, number>>;
45
50
  export declare const defaultGit: GitRunner;
46
51
  export declare const cancellableGit: (signal: AbortSignal) => GitRunner;
@@ -1 +1 @@
1
- {"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../../src/git/runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../../src/git/runner.ts"],"names":[],"mappings":"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"}
@@ -217,7 +217,41 @@ export const gitRunCounts = () => Object.fromEntries(runsBySubcommand);
217
217
  const callerScope = new AsyncLocalStorage();
218
218
  const runsByCaller = new Map();
219
219
  export const UNLABELLED_GIT_CALLER = "unlabelled";
220
+ export const GIT_CALLER_JOIN = " › ";
220
221
  export const withGitCaller = (caller, run) => callerScope.run(caller, run);
222
+ export const currentGitCaller = () => callerScope.getStore();
223
+ export const gitCallerWith = (label, tail) => {
224
+ const head = label ?? UNLABELLED_GIT_CALLER;
225
+ return head.endsWith(`${GIT_CALLER_JOIN}${tail}`) ? head : `${head}${GIT_CALLER_JOIN}${tail}`;
226
+ };
227
+ export const withGitCallerPart = (part, run) => {
228
+ const entry = (callerScope.getStore() ?? UNLABELLED_GIT_CALLER).split(GIT_CALLER_JOIN, 1)[0];
229
+ return callerScope.run(gitCallerWith(entry, part), run);
230
+ };
231
+ export async function* inGitCallerPart(part, source) {
232
+ let finished = false;
233
+ try {
234
+ let step = await withGitCallerPart(part, () => source.next());
235
+ while (step.done !== true) {
236
+ let advance;
237
+ try {
238
+ const sent = yield step.value;
239
+ advance = () => source.next(sent);
240
+ }
241
+ catch (error) {
242
+ advance = () => source.throw(error);
243
+ }
244
+ step = await withGitCallerPart(part, advance);
245
+ }
246
+ finished = true;
247
+ return step.value;
248
+ }
249
+ finally {
250
+ if (!finished) {
251
+ await withGitCallerPart(part, () => source.return(undefined));
252
+ }
253
+ }
254
+ }
221
255
  export const gitRunCallers = () => Object.fromEntries(runsByCaller);
222
256
  const gitRunnerVia = (argv, { bulk, globals, gated, signal }) => async (dir, args, env) => {
223
257
  const pending = gated ? settling.get(dir) : undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"runner.js","sourceRoot":"","sources":["../../src/git/runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runner.js","sourceRoot":"","sources":["../../src/git/runner.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@intentic/base",
3
- "version": "1.399.0",
3
+ "version": "1.400.0",
4
4
  "description": "Runtime primitives every tier shares, when-expressions, disposal, and the async schedulers",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -383,7 +383,7 @@
383
383
  }
384
384
  },
385
385
  "devDependencies": {
386
- "@intentic/constants": "1.399.0",
386
+ "@intentic/constants": "1.400.0",
387
387
  "@intentic/testing": "0.0.0",
388
388
  "@intentic/tsconfig": "0.0.0",
389
389
  "@types/bun": "1.4.4",
@@ -11,14 +11,17 @@ import {
11
11
  cancellableGit,
12
12
  defaultGit,
13
13
  forkedExec,
14
+ gitCallerWith,
14
15
  gitRunCallers,
15
16
  gitSpawnStats,
16
17
  observeGitCommands,
17
18
  politeGit,
18
19
  setRunnerEnv,
19
20
  settleIndex,
21
+ inGitCallerPart,
20
22
  UNLABELLED_GIT_CALLER,
21
23
  withGitCaller,
24
+ withGitCallerPart,
22
25
  } from "./runner.js";
23
26
 
24
27
  // Pins defaultGit's two additions over execFile against a real repo: a larger output buffer and a retry on index.lock
@@ -339,3 +342,39 @@ test("each git run is counted under the operation that asked for it", async () =
339
342
  expect(delta("probe.inner")).toBe(1);
340
343
  expect(delta(UNLABELLED_GIT_CALLER)).toBeGreaterThanOrEqual(1);
341
344
  });
345
+
346
+ // A part names what is doing the work inside the entry that started it, so a route's total still adds up: a narrower part
347
+ // replaces the one around it instead of stacking on it, a lock's tail is said once however deep, and an async
348
+ // generator's steps carry the part though its body resumes in whoever calls next().
349
+ test("a part keeps the entry around it, replaces the part before it, and follows a generator's steps", async () => {
350
+ const dir = await tempRepo();
351
+ const before = gitRunCallers();
352
+ const delta = (caller: string): number => (gitRunCallers()[caller] ?? 0) - (before[caller] ?? 0);
353
+ async function* steps(): AsyncGenerator<number, string> {
354
+ await defaultGit(dir, ["rev-parse", "--git-dir"]);
355
+ yield 1;
356
+ await defaultGit(dir, ["rev-parse", "--git-dir"]);
357
+ return "done";
358
+ }
359
+ await withGitCaller("http probe.route", async () => {
360
+ await withGitCallerPart("probe.turn", async () => {
361
+ await defaultGit(dir, ["rev-parse", "--git-dir"]);
362
+ await withGitCallerPart("probe.hook", () => defaultGit(dir, ["status", "--porcelain"]));
363
+ await withGitCaller(gitCallerWith(gitCallerWith("probe.held", "lock"), "lock"), () => defaultGit(dir, ["rev-parse", "--git-dir"]));
364
+ });
365
+ const yielded: number[] = [];
366
+ const wrapped = inGitCallerPart("probe.steps", steps());
367
+ let step = await wrapped.next();
368
+ while (step.done !== true) {
369
+ yielded.push(step.value);
370
+ step = await wrapped.next();
371
+ }
372
+ expect([yielded, step.value]).toEqual([[1], "done"]);
373
+ });
374
+ await withGitCallerPart("probe.orphan", () => defaultGit(dir, ["rev-parse", "--git-dir"]));
375
+ expect(delta("http probe.route › probe.turn")).toBe(1);
376
+ expect(delta("http probe.route › probe.hook")).toBe(1);
377
+ expect(delta("probe.held › lock")).toBe(1);
378
+ expect(delta("http probe.route › probe.steps")).toBe(2);
379
+ expect(delta(`${UNLABELLED_GIT_CALLER} › probe.orphan`)).toBe(1);
380
+ });
package/src/git/runner.ts CHANGED
@@ -359,15 +359,64 @@ const runsBySubcommand = new Map<string, number>();
359
359
 
360
360
  export const gitRunCounts = (): Readonly<Record<string, number>> => Object.fromEntries(runsBySubcommand);
361
361
 
362
- // Which operation each git run served: the innermost `withGitCaller` around it, carried across awaits. The count by
363
- // subcommand says how much git the daemon spends; this says why, which a profile otherwise has to infer.
362
+ // Which operation each git run served: the innermost label around it, carried across awaits, timers and watchers. The
363
+ // count by subcommand says how much git the daemon spends; this says why, which a profile otherwise has to infer.
364
+ // A label is an ENTRY, who started the work (`http <route>`, `bg <loop>`), then at most one PART inside it, what is
365
+ // doing it (`turn.hook.PostToolUse:main-catch-up`), then ` › lock` when it ran holding a repo lock. Every word is one
366
+ // the code spells, never an id, a path or a sha, and a part replaces the part before it rather than stacking on it, so
367
+ // the count stays as small as the code and still adds up per entry.
364
368
  const callerScope = new AsyncLocalStorage<string>();
365
369
  const runsByCaller = new Map<string, number>();
366
- // A run no labelled span encloses: a timer, a watcher reaction, anything not yet named.
370
+ // A run no labelled span encloses: a timer, a watcher reaction, anything not yet named. Also the entry of a part
371
+ // that ran outside every entry.
367
372
  export const UNLABELLED_GIT_CALLER = "unlabelled";
373
+ export const GIT_CALLER_JOIN = " › ";
368
374
 
375
+ /** Names the entry: every git `run` starts, timers and watchers it arms included, files under `caller` alone. */
369
376
  export const withGitCaller = <T>(caller: string, run: () => T): T => callerScope.run(caller, run);
370
377
 
378
+ export const currentGitCaller = (): string | undefined => callerScope.getStore();
379
+
380
+ /** `<label> › <tail>`, said once: a label already ending in the tail is left as it is, so nesting cannot grow it. */
381
+ export const gitCallerWith = (label: string | undefined, tail: string): string => {
382
+ const head = label ?? UNLABELLED_GIT_CALLER;
383
+ return head.endsWith(`${GIT_CALLER_JOIN}${tail}`) ? head : `${head}${GIT_CALLER_JOIN}${tail}`;
384
+ };
385
+
386
+ /** Names the part of the enclosing entry `run` is: `<entry> › <part>`, replacing whatever part was named before. */
387
+ export const withGitCallerPart = <T>(part: string, run: () => T): T => {
388
+ const entry = (callerScope.getStore() ?? UNLABELLED_GIT_CALLER).split(GIT_CALLER_JOIN, 1)[0];
389
+ return callerScope.run(gitCallerWith(entry, part), run);
390
+ };
391
+
392
+ /** Every step of `source` under `withGitCallerPart(part)`: an async generator's body resumes in whoever calls next(),
393
+ * so a label around the call that made the generator names none of its work. */
394
+ export async function* inGitCallerPart<T, R>(part: string, source: AsyncGenerator<T, R>): AsyncGenerator<T, R> {
395
+ let finished = false;
396
+ try {
397
+ let step = await withGitCallerPart(part, () => source.next());
398
+ while (step.done !== true) {
399
+ // Only what the consumer threw in goes to the source; a throw from the source itself ends this loop.
400
+ let advance: () => Promise<IteratorResult<T, R>>;
401
+ try {
402
+ const sent: unknown = yield step.value;
403
+ advance = () => source.next(sent);
404
+ } catch (error) {
405
+ advance = () => source.throw(error);
406
+ }
407
+ step = await withGitCallerPart(part, advance);
408
+ }
409
+ finished = true;
410
+ return step.value;
411
+ } finally {
412
+ // A consumer that stopped early: the source's own cleanup runs under the part too.
413
+ if (!finished) {
414
+ // SAFETY: an early return's value is the consumer's own, never read back through this wrapper.
415
+ await withGitCallerPart(part, () => source.return(undefined as R));
416
+ }
417
+ }
418
+ }
419
+
371
420
  // Cumulative since boot, by caller; a rate is the difference between two samples, as for gitRunCounts.
372
421
  export const gitRunCallers = (): Readonly<Record<string, number>> => Object.fromEntries(runsByCaller);
373
422