@procedures/dag 0.47.1 → 0.47.2

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 (50) hide show
  1. package/CHANGELOG.md +11 -1
  2. package/README.md +2 -0
  3. package/dist/.tsbuildinfo +1 -1
  4. package/dist/graph/index.d.ts +3 -3
  5. package/dist/graph/index.d.ts.map +1 -1
  6. package/dist/graph/index.js +3 -3
  7. package/dist/graph/index.js.map +1 -1
  8. package/dist/index.d.ts +3 -3
  9. package/dist/index.d.ts.map +1 -1
  10. package/dist/index.js +2 -2
  11. package/dist/index.js.map +1 -1
  12. package/dist/procedures/traverse.js +1 -1
  13. package/dist/procedures/traverse.js.map +1 -1
  14. package/dist/procedures/types.d.ts +1 -1
  15. package/dist/procedures/types.d.ts.map +1 -1
  16. package/package.json +3 -2
  17. package/src/graph/index.ts +3 -3
  18. package/src/index.ts +3 -3
  19. package/src/procedures/traverse.ts +1 -1
  20. package/src/procedures/types.ts +1 -1
  21. package/dist/dag/builder.d.ts +0 -25
  22. package/dist/dag/builder.d.ts.map +0 -1
  23. package/dist/dag/builder.js +0 -95
  24. package/dist/dag/builder.js.map +0 -1
  25. package/dist/dag/executor.d.ts +0 -28
  26. package/dist/dag/executor.d.ts.map +0 -1
  27. package/dist/dag/executor.js +0 -147
  28. package/dist/dag/executor.js.map +0 -1
  29. package/dist/dag/index.d.ts +0 -7
  30. package/dist/dag/index.d.ts.map +0 -1
  31. package/dist/dag/index.js +0 -7
  32. package/dist/dag/index.js.map +0 -1
  33. package/dist/dag/traversal.d.ts +0 -28
  34. package/dist/dag/traversal.d.ts.map +0 -1
  35. package/dist/dag/traversal.js +0 -103
  36. package/dist/dag/traversal.js.map +0 -1
  37. package/dist/graph/hub-order.d.ts +0 -19
  38. package/dist/graph/hub-order.d.ts.map +0 -1
  39. package/dist/graph/hub-order.js +0 -52
  40. package/dist/graph/hub-order.js.map +0 -1
  41. package/dist/types.d.ts +0 -80
  42. package/dist/types.d.ts.map +0 -1
  43. package/dist/types.js +0 -8
  44. package/dist/types.js.map +0 -1
  45. package/src/dag/builder.ts +0 -124
  46. package/src/dag/executor.ts +0 -190
  47. package/src/dag/index.ts +0 -23
  48. package/src/dag/traversal.ts +0 -129
  49. package/src/graph/hub-order.ts +0 -53
  50. package/src/types.ts +0 -87
@@ -1,6 +1,6 @@
1
1
  /**
2
- * The entry `@procedures/dag/graph` holds pure graph functions. It imports no other package, so a browser bundle or a
3
- * general package can use it without `@procedures/client` and zod.
2
+ * The entry `@procedures/dag/graph` gives the pure graph functions of `@mark1russell7/collections/graph`.
3
+ * A browser bundle can use it without `@procedures/client` and zod. A general package imports the general entry.
4
4
  */
5
- export { hubBreadthFirstOrder, type WeightedEdge } from "./hub-order.js";
5
+ export { hubBreadthFirstOrder, type WeightedEdge } from "@mark1russell7/collections/graph";
6
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/graph/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,oBAAoB,EAAE,KAAK,YAAY,EAAE,MAAM,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/graph/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,oBAAoB,EAAE,KAAK,YAAY,EAAE,MAAM,kCAAkC,CAAC"}
@@ -1,6 +1,6 @@
1
1
  /**
2
- * The entry `@procedures/dag/graph` holds pure graph functions. It imports no other package, so a browser bundle or a
3
- * general package can use it without `@procedures/client` and zod.
2
+ * The entry `@procedures/dag/graph` gives the pure graph functions of `@mark1russell7/collections/graph`.
3
+ * A browser bundle can use it without `@procedures/client` and zod. A general package imports the general entry.
4
4
  */
5
- export { hubBreadthFirstOrder } from "./hub-order.js";
5
+ export { hubBreadthFirstOrder } from "@mark1russell7/collections/graph";
6
6
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/graph/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,oBAAoB,EAAqB,MAAM,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/graph/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,oBAAoB,EAAqB,MAAM,kCAAkC,CAAC"}
package/dist/index.d.ts CHANGED
@@ -37,9 +37,9 @@
37
37
  * const result = await executeDAG(dag, processor, { concurrency: 2 });
38
38
  * ```
39
39
  */
40
- export type { DAGNode, DependencyDAG, DAGExecutionOptions, NodeResult, DAGResult, NodeProcessor, } from "./types.js";
41
- export { buildLeveledDAG, getTopologicalOrder, visualizeDAG, executeDAG, executeDAGSequential, createProcessor, filterDAGFromRoot, getAncestors, getDescendants, createNode, buildNodeMap, } from "./dag/index.js";
42
- export { hubBreadthFirstOrder, type WeightedEdge } from "./graph/index.js";
40
+ export type { DAGNode, DependencyDAG, DAGExecutionOptions, NodeResult, DAGResult, NodeProcessor, } from "@mark1russell7/collections/dag";
41
+ export { buildLeveledDAG, getTopologicalOrder, visualizeDAG, executeDAG, executeDAGSequential, createProcessor, filterDAGFromRoot, getAncestors, getDescendants, createNode, buildNodeMap, } from "@mark1russell7/collections/dag";
42
+ export { hubBreadthFirstOrder, type WeightedEdge } from "@mark1russell7/collections/graph";
43
43
  export * from "./module.js";
44
44
  export { DagTraverseInputSchema, DagTraverseOutputSchema, type DagTraverseInput, type DagTraverseOutput, type TraverseNodeResult, type ScannedPackage, type ScanOutput, type PackageNode, } from "./procedures/types.js";
45
45
  export { dagTraverse, packageNodes, callsGit, keyedLock, repositoryRoot } from "./procedures/traverse.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AAGH,YAAY,EACV,OAAO,EACP,aAAa,EACb,mBAAmB,EACnB,UAAU,EACV,SAAS,EACT,aAAa,GACd,MAAM,YAAY,CAAC;AAGpB,OAAO,EACL,eAAe,EACf,mBAAmB,EACnB,YAAY,EACZ,UAAU,EACV,oBAAoB,EACpB,eAAe,EACf,iBAAiB,EACjB,YAAY,EACZ,cAAc,EACd,UAAU,EACV,YAAY,GACb,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EAAE,oBAAoB,EAAE,KAAK,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAI3E,cAAc,aAAa,CAAC;AAC5B,OAAO,EACL,sBAAsB,EACtB,uBAAuB,EACvB,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EACvB,KAAK,cAAc,EACnB,KAAK,UAAU,EACf,KAAK,WAAW,GACjB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,QAAQ,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AAGH,YAAY,EACV,OAAO,EACP,aAAa,EACb,mBAAmB,EACnB,UAAU,EACV,SAAS,EACT,aAAa,GACd,MAAM,gCAAgC,CAAC;AAGxC,OAAO,EACL,eAAe,EACf,mBAAmB,EACnB,YAAY,EACZ,UAAU,EACV,oBAAoB,EACpB,eAAe,EACf,iBAAiB,EACjB,YAAY,EACZ,cAAc,EACd,UAAU,EACV,YAAY,GACb,MAAM,gCAAgC,CAAC;AAGxC,OAAO,EAAE,oBAAoB,EAAE,KAAK,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAI3F,cAAc,aAAa,CAAC;AAC5B,OAAO,EACL,sBAAsB,EACtB,uBAAuB,EACvB,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EACvB,KAAK,cAAc,EACnB,KAAK,UAAU,EACf,KAAK,WAAW,GACjB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,QAAQ,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC"}
package/dist/index.js CHANGED
@@ -38,9 +38,9 @@
38
38
  * ```
39
39
  */
40
40
  // DAG utilities
41
- export { buildLeveledDAG, getTopologicalOrder, visualizeDAG, executeDAG, executeDAGSequential, createProcessor, filterDAGFromRoot, getAncestors, getDescendants, createNode, buildNodeMap, } from "./dag/index.js";
41
+ export { buildLeveledDAG, getTopologicalOrder, visualizeDAG, executeDAG, executeDAGSequential, createProcessor, filterDAGFromRoot, getAncestors, getDescendants, createNode, buildNodeMap, } from "@mark1russell7/collections/dag";
42
42
  // Pure graph functions. The entry "@procedures/dag/graph" gives them without @procedures/client and zod.
43
- export { hubBreadthFirstOrder } from "./graph/index.js";
43
+ export { hubBreadthFirstOrder } from "@mark1russell7/collections/graph";
44
44
  // The procedure dag.traverse. The root registers nothing: import "@procedures/dag/register", or
45
45
  // give the module to createRegistry() with the module of @procedures/lib.
46
46
  export * from "./module.js";
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AAYH,gBAAgB;AAChB,OAAO,EACL,eAAe,EACf,mBAAmB,EACnB,YAAY,EACZ,UAAU,EACV,oBAAoB,EACpB,eAAe,EACf,iBAAiB,EACjB,YAAY,EACZ,cAAc,EACd,UAAU,EACV,YAAY,GACb,MAAM,gBAAgB,CAAC;AAExB,yGAAyG;AACzG,OAAO,EAAE,oBAAoB,EAAqB,MAAM,kBAAkB,CAAC;AAE3E,gGAAgG;AAChG,0EAA0E;AAC1E,cAAc,aAAa,CAAC;AAC5B,OAAO,EACL,sBAAsB,EACtB,uBAAuB,GAOxB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,QAAQ,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AAYH,gBAAgB;AAChB,OAAO,EACL,eAAe,EACf,mBAAmB,EACnB,YAAY,EACZ,UAAU,EACV,oBAAoB,EACpB,eAAe,EACf,iBAAiB,EACjB,YAAY,EACZ,cAAc,EACd,UAAU,EACV,YAAY,GACb,MAAM,gCAAgC,CAAC;AAExC,yGAAyG;AACzG,OAAO,EAAE,oBAAoB,EAAqB,MAAM,kCAAkC,CAAC;AAE3F,gGAAgG;AAChG,0EAA0E;AAC1E,cAAc,aAAa,CAAC;AAC5B,OAAO,EACL,sBAAsB,EACtB,uBAAuB,GAOxB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,QAAQ,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC"}
@@ -39,7 +39,7 @@
39
39
  import { existsSync } from "node:fs";
40
40
  import { dirname, join, resolve } from "node:path";
41
41
  import { isAnyProcedureRef, hydrateInput, scopeOf } from "@procedures/client";
42
- import { buildLeveledDAG, executeDAG, createProcessor, filterDAGFromRoot, } from "../dag/index.js";
42
+ import { buildLeveledDAG, executeDAG, createProcessor, filterDAGFromRoot, } from "@mark1russell7/collections/dag";
43
43
  /**
44
44
  * This function gives the nodes of the packages of a `lib.scan` output. A dependency on a
45
45
  * package that the scan did not find is not an edge.
@@ -1 +1 @@
1
- {"version":3,"file":"traverse.js","sourceRoot":"","sources":["../../src/procedures/traverse.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEnD,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAQ9E,OAAO,EACL,eAAe,EACf,UAAU,EACV,eAAe,EACf,iBAAiB,GAClB,MAAM,iBAAiB,CAAC;AAEzB;;;GAGG;AACH,MAAM,UAAU,YAAY,CAAC,QAAgC;IAC3D,MAAM,KAAK,GAAG,IAAI,GAAG,EAAuB,CAAC;IAC7C,KAAK,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;QACpD,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE;YACd,EAAE,EAAE,IAAI;YACR,IAAI;YACJ,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,YAAY,EAAE,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,SAAS,CAAC;SAClF,CAAC,CAAC;IACL,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,4FAA4F;AAC5F,MAAM,UAAU,cAAc,CAAC,IAAY;IACzC,IAAI,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5B,SAAS,CAAC;QACR,IAAI,UAAU,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;YAAE,OAAO,OAAO,CAAC;QACtD,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;QAChC,IAAI,MAAM,KAAK,OAAO;YAAE,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC;QAC7C,OAAO,GAAG,MAAM,CAAC;IACnB,CAAC;AACH,CAAC;AAED,0FAA0F;AAC1F,MAAM,UAAU,QAAQ,CAAC,KAAc;IACrC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,KAAK,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,IAAI,KAAK,QAAQ,CAAC;YAAE,OAAO,IAAI,CAAC;QACvF,OAAO,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC9B,CAAC;IACD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QAChD,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC7C,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,SAAS;IACvB,MAAM,KAAK,GAAG,IAAI,GAAG,EAAyB,CAAC;IAC/C,OAAO,KAAK,EAAK,GAAW,EAAE,IAAsB,EAAc,EAAE;QAClE,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QACrD,IAAI,OAAoB,CAAC;QACzB,MAAM,IAAI,GAAG,IAAI,OAAO,CAAO,CAAC,WAAW,EAAE,EAAE;YAC7C,OAAO,GAAG,WAAW,CAAC;QACxB,CAAC,CAAC,CAAC;QACH,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;QACvC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QACrB,MAAM,QAAQ,CAAC;QACf,IAAI,CAAC;YACH,OAAO,MAAM,IAAI,EAAE,CAAC;QACtB,CAAC;gBAAS,CAAC;YACT,OAAO,EAAE,CAAC;YACV,IAAI,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,IAAI;gBAAE,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACjD,CAAC;IACH,CAAC,CAAC;AACJ,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,KAAuB,EACvB,GAAqB;IAErB,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC7B,MAAM,OAAO,GAAyB,EAAE,CAAC;IAEzC,sDAAsD;IACtD,MAAM,UAAU,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,IAAI,CACtC,CAAC,KAAK,EAAE,MAAM,CAAC,EACf,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CACjE,CAAC;IACF,IAAI,QAAQ,GAAG,YAAY,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;IAEjD,2CAA2C;IAC3C,IAAI,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5C,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAuB,CAAC;QAChD,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;YAChC,MAAM,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAChC,IAAI,IAAI,EAAE,CAAC;gBACT,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YAC3B,CAAC;QACH,CAAC;QACD,QAAQ,GAAG,QAAQ,CAAC;IACtB,CAAC;IAED,mDAAmD;IACnD,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;QACf,MAAM,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC1C,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,OAAO,EAAE,EAAE;gBACX,aAAa,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;gBACrC,OAAO,EAAE,CAAC;gBACV,MAAM,EAAE,CAAC;gBACT,OAAO,EAAE,CAAC;aACX,CAAC;QACJ,CAAC;QACD,QAAQ,GAAG,iBAAiB,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IACrD,CAAC;IAED,6CAA6C;IAC7C,MAAM,GAAG,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC;IAEtC,+CAA+C;IAC/C,gBAAgB;IAChB,8CAA8C;IAC9C,gEAAgE;IAChE,MAAM,UAAU,GAAG,iBAAiB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAClD,IAAI,SAAwB,CAAC;IAC7B,IAAI,SAAS,GAAY,EAAE,CAAC;IAE5B,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;QAC/B,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC;IAC1B,CAAC;SAAM,IAAI,UAAU,IAAI,OAAO,KAAK,CAAC,KAAK,KAAK,QAAQ,IAAI,OAAO,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;QACnF,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC;QAC9B,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC;IACtC,CAAC;SAAM,CAAC;QACN,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAC;IAClF,CAAC;IAED,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,IAAI,MAAM,CAAC;IAC5C,MAAM,UAAU,GAAG,SAAS,KAAK,YAAY,IAAI,CAAC,SAAS,KAAK,MAAM,IAAI,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;IACjG,MAAM,IAAI,GAAG,SAAS,EAAE,CAAC;IAEzB,0DAA0D;IAC1D,MAAM,SAAS,GAAG,eAAe,CAAC,KAAK,EAAE,IAAiB,EAAE,EAAE;QAC5D,IAAI,UAAU,EAAE,CAAC;YACf,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;QAC/D,CAAC;aAAM,CAAC;YACN,MAAM,KAAK,CAAC,IAAI,CAAC,CAAC;QACpB,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,KAAK,UAAU,KAAK,CAAC,IAAiB;QACpC,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;YACjB,OAAO,CAAC,IAAI,CAAC;gBACX,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,IAAI,EAAE,IAAI,CAAC,QAAQ;gBACnB,OAAO,EAAE,IAAI;gBACb,QAAQ,EAAE,CAAC;gBACX,MAAM,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,SAAS,EAAE;aAClD,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QAED,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAEjC,IAAI,CAAC;YACH,qCAAqC;YACrC,MAAM,UAAU,GAAG;gBACjB,GAAG,CAAC,OAAO,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;gBACnD,GAAG,EAAE,IAAI,CAAC,QAAQ;gBAClB,IAAI,EAAE;oBACJ,IAAI,EAAE,IAAI,CAAC,IAAI;oBACf,IAAI,EAAE,IAAI,CAAC,QAAQ;oBACnB,YAAY,EAAE,IAAI,CAAC,YAAY;iBAChC;aACF,CAAC;YAEF,iEAAiE;YACjE,MAAM,QAAQ,GAAG,KAAK,EAAa,IAAmB,EAAE,GAAQ,EAAiB,EAAE;gBACjF,0EAA0E;gBAC1E,MAAM,YAAY,GAAG,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI;oBAC1D,CAAC,CAAC,EAAE,GAAG,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,QAAQ,EAAE;oBAChC,CAAC,CAAC,GAAG,CAAC;gBACR,OAAO,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,YAAY,CAAkB,CAAC;YAC9D,CAAC,CAAC;YAEF,yEAAyE;YACzE,oFAAoF;YACpF,MAAM,aAAa,GAAG,MAAM,YAAY,CAAC,UAAU,EAAE,QAAQ,EAAE;gBAC7D,YAAY,EAAE,CAAC,cAAc,CAAC;gBAC9B,KAAK,EAAE,GAAG,CAAC,KAAK;gBAChB,oFAAoF;gBACpF,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC;aACtB,CAAC,CAAC;YAEH,8CAA8C;YAC9C,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;YAE/D,OAAO,CAAC,IAAI,CAAC;gBACX,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,IAAI,EAAE,IAAI,CAAC,QAAQ;gBACnB,OAAO,EAAE,IAAI;gBACb,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,aAAa;gBACpC,MAAM;aACP,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,MAAM,GAAuB;gBACjC,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,IAAI,EAAE,IAAI,CAAC,QAAQ;gBACnB,OAAO,EAAE,KAAK;gBACd,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,aAAa;gBACpC,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;aAC9D,CAAC;YACF,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACrB,MAAM,KAAK,CAAC,CAAC,sCAAsC;QACrD,CAAC;IACH,CAAC;IAED,wBAAwB;IACxB,MAAM,SAAS,GAAG,MAAM,UAAU,CAAC,GAAG,EAAE,SAAS,EAAE;QACjD,WAAW,EAAE,KAAK,CAAC,WAAW,IAAI,CAAC;QACnC,QAAQ,EAAE,CAAC,KAAK,CAAC,eAAe;KACjC,CAAC,CAAC;IAEH,MAAM,OAAO,GAAG,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,SAAS,CAAC,WAAW,CAAC,CAAC;IAElF,OAAO;QACL,OAAO,EAAE,SAAS,CAAC,OAAO;QAC1B,OAAO,EAAE,CAAC,GAAG,OAAO,EAAE,GAAG,OAAO,CAAC;QACjC,aAAa,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;QACrC,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM;QAChD,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM;QAChD,OAAO,EAAE,OAAO,CAAC,MAAM;KACxB,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,cAAc,CAC5B,KAA6B,EAC7B,OAAsC,EACtC,WAA8B;IAE9B,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;IAC3D,MAAM,MAAM,GACV,gBAAgB,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,yDAAyD;QAC/F,4BAA4B,CAAC;IAC/B,OAAO,KAAK;SACT,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SACtC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;AACnH,CAAC"}
1
+ {"version":3,"file":"traverse.js","sourceRoot":"","sources":["../../src/procedures/traverse.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,7 @@
5
5
  * `dag.traverse`.
6
6
  */
7
7
  import * as z from "zod";
8
- import type { DAGNode } from "../types.js";
8
+ import type { DAGNode } from "@mark1russell7/collections/dag";
9
9
  /**
10
10
  * Schema for $proc references with $when control.
11
11
  */
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/procedures/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/procedures/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://json.schemastore.org/package",
3
3
  "name": "@procedures/dag",
4
- "version": "0.47.1",
4
+ "version": "0.47.2",
5
5
  "description": "Dependency graph algorithms for TypeScript: build a DAG, detect cycles, compute topological levels and traverse in parallel with a concurrency limit. The procedure dag.traverse visits workspace packages in dependency order.",
6
6
  "keywords": [
7
7
  "dag",
@@ -69,7 +69,8 @@
69
69
  "vitest": "^5.0.3"
70
70
  },
71
71
  "dependencies": {
72
- "@procedures/client": "0.47.1",
72
+ "@mark1russell7/collections": "^0.1.0",
73
+ "@procedures/client": "0.47.2",
73
74
  "zod": "^4.6.5"
74
75
  },
75
76
  "client": {
@@ -1,6 +1,6 @@
1
1
  /**
2
- * The entry `@procedures/dag/graph` holds pure graph functions. It imports no other package, so a browser bundle or a
3
- * general package can use it without `@procedures/client` and zod.
2
+ * The entry `@procedures/dag/graph` gives the pure graph functions of `@mark1russell7/collections/graph`.
3
+ * A browser bundle can use it without `@procedures/client` and zod. A general package imports the general entry.
4
4
  */
5
5
 
6
- export { hubBreadthFirstOrder, type WeightedEdge } from "./hub-order.js";
6
+ export { hubBreadthFirstOrder, type WeightedEdge } from "@mark1russell7/collections/graph";
package/src/index.ts CHANGED
@@ -46,7 +46,7 @@ export type {
46
46
  NodeResult,
47
47
  DAGResult,
48
48
  NodeProcessor,
49
- } from "./types.js";
49
+ } from "@mark1russell7/collections/dag";
50
50
 
51
51
  // DAG utilities
52
52
  export {
@@ -61,10 +61,10 @@ export {
61
61
  getDescendants,
62
62
  createNode,
63
63
  buildNodeMap,
64
- } from "./dag/index.js";
64
+ } from "@mark1russell7/collections/dag";
65
65
 
66
66
  // Pure graph functions. The entry "@procedures/dag/graph" gives them without @procedures/client and zod.
67
- export { hubBreadthFirstOrder, type WeightedEdge } from "./graph/index.js";
67
+ export { hubBreadthFirstOrder, type WeightedEdge } from "@mark1russell7/collections/graph";
68
68
 
69
69
  // The procedure dag.traverse. The root registers nothing: import "@procedures/dag/register", or
70
70
  // give the module to createRegistry() with the module of @procedures/lib.
@@ -53,7 +53,7 @@ import {
53
53
  executeDAG,
54
54
  createProcessor,
55
55
  filterDAGFromRoot,
56
- } from "../dag/index.js";
56
+ } from "@mark1russell7/collections/dag";
57
57
 
58
58
  /**
59
59
  * This function gives the nodes of the packages of a `lib.scan` output. A dependency on a
@@ -6,7 +6,7 @@
6
6
  */
7
7
 
8
8
  import * as z from "zod";
9
- import type { DAGNode } from "../types.js";
9
+ import type { DAGNode } from "@mark1russell7/collections/dag";
10
10
 
11
11
  /**
12
12
  * Schema for $proc references with $when control.
@@ -1,25 +0,0 @@
1
- /**
2
- * DAG Builder utilities
3
- */
4
- import type { DAGNode } from "../types.js";
5
- /**
6
- * Filter DAG to only include nodes reachable from a root
7
- */
8
- export declare function filterDAGFromRoot<TNode extends DAGNode>(nodes: Map<string, TNode>, rootId: string): Map<string, TNode>;
9
- /**
10
- * Get all ancestors of a node (nodes that this node depends on, transitively)
11
- */
12
- export declare function getAncestors<TNode extends DAGNode>(nodes: Map<string, TNode>, id: string): Set<string>;
13
- /**
14
- * Get all descendants of a node (nodes that depend on this node, transitively)
15
- */
16
- export declare function getDescendants<TNode extends DAGNode>(nodes: Map<string, TNode>, id: string): Set<string>;
17
- /**
18
- * Create a DAG node from minimal input
19
- */
20
- export declare function createNode<TData = unknown>(id: string, dependencies?: string[], data?: TData | undefined): DAGNode<TData>;
21
- /**
22
- * Build a Map of nodes from an array
23
- */
24
- export declare function buildNodeMap<TNode extends DAGNode>(nodes: TNode[]): Map<string, TNode>;
25
- //# sourceMappingURL=builder.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"builder.d.ts","sourceRoot":"","sources":["../../src/dag/builder.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAE3C;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,SAAS,OAAO,EACrD,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,EACzB,MAAM,EAAE,MAAM,GACb,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,CAoBpB;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,KAAK,SAAS,OAAO,EAChD,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,EACzB,EAAE,EAAE,MAAM,GACT,GAAG,CAAC,MAAM,CAAC,CAqBb;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,KAAK,SAAS,OAAO,EAClD,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,EACzB,EAAE,EAAE,MAAM,GACT,GAAG,CAAC,MAAM,CAAC,CA8Bb;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,KAAK,GAAG,OAAO,EACxC,EAAE,EAAE,MAAM,EACV,YAAY,GAAE,MAAM,EAAO,EAC3B,IAAI,CAAC,EAAE,KAAK,GAAG,SAAS,GACvB,OAAO,CAAC,KAAK,CAAC,CAMhB;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,KAAK,SAAS,OAAO,EAChD,KAAK,EAAE,KAAK,EAAE,GACb,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,CAEpB"}
@@ -1,95 +0,0 @@
1
- /**
2
- * DAG Builder utilities
3
- */
4
- /**
5
- * Filter DAG to only include nodes reachable from a root
6
- */
7
- export function filterDAGFromRoot(nodes, rootId) {
8
- const filtered = new Map();
9
- const visited = new Set();
10
- function visit(id) {
11
- if (visited.has(id))
12
- return;
13
- visited.add(id);
14
- const node = nodes.get(id);
15
- if (!node)
16
- return;
17
- filtered.set(id, node);
18
- for (const dep of node.dependencies) {
19
- visit(dep);
20
- }
21
- }
22
- visit(rootId);
23
- return filtered;
24
- }
25
- /**
26
- * Get all ancestors of a node (nodes that this node depends on, transitively)
27
- */
28
- export function getAncestors(nodes, id) {
29
- const ancestors = new Set();
30
- const visited = new Set();
31
- function visit(n) {
32
- if (visited.has(n))
33
- return;
34
- visited.add(n);
35
- const node = nodes.get(n);
36
- if (!node)
37
- return;
38
- for (const dep of node.dependencies) {
39
- if (nodes.has(dep)) {
40
- ancestors.add(dep);
41
- visit(dep);
42
- }
43
- }
44
- }
45
- visit(id);
46
- return ancestors;
47
- }
48
- /**
49
- * Get all descendants of a node (nodes that depend on this node, transitively)
50
- */
51
- export function getDescendants(nodes, id) {
52
- const descendants = new Set();
53
- const visited = new Set();
54
- // Build reverse dependency map
55
- const dependents = new Map();
56
- for (const [nodeId, node] of nodes) {
57
- for (const dep of node.dependencies) {
58
- if (!dependents.has(dep)) {
59
- dependents.set(dep, new Set());
60
- }
61
- dependents.get(dep).add(nodeId);
62
- }
63
- }
64
- function visit(n) {
65
- if (visited.has(n))
66
- return;
67
- visited.add(n);
68
- const deps = dependents.get(n);
69
- if (!deps)
70
- return;
71
- for (const dep of deps) {
72
- descendants.add(dep);
73
- visit(dep);
74
- }
75
- }
76
- visit(id);
77
- return descendants;
78
- }
79
- /**
80
- * Create a DAG node from minimal input
81
- */
82
- export function createNode(id, dependencies = [], data) {
83
- const node = { id, dependencies };
84
- if (data !== undefined) {
85
- node.data = data;
86
- }
87
- return node;
88
- }
89
- /**
90
- * Build a Map of nodes from an array
91
- */
92
- export function buildNodeMap(nodes) {
93
- return new Map(nodes.map((n) => [n.id, n]));
94
- }
95
- //# sourceMappingURL=builder.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"builder.js","sourceRoot":"","sources":["../../src/dag/builder.ts"],"names":[],"mappings":"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"}
@@ -1,28 +0,0 @@
1
- /**
2
- * DAG Executor with parallel level-based execution
3
- */
4
- import type { DependencyDAG, DAGNode, DAGExecutionOptions, NodeResult, DAGResult } from "../types.js";
5
- /**
6
- * Execute DAG with level-based parallelization
7
- *
8
- * - Levels are processed sequentially (level 0 first, then 1, etc.)
9
- * - Within each level, nodes are processed in parallel up to concurrency limit
10
- * - Supports fail-fast or continue-on-error modes
11
- *
12
- * A processor that throws does NOT reject the whole run: the throw is captured
13
- * and recorded as a failed NodeResult, so partial results are always returned.
14
- *
15
- * `failFast` operates at level granularity. When a node in a level fails, every
16
- * node already in flight in that same level still runs to completion, but no
17
- * later level is started. (There is no mid-level cancellation.)
18
- */
19
- export declare function executeDAG<TNode extends DAGNode>(dag: DependencyDAG<TNode>, processor: (node: TNode) => Promise<NodeResult<TNode>>, options?: DAGExecutionOptions<TNode>): Promise<DAGResult<TNode>>;
20
- /**
21
- * Execute DAG sequentially (no parallelization)
22
- */
23
- export declare function executeDAGSequential<TNode extends DAGNode>(dag: DependencyDAG<TNode>, processor: (node: TNode) => Promise<NodeResult<TNode>>, options?: Omit<DAGExecutionOptions<TNode>, "concurrency">): Promise<DAGResult<TNode>>;
24
- /**
25
- * Create a simple processor that wraps an async function
26
- */
27
- export declare function createProcessor<TNode extends DAGNode>(fn: (node: TNode) => Promise<void>): (node: TNode) => Promise<NodeResult<TNode>>;
28
- //# sourceMappingURL=executor.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../../src/dag/executor.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EACV,aAAa,EACb,OAAO,EACP,mBAAmB,EACnB,UAAU,EACV,SAAS,EACV,MAAM,aAAa,CAAC;AAkDrB;;;;;;;;;;;;;GAaG;AACH,wBAAsB,UAAU,CAAC,KAAK,SAAS,OAAO,EACpD,GAAG,EAAE,aAAa,CAAC,KAAK,CAAC,EACzB,SAAS,EAAE,CAAC,IAAI,EAAE,KAAK,KAAK,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,EACtD,OAAO,GAAE,mBAAmB,CAAC,KAAK,CAAM,GACvC,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAgE3B;AAED;;GAEG;AACH,wBAAsB,oBAAoB,CAAC,KAAK,SAAS,OAAO,EAC9D,GAAG,EAAE,aAAa,CAAC,KAAK,CAAC,EACzB,SAAS,EAAE,CAAC,IAAI,EAAE,KAAK,KAAK,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,EACtD,OAAO,GAAE,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE,aAAa,CAAM,GAC5D,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAE3B;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,KAAK,SAAS,OAAO,EACnD,EAAE,EAAE,CAAC,IAAI,EAAE,KAAK,KAAK,OAAO,CAAC,IAAI,CAAC,GACjC,CAAC,IAAI,EAAE,KAAK,KAAK,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CA6B7C"}
@@ -1,147 +0,0 @@
1
- /**
2
- * DAG Executor with parallel level-based execution
3
- */
4
- /**
5
- * Execute a batch of items with concurrency limit
6
- */
7
- async function executeWithConcurrency(items, fn, limit) {
8
- const results = [];
9
- const executing = new Set();
10
- for (const item of items) {
11
- const promise = fn(item)
12
- .then((result) => {
13
- results.push(result);
14
- })
15
- .finally(() => {
16
- // Rejection-safe cleanup: always remove the settled promise from the
17
- // executing set, even if `fn` rejected, so the set never leaks a
18
- // settled (possibly rejected) promise into later `race`/`all` waits.
19
- executing.delete(promise);
20
- });
21
- executing.add(promise);
22
- if (executing.size >= limit) {
23
- await Promise.race(executing);
24
- }
25
- }
26
- await Promise.all(executing);
27
- return results;
28
- }
29
- /**
30
- * Call a listener. A listener that throws does not stop the run: the function returns a log
31
- * line for its error (deep dive DATA-21).
32
- */
33
- function notify(name, listener, arg) {
34
- if (!listener)
35
- return undefined;
36
- try {
37
- listener(arg);
38
- return undefined;
39
- }
40
- catch (error) {
41
- return name + " threw: " + (error instanceof Error ? error.message : String(error));
42
- }
43
- }
44
- /**
45
- * Execute DAG with level-based parallelization
46
- *
47
- * - Levels are processed sequentially (level 0 first, then 1, etc.)
48
- * - Within each level, nodes are processed in parallel up to concurrency limit
49
- * - Supports fail-fast or continue-on-error modes
50
- *
51
- * A processor that throws does NOT reject the whole run: the throw is captured
52
- * and recorded as a failed NodeResult, so partial results are always returned.
53
- *
54
- * `failFast` operates at level granularity. When a node in a level fails, every
55
- * node already in flight in that same level still runs to completion, but no
56
- * later level is started. (There is no mid-level cancellation.)
57
- */
58
- export async function executeDAG(dag, processor, options = {}) {
59
- const { concurrency = 4, failFast = true, onNodeStart, onNodeComplete, } = options;
60
- const results = new Map();
61
- const failedNodes = [];
62
- const startTime = Date.now();
63
- let shouldStop = false;
64
- for (const level of dag.levels) {
65
- if (shouldStop)
66
- break;
67
- const levelResults = await executeWithConcurrency(level, async (node) => {
68
- const startError = notify("onNodeStart", onNodeStart, node);
69
- const nodeStart = Date.now();
70
- let result;
71
- try {
72
- result = await processor(node);
73
- }
74
- catch (error) {
75
- // Convert a thrown processor error into a failed NodeResult instead
76
- // of rejecting the entire run and discarding partial results.
77
- const err = error instanceof Error ? error : new Error(String(error));
78
- result = {
79
- node,
80
- success: false,
81
- error: err,
82
- duration: Date.now() - nodeStart,
83
- logs: ["Processor threw: " + err.message],
84
- };
85
- }
86
- const completeError = notify("onNodeComplete", onNodeComplete, result);
87
- const listenerErrors = [startError, completeError].filter((line) => line !== undefined);
88
- if (listenerErrors.length > 0) {
89
- result = { ...result, logs: [...(result.logs ?? []), ...listenerErrors] };
90
- }
91
- return result;
92
- }, concurrency);
93
- for (const result of levelResults) {
94
- results.set(result.node.id, result);
95
- if (!result.success) {
96
- failedNodes.push(result.node.id);
97
- if (failFast) {
98
- shouldStop = true;
99
- }
100
- }
101
- }
102
- }
103
- return {
104
- success: failedNodes.length === 0,
105
- results,
106
- failedNodes,
107
- totalDuration: Date.now() - startTime,
108
- };
109
- }
110
- /**
111
- * Execute DAG sequentially (no parallelization)
112
- */
113
- export async function executeDAGSequential(dag, processor, options = {}) {
114
- return executeDAG(dag, processor, { ...options, concurrency: 1 });
115
- }
116
- /**
117
- * Create a simple processor that wraps an async function
118
- */
119
- export function createProcessor(fn) {
120
- return async (node) => {
121
- const startTime = Date.now();
122
- const logs = [];
123
- try {
124
- logs.push("Starting " + node.id);
125
- await fn(node);
126
- logs.push("Completed " + node.id);
127
- return {
128
- node,
129
- success: true,
130
- duration: Date.now() - startTime,
131
- logs,
132
- };
133
- }
134
- catch (error) {
135
- const err = error instanceof Error ? error : new Error(String(error));
136
- logs.push("Failed " + node.id + ": " + err.message);
137
- return {
138
- node,
139
- success: false,
140
- error: err,
141
- duration: Date.now() - startTime,
142
- logs,
143
- };
144
- }
145
- };
146
- }
147
- //# sourceMappingURL=executor.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"executor.js","sourceRoot":"","sources":["../../src/dag/executor.ts"],"names":[],"mappings":"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"}
@@ -1,7 +0,0 @@
1
- /**
2
- * DAG utilities
3
- */
4
- export { buildLeveledDAG, getTopologicalOrder, visualizeDAG, } from "./traversal.js";
5
- export { executeDAG, executeDAGSequential, createProcessor, } from "./executor.js";
6
- export { filterDAGFromRoot, getAncestors, getDescendants, createNode, buildNodeMap, } from "./builder.js";
7
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/dag/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACL,eAAe,EACf,mBAAmB,EACnB,YAAY,GACb,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACL,UAAU,EACV,oBAAoB,EACpB,eAAe,GAChB,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,iBAAiB,EACjB,YAAY,EACZ,cAAc,EACd,UAAU,EACV,YAAY,GACb,MAAM,cAAc,CAAC"}
package/dist/dag/index.js DELETED
@@ -1,7 +0,0 @@
1
- /**
2
- * DAG utilities
3
- */
4
- export { buildLeveledDAG, getTopologicalOrder, visualizeDAG, } from "./traversal.js";
5
- export { executeDAG, executeDAGSequential, createProcessor, } from "./executor.js";
6
- export { filterDAGFromRoot, getAncestors, getDescendants, createNode, buildNodeMap, } from "./builder.js";
7
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/dag/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACL,eAAe,EACf,mBAAmB,EACnB,YAAY,GACb,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACL,UAAU,EACV,oBAAoB,EACpB,eAAe,GAChB,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,iBAAiB,EACjB,YAAY,EACZ,cAAc,EACd,UAAU,EACV,YAAY,GACb,MAAM,cAAc,CAAC"}
@@ -1,28 +0,0 @@
1
- /**
2
- * DAG Traversal using Kahn's Algorithm
3
- *
4
- * Implements topological sort with level assignment for parallel execution.
5
- * Level 0 = leaves (no dependencies), higher levels depend on lower levels.
6
- */
7
- import type { DAGNode, DependencyDAG } from "../types.js";
8
- /**
9
- * Build a leveled DAG from nodes using Kahn's algorithm
10
- *
11
- * This assigns levels to each node where:
12
- * - Level 0: Nodes with no dependencies (leaves)
13
- * - Level N: Nodes whose dependencies are all at level < N
14
- *
15
- * Nodes at the same level can be processed in parallel.
16
- *
17
- * @throws Error if a cycle is detected
18
- */
19
- export declare function buildLeveledDAG<TNode extends DAGNode>(nodes: Map<string, TNode>): DependencyDAG<TNode>;
20
- /**
21
- * Get the topological order (flat list, leaves first)
22
- */
23
- export declare function getTopologicalOrder<TNode extends DAGNode>(dag: DependencyDAG<TNode>): TNode[];
24
- /**
25
- * Visualize the DAG structure (for debugging)
26
- */
27
- export declare function visualizeDAG<TNode extends DAGNode>(dag: DependencyDAG<TNode>): string;
28
- //# sourceMappingURL=traversal.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"traversal.d.ts","sourceRoot":"","sources":["../../src/dag/traversal.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE1D;;;;;;;;;;GAUG;AACH,wBAAgB,eAAe,CAAC,KAAK,SAAS,OAAO,EACnD,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,GACxB,aAAa,CAAC,KAAK,CAAC,CA0EtB;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,SAAS,OAAO,EACvD,GAAG,EAAE,aAAa,CAAC,KAAK,CAAC,GACxB,KAAK,EAAE,CAET;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,KAAK,SAAS,OAAO,EAChD,GAAG,EAAE,aAAa,CAAC,KAAK,CAAC,GACxB,MAAM,CAgBR"}