@procedures/lib 0.3.0 → 0.5.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.
Files changed (43) hide show
  1. package/CHANGELOG.md +74 -0
  2. package/README.md +13 -43
  3. package/dist/.tsbuildinfo +1 -1
  4. package/dist/cli-flags.d.ts +2 -0
  5. package/dist/cli-flags.d.ts.map +1 -1
  6. package/dist/cli-flags.js +12 -0
  7. package/dist/cli-flags.js.map +1 -1
  8. package/dist/module.d.ts.map +1 -1
  9. package/dist/module.js +6 -51
  10. package/dist/module.js.map +1 -1
  11. package/dist/procedures/lib/audit.d.ts +15 -2
  12. package/dist/procedures/lib/audit.d.ts.map +1 -1
  13. package/dist/procedures/lib/audit.js +32 -4
  14. package/dist/procedures/lib/audit.js.map +1 -1
  15. package/dist/types.d.ts +17 -58
  16. package/dist/types.d.ts.map +1 -1
  17. package/dist/types.js +8 -92
  18. package/dist/types.js.map +1 -1
  19. package/package.json +8 -8
  20. package/src/cli-flags.ts +14 -0
  21. package/src/module.ts +5 -61
  22. package/src/procedures/lib/audit.ts +34 -4
  23. package/src/types.ts +30 -150
  24. package/dist/procedures/core/catch.d.ts +0 -33
  25. package/dist/procedures/core/catch.d.ts.map +0 -1
  26. package/dist/procedures/core/catch.js +0 -118
  27. package/dist/procedures/core/catch.js.map +0 -1
  28. package/dist/procedures/core/index.d.ts +0 -9
  29. package/dist/procedures/core/index.d.ts.map +0 -1
  30. package/dist/procedures/core/index.js +0 -8
  31. package/dist/procedures/core/index.js.map +0 -1
  32. package/dist/procedures/dag/index.d.ts +0 -5
  33. package/dist/procedures/dag/index.d.ts.map +0 -1
  34. package/dist/procedures/dag/index.js +0 -5
  35. package/dist/procedures/dag/index.js.map +0 -1
  36. package/dist/procedures/dag/traverse.d.ts +0 -54
  37. package/dist/procedures/dag/traverse.d.ts.map +0 -1
  38. package/dist/procedures/dag/traverse.js +0 -252
  39. package/dist/procedures/dag/traverse.js.map +0 -1
  40. package/src/procedures/core/catch.ts +0 -142
  41. package/src/procedures/core/index.ts +0 -9
  42. package/src/procedures/dag/index.ts +0 -5
  43. package/src/procedures/dag/traverse.ts +0 -281
package/dist/types.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "$schema": "https://json.schemastore.org/package",
3
3
  "name": "@procedures/lib",
4
- "version": "0.3.0",
5
- "description": "Workspace procedures for pnpm monorepos: scan the packages, graph their dependencies, scaffold a new package, audit packages against a template, rename across the workspace, and program runners.",
4
+ "version": "0.5.0",
5
+ "description": "Workspace procedures for pnpm monorepos: scan the packages, graph their dependencies, scaffold a new package, audit packages against a template, and rename across the workspace.",
6
6
  "keywords": [
7
7
  "monorepo",
8
8
  "pnpm",
@@ -68,12 +68,12 @@
68
68
  "vitest": "^5.0.3"
69
69
  },
70
70
  "dependencies": {
71
- "@procedures/client": "0.3.0",
72
- "@procedures/dag": "0.3.0",
73
- "@procedures/fs": "0.3.0",
74
- "@procedures/git": "0.3.0",
75
- "@procedures/pnpm": "0.3.0",
76
- "@procedures/shell": "0.3.0",
71
+ "@procedures/client": "0.5.0",
72
+ "@procedures/dag": "0.5.0",
73
+ "@procedures/fs": "0.5.0",
74
+ "@procedures/git": "0.5.0",
75
+ "@procedures/pnpm": "0.5.0",
76
+ "@procedures/shell": "0.5.0",
77
77
  "ts-morph": "^24.0.0",
78
78
  "zod": "^4.6.5"
79
79
  },
package/src/cli-flags.ts CHANGED
@@ -19,6 +19,8 @@ export interface CliGlobalFlag {
19
19
  readonly mode?: boolean;
20
20
  /** True when the flag is an option of `--server` */
21
21
  readonly serverOption?: boolean;
22
+ /** True when the flag can be given more than one time: its values add up, separated by commas */
23
+ readonly repeatable?: boolean;
22
24
  /** The help text */
23
25
  readonly description: string;
24
26
  }
@@ -31,6 +33,11 @@ export const CLI_GLOBAL_FLAGS: readonly CliGlobalFlag[] = [
31
33
  { long: "local", takesValue: false, description: "Run the command in this process, not on the CLI server" },
32
34
  { long: "json", takesValue: true, description: "Run a procedure reference that is given as JSON" },
33
35
  { long: "no-input", takesValue: false, description: "Never ask for a missing argument (also when CI is set)" },
36
+ {
37
+ long: "fs-root",
38
+ takesValue: true,
39
+ description: "Confine each path of fs.* to this folder, also in nested calls (before the command)",
40
+ },
34
41
  { long: "interactive", short: "i", takesValue: false, mode: true, description: "Start the REPL" },
35
42
  { long: "server", takesValue: false, mode: true, description: "Start the CLI server" },
36
43
  { long: "port", takesValue: true, serverOption: true, description: "The port of the CLI server (with --server)" },
@@ -41,6 +48,13 @@ export const CLI_GLOBAL_FLAGS: readonly CliGlobalFlag[] = [
41
48
  serverOption: true,
42
49
  description: "The transport of the CLI server: http, websocket or both (with --server)",
43
50
  },
51
+ {
52
+ long: "events",
53
+ takesValue: true,
54
+ serverOption: true,
55
+ repeatable: true,
56
+ description: "The topics that a peer can subscribe to: names, prefixes (orders.*) or * (with --server)",
57
+ },
44
58
  ];
45
59
 
46
60
  /** The global flag with this long name or short letter */
package/src/module.ts CHANGED
@@ -7,7 +7,7 @@
7
7
  * client-cli no longer registers these to avoid duplicates.
8
8
  */
9
9
 
10
- import { createProcedure, zodAdapter, RUNS_REFS_TAG, defineModule, type ProcedureModule, PROCEDURE_REGISTRY, registerModules, type ProcedureRegistry } from "@procedures/client";
10
+ import { createProcedure, zodAdapter, defineModule, type ProcedureModule, PROCEDURE_REGISTRY, registerModules, type ProcedureRegistry } from "@procedures/client";
11
11
  import gitModule from "@procedures/git/module";
12
12
  import fsModule from "@procedures/fs/module";
13
13
  import {
@@ -24,15 +24,11 @@ import {
24
24
  type EcosystemProceduresInput,
25
25
  type EcosystemProceduresOutput,
26
26
  } from "./procedures/ecosystem/index.js";
27
- import { dagTraverse } from "./procedures/dag/index.js";
28
- import { coreCatch } from "./procedures/core/index.js";
29
27
  import {
30
28
  LibScanInputSchema,
31
29
  LibRenameInputSchema,
32
30
  LibNewInputSchema,
33
31
  LibAuditInputSchema,
34
- DagTraverseInputSchema,
35
- CoreCatchInputSchema,
36
32
  type LibScanInput,
37
33
  type LibScanOutput,
38
34
  type LibRenameInput,
@@ -41,16 +37,10 @@ import {
41
37
  type LibNewOutput,
42
38
  type LibAuditInput,
43
39
  type LibAuditOutput,
44
- type DagTraverseInput,
45
- type DagTraverseOutput,
46
- type CoreCatchInput,
47
- type CoreCatchOutput,
48
40
  LibScanOutputSchema,
49
41
  LibRenameOutputSchema,
50
42
  LibNewOutputSchema,
51
43
  LibAuditOutputSchema,
52
- DagTraverseOutputSchema,
53
- CoreCatchOutputSchema,
54
44
  } from "./types.js";
55
45
  import { LibGraphInputSchema, LibGraphOutputSchema, type LibGraphInput, type LibGraphOutput } from "./types.js";
56
46
  import type { ProcedureContext } from "@procedures/client";
@@ -121,7 +111,8 @@ const libAuditProcedure = createProcedure()
121
111
  .meta({
122
112
  description: "Audit ecosystem packages for issues",
123
113
  calls: ["fs.readdir", "fs.read.json", "git.status", "git.remote", "fs.exists", "fs.mkdir", "fs.write"],
124
- // It reads the registry for the flag notices. With `fix`, it makes only the missing folders
114
+ // It reads the registry for the flag notices and the procedures without effects. It imports no
115
+ // package code, so it does not write `process`. With `fix`, it makes only the missing folders
125
116
  // and files, so a second call changes nothing more.
126
117
  effects: { reads: ["fs", "registry"], writes: ["fs"], destructive: false, idempotent: true },
127
118
  args: [],
@@ -170,51 +161,8 @@ const ecosystemProceduresProcedure = createProcedure()
170
161
  })
171
162
  .build();
172
163
 
173
- // =============================================================================
174
- // dag.* Procedures
175
- // =============================================================================
176
-
177
- const dagTraverseProcedure = createProcedure()
178
- .path(["dag", "traverse"])
179
- .input(zodAdapter<DagTraverseInput>(DagTraverseInputSchema))
180
- .output(zodAdapter<DagTraverseOutput>(DagTraverseOutputSchema))
181
- .meta({
182
- description: "Traverse ecosystem packages in dependency order, executing visit procedure for each",
183
- // It runs the procedure refs of its input: a server with an expose rule limits what they call
184
- tags: [RUNS_REFS_TAG],
185
- // Its own effect is the scan of the workspace. The admission examines each visit call.
186
- effects: { reads: ["fs"], writes: [] },
187
- args: [],
188
- shorts: { root: "r", concurrency: "j", continueOnError: "c", dryRun: "d" },
189
- output: "streaming",
190
- })
191
- .handler(async (input: DagTraverseInput, ctx: ProcedureContext): Promise<DagTraverseOutput> => {
192
- return dagTraverse(input, ctx);
193
- })
194
- .build();
195
-
196
- // =============================================================================
197
- // core.* Procedures
198
- // =============================================================================
199
-
200
- const coreCatchProcedure = createProcedure()
201
- .path(["core", "catch"])
202
- .input(zodAdapter<CoreCatchInput>(CoreCatchInputSchema))
203
- .output(zodAdapter<CoreCatchOutput>(CoreCatchOutputSchema))
204
- .meta({
205
- description: "Execute a procedure with error handling",
206
- // It runs the procedure refs of its input: a server with an expose rule limits what they call
207
- tags: [RUNS_REFS_TAG],
208
- // Control flow: no effects of its own. The admission examines each nested call.
209
- effects: { reads: [], writes: [] },
210
- args: [],
211
- shorts: {},
212
- output: "json",
213
- })
214
- .handler(async (input: CoreCatchInput, ctx: ProcedureContext): Promise<CoreCatchOutput> => {
215
- return coreCatch(input, ctx);
216
- })
217
- .build();
164
+ // dag.traverse is in the module of @procedures/dag. It calls lib.scan of this module.
165
+ // core.catch is removed: client.tryCatch of @procedures/client does the same.
218
166
 
219
167
  // =============================================================================
220
168
  // Registration
@@ -233,10 +181,6 @@ export const libModule: ProcedureModule = defineModule("@procedures/lib", [
233
181
  libGraphProcedure,
234
182
  // ecosystem.* procedures
235
183
  ecosystemProceduresProcedure,
236
- // dag.* procedures (canonical home)
237
- dagTraverseProcedure,
238
- // core.* procedures
239
- coreCatchProcedure,
240
184
  ], [fsModule, gitModule]);
241
185
 
242
186
  export default libModule;
@@ -3,16 +3,22 @@
3
3
  *
4
4
  * Validates the workspace packages against the package template, and checks for
5
5
  * pnpm settings that do not work in a workspace.
6
+ *
7
+ * The audit also examines the procedures of the registry of the host. This registry is the
8
+ * place where the audit finds the procedures: it imports no package code. `mark` builds its
9
+ * registry from the built `./module` entry of each package that declares `client.procedures`.
10
+ * Thus the audit does not examine a package that has no build.
6
11
  */
7
12
 
8
13
  import { basename, join } from "node:path";
9
- import { PROCEDURE_REGISTRY, type AnyProcedure, type ProcedureContext } from "@procedures/client";
14
+ import { PROCEDURE_REGISTRY, effectsOf, pathToKey, type AnyProcedure, type ProcedureContext } from "@procedures/client";
10
15
  import type {
11
16
  FlagNotice,
12
17
  LibAuditInput,
13
18
  LibAuditOutput,
14
19
  PackageAuditResult,
15
20
  PnpmIssue,
21
+ ProcedureIssue,
16
22
  } from "../../types.js";
17
23
  import { libScan } from "./scan.js";
18
24
  import { resolveWorkspaceRoot } from "../../workspace.js";
@@ -34,7 +40,8 @@ export const PACKAGE_TEMPLATE: { files: string[]; dirs: string[] } = {
34
40
 
35
41
  /**
36
42
  * Folders under packages/ that are not client packages.
37
- * packages/cli holds the repository tool from the template, which does not use cue-config.
43
+ * A workspace that comes from the template keeps its repository tool in packages/cli, which does not
44
+ * use cue-config. This repository has no such folder since 2026-10-17.
38
45
  */
39
46
  const NOT_CLIENT_PACKAGES = new Set(["cli"]);
40
47
 
@@ -257,16 +264,38 @@ export function findFlagNotices(procedures: readonly AnyProcedure[]): FlagNotice
257
264
  return notices;
258
265
  }
259
266
 
267
+ /**
268
+ * This function gives a `missing-effects` issue for each procedure without `metadata.effects`,
269
+ * in the order of the paths. A host with a capability refuses such a procedure. `procedure new`
270
+ * writes no effects on purpose, because a default of "pure" can be false. The author writes them.
271
+ */
272
+ export function findMissingEffects(procedures: readonly AnyProcedure[]): ProcedureIssue[] {
273
+ return procedures
274
+ .filter((procedure) => effectsOf(procedure) === undefined)
275
+ .map((procedure) => pathToKey(procedure.path))
276
+ .sort()
277
+ .map((procedure) => ({
278
+ type: "missing-effects",
279
+ procedure,
280
+ message: `${procedure} has no metadata.effects: a host with a capability refuses it`,
281
+ }));
282
+ }
283
+
260
284
  /**
261
285
  * Audit all client packages of the workspace against the package template. The result also
262
- * lists the procedure flags that hide a global flag of `mark` (information only).
286
+ * lists the procedure flags that hide a global flag of `mark` (information only), and the
287
+ * procedures without `metadata.effects` (warnings). The two lists come from the registry of the
288
+ * invocation, else from the global registry. They do not change `success`.
263
289
  */
264
290
  export async function libAudit(input: LibAuditInput, ctx: ProcedureContext): Promise<LibAuditOutput> {
265
291
  const template = PACKAGE_TEMPLATE;
266
- const flagNotices = findFlagNotices((ctx?.registry ?? PROCEDURE_REGISTRY).getAll());
292
+ const procedures = (ctx?.registry ?? PROCEDURE_REGISTRY).getAll();
293
+ const flagNotices = findFlagNotices(procedures);
294
+ const procedureIssues = findMissingEffects(procedures);
267
295
  const empty: LibAuditOutput = {
268
296
  success: false,
269
297
  flagNotices,
298
+ procedureIssues,
270
299
  template,
271
300
  results: [],
272
301
  summary: { total: 0, valid: 0, invalid: 0 },
@@ -296,6 +325,7 @@ export async function libAudit(input: LibAuditInput, ctx: ProcedureContext): Pro
296
325
  return {
297
326
  success: invalidCount === 0,
298
327
  flagNotices,
328
+ procedureIssues,
299
329
  template,
300
330
  results,
301
331
  summary: {
package/src/types.ts CHANGED
@@ -245,11 +245,29 @@ export interface FlagNotice {
245
245
  global: string;
246
246
  }
247
247
 
248
+ /**
249
+ * A problem of a procedure of the registry. The problem is a warning: it does not change
250
+ * `success`.
251
+ */
252
+ export interface ProcedureIssue {
253
+ /** The kind of problem. `missing-effects`: the procedure has no `metadata.effects`. */
254
+ type: "missing-effects";
255
+ /** The procedure path, for example "git.status" */
256
+ procedure: string;
257
+ /** The description of the problem */
258
+ message: string;
259
+ }
260
+
248
261
  export interface LibAuditOutput {
249
262
  /** Overall success (all packages valid) */
250
263
  success: boolean;
251
264
  /** Procedure flags that hide a global flag of mark after the command path (information only) */
252
265
  flagNotices: FlagNotice[];
266
+ /**
267
+ * The procedures of the registry of the host without `metadata.effects` (warnings). A host
268
+ * with a capability refuses such a procedure.
269
+ */
270
+ procedureIssues: ProcedureIssue[];
253
271
  /** Project template used for validation */
254
272
  template: {
255
273
  files: string[];
@@ -265,130 +283,7 @@ export interface LibAuditOutput {
265
283
  };
266
284
  }
267
285
 
268
- // =============================================================================
269
- // dag.traverse Types
270
- // =============================================================================
271
-
272
- /**
273
- * Schema for $proc references with $when control.
274
- */
275
- const ProcRefSchema: z.ZodObject<{
276
- $proc: z.ZodArray<z.ZodString>;
277
- input: z.ZodOptional<z.ZodUnknown>;
278
- $when: z.ZodOptional<z.ZodString>;
279
- $name: z.ZodOptional<z.ZodString>;
280
- }> = z.object({
281
- $proc: z.array(z.string()),
282
- input: z.unknown().optional(),
283
- $when: z.string().optional(),
284
- $name: z.string().optional(),
285
- });
286
-
287
- export const DagTraverseInputSchema: z.ZodObject<{
288
- visit: z.ZodUnion<readonly [z.ZodArray<z.ZodString>, typeof ProcRefSchema]>;
289
- filter: z.ZodOptional<z.ZodArray<z.ZodString>>;
290
- root: z.ZodOptional<z.ZodString>;
291
- rootPath: z.ZodOptional<z.ZodString>;
292
- concurrency: z.ZodDefault<z.ZodNumber>;
293
- serialize: z.ZodDefault<z.ZodEnum<{ auto: "auto"; repository: "repository"; none: "none" }>>;
294
- continueOnError: z.ZodDefault<z.ZodBoolean>;
295
- dryRun: z.ZodDefault<z.ZodBoolean>;
296
- }> = z.object({
297
- /**
298
- * Procedure to execute for each node.
299
- * - Array: procedure path, e.g., ["git", "add"]
300
- * - $proc with $when: "$never" or "$parent": deferred, executed per-node
301
- *
302
- * Example:
303
- * ```json
304
- * { "$proc": ["git", "add"], "input": { "all": true }, "$when": "$parent" }
305
- * ```
306
- */
307
- visit: z.union([
308
- z.array(z.string()),
309
- ProcRefSchema,
310
- ]).describe("Procedure to execute for each node. - Array: procedure path, e.g., [\"git\", \"add\"] - $proc with $when: \"$never\" or \"$parent\": deferred, executed per-node Example: ```json { \"$proc\": [\"git\", \"add\"], \"input\": { \"all\": true }, \"$when\": \"$parent\" } ```"),
311
- /** Filter to specific package names */
312
- filter: z.array(z.string()).optional().describe("Filter to specific package names"),
313
- /** Start from specific root package */
314
- root: z.string().optional().describe("Start from specific root package"),
315
- /** Workspace root (defaults to the pnpm workspace that contains client-lib) */
316
- rootPath: z.string().optional().describe("Workspace root (defaults to the pnpm workspace that contains client-lib)"),
317
- /** Max parallel operations (default: 4) */
318
- concurrency: z.number().default(4).describe("Max parallel operations (default: 4)"),
319
- /**
320
- * When the visits of nodes in one git repository run one at a time (default: "auto").
321
- * - "auto": when the visit calls a `git` procedure (git locks the index of the repository)
322
- * - "repository": always
323
- * - "none": never
324
- */
325
- serialize: z.enum(["auto", "repository", "none"]).default("auto").describe("When the visits of nodes in one git repository run one at a time (default: \"auto\"). - \"auto\": when the visit calls a `git` procedure (git locks the index of the repository) - \"repository\": always - \"none\": never"),
326
- /** Continue on error (default: false) */
327
- continueOnError: z.boolean().default(false).describe("Continue on error (default: false)"),
328
- /** Preview without executing (default: false) */
329
- dryRun: z.boolean().default(false).describe("Preview without executing (default: false)"),
330
- });
331
-
332
- export type DagTraverseInput = z.infer<typeof DagTraverseInputSchema>;
333
-
334
- export interface TraverseNodeResult {
335
- name: string;
336
- path: string;
337
- success: boolean;
338
- duration: number;
339
- error?: string | undefined;
340
- output?: unknown | undefined;
341
- }
342
-
343
- export interface DagTraverseOutput {
344
- success: boolean;
345
- results: TraverseNodeResult[];
346
- totalDuration: number;
347
- visited: number;
348
- failed: number;
349
- }
350
-
351
- // =============================================================================
352
- // core.catch Types
353
- // =============================================================================
354
-
355
- export const CoreCatchInputSchema: z.ZodObject<{
356
- try: z.ZodUnknown;
357
- handler: z.ZodOptional<z.ZodUnknown>;
358
- cwd: z.ZodOptional<z.ZodString>;
359
- }> = z.object({
360
- /**
361
- * Procedure ref to try executing.
362
- * Should use $when: "catch" so it's not auto-executed during hydration.
363
- *
364
- * Example:
365
- * ```json
366
- * { "$proc": ["git", "commit"], "input": { "message": "auto" }, "$when": "catch" }
367
- * ```
368
- */
369
- try: z.unknown().describe("Procedure ref to try executing. Should use $when: \"catch\" so it's not auto-executed during hydration. Example: ```json { \"$proc\": [\"git\", \"commit\"], \"input\": { \"message\": \"auto\" }, \"$when\": \"catch\" } ```"),
370
- /**
371
- * Handler procedure ref called on error.
372
- * Receives StepResultInfo (success, error, proc) merged with its input.
373
- * Should return ContinueDecision { continue: boolean }.
374
- */
375
- handler: z.unknown().optional().describe("Handler procedure ref called on error. Receives StepResultInfo (success, error, proc) merged with its input. Should return ContinueDecision { continue: boolean }."),
376
- /** Working directory for procedure execution */
377
- cwd: z.string().optional().describe("Working directory for procedure execution"),
378
- });
379
-
380
- export type CoreCatchInput = z.infer<typeof CoreCatchInputSchema>;
381
-
382
- export interface CoreCatchOutput {
383
- /** Whether the try succeeded */
384
- success: boolean;
385
- /** Result from try (if success) or handler decision */
386
- result?: unknown | undefined;
387
- /** Error message if failed */
388
- error?: string | undefined;
389
- /** Whether execution should continue (from handler) */
390
- continue: boolean;
391
- }
286
+ // The types of dag.traverse are in @procedures/dag. core.catch is removed: use client.tryCatch.
392
287
 
393
288
  // =============================================================================
394
289
  // Output schemas (roadmap 2.1)
@@ -460,6 +355,17 @@ export const LibAuditOutputSchema: z.ZodType<LibAuditOutput> = z.looseObject({
460
355
  })
461
356
  )
462
357
  .describe("Procedure flags that hide a global flag of mark after the command path (information only)"),
358
+ procedureIssues: z
359
+ .array(
360
+ z.looseObject({
361
+ type: z.enum(["missing-effects"]).describe("The kind of problem. missing-effects: the procedure has no metadata.effects."),
362
+ procedure: z.string().describe('The procedure path, for example "git.status"'),
363
+ message: z.string().describe("The description of the problem"),
364
+ })
365
+ )
366
+ .describe(
367
+ "The procedures of the registry of the host without metadata.effects. A host with a capability refuses them. These warnings do not change success."
368
+ ),
463
369
  template: z
464
370
  .looseObject({
465
371
  files: z.array(z.string()).describe("The files that each package needs"),
@@ -499,32 +405,6 @@ export const LibAuditOutputSchema: z.ZodType<LibAuditOutput> = z.looseObject({
499
405
  .describe("The counts"),
500
406
  });
501
407
 
502
- export const DagTraverseOutputSchema: z.ZodType<DagTraverseOutput> = z.looseObject({
503
- success: z.boolean().describe("True when every visit succeeded"),
504
- results: z
505
- .array(
506
- z.looseObject({
507
- name: z.string().describe("The package name of the node"),
508
- path: z.string().describe("The folder of the node"),
509
- success: z.boolean().describe("True when the visit succeeded"),
510
- duration: z.number().describe("The time of the visit, in milliseconds"),
511
- error: z.string().optional().describe("The error of a failed visit"),
512
- output: z.unknown().optional().describe("The result of the visit"),
513
- })
514
- )
515
- .describe("The result of each visited node"),
516
- totalDuration: z.number().describe("The time of the traversal, in milliseconds"),
517
- visited: z.number().describe("The number of visited nodes"),
518
- failed: z.number().describe("The number of failed visits"),
519
- });
520
-
521
- export const CoreCatchOutputSchema: z.ZodType<CoreCatchOutput> = z.looseObject({
522
- success: z.boolean().describe("True when the try operand succeeded"),
523
- result: z.unknown().optional().describe("The result of try, or the decision of the handler"),
524
- error: z.string().optional().describe("The error of try, when it failed"),
525
- continue: z.boolean().describe("True when the caller can continue"),
526
- });
527
-
528
408
  // =============================================================================
529
409
  // lib.graph Types (roadmap R44)
530
410
  // =============================================================================
@@ -1,33 +0,0 @@
1
- /**
2
- * core.catch procedure
3
- *
4
- * Wraps a procedure execution with error handling.
5
- * The `try` procedure ref should use `$when: "catch"` so it's not
6
- * executed during hydration but instead by this procedure.
7
- *
8
- * @example
9
- * ```typescript
10
- * {
11
- * $proc: ["core", "catch"],
12
- * input: {
13
- * try: {
14
- * $proc: ["git", "commit"],
15
- * input: { message: "auto" },
16
- * $when: "catch" // Defer execution to catch procedure
17
- * },
18
- * handler: {
19
- * $proc: ["core", "identity"],
20
- * input: { value: { continue: true } },
21
- * $when: "catch"
22
- * }
23
- * }
24
- * }
25
- * ```
26
- */
27
- import type { ProcedureContext } from "@procedures/client";
28
- import type { CoreCatchInput, CoreCatchOutput } from "../../types.js";
29
- /**
30
- * Execute a procedure with error handling
31
- */
32
- export declare function coreCatch(input: CoreCatchInput, ctx: ProcedureContext): Promise<CoreCatchOutput>;
33
- //# sourceMappingURL=catch.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"catch.d.ts","sourceRoot":"","sources":["../../../src/procedures/core/catch.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAiB,MAAM,oBAAoB,CAAC;AAS1E,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEtE;;GAEG;AACH,wBAAsB,SAAS,CAC7B,KAAK,EAAE,cAAc,EACrB,GAAG,EAAE,gBAAgB,GACpB,OAAO,CAAC,eAAe,CAAC,CAiG1B"}