@bett3r-dev/blueprint-schema 1.7.0 → 1.9.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 (206) hide show
  1. package/CHANGELOG.md +56 -0
  2. package/build/cjs/apply-design.d.ts +1 -1
  3. package/build/cjs/apply-design.d.ts.map +1 -1
  4. package/build/cjs/apply-design.js +18 -5
  5. package/build/cjs/apply-design.js.map +1 -1
  6. package/build/cjs/apply-overrides.d.ts.map +1 -1
  7. package/build/cjs/apply-overrides.js +20 -2
  8. package/build/cjs/apply-overrides.js.map +1 -1
  9. package/build/cjs/card-holds.d.ts +4 -0
  10. package/build/cjs/card-holds.d.ts.map +1 -0
  11. package/build/cjs/card-holds.js +51 -0
  12. package/build/cjs/card-holds.js.map +1 -0
  13. package/build/cjs/channel-link.d.ts +11 -0
  14. package/build/cjs/channel-link.d.ts.map +1 -0
  15. package/build/cjs/channel-link.js +39 -0
  16. package/build/cjs/channel-link.js.map +1 -0
  17. package/build/cjs/coverage-links.d.ts +1 -1
  18. package/build/cjs/coverage-links.d.ts.map +1 -1
  19. package/build/cjs/coverage-links.js +10 -3
  20. package/build/cjs/coverage-links.js.map +1 -1
  21. package/build/cjs/design.d.ts +38 -3
  22. package/build/cjs/design.d.ts.map +1 -1
  23. package/build/cjs/design.js +21 -5
  24. package/build/cjs/design.js.map +1 -1
  25. package/build/cjs/diagnostics.d.ts +12 -0
  26. package/build/cjs/diagnostics.d.ts.map +1 -1
  27. package/build/cjs/diagnostics.js.map +1 -1
  28. package/build/cjs/edge-endpoints.d.ts +33 -0
  29. package/build/cjs/edge-endpoints.d.ts.map +1 -0
  30. package/build/cjs/edge-endpoints.js +83 -0
  31. package/build/cjs/edge-endpoints.js.map +1 -0
  32. package/build/cjs/effective-design.d.ts +21 -0
  33. package/build/cjs/effective-design.d.ts.map +1 -0
  34. package/build/cjs/effective-design.js +177 -0
  35. package/build/cjs/effective-design.js.map +1 -0
  36. package/build/cjs/fork-scenarios.d.ts +3 -1
  37. package/build/cjs/fork-scenarios.d.ts.map +1 -1
  38. package/build/cjs/fork-scenarios.js +20 -5
  39. package/build/cjs/fork-scenarios.js.map +1 -1
  40. package/build/cjs/graph.d.ts +25 -0
  41. package/build/cjs/graph.d.ts.map +1 -1
  42. package/build/cjs/graph.js +36 -0
  43. package/build/cjs/graph.js.map +1 -1
  44. package/build/cjs/index.d.ts +10 -0
  45. package/build/cjs/index.d.ts.map +1 -1
  46. package/build/cjs/index.js +10 -0
  47. package/build/cjs/index.js.map +1 -1
  48. package/build/cjs/map-review-view.d.ts +29 -0
  49. package/build/cjs/map-review-view.d.ts.map +1 -0
  50. package/build/cjs/map-review-view.js +64 -0
  51. package/build/cjs/map-review-view.js.map +1 -0
  52. package/build/cjs/map-structure.d.ts +26 -2
  53. package/build/cjs/map-structure.d.ts.map +1 -1
  54. package/build/cjs/map-structure.js.map +1 -1
  55. package/build/cjs/map-vocabulary.d.ts +8 -1
  56. package/build/cjs/map-vocabulary.d.ts.map +1 -1
  57. package/build/cjs/map-vocabulary.js +15 -2
  58. package/build/cjs/map-vocabulary.js.map +1 -1
  59. package/build/cjs/nodes.d.ts +2 -0
  60. package/build/cjs/nodes.d.ts.map +1 -1
  61. package/build/cjs/overrides.d.ts +21 -0
  62. package/build/cjs/overrides.d.ts.map +1 -1
  63. package/build/cjs/overrides.js +53 -1
  64. package/build/cjs/overrides.js.map +1 -1
  65. package/build/cjs/reachability.js +1 -1
  66. package/build/cjs/reachability.js.map +1 -1
  67. package/build/cjs/reality-check.d.ts +1 -1
  68. package/build/cjs/reality-check.d.ts.map +1 -1
  69. package/build/cjs/reality-check.js +46 -9
  70. package/build/cjs/reality-check.js.map +1 -1
  71. package/build/cjs/scenario-test-level.d.ts +25 -0
  72. package/build/cjs/scenario-test-level.d.ts.map +1 -0
  73. package/build/cjs/scenario-test-level.js +43 -0
  74. package/build/cjs/scenario-test-level.js.map +1 -0
  75. package/build/cjs/session-phase.d.ts +80 -0
  76. package/build/cjs/session-phase.d.ts.map +1 -0
  77. package/build/cjs/session-phase.js +97 -0
  78. package/build/cjs/session-phase.js.map +1 -0
  79. package/build/cjs/session.d.ts +21 -2
  80. package/build/cjs/session.d.ts.map +1 -1
  81. package/build/cjs/session.js +3 -2
  82. package/build/cjs/session.js.map +1 -1
  83. package/build/cjs/spec.d.ts +3 -0
  84. package/build/cjs/spec.d.ts.map +1 -1
  85. package/build/cjs/spec.js +85 -17
  86. package/build/cjs/spec.js.map +1 -1
  87. package/build/cjs/step-elements.d.ts +27 -0
  88. package/build/cjs/step-elements.d.ts.map +1 -0
  89. package/build/cjs/step-elements.js +28 -0
  90. package/build/cjs/step-elements.js.map +1 -0
  91. package/build/cjs/tags.d.ts +26 -0
  92. package/build/cjs/tags.d.ts.map +1 -0
  93. package/build/cjs/tags.js +28 -0
  94. package/build/cjs/tags.js.map +1 -0
  95. package/build/cjs/unproduced-events.d.ts +10 -0
  96. package/build/cjs/unproduced-events.d.ts.map +1 -0
  97. package/build/cjs/unproduced-events.js +37 -0
  98. package/build/cjs/unproduced-events.js.map +1 -0
  99. package/build/cjs/validate-design.d.ts +1 -1
  100. package/build/cjs/validate-design.d.ts.map +1 -1
  101. package/build/cjs/validate-design.js +74 -4
  102. package/build/cjs/validate-design.js.map +1 -1
  103. package/build/esm/apply-design.d.ts +1 -1
  104. package/build/esm/apply-design.d.ts.map +1 -1
  105. package/build/esm/apply-design.js +18 -5
  106. package/build/esm/apply-design.js.map +1 -1
  107. package/build/esm/apply-overrides.d.ts.map +1 -1
  108. package/build/esm/apply-overrides.js +20 -2
  109. package/build/esm/apply-overrides.js.map +1 -1
  110. package/build/esm/card-holds.d.ts +4 -0
  111. package/build/esm/card-holds.d.ts.map +1 -0
  112. package/build/esm/card-holds.js +48 -0
  113. package/build/esm/card-holds.js.map +1 -0
  114. package/build/esm/channel-link.d.ts +11 -0
  115. package/build/esm/channel-link.d.ts.map +1 -0
  116. package/build/esm/channel-link.js +34 -0
  117. package/build/esm/channel-link.js.map +1 -0
  118. package/build/esm/coverage-links.d.ts +1 -1
  119. package/build/esm/coverage-links.d.ts.map +1 -1
  120. package/build/esm/coverage-links.js +10 -3
  121. package/build/esm/coverage-links.js.map +1 -1
  122. package/build/esm/design.d.ts +38 -3
  123. package/build/esm/design.d.ts.map +1 -1
  124. package/build/esm/design.js +18 -4
  125. package/build/esm/design.js.map +1 -1
  126. package/build/esm/diagnostics.d.ts +12 -0
  127. package/build/esm/diagnostics.d.ts.map +1 -1
  128. package/build/esm/diagnostics.js.map +1 -1
  129. package/build/esm/edge-endpoints.d.ts +33 -0
  130. package/build/esm/edge-endpoints.d.ts.map +1 -0
  131. package/build/esm/edge-endpoints.js +77 -0
  132. package/build/esm/edge-endpoints.js.map +1 -0
  133. package/build/esm/effective-design.d.ts +21 -0
  134. package/build/esm/effective-design.d.ts.map +1 -0
  135. package/build/esm/effective-design.js +174 -0
  136. package/build/esm/effective-design.js.map +1 -0
  137. package/build/esm/fork-scenarios.d.ts +3 -1
  138. package/build/esm/fork-scenarios.d.ts.map +1 -1
  139. package/build/esm/fork-scenarios.js +20 -5
  140. package/build/esm/fork-scenarios.js.map +1 -1
  141. package/build/esm/graph.d.ts +25 -0
  142. package/build/esm/graph.d.ts.map +1 -1
  143. package/build/esm/graph.js +33 -0
  144. package/build/esm/graph.js.map +1 -1
  145. package/build/esm/index.d.ts +10 -0
  146. package/build/esm/index.d.ts.map +1 -1
  147. package/build/esm/index.js +10 -0
  148. package/build/esm/index.js.map +1 -1
  149. package/build/esm/map-review-view.d.ts +29 -0
  150. package/build/esm/map-review-view.d.ts.map +1 -0
  151. package/build/esm/map-review-view.js +58 -0
  152. package/build/esm/map-review-view.js.map +1 -0
  153. package/build/esm/map-structure.d.ts +26 -2
  154. package/build/esm/map-structure.d.ts.map +1 -1
  155. package/build/esm/map-structure.js.map +1 -1
  156. package/build/esm/map-vocabulary.d.ts +8 -1
  157. package/build/esm/map-vocabulary.d.ts.map +1 -1
  158. package/build/esm/map-vocabulary.js +13 -1
  159. package/build/esm/map-vocabulary.js.map +1 -1
  160. package/build/esm/nodes.d.ts +2 -0
  161. package/build/esm/nodes.d.ts.map +1 -1
  162. package/build/esm/overrides.d.ts +21 -0
  163. package/build/esm/overrides.d.ts.map +1 -1
  164. package/build/esm/overrides.js +51 -1
  165. package/build/esm/overrides.js.map +1 -1
  166. package/build/esm/reachability.js +1 -1
  167. package/build/esm/reachability.js.map +1 -1
  168. package/build/esm/reality-check.d.ts +1 -1
  169. package/build/esm/reality-check.d.ts.map +1 -1
  170. package/build/esm/reality-check.js +47 -10
  171. package/build/esm/reality-check.js.map +1 -1
  172. package/build/esm/scenario-test-level.d.ts +25 -0
  173. package/build/esm/scenario-test-level.d.ts.map +1 -0
  174. package/build/esm/scenario-test-level.js +37 -0
  175. package/build/esm/scenario-test-level.js.map +1 -0
  176. package/build/esm/session-phase.d.ts +80 -0
  177. package/build/esm/session-phase.d.ts.map +1 -0
  178. package/build/esm/session-phase.js +93 -0
  179. package/build/esm/session-phase.js.map +1 -0
  180. package/build/esm/session.d.ts +21 -2
  181. package/build/esm/session.d.ts.map +1 -1
  182. package/build/esm/session.js +3 -2
  183. package/build/esm/session.js.map +1 -1
  184. package/build/esm/spec.d.ts +3 -0
  185. package/build/esm/spec.d.ts.map +1 -1
  186. package/build/esm/spec.js +88 -20
  187. package/build/esm/spec.js.map +1 -1
  188. package/build/esm/step-elements.d.ts +27 -0
  189. package/build/esm/step-elements.d.ts.map +1 -0
  190. package/build/esm/step-elements.js +21 -0
  191. package/build/esm/step-elements.js.map +1 -0
  192. package/build/esm/tags.d.ts +26 -0
  193. package/build/esm/tags.d.ts.map +1 -0
  194. package/build/esm/tags.js +21 -0
  195. package/build/esm/tags.js.map +1 -0
  196. package/build/esm/unproduced-events.d.ts +10 -0
  197. package/build/esm/unproduced-events.d.ts.map +1 -0
  198. package/build/esm/unproduced-events.js +32 -0
  199. package/build/esm/unproduced-events.js.map +1 -0
  200. package/build/esm/validate-design.d.ts +1 -1
  201. package/build/esm/validate-design.d.ts.map +1 -1
  202. package/build/esm/validate-design.js +74 -4
  203. package/build/esm/validate-design.js.map +1 -1
  204. package/build/tsconfig.tsbuildinfo +1 -1
  205. package/package.json +1 -1
  206. package/schema/map.schema.json +9 -1
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.findUnproducedEvents = exports.unproducedEventMessage = void 0;
4
+ const PRODUCING_KINDS = new Set(['produces', 'emits']);
5
+ const unproducedEventMessage = (subdomain, subdomainHasCode) => 'Nothing produces this event: no command, aggregate or system in the design or the code emits it.' +
6
+ (subdomainHasCode ? '' : ` Its subdomain "${subdomain}" has no code in this repo.`);
7
+ exports.unproducedEventMessage = unproducedEventMessage;
8
+ const findUnproducedEvents = (graph) => {
9
+ const nodesById = new Map(graph.nodes.map((node) => [node.id, node]));
10
+ const produced = new Set();
11
+ for (const edge of graph.edges) {
12
+ if (!PRODUCING_KINDS.has(edge.kind))
13
+ continue;
14
+ const from = nodesById.get(edge.from);
15
+ if (from === undefined || from.status === 'removed')
16
+ continue;
17
+ produced.add(edge.to);
18
+ }
19
+ const coded = new Set();
20
+ for (const node of graph.nodes) {
21
+ if (node.status !== 'proposed')
22
+ coded.add(node.subdomain);
23
+ }
24
+ return graph.nodes
25
+ .filter((node) => node.type === 'event' && node.status === 'proposed' && !produced.has(node.id))
26
+ .map((node) => {
27
+ const subdomainHasCode = coded.has(node.subdomain);
28
+ return {
29
+ id: node.id,
30
+ subdomain: node.subdomain,
31
+ subdomainHasCode,
32
+ message: (0, exports.unproducedEventMessage)(node.subdomain, subdomainHasCode)
33
+ };
34
+ });
35
+ };
36
+ exports.findUnproducedEvents = findUnproducedEvents;
37
+ //# sourceMappingURL=unproduced-events.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"unproduced-events.js","sourceRoot":"","sources":["../../src/unproduced-events.ts"],"names":[],"mappings":";;;AAcA,MAAM,eAAe,GAAwB,IAAI,GAAG,CAAE,CAAE,UAAU,EAAE,OAAO,CAAE,CAAE,CAAC;AAEzE,MAAM,sBAAsB,GAAG,CAAE,SAAiB,EAAE,gBAAyB,EAAW,EAAE,CAC/F,kGAAkG;IAClG,CAAE,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,mBAAoB,SAAU,6BAA6B,CAAE,CAAC;AAF7E,QAAA,sBAAsB,0BAEuD;AAEnF,MAAM,oBAAoB,GAAG,CAAE,KAAqB,EAAsB,EAAE;IACjF,MAAM,SAAS,GAAG,IAAI,GAAG,CAAyB,KAAK,CAAC,KAAK,CAAC,GAAG,CAAE,CAAE,IAAI,EAAG,EAAE,CAAC,CAAE,IAAI,CAAC,EAAE,EAAE,IAAI,CAAE,CAAE,CAAE,CAAC;IAErG,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;IACnC,KAAM,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,EAAG,CAAC;QACjC,IAAK,CAAC,eAAe,CAAC,GAAG,CAAE,IAAI,CAAC,IAAI,CAAE;YAAG,SAAS;QAClD,MAAM,IAAI,GAAG,SAAS,CAAC,GAAG,CAAE,IAAI,CAAC,IAAI,CAAE,CAAC;QACxC,IAAK,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS;YAAG,SAAS;QAChE,QAAQ,CAAC,GAAG,CAAE,IAAI,CAAC,EAAE,CAAE,CAAC;IAC1B,CAAC;IAED,MAAM,KAAK,GAAG,IAAI,GAAG,EAAU,CAAC;IAChC,KAAM,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,EAAG,CAAC;QACjC,IAAK,IAAI,CAAC,MAAM,KAAK,UAAU;YAAG,KAAK,CAAC,GAAG,CAAE,IAAI,CAAC,SAAS,CAAE,CAAC;IAChE,CAAC;IAED,OAAO,KAAK,CAAC,KAAK;SACf,MAAM,CAAE,CAAE,IAAI,EAAG,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,IAAI,IAAI,CAAC,MAAM,KAAK,UAAU,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAE,IAAI,CAAC,EAAE,CAAE,CAAE;SACrG,GAAG,CAAE,CAAE,IAAI,EAAG,EAAE;QACf,MAAM,gBAAgB,GAAG,KAAK,CAAC,GAAG,CAAE,IAAI,CAAC,SAAS,CAAE,CAAC;QACrD,OAAO;YACL,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,gBAAgB;YAChB,OAAO,EAAE,IAAA,8BAAsB,EAAE,IAAI,CAAC,SAAS,EAAE,gBAAgB,CAAE;SACpE,CAAC;IACJ,CAAC,CAAE,CAAC;AACR,CAAC,CAAC;AA3BW,QAAA,oBAAoB,wBA2B/B"}
@@ -1,7 +1,7 @@
1
1
  import { type DesignBatch, type DesignFile } from './design.js';
2
2
  import { type BlueprintGraph } from './graph.js';
3
3
  import { type BlueprintOverrides } from './overrides.js';
4
- export type DesignIssueCode = 'UNSUPPORTED_SCHEMA_VERSION' | 'MALFORMED_ENTRY' | 'UNKNOWN_NODE_TYPE' | 'UNKNOWN_EDGE_KIND' | 'UNRESOLVED_EDGE_ENDPOINT' | 'TOPOLOGY_VIOLATION' | 'UNMODIFIABLE_FIELD' | 'UNRESOLVED_TARGET' | 'DUPLICATE_IDENTITY' | 'EDGE_TARGETS_REMOVED' | 'INVALID_EDGE_HANDLER' | 'DUPLICATE_COMMENT_ID';
4
+ export type DesignIssueCode = 'UNSUPPORTED_SCHEMA_VERSION' | 'MALFORMED_ENTRY' | 'UNKNOWN_NODE_TYPE' | 'UNKNOWN_EDGE_KIND' | 'UNRESOLVED_EDGE_ENDPOINT' | 'TOPOLOGY_VIOLATION' | 'UNMODIFIABLE_FIELD' | 'UNRESOLVED_TARGET' | 'DUPLICATE_IDENTITY' | 'EDGE_TARGETS_REMOVED' | 'INVALID_EDGE_HANDLER' | 'DUPLICATE_COMMENT_ID' | 'TAG_MALFORMED' | 'TAG_NOT_APPLICABLE';
5
5
  export type DesignValidationIssue = {
6
6
  code: DesignIssueCode;
7
7
  path: string;
@@ -1 +1 @@
1
- {"version":3,"file":"validate-design.d.ts","sourceRoot":"","sources":["../../src/validate-design.ts"],"names":[],"mappings":"AAOA,OAAO,EAEL,KAAK,WAAW,EAEhB,KAAK,UAAU,EAQhB,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,KAAK,cAAc,EAAU,MAAM,YAAY,CAAC;AAEzD,OAAO,EAAgC,KAAK,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAGvF,MAAM,MAAM,eAAe,GACvB,4BAA4B,GAC5B,iBAAiB,GACjB,mBAAmB,GACnB,mBAAmB,GACnB,0BAA0B,GAC1B,oBAAoB,GACpB,oBAAoB,GACpB,mBAAmB,GACnB,oBAAoB,GACpB,sBAAsB,GACtB,sBAAsB,GACtB,sBAAsB,CAAC;AAE3B,MAAM,MAAM,qBAAqB,GAAG;IAClC,IAAI,EAAE,eAAe,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,MAAM,CAAC,eAAe,EAAE,WAAW,GAAG,YAAY,CAalF,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACnC,SAAS,EAAE,qBAAqB,EAAE,CAAC;IACnC,UAAU,EAAE,qBAAqB,EAAE,CAAC;CACrC,CAAC;AAWF,MAAM,MAAM,qBAAqB,GAAG;IAClC,KAAK,CAAC,EAAE,cAAc,CAAC;IACvB,QAAQ,CAAC,EAAE,WAAW,CAAC;IACvB,SAAS,CAAC,EAAE,kBAAkB,CAAC;IAC/B,MAAM,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;CAC9B,CAAC;AAkkBF,wBAAgB,cAAc,CAC5B,MAAM,EAAE,UAAU,EAClB,OAAO,GAAE,qBAA0B,GAClC,sBAAsB,CA6GxB"}
1
+ {"version":3,"file":"validate-design.d.ts","sourceRoot":"","sources":["../../src/validate-design.ts"],"names":[],"mappings":"AAOA,OAAO,EAEL,KAAK,WAAW,EAEhB,KAAK,UAAU,EAQhB,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,KAAK,cAAc,EAAU,MAAM,YAAY,CAAC;AAEzD,OAAO,EAAgC,KAAK,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAIvF,MAAM,MAAM,eAAe,GACvB,4BAA4B,GAC5B,iBAAiB,GACjB,mBAAmB,GACnB,mBAAmB,GACnB,0BAA0B,GAC1B,oBAAoB,GACpB,oBAAoB,GACpB,mBAAmB,GACnB,oBAAoB,GACpB,sBAAsB,GACtB,sBAAsB,GACtB,sBAAsB,GACtB,eAAe,GACf,oBAAoB,CAAC;AAEzB,MAAM,MAAM,qBAAqB,GAAG;IAClC,IAAI,EAAE,eAAe,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,MAAM,CAAC,eAAe,EAAE,WAAW,GAAG,YAAY,CAelF,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACnC,SAAS,EAAE,qBAAqB,EAAE,CAAC;IACnC,UAAU,EAAE,qBAAqB,EAAE,CAAC;CACrC,CAAC;AAWF,MAAM,MAAM,qBAAqB,GAAG;IAClC,KAAK,CAAC,EAAE,cAAc,CAAC;IACvB,QAAQ,CAAC,EAAE,WAAW,CAAC;IACvB,SAAS,CAAC,EAAE,kBAAkB,CAAC;IAC/B,MAAM,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;CAC9B,CAAC;AAgoBF,wBAAgB,cAAc,CAC5B,MAAM,EAAE,UAAU,EAClB,OAAO,GAAE,qBAA0B,GAClC,sBAAsB,CA+GxB"}
@@ -9,6 +9,7 @@ const apply_overrides_js_1 = require("./apply-overrides.js");
9
9
  const graph_js_1 = require("./graph.js");
10
10
  const nodes_js_1 = require("./nodes.js");
11
11
  const overrides_js_1 = require("./overrides.js");
12
+ const tags_js_1 = require("./tags.js");
12
13
  const topology_js_1 = require("./topology.js");
13
14
  exports.DESIGN_ISSUE_CLASS = {
14
15
  UNSUPPORTED_SCHEMA_VERSION: 'malformed',
@@ -17,12 +18,14 @@ exports.DESIGN_ISSUE_CLASS = {
17
18
  UNKNOWN_EDGE_KIND: 'malformed',
18
19
  UNMODIFIABLE_FIELD: 'malformed',
19
20
  DUPLICATE_COMMENT_ID: 'malformed',
21
+ TAG_MALFORMED: 'malformed',
20
22
  TOPOLOGY_VIOLATION: 'incoherent',
21
23
  DUPLICATE_IDENTITY: 'incoherent',
22
24
  EDGE_TARGETS_REMOVED: 'incoherent',
23
25
  UNRESOLVED_TARGET: 'incoherent',
24
26
  UNRESOLVED_EDGE_ENDPOINT: 'incoherent',
25
- INVALID_EDGE_HANDLER: 'incoherent'
27
+ INVALID_EDGE_HANDLER: 'incoherent',
28
+ TAG_NOT_APPLICABLE: 'incoherent'
26
29
  };
27
30
  function splitByClass(issues) {
28
31
  const malformed = [];
@@ -76,6 +79,42 @@ function checkInvariantFields(values, prefix, path, issues) {
76
79
  });
77
80
  }
78
81
  }
82
+ // BP-279: a tag list is a list of names that are well-formed once normalised (tags.ts); a malformed one refuses the batch.
83
+ function checkTagNames(tags, prefix, path, issues) {
84
+ if (tags === undefined)
85
+ return;
86
+ if (!Array.isArray(tags)) {
87
+ issues.push({
88
+ code: 'TAG_MALFORMED',
89
+ path,
90
+ message: `${prefix}.tags must be a list of tag names`
91
+ });
92
+ return;
93
+ }
94
+ for (const tag of tags) {
95
+ if ((0, tags_js_1.isTagName)(tag))
96
+ continue;
97
+ issues.push({
98
+ code: 'TAG_MALFORMED',
99
+ path,
100
+ message: `${prefix}.tags holds ${JSON.stringify(tag)}, which is not a tag name: ${tags_js_1.TAG_NAME_RULE}`
101
+ });
102
+ }
103
+ }
104
+ // BP-279: a predefined tag on a node type it does not apply to (keyed on anything but a system) is written and reported.
105
+ function checkTagsApply(tags, type, prefix, path, issues) {
106
+ if (type === undefined || !Array.isArray(tags))
107
+ return;
108
+ for (const tag of tags) {
109
+ if (!(0, tags_js_1.isTagName)(tag) || (0, tags_js_1.tagApplies)(tag, type))
110
+ continue;
111
+ issues.push({
112
+ code: 'TAG_NOT_APPLICABLE',
113
+ path,
114
+ message: `${prefix}.tags holds ${JSON.stringify(tag)}, which does not apply to a ${type}`
115
+ });
116
+ }
117
+ }
79
118
  function checkProposedNode(node, path, issues) {
80
119
  if (!nodes_js_1.NODE_TYPES.includes(node.type)) {
81
120
  issues.push({
@@ -99,6 +138,9 @@ function checkProposedNode(node, path, issues) {
99
138
  });
100
139
  }
101
140
  checkInvariantFields(node, path, path, issues);
141
+ checkTagNames(node.tags, path, path, issues);
142
+ if (nodes_js_1.NODE_TYPES.includes(node.type))
143
+ checkTagsApply(node.tags, node.type, path, path, issues);
102
144
  checkAttribution(node, path, issues);
103
145
  }
104
146
  function checkModifyEntry(entry, path, issues) {
@@ -110,7 +152,9 @@ function checkModifyEntry(entry, path, issues) {
110
152
  message: `${path}.id must be the id of the element to modify`
111
153
  });
112
154
  }
113
- const set = entry.set;
155
+ // A modify that changes no listed field (an omitted set reads as an empty one) declares a change the fields cannot
156
+ // express — a command's data schema, an aggregate's logic, an event's payload — and its note says what that is.
157
+ const set = entry.set ?? {};
114
158
  if (typeof set !== 'object' || set === null || Array.isArray(set)) {
115
159
  issues.push({
116
160
  code: 'MALFORMED_ENTRY',
@@ -120,11 +164,12 @@ function checkModifyEntry(entry, path, issues) {
120
164
  return;
121
165
  }
122
166
  const fields = Object.keys(set);
123
- if (fields.length === 0) {
167
+ if (fields.length === 0 && !isFilledString(entry.note)) {
124
168
  issues.push({
125
169
  code: 'MALFORMED_ENTRY',
126
170
  path,
127
- message: `${path}.set must change at least one field`
171
+ message: `${path} changes nothing — set at least one field, or, when the change is one no field holds `
172
+ + '(a data schema, logic, a policy, an event\'s payload), leave set empty and describe the change in note'
128
173
  });
129
174
  }
130
175
  for (const field of fields) {
@@ -156,6 +201,7 @@ function checkModifyEntry(entry, path, issues) {
156
201
  });
157
202
  }
158
203
  checkInvariantFields(values, `${path}.set`, path, issues);
204
+ checkTagNames(values.tags, `${path}.set`, path, issues);
159
205
  }
160
206
  function checkRemoveEntry(entry, path, issues) {
161
207
  checkAttribution(entry, path, issues);
@@ -224,6 +270,13 @@ function checkComment(entry, path, issues) {
224
270
  message: `${path}.mentions must be a list of member ids when present`
225
271
  });
226
272
  }
273
+ if (entry.principal !== undefined && !isFilledString(entry.principal)) {
274
+ issues.push({
275
+ code: 'MALFORMED_ENTRY',
276
+ path,
277
+ message: `${path}.principal must be the writer's non-empty principal when present`
278
+ });
279
+ }
227
280
  if (entry.reaction !== undefined && !design_js_1.COMMENT_REACTIONS.includes(entry.reaction)) {
228
281
  issues.push({
229
282
  code: 'MALFORMED_ENTRY',
@@ -231,6 +284,21 @@ function checkComment(entry, path, issues) {
231
284
  message: `${path}.reaction must be one of ${design_js_1.COMMENT_REACTIONS.join(', ')} when present`
232
285
  });
233
286
  }
287
+ if (entry.handOff !== undefined && entry.handOff !== true) {
288
+ issues.push({
289
+ code: 'MALFORMED_ENTRY',
290
+ path,
291
+ message: `${path}.handOff must be true when present — it marks a reply job's hand-off note`
292
+ });
293
+ }
294
+ if (entry.answers !== undefined
295
+ && (!Array.isArray(entry.answers) || entry.answers.length === 0 || !entry.answers.every(isFilledString))) {
296
+ issues.push({
297
+ code: 'MALFORMED_ENTRY',
298
+ path,
299
+ message: `${path}.answers must be a non-empty list of comment ids when present — the comments an agent comment answers`
300
+ });
301
+ }
234
302
  const { anchor } = entry;
235
303
  if (anchor === null || anchor === undefined || typeof anchor === 'string')
236
304
  return;
@@ -545,6 +613,8 @@ function validateDesign(design, context = {}) {
545
613
  const namespace = buildNamespace(nodes, modifies, context.graph, issues);
546
614
  for (const located of modifies) {
547
615
  checkTarget(located.entry.id, located, namespace, issues);
616
+ const tags = located.entry.set?.tags;
617
+ checkTagsApply(tags, namespace.get(located.entry.id)?.type, `${located.path}.set`, located.path, issues);
548
618
  }
549
619
  for (const located of removes) {
550
620
  const { entry } = located;
@@ -1 +1 @@
1
- {"version":3,"file":"validate-design.js","sourceRoot":"","sources":["../../src/validate-design.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validate-design.js","sourceRoot":"","sources":["../../src/validate-design.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import type { HandlerScopeIssue } from './diagnostics.js';
2
2
  import type { EdgeKind } from './edges.js';
3
- import type { DesignFile, ProposedNode } from './design.js';
3
+ import { type DesignFile, type ProposedNode } from './design.js';
4
4
  import { type BlueprintGraph } from './graph.js';
5
5
  import { type StrandingReport } from './reachability.js';
6
6
  export type RottedHandlerScope = {
@@ -1 +1 @@
1
- {"version":3,"file":"apply-design.d.ts","sourceRoot":"","sources":["../../src/apply-design.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,KAAK,EAAE,QAAQ,EAAiB,MAAM,YAAY,CAAC;AAC1D,OAAO,KAAK,EACV,UAAU,EAGV,YAAY,EAEb,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,KAAK,cAAc,EAAU,MAAM,YAAY,CAAC;AAGzD,OAAO,EAAyB,KAAK,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEhF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,QAAQ,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,iBAAiB,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,KAAK,EAAE,cAAc,CAAC;IACtB,sBAAsB,EAAE,kBAAkB,EAAE,CAAC;IAC7C,iBAAiB,EAAE,eAAe,CAAC;IACnC,cAAc,EAAE,MAAM,EAAE,CAAC;CAC1B,CAAC;AAMF,wBAAgB,cAAc,CAC5B,QAAQ,EAAE,IAAI,CAAC,YAAY,EAAE,WAAW,GAAG,MAAM,GAAG,OAAO,CAAC,GAC3D,MAAM,CAER;AAwKD,wBAAgB,WAAW,CACzB,KAAK,EAAE,cAAc,EACrB,MAAM,EAAE,UAAU,GAAG,SAAS,GAC7B,iBAAiB,CAiDnB"}
1
+ {"version":3,"file":"apply-design.d.ts","sourceRoot":"","sources":["../../src/apply-design.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,KAAK,EAAE,QAAQ,EAAiB,MAAM,YAAY,CAAC;AAC1D,OAAO,EACL,KAAK,UAAU,EAGf,KAAK,YAAY,EAGlB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,KAAK,cAAc,EAAU,MAAM,YAAY,CAAC;AAGzD,OAAO,EAAyB,KAAK,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEhF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,QAAQ,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,iBAAiB,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,KAAK,EAAE,cAAc,CAAC;IACtB,sBAAsB,EAAE,kBAAkB,EAAE,CAAC;IAC7C,iBAAiB,EAAE,eAAe,CAAC;IACnC,cAAc,EAAE,MAAM,EAAE,CAAC;CAC1B,CAAC;AAMF,wBAAgB,cAAc,CAC5B,QAAQ,EAAE,IAAI,CAAC,YAAY,EAAE,WAAW,GAAG,MAAM,GAAG,OAAO,CAAC,GAC3D,MAAM,CAER;AAiLD,wBAAgB,WAAW,CACzB,KAAK,EAAE,cAAc,EACrB,MAAM,EAAE,UAAU,GAAG,SAAS,GAC7B,iBAAiB,CAkDnB"}
@@ -1,3 +1,4 @@
1
+ import { joinedNote } from './design.js';
1
2
  import { nodeId } from './graph.js';
2
3
  import { buildHandlerScopeIndex, resolveHandlerScope } from './handler-scope.js';
3
4
  import { findStrandedProposals } from './reachability.js';
@@ -21,6 +22,7 @@ function applyProposedNode(proposed, byId) {
21
22
  ...(proposed.rule !== undefined ? { rule: proposed.rule } : {}),
22
23
  ...(proposed.errorCodes !== undefined ? { errorCodes: [...proposed.errorCodes] } : {}),
23
24
  ...(proposed.generic !== undefined ? { generic: proposed.generic } : {}),
25
+ ...(proposed.tags !== undefined && proposed.tags.length > 0 ? { tags: [...proposed.tags] } : {}),
24
26
  origin: proposed.author,
25
27
  status: 'proposed',
26
28
  ...(proposed.note !== undefined ? { note: proposed.note } : {})
@@ -78,8 +80,12 @@ function applyModifyEntry(entry, byId, skipped) {
78
80
  skipped.push(entry.id);
79
81
  return;
80
82
  }
81
- const { label, subdomain, resourceKey, queries, rule, errorCodes, generic } = entry.set ?? {};
82
- const modified = { ...current, status: 'modified', origin: entry.author };
83
+ const { label, subdomain, resourceKey, queries, rule, errorCodes, generic, tags } = entry.set ?? {};
84
+ // A modify of a node an earlier entry of this design already touched keeps that entry's note beside its own.
85
+ const touched = current.status === 'proposed' || current.status === 'modified';
86
+ // A node this design proposes stays new however often the design reshapes it.
87
+ const status = current.status === 'proposed' ? 'proposed' : 'modified';
88
+ const modified = { ...current, status, origin: entry.author };
83
89
  if (label !== undefined) {
84
90
  if (label !== current.label && modified.previousLabel === undefined) {
85
91
  modified.previousLabel = current.label;
@@ -98,8 +104,14 @@ function applyModifyEntry(entry, byId, skipped) {
98
104
  modified.errorCodes = [...errorCodes];
99
105
  if (generic !== undefined)
100
106
  modified.generic = generic;
101
- if (entry.note !== undefined)
102
- modified.note = entry.note;
107
+ // BP-279: a modify sets the whole tag list, and [] clears it.
108
+ if (tags !== undefined && tags.length > 0)
109
+ modified.tags = [...tags];
110
+ else if (tags !== undefined)
111
+ delete modified.tags;
112
+ const note = touched ? joinedNote(current.note, entry.note) : entry.note ?? current.note;
113
+ if (note !== undefined)
114
+ modified.note = note;
103
115
  byId.set(entry.id, modified);
104
116
  }
105
117
  function applyRemoveEntry(entry, byId, edges, skipped) {
@@ -199,7 +211,8 @@ export function applyDesign(graph, design) {
199
211
  schemaVersion: graph.schemaVersion,
200
212
  subdomains: [...new Set(nodes.map(node => node.subdomain))].sort(),
201
213
  nodes,
202
- edges
214
+ edges,
215
+ ...(graph.typeWords !== undefined ? { typeWords: graph.typeWords } : {})
203
216
  };
204
217
  return {
205
218
  graph: mergedGraph,
@@ -1 +1 @@
1
- {"version":3,"file":"apply-design.js","sourceRoot":"","sources":["../../src/apply-design.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"apply-design.js","sourceRoot":"","sources":["../../src/apply-design.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"apply-overrides.d.ts","sourceRoot":"","sources":["../../src/apply-overrides.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,WAAW,EAIjB,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EAAE,KAAK,cAAc,EAAsB,MAAM,YAAY,CAAC;AAGrE,OAAO,KAAK,EACV,kBAAkB,EAElB,UAAU,EAGX,MAAM,gBAAgB,CAAC;AAGxB,MAAM,MAAM,oBAAoB,GAAG;IACjC,KAAK,EAAE,cAAc,CAAC;IACtB,WAAW,EAAE,WAAW,CAAC;CAC1B,CAAC;AAMF,wBAAgB,YAAY,CAAE,MAAM,EAAE,UAAU,GAAI,MAAM,CAEzD;AA4ND,wBAAgB,cAAc,CAC5B,KAAK,EAAE,cAAc,EACrB,WAAW,EAAE,WAAW,EACxB,SAAS,EAAE,kBAAkB,GAAG,SAAS,GACxC,oBAAoB,CAmDtB;AAED,wBAAgB,cAAc,CAC5B,SAAS,EAAE,cAAc,GAAG,SAAS,EACrC,SAAS,EAAE,kBAAkB,GAAG,SAAS,GACxC,cAAc,CAEhB"}
1
+ {"version":3,"file":"apply-overrides.d.ts","sourceRoot":"","sources":["../../src/apply-overrides.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,WAAW,EAIjB,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EAAE,KAAK,cAAc,EAAsB,MAAM,YAAY,CAAC;AAGrE,OAAO,KAAK,EACV,kBAAkB,EAElB,UAAU,EAGX,MAAM,gBAAgB,CAAC;AAIxB,MAAM,MAAM,oBAAoB,GAAG;IACjC,KAAK,EAAE,cAAc,CAAC;IACtB,WAAW,EAAE,WAAW,CAAC;CAC1B,CAAC;AAMF,wBAAgB,YAAY,CAAE,MAAM,EAAE,UAAU,GAAI,MAAM,CAEzD;AA2OD,wBAAgB,cAAc,CAC5B,KAAK,EAAE,cAAc,EACrB,WAAW,EAAE,WAAW,EACxB,SAAS,EAAE,kBAAkB,GAAG,SAAS,GACxC,oBAAoB,CAoDtB;AAED,wBAAgB,cAAc,CAC5B,SAAS,EAAE,cAAc,GAAG,SAAS,EACrC,SAAS,EAAE,kBAAkB,GAAG,SAAS,GACxC,cAAc,CAEhB"}
@@ -2,6 +2,7 @@ import { emptyDiagnostics } from './diagnostics.js';
2
2
  import { findOrphanNodes } from './find-orphan-nodes.js';
3
3
  import { emptyGraph, nodeId } from './graph.js';
4
4
  import { buildHandlerScopeIndex, resolveHandlerScope } from './handler-scope.js';
5
+ import { PREDEFINED_TAGS, normaliseTagName, normaliseTags } from './tags.js';
5
6
  import { isAllowedEdge } from './topology.js';
6
7
  function edgeKey(edge) {
7
8
  return `${edge.from}|${edge.to}|${edge.kind}`;
@@ -20,10 +21,15 @@ function applyManualNode(manual, byId) {
20
21
  ...(manual.rule !== undefined ? { rule: manual.rule } : {}),
21
22
  ...(manual.errorCodes !== undefined ? { errorCodes: [...manual.errorCodes] } : {}),
22
23
  ...(manual.generic !== undefined ? { generic: manual.generic } : {}),
24
+ ...(manual.tags !== undefined && manual.tags.length > 0 ? { tags: normaliseTags(manual.tags) } : {}),
23
25
  origin: manual.author ?? 'human',
24
26
  ...(manual.note !== undefined ? { note: manual.note } : {})
25
27
  });
26
28
  }
29
+ // BP-279 D13: a predefined tag with `source: 'code'` (keyed) is the code's to declare, never the overrides layer's.
30
+ function isCodeTag(name) {
31
+ return PREDEFINED_TAGS.some(tag => tag.source === 'code' && tag.name === normaliseTagName(name));
32
+ }
27
33
  function applyNodePatch(patch, byId, stale) {
28
34
  const node = byId.get(patch.id);
29
35
  if (!node) {
@@ -35,7 +41,18 @@ function applyNodePatch(patch, byId, stale) {
35
41
  });
36
42
  return;
37
43
  }
38
- Object.assign(node, patch.set);
44
+ const { tags, ...fields } = patch.set;
45
+ Object.assign(node, fields);
46
+ if (tags !== undefined) {
47
+ // A patch's tags replace the owner's tags only: the extracted node keeps what its code declares, and a code tag
48
+ // in the patch is ignored, so overrides can neither assert nor erase keyed. The merged list is stored
49
+ // normalised (BP-279 D2, E2), whatever shape the layer arrived in.
50
+ const merged = normaliseTags([...tags.filter(name => !isCodeTag(name)), ...(node.tags ?? []).filter(isCodeTag)]);
51
+ if (merged.length > 0)
52
+ node.tags = merged;
53
+ else
54
+ delete node.tags;
55
+ }
39
56
  if (patch.note !== undefined)
40
57
  node.note = patch.note;
41
58
  }
@@ -227,7 +244,8 @@ export function applyOverrides(graph, diagnostics, overrides) {
227
244
  schemaVersion: graph.schemaVersion,
228
245
  subdomains: [...new Set(nodes.map(node => node.subdomain))].sort(),
229
246
  nodes,
230
- edges
247
+ edges,
248
+ ...(graph.typeWords !== undefined ? { typeWords: graph.typeWords } : {})
231
249
  },
232
250
  diagnostics: merged
233
251
  };
@@ -1 +1 @@
1
- {"version":3,"file":"apply-overrides.js","sourceRoot":"","sources":["../../src/apply-overrides.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"apply-overrides.js","sourceRoot":"","sources":["../../src/apply-overrides.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import type { MapEntryId, MapFile } from './map-structure.js';
2
+ /** Card id → the open forks it waits on, in map order; a card that waits on none is absent. */
3
+ export declare function cardsWaitingOnForks(map: Pick<MapFile, 'nodes' | 'forks'>): ReadonlyMap<MapEntryId, MapEntryId[]>;
4
+ //# sourceMappingURL=card-holds.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"card-holds.d.ts","sourceRoot":"","sources":["../../src/card-holds.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAS9D,+FAA+F;AAC/F,wBAAgB,mBAAmB,CAAE,GAAG,EAAE,IAAI,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,GAAI,WAAW,CAAC,UAAU,EAAE,UAAU,EAAE,CAAC,CAmClH"}
@@ -0,0 +1,48 @@
1
+ // BP-232 (D1, F1): which cards wait on an open fork, read on demand and never persisted; the board
2
+ // reads it through mapReviewView. An open fork O holds its anchor, every id in O.affects, every
3
+ // fork whose restsOn names O and every fork anchored on a card O holds; a card O holds holds the nodes
4
+ // beneath it by parents, and a fork O holds holds what it would hold itself (its anchor, its affects and
5
+ // the forks resting on it). The walk keeps a visited set, so a restsOn/affects cycle terminates. A fork
6
+ // never waits on itself: its own card is where the owner answers it.
7
+ /** Card id → the open forks it waits on, in map order; a card that waits on none is absent. */
8
+ export function cardsWaitingOnForks(map) {
9
+ const forks = new Map(map.forks.map(fork => [fork.id, fork]));
10
+ const children = new Map();
11
+ for (const node of map.nodes)
12
+ for (const parent of node.parents)
13
+ children.set(parent, [...(children.get(parent) ?? []), node.id]);
14
+ const anchoredOn = new Map();
15
+ const restingOn = new Map();
16
+ for (const fork of map.forks) {
17
+ if (fork.anchor !== undefined)
18
+ anchoredOn.set(fork.anchor, [...(anchoredOn.get(fork.anchor) ?? []), fork.id]);
19
+ for (const base of fork.restsOn)
20
+ restingOn.set(base, [...(restingOn.get(base) ?? []), fork.id]);
21
+ }
22
+ // What a card holds once held: the nodes beneath it, the forks anchored on it and, for a fork, its own sources.
23
+ const reach = (id) => {
24
+ const fork = forks.get(id);
25
+ return [
26
+ ...(children.get(id) ?? []),
27
+ ...(anchoredOn.get(id) ?? []),
28
+ ...(fork === undefined ? [] : [...(fork.anchor === undefined ? [] : [fork.anchor]), ...(fork.affects ?? []), ...(restingOn.get(id) ?? [])])
29
+ ];
30
+ };
31
+ const waiting = new Map();
32
+ for (const open of map.forks) {
33
+ if (open.status.kind !== 'open')
34
+ continue;
35
+ const seen = new Set([open.id]);
36
+ const queue = reach(open.id);
37
+ for (let next = 0; next < queue.length; next++) {
38
+ const id = queue[next];
39
+ if (seen.has(id))
40
+ continue;
41
+ seen.add(id);
42
+ waiting.set(id, [...(waiting.get(id) ?? []), open.id]);
43
+ queue.push(...reach(id));
44
+ }
45
+ }
46
+ return waiting;
47
+ }
48
+ //# sourceMappingURL=card-holds.js.map