@plurnk/plurnk-service 1.26.0 → 1.27.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 (227) hide show
  1. package/.env.defaults +3 -6
  2. package/SPEC.md +260 -126
  3. package/dist/build-info.json +1 -1
  4. package/dist/content/body-preview.d.ts +1 -0
  5. package/dist/content/body-preview.d.ts.map +1 -1
  6. package/dist/content/body-preview.js +7 -0
  7. package/dist/content/body-preview.js.map +1 -1
  8. package/dist/content/byte-view.d.ts +19 -2
  9. package/dist/content/byte-view.d.ts.map +1 -1
  10. package/dist/content/byte-view.js +67 -14
  11. package/dist/content/byte-view.js.map +1 -1
  12. package/dist/content/edit-receipt.js +1 -1
  13. package/dist/content/edit-receipt.js.map +1 -1
  14. package/dist/content/line-marker.js +1 -1
  15. package/dist/content/line-marker.js.map +1 -1
  16. package/dist/content/line-selection.d.ts +3 -1
  17. package/dist/content/line-selection.d.ts.map +1 -1
  18. package/dist/content/line-selection.js +27 -3
  19. package/dist/content/line-selection.js.map +1 -1
  20. package/dist/content/matcher.d.ts +9 -14
  21. package/dist/content/matcher.d.ts.map +1 -1
  22. package/dist/content/matcher.js +51 -45
  23. package/dist/content/matcher.js.map +1 -1
  24. package/dist/content/pattern-edits.d.ts +7 -26
  25. package/dist/content/pattern-edits.d.ts.map +1 -1
  26. package/dist/content/pattern-edits.js +54 -91
  27. package/dist/content/pattern-edits.js.map +1 -1
  28. package/dist/content/read-projector.d.ts +2 -1
  29. package/dist/content/read-projector.d.ts.map +1 -1
  30. package/dist/content/read-projector.js +39 -7
  31. package/dist/content/read-projector.js.map +1 -1
  32. package/dist/content/read-resolve.js +1 -1
  33. package/dist/core/AdmittedTurnExecutor.d.ts.map +1 -1
  34. package/dist/core/AdmittedTurnExecutor.js +3 -3
  35. package/dist/core/AdmittedTurnExecutor.js.map +1 -1
  36. package/dist/core/ChannelWrite.d.ts +2 -3
  37. package/dist/core/ChannelWrite.d.ts.map +1 -1
  38. package/dist/core/ChannelWrite.js +21 -22
  39. package/dist/core/ChannelWrite.js.map +1 -1
  40. package/dist/core/ChannelWrite.sql +26 -0
  41. package/dist/core/DataStatementRunner.d.ts.map +1 -1
  42. package/dist/core/DataStatementRunner.js +1 -0
  43. package/dist/core/DataStatementRunner.js.map +1 -1
  44. package/dist/core/Dispatcher.d.ts +2 -2
  45. package/dist/core/Dispatcher.d.ts.map +1 -1
  46. package/dist/core/Dispatcher.js +6 -13
  47. package/dist/core/Dispatcher.js.map +1 -1
  48. package/dist/core/EditMutations.d.ts +5 -5
  49. package/dist/core/EditMutations.d.ts.map +1 -1
  50. package/dist/core/EditMutations.js +44 -50
  51. package/dist/core/EditMutations.js.map +1 -1
  52. package/dist/core/EditSequence.js +2 -2
  53. package/dist/core/EditSequence.js.map +1 -1
  54. package/dist/core/Engine.d.ts +1 -0
  55. package/dist/core/Engine.d.ts.map +1 -1
  56. package/dist/core/Engine.js +3 -0
  57. package/dist/core/Engine.js.map +1 -1
  58. package/dist/core/InferenceCall.js +2 -2
  59. package/dist/core/InferenceCall.js.map +1 -1
  60. package/dist/core/InferenceCall.sql +1 -0
  61. package/dist/core/LiveSubscription.d.ts +20 -0
  62. package/dist/core/LiveSubscription.d.ts.map +1 -0
  63. package/dist/core/LiveSubscription.js +68 -0
  64. package/dist/core/LiveSubscription.js.map +1 -0
  65. package/dist/core/LiveSubscriptions.d.ts +1 -0
  66. package/dist/core/LiveSubscriptions.d.ts.map +1 -1
  67. package/dist/core/LiveSubscriptions.js +8 -0
  68. package/dist/core/LiveSubscriptions.js.map +1 -1
  69. package/dist/core/LogBody.js +1 -1
  70. package/dist/core/LogBody.js.map +1 -1
  71. package/dist/core/LoopDriver.js +2 -1
  72. package/dist/core/LoopDriver.js.map +1 -1
  73. package/dist/core/LoopLifecycle.d.ts +2 -2
  74. package/dist/core/LoopLifecycle.d.ts.map +1 -1
  75. package/dist/core/LoopLifecycle.js +2 -4
  76. package/dist/core/LoopLifecycle.js.map +1 -1
  77. package/dist/core/LoopLifecycle.sql +1 -6
  78. package/dist/core/MutationEffects.d.ts +1 -3
  79. package/dist/core/MutationEffects.d.ts.map +1 -1
  80. package/dist/core/MutationEffects.js +2 -1
  81. package/dist/core/MutationEffects.js.map +1 -1
  82. package/dist/core/PacketBuilder.d.ts.map +1 -1
  83. package/dist/core/PacketBuilder.js +10 -3
  84. package/dist/core/PacketBuilder.js.map +1 -1
  85. package/dist/core/PacketBuilder.sql +4 -5
  86. package/dist/core/PatternSelection.d.ts +5 -10
  87. package/dist/core/PatternSelection.d.ts.map +1 -1
  88. package/dist/core/PatternSelection.js +9 -16
  89. package/dist/core/PatternSelection.js.map +1 -1
  90. package/dist/core/ResourceMutations.d.ts +2 -4
  91. package/dist/core/ResourceMutations.d.ts.map +1 -1
  92. package/dist/core/ResourceMutations.js +2 -5
  93. package/dist/core/ResourceMutations.js.map +1 -1
  94. package/dist/core/ResourceSelector.d.ts +2 -2
  95. package/dist/core/ResourceSelector.d.ts.map +1 -1
  96. package/dist/core/ResourceSelector.js +64 -33
  97. package/dist/core/ResourceSelector.js.map +1 -1
  98. package/dist/core/ResourceTransfers.d.ts +2 -4
  99. package/dist/core/ResourceTransfers.d.ts.map +1 -1
  100. package/dist/core/ResourceTransfers.js +74 -50
  101. package/dist/core/ResourceTransfers.js.map +1 -1
  102. package/dist/core/SchemeRegistry.d.ts +1 -0
  103. package/dist/core/SchemeRegistry.d.ts.map +1 -1
  104. package/dist/core/SchemeRegistry.js +11 -9
  105. package/dist/core/SchemeRegistry.js.map +1 -1
  106. package/dist/core/ServiceTeardown.d.ts +3 -2
  107. package/dist/core/ServiceTeardown.d.ts.map +1 -1
  108. package/dist/core/ServiceTeardown.js +17 -8
  109. package/dist/core/ServiceTeardown.js.map +1 -1
  110. package/dist/core/StopDeadline.d.ts +5 -0
  111. package/dist/core/StopDeadline.d.ts.map +1 -0
  112. package/dist/core/StopDeadline.js +20 -0
  113. package/dist/core/StopDeadline.js.map +1 -0
  114. package/dist/core/ToolResources.d.ts.map +1 -1
  115. package/dist/core/ToolResources.js +11 -2
  116. package/dist/core/ToolResources.js.map +1 -1
  117. package/dist/core/TurnDispositionHandler.d.ts +4 -2
  118. package/dist/core/TurnDispositionHandler.d.ts.map +1 -1
  119. package/dist/core/TurnDispositionHandler.js +24 -6
  120. package/dist/core/TurnDispositionHandler.js.map +1 -1
  121. package/dist/core/TurnRunner.d.ts.map +1 -1
  122. package/dist/core/TurnRunner.js +14 -21
  123. package/dist/core/TurnRunner.js.map +1 -1
  124. package/dist/core/caps/DbSubscriptionCaps.d.ts.map +1 -1
  125. package/dist/core/caps/DbSubscriptionCaps.js +13 -19
  126. package/dist/core/caps/DbSubscriptionCaps.js.map +1 -1
  127. package/dist/core/content-hash.d.ts +1 -1
  128. package/dist/core/content-hash.d.ts.map +1 -1
  129. package/dist/core/content-hash.js.map +1 -1
  130. package/dist/core/mutation-types.d.ts +6 -4
  131. package/dist/core/mutation-types.d.ts.map +1 -1
  132. package/dist/core/packet-wire.d.ts.map +1 -1
  133. package/dist/core/packet-wire.js +30 -1
  134. package/dist/core/packet-wire.js.map +1 -1
  135. package/dist/core/provider-accounting.d.ts +1 -1
  136. package/dist/core/provider-accounting.d.ts.map +1 -1
  137. package/dist/core/provider-accounting.js +2 -1
  138. package/dist/core/provider-accounting.js.map +1 -1
  139. package/dist/digest/DigestEvidence.d.ts +1 -0
  140. package/dist/digest/DigestEvidence.d.ts.map +1 -1
  141. package/dist/digest/DigestEvidence.js +6 -0
  142. package/dist/digest/DigestEvidence.js.map +1 -1
  143. package/dist/digest/DigestRender.d.ts +1 -0
  144. package/dist/digest/DigestRender.d.ts.map +1 -1
  145. package/dist/digest/DigestRender.js +33 -11
  146. package/dist/digest/DigestRender.js.map +1 -1
  147. package/dist/digest/DigestRequiem.js +4 -4
  148. package/dist/digest/DigestRequiem.js.map +1 -1
  149. package/dist/digest/digest-rows.d.ts +1 -0
  150. package/dist/digest/digest-rows.d.ts.map +1 -1
  151. package/dist/digest/digest.sql +5 -0
  152. package/dist/schemes/Exec.d.ts.map +1 -1
  153. package/dist/schemes/Exec.js +28 -27
  154. package/dist/schemes/Exec.js.map +1 -1
  155. package/dist/schemes/File.d.ts.map +1 -1
  156. package/dist/schemes/File.js +1 -2
  157. package/dist/schemes/File.js.map +1 -1
  158. package/dist/schemes/Log.d.ts.map +1 -1
  159. package/dist/schemes/Log.js +4 -17
  160. package/dist/schemes/Log.js.map +1 -1
  161. package/dist/schemes/TurnSource.js +2 -2
  162. package/dist/schemes/TurnSource.js.map +1 -1
  163. package/dist/schemes/_derivation-use.d.ts +7 -0
  164. package/dist/schemes/_derivation-use.d.ts.map +1 -0
  165. package/dist/schemes/_derivation-use.js +40 -0
  166. package/dist/schemes/_derivation-use.js.map +1 -0
  167. package/dist/schemes/_entry-crud.d.ts +6 -1
  168. package/dist/schemes/_entry-crud.d.ts.map +1 -1
  169. package/dist/schemes/_entry-crud.js.map +1 -1
  170. package/dist/schemes/_entry-find.d.ts.map +1 -1
  171. package/dist/schemes/_entry-find.js +13 -49
  172. package/dist/schemes/_entry-find.js.map +1 -1
  173. package/dist/schemes/_entry-find.sql +0 -11
  174. package/dist/schemes/_entry-fts.d.ts.map +1 -1
  175. package/dist/schemes/_entry-fts.js +9 -3
  176. package/dist/schemes/_entry-fts.js.map +1 -1
  177. package/dist/schemes/_entry-fts.sql +14 -8
  178. package/dist/schemes/_entry-graph.d.ts +5 -8
  179. package/dist/schemes/_entry-graph.d.ts.map +1 -1
  180. package/dist/schemes/_entry-graph.js +33 -72
  181. package/dist/schemes/_entry-graph.js.map +1 -1
  182. package/dist/schemes/_entry-graph.sql +30 -48
  183. package/dist/schemes/_entry-manifest.d.ts +5 -0
  184. package/dist/schemes/_entry-manifest.d.ts.map +1 -1
  185. package/dist/schemes/_entry-manifest.js +5 -0
  186. package/dist/schemes/_entry-manifest.js.map +1 -1
  187. package/dist/schemes/_entry-ops.d.ts +1 -1
  188. package/dist/schemes/_entry-ops.d.ts.map +1 -1
  189. package/dist/schemes/_entry-ops.js +4 -11
  190. package/dist/schemes/_entry-ops.js.map +1 -1
  191. package/dist/schemes/_search-index.d.ts +10 -0
  192. package/dist/schemes/_search-index.d.ts.map +1 -1
  193. package/dist/schemes/_search-index.js +33 -1
  194. package/dist/schemes/_search-index.js.map +1 -1
  195. package/dist/schemes/exec-lifetime.d.ts.map +1 -1
  196. package/dist/schemes/exec-lifetime.js +1 -2
  197. package/dist/schemes/exec-lifetime.js.map +1 -1
  198. package/dist/server/Daemon.d.ts +2 -1
  199. package/dist/server/Daemon.d.ts.map +1 -1
  200. package/dist/server/Daemon.js +20 -33
  201. package/dist/server/Daemon.js.map +1 -1
  202. package/dist/server/DrainSupervisor.d.ts +2 -1
  203. package/dist/server/DrainSupervisor.d.ts.map +1 -1
  204. package/dist/server/DrainSupervisor.js +37 -56
  205. package/dist/server/DrainSupervisor.js.map +1 -1
  206. package/dist/server/Functionality.d.ts +1 -1
  207. package/dist/server/Functionality.d.ts.map +1 -1
  208. package/dist/server/Functionality.js +24 -11
  209. package/dist/server/Functionality.js.map +1 -1
  210. package/dist/server/FunctionalityManager.js +2 -2
  211. package/dist/server/FunctionalityManager.js.map +1 -1
  212. package/dist/server/Retention.d.ts.map +1 -1
  213. package/dist/server/Retention.js +7 -3
  214. package/dist/server/Retention.js.map +1 -1
  215. package/dist/server/drain.sql +0 -6
  216. package/dist/server/seam-loop.sql +1 -1
  217. package/dist/service.js +1 -1
  218. package/dist/service.js.map +1 -1
  219. package/docs/env.md +4 -3
  220. package/migrations/013_graph_regions.sql +31 -0
  221. package/migrations/014_stream_timing.sql +3 -0
  222. package/migrations/015_request_evidence.sql +3 -0
  223. package/package.json +34 -34
  224. package/dist/server/exec-poll-backoff.d.ts +0 -2
  225. package/dist/server/exec-poll-backoff.d.ts.map +0 -1
  226. package/dist/server/exec-poll-backoff.js +0 -6
  227. package/dist/server/exec-poll-backoff.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"matcher.js","sourceRoot":"","sources":["../../src/content/matcher.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"matcher.js","sourceRoot":"","sources":["../../src/content/matcher.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { MatcherBody } from "@plurnk/plurnk-contracts";
1
+ import type { MatcherBody, TextRegion } from "@plurnk/plurnk-contracts";
2
2
  import type { MatchEvidence } from "@plurnk/plurnk-schemes";
3
3
  import type { DispatchResult } from "../core/mutation-types.ts";
4
4
  export type PatternEdit = {
@@ -7,37 +7,18 @@ export type PatternEdit = {
7
7
  };
8
8
  readonly body: string;
9
9
  };
10
- export type PatternSpan = {
11
- readonly line: number;
12
- readonly startColumn: number;
13
- readonly endLine: number;
14
- readonly endColumn: number;
15
- };
16
10
  export default class PatternEdits {
17
- static lineLimited(matcher: MatcherBody): MatcherBody;
18
- static findOnly(matcher: MatcherBody & {
19
- dialect: "fts" | "graph";
20
- }, operation: string, target: string): {
21
- detail: string;
22
- recovery: string;
23
- };
11
+ static lineAnchored(matcher: MatcherBody): MatcherBody;
24
12
  static lines(evidence: ReadonlyArray<MatchEvidence>, bounds: {
25
13
  from: number;
26
14
  to: number;
27
15
  } | null): number[];
28
- static spans(matcher: MatcherBody, content: string, evidence: ReadonlyArray<MatchEvidence>, bounds: {
29
- from: number;
30
- to: number;
31
- } | null): PatternSpan[] | {
32
- readonly error: string;
33
- };
34
- static replacements(spans: readonly PatternSpan[], body: string): PatternEdit[];
16
+ static visible(evidence: readonly MatchEvidence[], lines: readonly number[], window?: TextRegion): MatchEvidence[];
17
+ static spans(evidence: readonly MatchEvidence[], bounds: TextRegion | null): TextRegion[];
18
+ static replacements(spans: readonly TextRegion[], body: string): PatternEdit[];
19
+ static text(content: string, spans: readonly TextRegion[]): string;
35
20
  static touchedLines(edits: readonly PatternEdit[]): number[];
36
- static deletions(lines: readonly number[]): PatternEdit[];
37
- static bounds(marks: readonly number[] | undefined, lineCount: number): {
38
- from: number;
39
- to: number;
40
- } | null | {
21
+ static bounds(marks: readonly number[] | undefined, content: string): TextRegion | null | {
41
22
  readonly error: string;
42
23
  };
43
24
  static compactReceipt(result: DispatchResult, matched: number): DispatchResult;
@@ -1 +1 @@
1
- {"version":3,"file":"pattern-edits.d.ts","sourceRoot":"","sources":["../../src/content/pattern-edits.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAG5D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAOhE,MAAM,MAAM,WAAW,GAAG;IAAE,QAAQ,CAAC,MAAM,EAAE;QAAE,QAAQ,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;KAAE,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AAEtI,MAAM,MAAM,WAAW,GAAG;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC;AAExI,MAAM,CAAC,OAAO,OAAO,YAAY;IAG7B,MAAM,CAAC,WAAW,CAAC,OAAO,EAAE,WAAW,GAAG,WAAW,CAGpD;IAKD,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,WAAW,GAAG;QAAE,OAAO,EAAE,KAAK,GAAG,OAAO,CAAA;KAAE,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAU5I;IAGD,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,aAAa,CAAC,aAAa,CAAC,EAAE,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,GAAG,MAAM,EAAE,CAU1G;IAMD,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,aAAa,CAAC,aAAa,CAAC,EAAE,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,GAAG,WAAW,EAAE,GAAG;QAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAiCnL;IAED,MAAM,CAAC,YAAY,CAAC,KAAK,EAAE,SAAS,WAAW,EAAE,EAAE,IAAI,EAAE,MAAM,GAAG,WAAW,EAAE,CAE9E;IAGD,MAAM,CAAC,YAAY,CAAC,KAAK,EAAE,SAAS,WAAW,EAAE,GAAG,MAAM,EAAE,CAO3D;IAED,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,GAAG,WAAW,EAAE,CAExD;IAID,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,EAAE,SAAS,EAAE,MAAM,GAAG;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,GAAG;QAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAcvI;IAID,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,GAAG,cAAc,CAS7E;CACJ"}
1
+ {"version":3,"file":"pattern-edits.d.ts","sourceRoot":"","sources":["../../src/content/pattern-edits.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACxE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAG5D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAMhE,MAAM,MAAM,WAAW,GAAG;IAAE,QAAQ,CAAC,MAAM,EAAE;QAAE,QAAQ,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;KAAE,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AAEtI,MAAM,CAAC,OAAO,OAAO,YAAY;IAE7B,MAAM,CAAC,YAAY,CAAC,OAAO,EAAE,WAAW,GAAG,WAAW,CAGrD;IAGD,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,aAAa,CAAC,aAAa,CAAC,EAAE,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,GAAG,MAAM,EAAE,CAY1G;IAGD,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,SAAS,aAAa,EAAE,EAAE,KAAK,EAAE,SAAS,MAAM,EAAE,EAAE,MAAM,CAAC,EAAE,UAAU,GAAG,aAAa,EAAE,CAejH;IAGD,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,SAAS,aAAa,EAAE,EAAE,MAAM,EAAE,UAAU,GAAG,IAAI,GAAG,UAAU,EAAE,CASxF;IAED,MAAM,CAAC,YAAY,CAAC,KAAK,EAAE,SAAS,UAAU,EAAE,EAAE,IAAI,EAAE,MAAM,GAAG,WAAW,EAAE,CAE7E;IAED,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,UAAU,EAAE,GAAG,MAAM,CAMjE;IAGD,MAAM,CAAC,YAAY,CAAC,KAAK,EAAE,SAAS,WAAW,EAAE,GAAG,MAAM,EAAE,CAK3D;IAGD,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,EAAE,OAAO,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI,GAAG;QAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAQnH;IAID,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,GAAG,cAAc,CAS7E;CACJ"}
@@ -1,34 +1,22 @@
1
1
  import { TextCoordinates } from "@plurnk/plurnk-mimetypes";
2
2
  import { assertEditBatchReceipt, projectEditReceipt } from "./edit-receipt.js";
3
+ import LineMarkerOps from "./line-marker.js";
3
4
  export default class PatternEdits {
4
- // A pattern operation works line by line, so a regex anchors each line: `^` and `$` mean the
5
- // line's ends, as they do in a FIND over one line.
6
- static lineLimited(matcher) {
5
+ // {§read-pattern} Anchors refer to source lines; matches may still span lines.
6
+ static lineAnchored(matcher) {
7
7
  if (matcher.dialect !== "regex" || matcher.flags.includes("m"))
8
8
  return matcher;
9
9
  return { ...matcher, flags: `${matcher.flags}m` };
10
10
  }
11
- // {§pattern-dialect-find-only} — `~` and `&` locate across resources and only FIND takes them; the
12
- // refusal says so and gives both working forms: the FIND with the model's own matcher, and the
13
- // same operation with a text pattern for the words or symbol it named.
14
- static findOnly(matcher, operation, target) {
15
- const words = matcher.dialect === "graph"
16
- ? [matcher.raw.replace(/^&[<>]?/u, "").trim()]
17
- : matcher.raw.slice(1).trim().split(/\s+/u).filter((word) => word !== "");
18
- const text = `/${words.map((word) => word.replace(/[.*+?^${}()|[\]\\/]/gu, "\\$&")).join("|")}/`;
19
- const kind = matcher.dialect === "graph" ? "&graph" : "~full-text";
20
- return {
21
- detail: `\`${matcher.raw}\` is a ${kind} matcher, and only FIND takes one: it locates across resources, not lines within one.`,
22
- recovery: `Locate it with \`FIND (${target}) ${matcher.raw}\`, or select lines with a text pattern: \`${operation} (${target}) ${text}\`.`,
23
- };
24
- }
25
11
  // The whole lines a matcher's evidence touches, in source order, within an inclusive line bound.
26
12
  static lines(evidence, bounds) {
27
13
  const lines = new Set();
28
14
  for (const item of evidence) {
29
- if (item.region === undefined)
15
+ const region = item.region ?? item.enclosingRegion;
16
+ if (region === undefined)
30
17
  continue;
31
- for (let line = item.region.startLine; line <= item.region.endLine; line += 1) {
18
+ const last = region.endLine - (region.endLine > region.startLine && region.endColumn === 1 ? 1 : 0);
19
+ for (let line = region.startLine; line <= last; line += 1) {
32
20
  if (bounds !== null && (line < bounds.from || line > bounds.to))
33
21
  continue;
34
22
  lines.add(line);
@@ -36,86 +24,61 @@ export default class PatternEdits {
36
24
  }
37
25
  return [...lines].sort((a, b) => a - b);
38
26
  }
39
- // Column-exact spans for a replacement. A regex's evidence already carries its span, limited
40
- // to one line; a node dialect's evidence is the node's whole region, however many lines it
41
- // spans; a glob with no metacharacters is a literal whose occurrences on each matched line are
42
- // the spans; a glob with metacharacters selects whole lines, so its span is the whole line.
43
- static spans(matcher, content, evidence, bounds) {
44
- const spans = [];
45
- const within = (line) => bounds === null || (line >= bounds.from && line <= bounds.to);
46
- if (matcher.dialect === "regex" || matcher.dialect === "xpath" || matcher.dialect === "jsonpath") {
47
- for (const item of evidence) {
48
- const region = item.region;
49
- if (region === undefined)
50
- continue;
51
- if (matcher.dialect === "regex" && region.startLine !== region.endLine)
52
- return { error: "EDIT spans are line-limited; the pattern matched across a line break." };
53
- if (!within(region.startLine) || !within(region.endLine))
54
- continue;
55
- spans.push({ line: region.startLine, startColumn: region.startColumn, endLine: region.endLine, endColumn: region.endColumn });
56
- }
57
- }
58
- else if (matcher.dialect === "glob") {
59
- const literal = !/[*?[]/u.test(matcher.raw);
60
- const lines = TextCoordinates.logicalLines(content);
61
- for (const line of PatternEdits.lines(evidence, bounds)) {
62
- const text = lines[line - 1] === undefined ? "" : content.slice(lines[line - 1].start, lines[line - 1].contentEnd);
63
- const points = [...text];
64
- if (!literal) {
65
- spans.push({ line, startColumn: 1, endLine: line, endColumn: points.length + 1 });
66
- continue;
67
- }
68
- const needle = [...matcher.raw];
69
- for (let at = 0; at + needle.length <= points.length; at += 1) {
70
- if (needle.every((point, index) => points[at + index] === point)) {
71
- spans.push({ line, startColumn: at + 1, endLine: line, endColumn: at + needle.length + 1 });
72
- at += needle.length - 1;
73
- }
74
- }
75
- }
76
- }
77
- else {
78
- return { error: `EDIT replaces text spans; a ${matcher.dialect} pattern selects resources, not spans.` };
79
- }
80
- return spans.sort((a, b) => a.line - b.line || a.startColumn - b.startColumn);
27
+ // {§read-pattern-evidence} — presentation may clip a match, but cannot redefine it.
28
+ static visible(evidence, lines, window) {
29
+ const shown = new Set(lines);
30
+ const compare = (line, column, otherLine, otherColumn) => line - otherLine || column - otherColumn;
31
+ return evidence.filter((item) => {
32
+ const region = item.region ?? item.enclosingRegion;
33
+ if (region === undefined || !PatternEdits.lines([item], null).some((line) => shown.has(line)))
34
+ return false;
35
+ if (window === undefined)
36
+ return true;
37
+ const startsBeforeEnd = compare(region.startLine, region.startColumn, window.endLine, window.endColumn) < 0;
38
+ const endsAfterStart = compare(region.endLine, region.endColumn, window.startLine, window.startColumn) > 0;
39
+ const point = region.startLine === region.endLine && region.startColumn === region.endColumn;
40
+ return point
41
+ ? compare(region.startLine, region.startColumn, window.startLine, window.startColumn) >= 0
42
+ && compare(region.startLine, region.startColumn, window.endLine, window.endColumn) <= 0
43
+ : startsBeforeEnd && endsAfterStart;
44
+ });
45
+ }
46
+ // {§slice-semantics-compose-pattern} Selection consumes evidence; it never matches again.
47
+ static spans(evidence, bounds) {
48
+ const compare = (line, column, otherLine, otherColumn) => line - otherLine || column - otherColumn;
49
+ return evidence.flatMap(({ region }) => region === undefined ? [] : [region])
50
+ .filter((region) => bounds === null || (compare(region.startLine, region.startColumn, bounds.startLine, bounds.startColumn) >= 0
51
+ && compare(region.endLine, region.endColumn, bounds.endLine, bounds.endColumn) <= 0))
52
+ .toSorted((left, right) => compare(left.startLine, left.startColumn, right.startLine, right.startColumn)
53
+ || compare(left.endLine, left.endColumn, right.endLine, right.endColumn));
81
54
  }
82
55
  static replacements(spans, body) {
83
- return spans.map(({ line, startColumn, endLine, endColumn }) => ({ marker: { marks: [line, startColumn, endLine, endColumn] }, body }));
56
+ return spans.map(({ startLine, startColumn, endLine, endColumn }) => ({ marker: { marks: [startLine, startColumn, endLine, endColumn] }, body }));
57
+ }
58
+ static text(content, spans) {
59
+ const coordinates = new TextCoordinates(content);
60
+ return spans.map(({ startLine, startColumn, endLine, endColumn }) => content.slice(coordinates.offsetAtPosition(startLine, startColumn), coordinates.offsetAtPosition(endLine, endColumn))).join("");
84
61
  }
85
62
  // Every line an edit's marker covers: the one line of a line deletion, or a region's span.
86
63
  static touchedLines(edits) {
87
- const lines = new Set();
88
- for (const { marker } of edits) {
89
- const [start, , end] = marker.marks;
90
- for (let line = start; line <= (end ?? start); line += 1)
91
- lines.add(line);
92
- }
93
- return [...lines].sort((a, b) => a - b);
94
- }
95
- static deletions(lines) {
96
- return lines.map((line) => ({ marker: { marks: [line] }, body: "" }));
64
+ return PatternEdits.lines(edits.map(({ marker: { marks } }) => ({ region: {
65
+ startLine: marks[0], startColumn: marks[1] ?? 1,
66
+ endLine: marks[2] ?? marks[0], endColumn: marks[3] ?? 1,
67
+ } })), null);
97
68
  }
98
- // A numeric scope on a pattern operation bounds the lines it may touch. Sentinels that mean
99
- // prepend or append have no lines to match.
100
- static bounds(marks, lineCount) {
69
+ // {§slice-semantics-compose-pattern} Resolve scopes through the existing text algebra.
70
+ static bounds(marks, content) {
101
71
  if (marks === undefined || marks.length === 0)
102
72
  return null;
103
- const clamp = (mark) => mark === -1 ? lineCount : mark;
104
- if (marks.length === 1) {
105
- if (marks[0] <= 0)
106
- return { error: "A pattern needs a line to match; <0> and <-1> name a position, not a line." };
107
- return { from: marks[0], to: marks[0] };
108
- }
109
- if (marks.length === 2) {
110
- const from = marks[0];
111
- const to = clamp(marks[1]);
112
- if (from <= 0 || to < from)
113
- return { error: "A pattern needs an inclusive line range; <0> and <-1> name a position, not a line." };
114
- return { from, to };
115
- }
116
- if (marks.length === 4)
117
- return { from: marks[0], to: marks[2] };
118
- return { error: "A pattern scope is one line, an inclusive line range, or a four-coordinate region." };
73
+ if (marks.length === 1 && marks[0] <= 0)
74
+ return { error: "A pattern scope selects source text, not a prepend or append position." };
75
+ const selected = LineMarkerOps.textReplacement(content, { marks: [marks[0], ...marks.slice(1)] }, "");
76
+ if ("error" in selected)
77
+ return selected;
78
+ const region = TextCoordinates.regionFromOffsets(content, selected.start, selected.end);
79
+ if (region === null)
80
+ throw new Error("A resolved text scope has no source coordinates.");
81
+ return region;
119
82
  }
120
83
  // The landed batch as one operation result: `matched` spans, the first span's receipt, and
121
84
  // the last span's effect as `last` when there is more than one.
@@ -1 +1 @@
1
- {"version":3,"file":"pattern-edits.js","sourceRoot":"","sources":["../../src/content/pattern-edits.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAY/E,MAAM,CAAC,OAAO,OAAO,YAAY;IAC7B,6FAA6F;IAC7F,mDAAmD;IACnD,MAAM,CAAC,WAAW,CAAC,OAAoB;QACnC,IAAI,OAAO,CAAC,OAAO,KAAK,OAAO,IAAI,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC;YAAE,OAAO,OAAO,CAAC;QAC/E,OAAO,EAAE,GAAG,OAAO,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC,KAAK,GAAG,EAAE,CAAC;IACtD,CAAC;IAED,mGAAmG;IACnG,+FAA+F;IAC/F,uEAAuE;IACvE,MAAM,CAAC,QAAQ,CAAC,OAAmD,EAAE,SAAiB,EAAE,MAAc;QAClG,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,KAAK,OAAO;YACrC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;YAC9C,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,EAAE,CAAC,CAAC;QAC9E,MAAM,IAAI,GAAG,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,uBAAuB,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;QACjG,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,KAAK,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC;QACnE,OAAO;YACH,MAAM,EAAE,KAAK,OAAO,CAAC,GAAG,WAAW,IAAI,uFAAuF;YAC9H,QAAQ,EAAE,0BAA0B,MAAM,KAAK,OAAO,CAAC,GAAG,8CAA8C,SAAS,KAAK,MAAM,KAAK,IAAI,KAAK;SAC7I,CAAC;IACN,CAAC;IAED,iGAAiG;IACjG,MAAM,CAAC,KAAK,CAAC,QAAsC,EAAE,MAA2C;QAC5F,MAAM,KAAK,GAAG,IAAI,GAAG,EAAU,CAAC;QAChC,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;YAC1B,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS;gBAAE,SAAS;YACxC,KAAK,IAAI,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,IAAI,CAAC,EAAE,CAAC;gBAC5E,IAAI,MAAM,KAAK,IAAI,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,IAAI,IAAI,GAAG,MAAM,CAAC,EAAE,CAAC;oBAAE,SAAS;gBAC1E,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACpB,CAAC;QACL,CAAC;QACD,OAAO,CAAC,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAC5C,CAAC;IAED,6FAA6F;IAC7F,2FAA2F;IAC3F,+FAA+F;IAC/F,4FAA4F;IAC5F,MAAM,CAAC,KAAK,CAAC,OAAoB,EAAE,OAAe,EAAE,QAAsC,EAAE,MAA2C;QACnI,MAAM,KAAK,GAAkB,EAAE,CAAC;QAChC,MAAM,MAAM,GAAG,CAAC,IAAY,EAAW,EAAE,CAAC,MAAM,KAAK,IAAI,IAAI,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI,IAAI,IAAI,IAAI,MAAM,CAAC,EAAE,CAAC,CAAC;QACxG,IAAI,OAAO,CAAC,OAAO,KAAK,OAAO,IAAI,OAAO,CAAC,OAAO,KAAK,OAAO,IAAI,OAAO,CAAC,OAAO,KAAK,UAAU,EAAE,CAAC;YAC/F,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;gBAC1B,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;gBAC3B,IAAI,MAAM,KAAK,SAAS;oBAAE,SAAS;gBACnC,IAAI,OAAO,CAAC,OAAO,KAAK,OAAO,IAAI,MAAM,CAAC,SAAS,KAAK,MAAM,CAAC,OAAO;oBAAE,OAAO,EAAE,KAAK,EAAE,uEAAuE,EAAE,CAAC;gBAClK,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC;oBAAE,SAAS;gBACnE,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,SAAS,EAAE,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC;YAClI,CAAC;QACL,CAAC;aAAM,IAAI,OAAO,CAAC,OAAO,KAAK,MAAM,EAAE,CAAC;YACpC,MAAM,OAAO,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YAC5C,MAAM,KAAK,GAAG,eAAe,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;YACpD,KAAK,MAAM,IAAI,IAAI,YAAY,CAAC,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC,EAAE,CAAC;gBACtD,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,CAAE,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,GAAG,CAAC,CAAE,CAAC,UAAU,CAAC,CAAC;gBACrH,MAAM,MAAM,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;gBACzB,IAAI,CAAC,OAAO,EAAE,CAAC;oBACX,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,CAAC;oBAClF,SAAS;gBACb,CAAC;gBACD,MAAM,MAAM,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;gBAChC,KAAK,IAAI,EAAE,GAAG,CAAC,EAAE,EAAE,GAAG,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,EAAE,IAAI,CAAC,EAAE,CAAC;oBAC5D,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,GAAG,KAAK,CAAC,KAAK,KAAK,CAAC,EAAE,CAAC;wBAC/D,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,GAAG,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,CAAC;wBAC5F,EAAE,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;oBAC5B,CAAC;gBACL,CAAC;YACL,CAAC;QACL,CAAC;aAAM,CAAC;YACJ,OAAO,EAAE,KAAK,EAAE,+BAA+B,OAAO,CAAC,OAAO,wCAAwC,EAAE,CAAC;QAC7G,CAAC;QACD,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,WAAW,GAAG,CAAC,CAAC,WAAW,CAAC,CAAC;IAClF,CAAC;IAED,MAAM,CAAC,YAAY,CAAC,KAA6B,EAAE,IAAY;QAC3D,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,SAAS,CAAqC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IAChL,CAAC;IAED,2FAA2F;IAC3F,MAAM,CAAC,YAAY,CAAC,KAA6B;QAC7C,MAAM,KAAK,GAAG,IAAI,GAAG,EAAU,CAAC;QAChC,KAAK,MAAM,EAAE,MAAM,EAAE,IAAI,KAAK,EAAE,CAAC;YAC7B,MAAM,CAAC,KAAK,EAAE,AAAD,EAAG,GAAG,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC;YACpC,KAAK,IAAI,IAAI,GAAG,KAAK,EAAE,IAAI,IAAI,CAAC,GAAG,IAAI,KAAK,CAAC,EAAE,IAAI,IAAI,CAAC;gBAAE,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC9E,CAAC;QACD,OAAO,CAAC,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAC5C,CAAC;IAED,MAAM,CAAC,SAAS,CAAC,KAAwB;QACrC,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,IAAI,CAAa,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;IACtF,CAAC;IAED,4FAA4F;IAC5F,4CAA4C;IAC5C,MAAM,CAAC,MAAM,CAAC,KAAoC,EAAE,SAAiB;QACjE,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;QAC3D,MAAM,KAAK,GAAG,CAAC,IAAY,EAAU,EAAE,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC;QACvE,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACrB,IAAI,KAAK,CAAC,CAAC,CAAE,IAAI,CAAC;gBAAE,OAAO,EAAE,KAAK,EAAE,4EAA4E,EAAE,CAAC;YACnH,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,CAAE,EAAE,EAAE,EAAE,KAAK,CAAC,CAAC,CAAE,EAAE,CAAC;QAC9C,CAAC;QACD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACrB,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAE,CAAC;YAAC,MAAM,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAE,CAAC,CAAC;YACpD,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,GAAG,IAAI;gBAAE,OAAO,EAAE,KAAK,EAAE,oFAAoF,EAAE,CAAC;YACnI,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;QACxB,CAAC;QACD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,CAAE,EAAE,EAAE,EAAE,KAAK,CAAC,CAAC,CAAE,EAAE,CAAC;QAClE,OAAO,EAAE,KAAK,EAAE,oFAAoF,EAAE,CAAC;IAC3G,CAAC;IAED,2FAA2F;IAC3F,gEAAgE;IAChE,MAAM,CAAC,cAAc,CAAC,MAAsB,EAAE,OAAe;QACzD,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,MAAM,EAAE,GAAG,MAAkE,CAAC;QAC1I,IAAI,WAAW,KAAK,SAAS,IAAI,WAAW,KAAK,IAAI;YAAE,OAAO,EAAE,GAAG,MAAM,EAAE,OAAO,EAAE,CAAC;QACrF,MAAM,OAAO,GAAG,sBAAsB,CAAC,WAAW,CAAC,CAAC;QACpD,MAAM,KAAK,GAAG,aAAa,IAAI,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC;QAC5F,IAAI,KAAK,KAAK,CAAC;YAAE,OAAO,EAAE,GAAG,MAAM,EAAE,OAAO,EAAE,CAAC;QAC/C,MAAM,KAAK,GAAG,kBAAkB,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QAC7C,MAAM,IAAI,GAAG,KAAK,GAAG,CAAC,IAAI,CAAC,CAAC,aAAa,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC/F,OAAO,EAAE,GAAG,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;IAC3F,CAAC;CACJ"}
1
+ {"version":3,"file":"pattern-edits.js","sourceRoot":"","sources":["../../src/content/pattern-edits.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import type { ReadStatement } from "@plurnk/plurnk-contracts";
2
2
  import { type Mimetypes } from "@plurnk/plurnk-mimetypes";
3
3
  import type { EntryReadResult, StoredEntryData } from "@plurnk/plurnk-schemes";
4
- import type { SchemeManifest } from "../core/scheme-types.ts";
4
+ import type { SchemeManifest, PlurnkSchemeContext } from "../core/scheme-types.ts";
5
5
  import { type ByteSource } from "./byte-view.ts";
6
6
  export interface AnchoredReadResult extends EntryReadResult {
7
7
  readonly sourceMimetype?: string;
@@ -19,6 +19,7 @@ interface ReadProjectionOptions {
19
19
  readonly identity: string;
20
20
  readonly representation: StoredEntryData;
21
21
  readonly mimetypes: Mimetypes | undefined;
22
+ readonly context?: PlurnkSchemeContext;
22
23
  readonly bytes?: ByteSource;
23
24
  readonly visibleLines?: Readonly<Record<string, readonly number[]>>;
24
25
  readonly retainNative?: (bytes: Uint8Array) => Promise<string>;
@@ -1 +1 @@
1
- {"version":3,"file":"read-projector.d.ts","sourceRoot":"","sources":["../../src/content/read-projector.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAc,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC1E,OAAO,EAA+C,KAAK,SAAS,EAAE,MAAM,0BAA0B,CAAC;AACvG,OAAO,KAAK,EACR,eAAe,EACf,eAAe,EAClB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAK9D,OAAiB,EAAE,KAAK,UAAU,EAAE,MAAM,gBAAgB,CAAC;AA0C3D,MAAM,WAAW,kBAAmB,SAAQ,eAAe;IAGvD,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,YAAY,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC1C,QAAQ,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IACrC,QAAQ,CAAC,WAAW,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACzC,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC;CACvC;AAED,UAAU,qBAAqB;IAC3B,QAAQ,CAAC,SAAS,EAAE,aAAa,CAAC;IAClC,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC;IAClC,QAAQ,CAAC,oBAAoB,EAAE,OAAO,CAAC;IACvC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,cAAc,EAAE,eAAe,CAAC;IACzC,QAAQ,CAAC,SAAS,EAAE,SAAS,GAAG,SAAS,CAAC;IAC1C,QAAQ,CAAC,KAAK,CAAC,EAAE,UAAU,CAAC;IAC5B,QAAQ,CAAC,YAAY,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,CAAC,CAAC;IACpE,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IAG/D,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;CAC7C;AAMD,MAAM,CAAC,OAAO,OAAO,aAAa;;IA0E9B,OAAa,OAAO,CAAC,IAAI,EAAE,qBAAqB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CA2C7E;CAoSJ"}
1
+ {"version":3,"file":"read-projector.d.ts","sourceRoot":"","sources":["../../src/content/read-projector.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAc,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC1E,OAAO,EAA+C,KAAK,SAAS,EAAE,MAAM,0BAA0B,CAAC;AACvG,OAAO,KAAK,EACR,eAAe,EAEf,eAAe,EAClB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,KAAK,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAKnF,OAAiB,EAAE,KAAK,UAAU,EAAE,MAAM,gBAAgB,CAAC;AA0C3D,MAAM,WAAW,kBAAmB,SAAQ,eAAe;IAGvD,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,YAAY,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC1C,QAAQ,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IACrC,QAAQ,CAAC,WAAW,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACzC,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC;CACvC;AAED,UAAU,qBAAqB;IAC3B,QAAQ,CAAC,SAAS,EAAE,aAAa,CAAC;IAClC,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC;IAClC,QAAQ,CAAC,oBAAoB,EAAE,OAAO,CAAC;IACvC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,cAAc,EAAE,eAAe,CAAC;IACzC,QAAQ,CAAC,SAAS,EAAE,SAAS,GAAG,SAAS,CAAC;IAC1C,QAAQ,CAAC,OAAO,CAAC,EAAE,mBAAmB,CAAC;IACvC,QAAQ,CAAC,KAAK,CAAC,EAAE,UAAU,CAAC;IAC5B,QAAQ,CAAC,YAAY,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,CAAC,CAAC;IACpE,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IAG/D,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;CAC7C;AAMD,MAAM,CAAC,OAAO,OAAO,aAAa;;IAgG9B,OAAa,OAAO,CAAC,IAAI,EAAE,qBAAqB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CA2C7E;CA2SJ"}
@@ -84,6 +84,31 @@ export default class ReadProjector {
84
84
  const total = await source.size();
85
85
  if (total === null)
86
86
  return failure("entry-not-found", 404, `No bytes exist at ${target}.`);
87
+ if (statement.matcher !== null) {
88
+ if (statement.lineMarker !== null) {
89
+ const bounds = LineMarkerOps.window(statement.lineMarker, total, "byte");
90
+ if (bounds.status !== 200)
91
+ return { ...bounds, content: null, mimetype: sourceMimetype, channel };
92
+ }
93
+ const loaded = await ByteView.load(source, target);
94
+ if (!("bytes" in loaded))
95
+ return { ...loaded, content: null, mimetype: sourceMimetype, channel };
96
+ const match = await ByteView.match(statement.matcher, loaded.bytes);
97
+ if (match.status >= 400)
98
+ return { status: match.status, problem: match.problem, content: null, mimetype: sourceMimetype, channel };
99
+ const matches = match.matches ?? [];
100
+ const visibleLines = PatternEdits.lines(matches, { from: 1, to: total });
101
+ const projected = await ReadResolve.resolve({
102
+ content: ByteView.hexLines(loaded.bytes), mimetype: "text/plain",
103
+ lineMarker: statement.lineMarker, visibleLines,
104
+ });
105
+ return {
106
+ ...projected, mimetype: sourceMimetype, channel, projection: ByteView.PROJECTION,
107
+ ...(projected.range === undefined ? {} : { range: { ...projected.range, unit: "byte" } }),
108
+ matched: statement.lineMarker === null ? visibleLines.length : (projected.lineOrdinals?.length ?? 0),
109
+ matches: PatternEdits.visible(matches, projected.lineOrdinals ?? []),
110
+ };
111
+ }
87
112
  const marker = statement.lineMarker ?? BodyPreview.firstPage();
88
113
  const window = LineMarkerOps.window(marker, total, "byte");
89
114
  if (window.status !== 200) {
@@ -257,14 +282,16 @@ export default class ReadProjector {
257
282
  // touches, in source order, inside the scope, with its ordinary anchors. Zero matches is
258
283
  // an empty read, never a failure; `matched` counts the selected lines inside the scope.
259
284
  let visibleLines = opts.visibleLines?.[selected];
285
+ let matches;
260
286
  if (statement.matcher !== null) {
261
- if (statement.matcher.dialect === "fts" || statement.matcher.dialect === "graph") {
262
- const { detail, recovery } = PatternEdits.findOnly({ ...statement.matcher, dialect: statement.matcher.dialect }, "READ", target);
263
- return failure("pattern-dialect-unsupported", 400, detail, {}, { target, recovery, retryable: false });
264
- }
265
287
  if (mimetypes === undefined)
266
288
  throw new Error("ReadProjector: a READ pattern requires the mimetypes capability");
267
- const match = await Matcher.matchAgainstContent(PatternEdits.lineLimited(statement.matcher), selectedRepresentation.content, selectedRepresentation.mimetype, mimetypes);
289
+ const match = opts.context === undefined || statement.target === null
290
+ ? await Matcher.matchAgainstContent(PatternEdits.lineAnchored(statement.matcher), selectedRepresentation.content, selectedRepresentation.mimetype, mimetypes)
291
+ : await Matcher.matchResource(statement.matcher, {
292
+ content: selectedRepresentation.content, mimetype: selectedRepresentation.mimetype,
293
+ target: statement.target, ...(visibleLines === undefined ? {} : { visibleLines }),
294
+ }, opts.context);
268
295
  if (match.status >= 400 || match.status === 203) {
269
296
  return Results.assertReadResult({
270
297
  ...(match.problem === undefined
@@ -275,7 +302,11 @@ export default class ReadProjector {
275
302
  channel,
276
303
  });
277
304
  }
278
- const ordered = PatternEdits.lines(match.matches ?? [], null);
305
+ matches = match.matches ?? [];
306
+ if (matches.some(({ region, enclosingRegion }) => region === undefined && enclosingRegion === undefined)) {
307
+ return failure("pattern-source-unlocated", 422, "The pattern selected a value without source coordinates.");
308
+ }
309
+ const ordered = PatternEdits.lines(matches, null);
279
310
  visibleLines = visibleLines === undefined ? ordered : ordered.filter((line) => visibleLines.includes(line));
280
311
  }
281
312
  let resolved = await ReadResolve.resolve({
@@ -343,9 +374,10 @@ export default class ReadProjector {
343
374
  channel,
344
375
  ...(resolved.mimetype === selectedRepresentation.mimetype ? {} : { sourceMimetype: selectedRepresentation.mimetype }),
345
376
  ...(matched === undefined ? {} : { matched }),
377
+ ...(matches === undefined ? {} : { matches: PatternEdits.visible(matches, resolved.lineOrdinals ?? [], resolved.region) }),
346
378
  });
347
379
  const result = ReadProjector.#producerResult(projected, selectedRepresentation, channel !== null && manifest.channels[channel] === "text/stream");
348
- if (result.status !== 200
380
+ if ((result.status !== 200 && result.status !== 204)
349
381
  || typeof result.content !== "string") {
350
382
  return result;
351
383
  }
@@ -1 +1 @@
1
- {"version":3,"file":"read-projector.js","sourceRoot":"","sources":["../../src/content/read-projector.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"read-projector.js","sourceRoot":"","sources":["../../src/content/read-projector.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  // Shared exact-target READ projection for entry-bearing schemes, File, and Log.
2
- // READ owns text coordinates only; FIND owns every aggregate or matcher selection.
2
+ // Matchers supply visible source lines; this layer applies READ scope and preview.
3
3
  import { TextCoordinates } from "@plurnk/plurnk-mimetypes";
4
4
  import LineMarkerOps from "./line-marker.js";
5
5
  import MimetypeBinary from "./mimetype-binary.js";
@@ -1 +1 @@
1
- {"version":3,"file":"AdmittedTurnExecutor.d.ts","sourceRoot":"","sources":["../../src/core/AdmittedTurnExecutor.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAiB,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC/E,OAAO,KAAK,cAAc,MAAM,qBAAqB,CAAC;AACtD,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAGpD,OAAO,aAAa,MAAM,oBAAoB,CAAC;AAC/C,OAAO,UAAU,MAAM,iBAAiB,CAAC;AAEzC,OAAO,UAAU,MAAM,iBAAiB,CAAC;AAOzC,OAAO,eAAe,MAAM,sBAAsB,CAAC;AAInD,OAAO,KAAK,EAAE,cAAc,EAAsC,aAAa,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAO/I,MAAM,CAAC,OAAO,OAAO,oBAAoB;;IAQrC,YAAY,EAAE,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,SAAS,EAAE,EAAE;QACnE,EAAE,EAAE,EAAE,CAAC;QACP,OAAO,EAAE,cAAc,CAAC;QACxB,OAAO,EAAE,aAAa,CAAC;QACvB,QAAQ,EAAE,UAAU,CAAC;QACrB,UAAU,EAAE,UAAU,CAAC;QACvB,SAAS,EAAE,eAAe,CAAC;KAC9B,EAOA;IAMK,mBAAmB,CAAC,EACtB,UAAU,EACV,MAAM,EACN,QAAQ,EACR,iBAAwB,EACxB,MAAM,EACN,WAAW,EACX,QAAQ,EACR,MAAM,EACN,MAAM,EACN,YAAY,EACZ,WAAsC,EACtC,oBAA4B,EAC5B,sBAA2B,EAC3B,SAAiB,EACjB,aAA8D,EAC9D,IAAI,EACJ,MAAM,EACN,UAAU,EACV,SAAS,GACZ,EAAE;QACC,UAAU,EAAE,SAAS,eAAe,EAAE,CAAC;QACvC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;QAGtB,QAAQ,EAAE,gBAAgB,GAAG,IAAI,CAAC;QAClC,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAClC,MAAM,EAAE,UAAU,CAAC;QACnB,WAAW,EAAE,MAAM,CAAC;QACpB,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,EAAE,MAAM,CAAC;QACf,YAAY,EAAE,MAAM,CAAC;QACrB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,oBAAoB,CAAC,EAAE,OAAO,CAAC;QAC/B,sBAAsB,CAAC,EAAE,SAAS,cAAc,EAAE,CAAC;QACnD,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,aAAa,CAAC,EAAE,OAAO,CAAC;QACxB,IAAI,CAAC,EAAE,aAAa,CAAC;QACrB,MAAM,CAAC,EAAE,WAAW,CAAC;QACrB,UAAU,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,IAAI,CAAC;QAC1C,SAAS,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;KAC5D,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAoQ9B;CAGJ"}
1
+ {"version":3,"file":"AdmittedTurnExecutor.d.ts","sourceRoot":"","sources":["../../src/core/AdmittedTurnExecutor.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAuC,eAAe,EAAE,MAAM,0BAA0B,CAAC;AACrG,OAAO,KAAK,cAAc,MAAM,qBAAqB,CAAC;AACtD,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAGpD,OAAO,aAAa,MAAM,oBAAoB,CAAC;AAC/C,OAAO,UAAU,MAAM,iBAAiB,CAAC;AAEzC,OAAO,UAAU,MAAM,iBAAiB,CAAC;AAOzC,OAAO,eAAe,MAAM,sBAAsB,CAAC;AAInD,OAAO,KAAK,EAAE,cAAc,EAAsC,aAAa,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAO/I,MAAM,CAAC,OAAO,OAAO,oBAAoB;;IAQrC,YAAY,EAAE,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,SAAS,EAAE,EAAE;QACnE,EAAE,EAAE,EAAE,CAAC;QACP,OAAO,EAAE,cAAc,CAAC;QACxB,OAAO,EAAE,aAAa,CAAC;QACvB,QAAQ,EAAE,UAAU,CAAC;QACrB,UAAU,EAAE,UAAU,CAAC;QACvB,SAAS,EAAE,eAAe,CAAC;KAC9B,EAOA;IAMK,mBAAmB,CAAC,EACtB,UAAU,EACV,MAAM,EACN,QAAQ,EACR,iBAAwB,EACxB,MAAM,EACN,WAAW,EACX,QAAQ,EACR,MAAM,EACN,MAAM,EACN,YAAY,EACZ,WAAsC,EACtC,oBAA4B,EAC5B,sBAA2B,EAC3B,SAAiB,EACjB,aAA8D,EAC9D,IAAI,EACJ,MAAM,EACN,UAAU,EACV,SAAS,GACZ,EAAE;QACC,UAAU,EAAE,SAAS,eAAe,EAAE,CAAC;QACvC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;QAGtB,QAAQ,EAAE,gBAAgB,GAAG,IAAI,CAAC;QAClC,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAClC,MAAM,EAAE,UAAU,CAAC;QACnB,WAAW,EAAE,MAAM,CAAC;QACpB,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,EAAE,MAAM,CAAC;QACf,YAAY,EAAE,MAAM,CAAC;QACrB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,oBAAoB,CAAC,EAAE,OAAO,CAAC;QAC/B,sBAAsB,CAAC,EAAE,SAAS,cAAc,EAAE,CAAC;QACnD,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,aAAa,CAAC,EAAE,OAAO,CAAC;QACxB,IAAI,CAAC,EAAE,aAAa,CAAC;QACrB,MAAM,CAAC,EAAE,WAAW,CAAC;QACrB,UAAU,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,IAAI,CAAC;QAC1C,SAAS,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;KAC5D,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAoQ9B;CAGJ"}
@@ -71,7 +71,7 @@ export default class AdmittedTurnExecutor {
71
71
  await Turn.complete(this.#db, turnId, TURN_STATUS_IMPLICIT_CONTINUE);
72
72
  return { status: TURN_STATUS_IMPLICIT_CONTINUE, outcomes: [], progressed: false, fingerprint: StrikeRail.fingerprintEmptyTurn(source ?? ""), emptyTurn: true };
73
73
  }
74
- let wait = false;
74
+ const waits = [];
75
75
  const pendingEngineErrors = [];
76
76
  let realCommands = 0;
77
77
  const admitted = statements.filter((statement) => TurnDisposition.is(statement) || TurnDisposition.isCompletion(statement)
@@ -252,7 +252,7 @@ export default class AdmittedTurnExecutor {
252
252
  });
253
253
  }
254
254
  if (TurnDisposition.is(scheduledStatement) && result.status < 400)
255
- wait = true;
255
+ waits.push(scheduledStatement);
256
256
  }
257
257
  if (finalOp === undefined)
258
258
  await settleTurn();
@@ -270,7 +270,7 @@ export default class AdmittedTurnExecutor {
270
270
  };
271
271
  await recordEngineProblem(kind, rowSequence++, extensions);
272
272
  }
273
- const turnStatus = await this.#dispatcher.settleProgram({ workerId, loopId, turnId, origin }, wait, completionEligible);
273
+ const turnStatus = await this.#dispatcher.settleProgram({ workerId, loopId, turnId, origin }, waits, completionEligible);
274
274
  await Turn.complete(this.#db, turnId, turnStatus);
275
275
  return {
276
276
  status: turnStatus,