@plurnk/plurnk-service 1.3.12 → 1.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (488) hide show
  1. package/.env.defaults +95 -91
  2. package/INSTALL.md +54 -28
  3. package/README.md +25 -10
  4. package/SPEC.md +2426 -942
  5. package/dist/Paths.d.ts +4 -1
  6. package/dist/Paths.d.ts.map +1 -1
  7. package/dist/Paths.js +24 -23
  8. package/dist/Paths.js.map +1 -1
  9. package/dist/build-info.json +1 -1
  10. package/dist/content/edit-receipt.d.ts +13 -28
  11. package/dist/content/edit-receipt.d.ts.map +1 -1
  12. package/dist/content/edit-receipt.js +285 -104
  13. package/dist/content/edit-receipt.js.map +1 -1
  14. package/dist/content/edited-span.d.ts.map +1 -1
  15. package/dist/content/edited-span.js +2 -5
  16. package/dist/content/edited-span.js.map +1 -1
  17. package/dist/content/index.d.ts +4 -3
  18. package/dist/content/index.d.ts.map +1 -1
  19. package/dist/content/index.js +2 -1
  20. package/dist/content/index.js.map +1 -1
  21. package/dist/content/line-marker.d.ts +10 -9
  22. package/dist/content/line-marker.d.ts.map +1 -1
  23. package/dist/content/line-marker.js +8 -11
  24. package/dist/content/line-marker.js.map +1 -1
  25. package/dist/content/matcher.d.ts +15 -26
  26. package/dist/content/matcher.d.ts.map +1 -1
  27. package/dist/content/matcher.js +77 -107
  28. package/dist/content/matcher.js.map +1 -1
  29. package/dist/content/mimetype-binary.d.ts +2 -2
  30. package/dist/content/mimetype-binary.d.ts.map +1 -1
  31. package/dist/content/mimetype-binary.js +10 -10
  32. package/dist/content/mimetype-binary.js.map +1 -1
  33. package/dist/content/path-mimetype.js +3 -3
  34. package/dist/content/path-mimetype.js.map +1 -1
  35. package/dist/content/read-projector.d.ts +14 -0
  36. package/dist/content/read-projector.d.ts.map +1 -0
  37. package/dist/content/read-projector.js +86 -0
  38. package/dist/content/read-projector.js.map +1 -0
  39. package/dist/content/read-resolve.d.ts +6 -7
  40. package/dist/content/read-resolve.d.ts.map +1 -1
  41. package/dist/content/read-resolve.js +36 -59
  42. package/dist/content/read-resolve.js.map +1 -1
  43. package/dist/core/BranchReceipt.d.ts +6 -0
  44. package/dist/core/BranchReceipt.d.ts.map +1 -0
  45. package/dist/core/BranchReceipt.js +24 -0
  46. package/dist/core/BranchReceipt.js.map +1 -0
  47. package/dist/core/BudgetOverflow.d.ts +20 -0
  48. package/dist/core/BudgetOverflow.d.ts.map +1 -0
  49. package/dist/core/BudgetOverflow.js +49 -0
  50. package/dist/core/BudgetOverflow.js.map +1 -0
  51. package/dist/core/BudgetReadout.d.ts +8 -0
  52. package/dist/core/BudgetReadout.d.ts.map +1 -0
  53. package/dist/core/BudgetReadout.js +79 -0
  54. package/dist/core/BudgetReadout.js.map +1 -0
  55. package/dist/core/ChannelWrite.d.ts +31 -9
  56. package/dist/core/ChannelWrite.d.ts.map +1 -1
  57. package/dist/core/ChannelWrite.js +30 -23
  58. package/dist/core/ChannelWrite.js.map +1 -1
  59. package/dist/core/ChannelWrite.sql +14 -12
  60. package/dist/core/CoreSchemeServices.d.ts +18 -4
  61. package/dist/core/CoreSchemeServices.d.ts.map +1 -1
  62. package/dist/core/CoreSchemeServices.js +7 -1
  63. package/dist/core/CoreSchemeServices.js.map +1 -1
  64. package/dist/core/Dispatcher.d.ts +26 -21
  65. package/dist/core/Dispatcher.d.ts.map +1 -1
  66. package/dist/core/Dispatcher.js +1626 -671
  67. package/dist/core/Dispatcher.js.map +1 -1
  68. package/dist/core/DurableStatement.d.ts +6 -0
  69. package/dist/core/DurableStatement.d.ts.map +1 -0
  70. package/dist/core/DurableStatement.js +51 -0
  71. package/dist/core/DurableStatement.js.map +1 -0
  72. package/dist/core/Engine.d.ts +64 -29
  73. package/dist/core/Engine.d.ts.map +1 -1
  74. package/dist/core/Engine.js +1348 -835
  75. package/dist/core/Engine.js.map +1 -1
  76. package/dist/core/Engine.sql +329 -234
  77. package/dist/core/EnvFlags.js +1 -1
  78. package/dist/core/EnvFlags.js.map +1 -1
  79. package/dist/core/ErrorDetail.d.ts +6 -0
  80. package/dist/core/ErrorDetail.d.ts.map +1 -0
  81. package/dist/core/ErrorDetail.js +20 -0
  82. package/dist/core/ErrorDetail.js.map +1 -0
  83. package/dist/core/ExecutorRegistry.d.ts +14 -3
  84. package/dist/core/ExecutorRegistry.d.ts.map +1 -1
  85. package/dist/core/ExecutorRegistry.js +56 -30
  86. package/dist/core/ExecutorRegistry.js.map +1 -1
  87. package/dist/core/GitBranch.d.ts +20 -0
  88. package/dist/core/GitBranch.d.ts.map +1 -0
  89. package/dist/core/GitBranch.js +110 -0
  90. package/dist/core/GitBranch.js.map +1 -0
  91. package/dist/core/JournalTurn.d.ts +9 -0
  92. package/dist/core/JournalTurn.d.ts.map +1 -0
  93. package/dist/core/JournalTurn.js +14 -0
  94. package/dist/core/JournalTurn.js.map +1 -0
  95. package/dist/core/JournalTurn.sql +10 -0
  96. package/dist/core/LogBody.d.ts +18 -0
  97. package/dist/core/LogBody.d.ts.map +1 -0
  98. package/dist/core/LogBody.js +180 -0
  99. package/dist/core/LogBody.js.map +1 -0
  100. package/dist/core/LoopFlagsReader.d.ts +7 -0
  101. package/dist/core/LoopFlagsReader.d.ts.map +1 -0
  102. package/dist/core/LoopFlagsReader.js +33 -0
  103. package/dist/core/LoopFlagsReader.js.map +1 -0
  104. package/dist/core/LoopLifecycle.d.ts +8 -2
  105. package/dist/core/LoopLifecycle.d.ts.map +1 -1
  106. package/dist/core/LoopLifecycle.js +54 -11
  107. package/dist/core/LoopLifecycle.js.map +1 -1
  108. package/dist/core/LoopLifecycle.sql +10 -7
  109. package/dist/core/NoticeChannel.d.ts +13 -0
  110. package/dist/core/NoticeChannel.d.ts.map +1 -0
  111. package/dist/core/NoticeChannel.js +40 -0
  112. package/dist/core/NoticeChannel.js.map +1 -0
  113. package/dist/core/Owner.d.ts +0 -1
  114. package/dist/core/Owner.d.ts.map +1 -1
  115. package/dist/core/Owner.js +2 -5
  116. package/dist/core/Owner.js.map +1 -1
  117. package/dist/core/PacketBuilder.d.ts +27 -25
  118. package/dist/core/PacketBuilder.d.ts.map +1 -1
  119. package/dist/core/PacketBuilder.js +321 -383
  120. package/dist/core/PacketBuilder.js.map +1 -1
  121. package/dist/core/ProblemLog.d.ts +26 -0
  122. package/dist/core/ProblemLog.d.ts.map +1 -0
  123. package/dist/core/ProblemLog.js +58 -0
  124. package/dist/core/ProblemLog.js.map +1 -0
  125. package/dist/core/ProposalLifecycle.d.ts +15 -21
  126. package/dist/core/ProposalLifecycle.d.ts.map +1 -1
  127. package/dist/core/ProposalLifecycle.js +291 -78
  128. package/dist/core/ProposalLifecycle.js.map +1 -1
  129. package/dist/core/ProviderInstantiate.d.ts.map +1 -1
  130. package/dist/core/ProviderInstantiate.js +51 -48
  131. package/dist/core/ProviderInstantiate.js.map +1 -1
  132. package/dist/core/SchemeRegistry.d.ts +14 -8
  133. package/dist/core/SchemeRegistry.d.ts.map +1 -1
  134. package/dist/core/SchemeRegistry.js +189 -114
  135. package/dist/core/SchemeRegistry.js.map +1 -1
  136. package/dist/core/ServiceTeardown.d.ts +11 -0
  137. package/dist/core/ServiceTeardown.d.ts.map +1 -0
  138. package/dist/core/ServiceTeardown.js +70 -0
  139. package/dist/core/ServiceTeardown.js.map +1 -0
  140. package/dist/core/StoredPacket.d.ts +29 -0
  141. package/dist/core/StoredPacket.d.ts.map +1 -0
  142. package/dist/core/StoredPacket.js +147 -0
  143. package/dist/core/StoredPacket.js.map +1 -0
  144. package/dist/core/StrikeRail.d.ts +6 -3
  145. package/dist/core/StrikeRail.d.ts.map +1 -1
  146. package/dist/core/StrikeRail.js +27 -56
  147. package/dist/core/StrikeRail.js.map +1 -1
  148. package/dist/core/TerminalResult.d.ts +16 -0
  149. package/dist/core/TerminalResult.d.ts.map +1 -0
  150. package/dist/core/TerminalResult.js +49 -0
  151. package/dist/core/TerminalResult.js.map +1 -0
  152. package/dist/core/WorkerControlAddress.d.ts +17 -0
  153. package/dist/core/WorkerControlAddress.d.ts.map +1 -0
  154. package/dist/core/WorkerControlAddress.js +44 -0
  155. package/dist/core/WorkerControlAddress.js.map +1 -0
  156. package/dist/core/WorkerName.d.ts +31 -0
  157. package/dist/core/WorkerName.d.ts.map +1 -0
  158. package/dist/core/WorkerName.js +95 -0
  159. package/dist/core/WorkerName.js.map +1 -0
  160. package/dist/core/WorkerName.sql +36 -0
  161. package/dist/core/WorkspaceGate.d.ts +14 -0
  162. package/dist/core/WorkspaceGate.d.ts.map +1 -0
  163. package/dist/core/WorkspaceGate.js +155 -0
  164. package/dist/core/WorkspaceGate.js.map +1 -0
  165. package/dist/core/caps/CapsResolve.d.ts +5 -1
  166. package/dist/core/caps/CapsResolve.d.ts.map +1 -1
  167. package/dist/core/caps/CapsResolve.js +8 -4
  168. package/dist/core/caps/CapsResolve.js.map +1 -1
  169. package/dist/core/caps/DbChannelCaps.d.ts +5 -11
  170. package/dist/core/caps/DbChannelCaps.d.ts.map +1 -1
  171. package/dist/core/caps/DbChannelCaps.js +30 -12
  172. package/dist/core/caps/DbChannelCaps.js.map +1 -1
  173. package/dist/core/caps/DbEntryCaps.d.ts +5 -14
  174. package/dist/core/caps/DbEntryCaps.d.ts.map +1 -1
  175. package/dist/core/caps/DbEntryCaps.js +27 -8
  176. package/dist/core/caps/DbEntryCaps.js.map +1 -1
  177. package/dist/core/caps/DbNotifyCaps.d.ts +1 -1
  178. package/dist/core/caps/DbNotifyCaps.d.ts.map +1 -1
  179. package/dist/core/caps/DbNotifyCaps.js +18 -15
  180. package/dist/core/caps/DbNotifyCaps.js.map +1 -1
  181. package/dist/core/caps/DbProjectionCaps.d.ts +5 -5
  182. package/dist/core/caps/DbProjectionCaps.d.ts.map +1 -1
  183. package/dist/core/caps/DbProjectionCaps.js +21 -4
  184. package/dist/core/caps/DbProjectionCaps.js.map +1 -1
  185. package/dist/core/caps/DbSubscriptionCaps.d.ts +4 -6
  186. package/dist/core/caps/DbSubscriptionCaps.d.ts.map +1 -1
  187. package/dist/core/caps/DbSubscriptionCaps.js +75 -66
  188. package/dist/core/caps/DbSubscriptionCaps.js.map +1 -1
  189. package/dist/core/caps/DbTagCaps.d.ts +5 -12
  190. package/dist/core/caps/DbTagCaps.d.ts.map +1 -1
  191. package/dist/core/caps/DbTagCaps.js +20 -11
  192. package/dist/core/caps/DbTagCaps.js.map +1 -1
  193. package/dist/core/caps/SchemeCtxImpl.d.ts +6 -1
  194. package/dist/core/caps/SchemeCtxImpl.d.ts.map +1 -1
  195. package/dist/core/caps/SchemeCtxImpl.js +6 -6
  196. package/dist/core/caps/SchemeCtxImpl.js.map +1 -1
  197. package/dist/core/content-hash.js +1 -1
  198. package/dist/core/content-hash.js.map +1 -1
  199. package/dist/core/env-defaults.d.ts.map +1 -1
  200. package/dist/core/env-defaults.js.map +1 -1
  201. package/dist/core/fork.d.ts.map +1 -1
  202. package/dist/core/fork.js +55 -30
  203. package/dist/core/fork.js.map +1 -1
  204. package/dist/core/fork.sql +43 -29
  205. package/dist/core/git-env.d.ts +2 -0
  206. package/dist/core/git-env.d.ts.map +1 -1
  207. package/dist/core/git-env.js +13 -18
  208. package/dist/core/git-env.js.map +1 -1
  209. package/dist/core/git-iso.d.ts +3 -2
  210. package/dist/core/git-iso.d.ts.map +1 -1
  211. package/dist/core/git-iso.js +36 -27
  212. package/dist/core/git-iso.js.map +1 -1
  213. package/dist/core/git-membership.d.ts +2 -1
  214. package/dist/core/git-membership.d.ts.map +1 -1
  215. package/dist/core/git-membership.js +276 -162
  216. package/dist/core/git-membership.js.map +1 -1
  217. package/dist/core/git-state.d.ts +8 -1
  218. package/dist/core/git-state.d.ts.map +1 -1
  219. package/dist/core/git-state.js +44 -26
  220. package/dist/core/git-state.js.map +1 -1
  221. package/dist/core/namespace.d.ts +1 -0
  222. package/dist/core/namespace.d.ts.map +1 -1
  223. package/dist/core/namespace.js +20 -0
  224. package/dist/core/namespace.js.map +1 -1
  225. package/dist/core/optimistic-settlement.d.ts +2 -0
  226. package/dist/core/optimistic-settlement.d.ts.map +1 -0
  227. package/dist/core/optimistic-settlement.js +14 -0
  228. package/dist/core/optimistic-settlement.js.map +1 -0
  229. package/dist/core/owner.sql +1 -1
  230. package/dist/core/packet-inject.d.ts.map +1 -1
  231. package/dist/core/packet-inject.js +7 -11
  232. package/dist/core/packet-inject.js.map +1 -1
  233. package/dist/core/packet-wire.d.ts +3 -21
  234. package/dist/core/packet-wire.d.ts.map +1 -1
  235. package/dist/core/packet-wire.js +305 -385
  236. package/dist/core/packet-wire.js.map +1 -1
  237. package/dist/core/plurnk-uri.d.ts +12 -1
  238. package/dist/core/plurnk-uri.d.ts.map +1 -1
  239. package/dist/core/plurnk-uri.js +49 -29
  240. package/dist/core/plurnk-uri.js.map +1 -1
  241. package/dist/core/results.d.ts +18 -5
  242. package/dist/core/results.d.ts.map +1 -1
  243. package/dist/core/results.js +33 -18
  244. package/dist/core/results.js.map +1 -1
  245. package/dist/core/ruler_count.d.ts +4 -0
  246. package/dist/core/ruler_count.d.ts.map +1 -0
  247. package/dist/core/ruler_count.js +7 -0
  248. package/dist/core/ruler_count.js.map +1 -0
  249. package/dist/core/scheme-types.d.ts +3 -17
  250. package/dist/core/scheme-types.d.ts.map +1 -1
  251. package/dist/core/scheme-types.js.map +1 -1
  252. package/dist/core/search-gate.d.ts.map +1 -1
  253. package/dist/core/search-gate.js +3 -11
  254. package/dist/core/search-gate.js.map +1 -1
  255. package/dist/core/teaching-corpus.d.ts +6 -0
  256. package/dist/core/teaching-corpus.d.ts.map +1 -0
  257. package/dist/core/teaching-corpus.js +23 -0
  258. package/dist/core/teaching-corpus.js.map +1 -0
  259. package/dist/core/teaching.d.ts +0 -1
  260. package/dist/core/teaching.d.ts.map +1 -1
  261. package/dist/core/teaching.js +2 -8
  262. package/dist/core/teaching.js.map +1 -1
  263. package/dist/core/token-ruler.d.ts.map +1 -1
  264. package/dist/core/token-ruler.js +3 -16
  265. package/dist/core/token-ruler.js.map +1 -1
  266. package/dist/core/turn-scheduler.d.ts +1 -1
  267. package/dist/core/turn-scheduler.d.ts.map +1 -1
  268. package/dist/core/turn-scheduler.js +1 -1
  269. package/dist/core/turn-scheduler.js.map +1 -1
  270. package/dist/core/worker-cap.d.ts +2 -4
  271. package/dist/core/worker-cap.d.ts.map +1 -1
  272. package/dist/core/worker-cap.js +13 -4
  273. package/dist/core/worker-cap.js.map +1 -1
  274. package/dist/core/{run-ops.sql → worker-ops.sql} +14 -14
  275. package/dist/core/workspace-settings.d.ts.map +1 -1
  276. package/dist/core/workspace-settings.js +17 -9
  277. package/dist/core/workspace-settings.js.map +1 -1
  278. package/dist/digest/Digest.d.ts +2 -1
  279. package/dist/digest/Digest.d.ts.map +1 -1
  280. package/dist/digest/Digest.js +510 -149
  281. package/dist/digest/Digest.js.map +1 -1
  282. package/dist/digest/digest.sql +23 -10
  283. package/dist/index.d.ts.map +1 -1
  284. package/dist/index.js +3 -5
  285. package/dist/index.js.map +1 -1
  286. package/dist/observe/api.d.ts +6 -0
  287. package/dist/observe/api.d.ts.map +1 -0
  288. package/dist/observe/api.js +11 -0
  289. package/dist/observe/api.js.map +1 -0
  290. package/dist/observe/init.d.ts +7 -0
  291. package/dist/observe/init.d.ts.map +1 -0
  292. package/dist/observe/init.js +159 -0
  293. package/dist/observe/init.js.map +1 -0
  294. package/dist/observe/metrics.d.ts +6 -0
  295. package/dist/observe/metrics.d.ts.map +1 -0
  296. package/dist/observe/metrics.js +15 -0
  297. package/dist/observe/metrics.js.map +1 -0
  298. package/dist/observe/spans.d.ts +4 -0
  299. package/dist/observe/spans.d.ts.map +1 -0
  300. package/dist/observe/spans.js +51 -0
  301. package/dist/observe/spans.js.map +1 -0
  302. package/dist/schemes/EffectPolicy.d.ts +1 -0
  303. package/dist/schemes/EffectPolicy.d.ts.map +1 -1
  304. package/dist/schemes/EffectPolicy.js +5 -2
  305. package/dist/schemes/EffectPolicy.js.map +1 -1
  306. package/dist/schemes/Exec.d.ts +9 -14
  307. package/dist/schemes/Exec.d.ts.map +1 -1
  308. package/dist/schemes/Exec.js +402 -262
  309. package/dist/schemes/Exec.js.map +1 -1
  310. package/dist/schemes/ExecOutputScheme.d.ts +9 -9
  311. package/dist/schemes/ExecOutputScheme.d.ts.map +1 -1
  312. package/dist/schemes/ExecOutputScheme.js +49 -18
  313. package/dist/schemes/ExecOutputScheme.js.map +1 -1
  314. package/dist/schemes/File.d.ts +7 -13
  315. package/dist/schemes/File.d.ts.map +1 -1
  316. package/dist/schemes/File.js +280 -151
  317. package/dist/schemes/File.js.map +1 -1
  318. package/dist/schemes/Log.d.ts +8 -12
  319. package/dist/schemes/Log.d.ts.map +1 -1
  320. package/dist/schemes/Log.js +402 -233
  321. package/dist/schemes/Log.js.map +1 -1
  322. package/dist/schemes/Log.sql +71 -32
  323. package/dist/schemes/Prompt.d.ts +3 -3
  324. package/dist/schemes/Prompt.d.ts.map +1 -1
  325. package/dist/schemes/Prompt.js +10 -10
  326. package/dist/schemes/Prompt.js.map +1 -1
  327. package/dist/schemes/Skill.d.ts +2 -3
  328. package/dist/schemes/Skill.d.ts.map +1 -1
  329. package/dist/schemes/Skill.js +2 -6
  330. package/dist/schemes/Skill.js.map +1 -1
  331. package/dist/schemes/Worker.d.ts +11 -19
  332. package/dist/schemes/Worker.d.ts.map +1 -1
  333. package/dist/schemes/Worker.js +210 -89
  334. package/dist/schemes/Worker.js.map +1 -1
  335. package/dist/schemes/_entry-chunk.d.ts.map +1 -1
  336. package/dist/schemes/_entry-chunk.js +12 -5
  337. package/dist/schemes/_entry-chunk.js.map +1 -1
  338. package/dist/schemes/_entry-crud.d.ts +11 -9
  339. package/dist/schemes/_entry-crud.d.ts.map +1 -1
  340. package/dist/schemes/_entry-crud.js +72 -13
  341. package/dist/schemes/_entry-crud.js.map +1 -1
  342. package/dist/schemes/_entry-crud.sql +28 -10
  343. package/dist/schemes/_entry-find.d.ts +49 -18
  344. package/dist/schemes/_entry-find.d.ts.map +1 -1
  345. package/dist/schemes/_entry-find.js +348 -195
  346. package/dist/schemes/_entry-find.js.map +1 -1
  347. package/dist/schemes/_entry-find.sql +20 -8
  348. package/dist/schemes/_entry-graph.d.ts +4 -2
  349. package/dist/schemes/_entry-graph.d.ts.map +1 -1
  350. package/dist/schemes/_entry-graph.js +55 -31
  351. package/dist/schemes/_entry-graph.js.map +1 -1
  352. package/dist/schemes/_entry-graph.sql +37 -22
  353. package/dist/schemes/_entry-manifest.d.ts +10 -15
  354. package/dist/schemes/_entry-manifest.d.ts.map +1 -1
  355. package/dist/schemes/_entry-manifest.js +50 -268
  356. package/dist/schemes/_entry-manifest.js.map +1 -1
  357. package/dist/schemes/_entry-ops.d.ts +14 -15
  358. package/dist/schemes/_entry-ops.d.ts.map +1 -1
  359. package/dist/schemes/_entry-ops.js +121 -110
  360. package/dist/schemes/_entry-ops.js.map +1 -1
  361. package/dist/schemes/_entry-ops.sql +2 -3
  362. package/dist/schemes/_entry-semantic.d.ts +22 -9
  363. package/dist/schemes/_entry-semantic.d.ts.map +1 -1
  364. package/dist/schemes/_entry-semantic.js +127 -67
  365. package/dist/schemes/_entry-semantic.js.map +1 -1
  366. package/dist/schemes/_entry-semantic.sql +63 -45
  367. package/dist/schemes/_entry-send.d.ts +3 -4
  368. package/dist/schemes/_entry-send.d.ts.map +1 -1
  369. package/dist/schemes/_entry-send.js +48 -23
  370. package/dist/schemes/_entry-send.js.map +1 -1
  371. package/dist/schemes/_path-scope.d.ts +23 -0
  372. package/dist/schemes/_path-scope.d.ts.map +1 -0
  373. package/dist/schemes/_path-scope.js +61 -0
  374. package/dist/schemes/_path-scope.js.map +1 -0
  375. package/dist/schemes/_search-candidate.d.ts +20 -0
  376. package/dist/schemes/_search-candidate.d.ts.map +1 -0
  377. package/dist/schemes/_search-candidate.js +19 -0
  378. package/dist/schemes/_search-candidate.js.map +1 -0
  379. package/dist/schemes/_search-exclusion.d.ts +7 -0
  380. package/dist/schemes/_search-exclusion.d.ts.map +1 -0
  381. package/dist/schemes/_search-exclusion.js +23 -0
  382. package/dist/schemes/_search-exclusion.js.map +1 -0
  383. package/dist/schemes/_search-index.d.ts +6 -0
  384. package/dist/schemes/_search-index.d.ts.map +1 -0
  385. package/dist/schemes/_search-index.js +328 -0
  386. package/dist/schemes/_search-index.js.map +1 -0
  387. package/dist/schemes/cosine.js +1 -1
  388. package/dist/schemes/cosine.js.map +1 -1
  389. package/dist/schemes/exec-abort.js +3 -3
  390. package/dist/schemes/exec-abort.js.map +1 -1
  391. package/dist/schemes/exec-env.js +3 -3
  392. package/dist/schemes/exec-env.js.map +1 -1
  393. package/dist/server/BranchBatches.d.ts +49 -0
  394. package/dist/server/BranchBatches.d.ts.map +1 -0
  395. package/dist/server/BranchBatches.js +592 -0
  396. package/dist/server/BranchBatches.js.map +1 -0
  397. package/dist/server/Daemon.d.ts +39 -71
  398. package/dist/server/Daemon.d.ts.map +1 -1
  399. package/dist/server/Daemon.js +1133 -491
  400. package/dist/server/Daemon.js.map +1 -1
  401. package/dist/server/DaemonModule.d.ts +31 -0
  402. package/dist/server/DaemonModule.d.ts.map +1 -0
  403. package/dist/server/DaemonModule.js +2 -0
  404. package/dist/server/DaemonModule.js.map +1 -0
  405. package/dist/server/branch-batch.sql +154 -0
  406. package/dist/server/client-input.d.ts +13 -0
  407. package/dist/server/client-input.d.ts.map +1 -1
  408. package/dist/server/client-input.js +268 -57
  409. package/dist/server/client-input.js.map +1 -1
  410. package/dist/server/dispatch-as-plurnk.d.ts +1 -1
  411. package/dist/server/dispatch-as-plurnk.d.ts.map +1 -1
  412. package/dist/server/dispatch-as-plurnk.js +15 -7
  413. package/dist/server/dispatch-as-plurnk.js.map +1 -1
  414. package/dist/server/drain.sql +96 -65
  415. package/dist/server/envelope.d.ts +4 -7
  416. package/dist/server/envelope.d.ts.map +1 -1
  417. package/dist/server/envelope.js +118 -95
  418. package/dist/server/envelope.js.map +1 -1
  419. package/dist/server/envelope.sql +18 -23
  420. package/dist/server/exec-poll-backoff.js +1 -1
  421. package/dist/server/exec-poll-backoff.js.map +1 -1
  422. package/dist/server/lifecycle-recovery.sql +112 -2
  423. package/dist/server/logEntry.d.ts +4 -2
  424. package/dist/server/logEntry.d.ts.map +1 -1
  425. package/dist/server/logEntry.js +6 -3
  426. package/dist/server/logEntry.js.map +1 -1
  427. package/dist/server/logEntry.sql +1 -1
  428. package/dist/server/loop-model.d.ts.map +1 -1
  429. package/dist/server/loop-model.js +22 -9
  430. package/dist/server/loop-model.js.map +1 -1
  431. package/dist/server/loopDocs.d.ts.map +1 -1
  432. package/dist/server/loopDocs.js +5 -4
  433. package/dist/server/loopDocs.js.map +1 -1
  434. package/dist/server/seam-entry-read.sql +15 -10
  435. package/dist/server/seam-log-read.sql +2 -2
  436. package/dist/server/seam-loop.sql +1 -1
  437. package/dist/server/seam-proposal-list.sql +17 -7
  438. package/dist/service.d.ts.map +1 -1
  439. package/dist/service.js +79 -61
  440. package/dist/service.js.map +1 -1
  441. package/migrations/001_schema.sql +1010 -0
  442. package/package.json +65 -32
  443. package/dist/core/PluginLoader.d.ts +0 -20
  444. package/dist/core/PluginLoader.d.ts.map +0 -1
  445. package/dist/core/PluginLoader.js +0 -142
  446. package/dist/core/PluginLoader.js.map +0 -1
  447. package/dist/core/TelemetryChannel.d.ts +0 -37
  448. package/dist/core/TelemetryChannel.d.ts.map +0 -1
  449. package/dist/core/TelemetryChannel.js +0 -80
  450. package/dist/core/TelemetryChannel.js.map +0 -1
  451. package/dist/core/path-decode.d.ts +0 -3
  452. package/dist/core/path-decode.d.ts.map +0 -1
  453. package/dist/core/path-decode.js +0 -9
  454. package/dist/core/path-decode.js.map +0 -1
  455. package/dist/core/plugin-attribution.d.ts +0 -5
  456. package/dist/core/plugin-attribution.d.ts.map +0 -1
  457. package/dist/core/plugin-attribution.js +0 -39
  458. package/dist/core/plugin-attribution.js.map +0 -1
  459. package/dist/core/world-state.d.ts +0 -10
  460. package/dist/core/world-state.d.ts.map +0 -1
  461. package/dist/core/world-state.js +0 -35
  462. package/dist/core/world-state.js.map +0 -1
  463. package/dist/core/world-state.sql +0 -35
  464. package/dist/core/zero-pin.d.ts +0 -3
  465. package/dist/core/zero-pin.d.ts.map +0 -1
  466. package/dist/core/zero-pin.js +0 -16
  467. package/dist/core/zero-pin.js.map +0 -1
  468. package/dist/server/auto.d.ts +0 -6
  469. package/dist/server/auto.d.ts.map +0 -1
  470. package/dist/server/auto.js +0 -63
  471. package/dist/server/auto.js.map +0 -1
  472. package/dist/server/clientTurn.d.ts +0 -6
  473. package/dist/server/clientTurn.d.ts.map +0 -1
  474. package/dist/server/clientTurn.js +0 -22
  475. package/dist/server/clientTurn.js.map +0 -1
  476. package/dist/server/clientTurn.sql +0 -10
  477. package/dist/server/noProposals.d.ts +0 -6
  478. package/dist/server/noProposals.d.ts.map +0 -1
  479. package/dist/server/noProposals.js +0 -37
  480. package/dist/server/noProposals.js.map +0 -1
  481. package/dist/server/version-info.d.ts +0 -14
  482. package/dist/server/version-info.d.ts.map +0 -1
  483. package/dist/server/version-info.js +0 -69
  484. package/dist/server/version-info.js.map +0 -1
  485. package/migrations/0000-00-00.01_schema.sql +0 -536
  486. package/migrations/0004_loop-provider.sql +0 -3
  487. package/migrations/0005_subscription-published-channel.sql +0 -3
  488. package/migrations/0006_loop-max-turns.sql +0 -3
@@ -1 +1 @@
1
- {"version":3,"file":"env-defaults.js","sourceRoot":"","sources":["../../src/core/env-defaults.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"env-defaults.js","sourceRoot":"","sources":["../../src/core/env-defaults.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"fork.d.ts","sourceRoot":"","sources":["../../src/core/fork.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAElC,MAAM,CAAC,OAAO,OAAO,IAAI;;IAIrB,OAAa,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,cAAc,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CA2EhF;CACJ"}
1
+ {"version":3,"file":"fork.d.ts","sourceRoot":"","sources":["../../src/core/fork.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAGlC,MAAM,CAAC,OAAO,OAAO,IAAI;;IAIrB,OAAa,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,cAAc,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CA+GhF;CACJ"}
package/dist/core/fork.js CHANGED
@@ -1,53 +1,78 @@
1
- // Fork a worker — branch the log, share the workspace (SPEC §machine-processes).
1
+ // Fork a worker — branch the log, share the workspace (SPEC {§machine-processes}).
2
2
  //
3
- // A fork is a NEW run in the SAME workspace (`parent_worker_id` records the lineage),
3
+ // A fork is a new worker in the same workspace (`parent_worker_id` records the lineage),
4
4
  // holding a deep copy of the parent's log: loops → turns → entries, with their
5
5
  // fold-state (`expanded`) and attribution (`origin`/`source`) intact. It copies
6
- // nothing of the shared WORLD — the workspace's entries and overlay are shared, never
7
- // copied, because a worker never owned them. But it DOES inherit the parent's worker-scope
8
- // SCRATCH (§worker-scheme — the worker's private workspace, owner-remapped parent → branch):
9
- // "fork = everything-in-common-but-name, then diverges". The §env-delta reconciliation
10
- // snapshot is not copied; the branch first-sights its world like any fresh run.
6
+ // nothing of the shared WORLD — commons-owned entries and the overlay are shared, never
7
+ // copied, because the worker never owned them. It DOES inherit the parent's private
8
+ // entries ({§worker-scheme}, owner-remapped parent → branch):
9
+ // "fork = everything-in-common-but-name, then diverges". Its ambient observation
10
+ // cursor is copied with that inherited history, then diverges independently.
11
+ import WorkerName from "./WorkerName.js";
11
12
  export default class Fork {
12
- // Terminal loop statuses (§lifecycle-terms) — inherited loops outside this set are clamped to 200.
13
+ // Terminal loop statuses ({§lifecycle-terms}) — inherited loops outside this set are clamped to 200.
13
14
  static #TERMINAL_LOOP = new Set([200, 413, 429, 499, 500, 504, 508]);
14
15
  static async fork(db, parentWorkerId, name) {
15
16
  const parent = await db.fork_get_worker.get({ id: parentWorkerId });
16
17
  if (parent === undefined)
17
- throw new Error(`fork: run ${parentWorkerId} not found`);
18
- // #248 — name the branch at instantiation (immutable after). An explicit name wins; the default
19
- // is `<parent>-fork-<N>` (N = next free), so N self-forks of one parent are individually
20
- // addressable instead of all colliding on a single `<parent>-fork` (§worker-scheme-fork).
21
- let branchName = name;
22
- if (branchName === undefined) {
23
- const existing = await db.fork_count_branches.get({ parent_worker_id: parentWorkerId, name_prefix: `${parent.name}-fork%` });
24
- branchName = `${parent.name}-fork-${(existing?.n ?? 0) + 1}`;
25
- }
26
- const branch = await db.fork_insert_worker.get({
27
- workspace_id: parent.workspace_id, name: branchName, parent_worker_id: parentWorkerId, origin: parent.origin,
28
- });
18
+ throw new Error(`fork: worker ${parentWorkerId} not found`);
19
+ // {§worker-scheme-fork}, {§machine-processes-worker-origin} — name the branch at instantiation
20
+ // (immutable after). An explicit name wins; the default
21
+ // is the next free `<parent>-fork-<N>` admitted by {§worker-name-minting}.
22
+ const branch = name === undefined
23
+ ? await WorkerName.claimAuto(db, {
24
+ workspaceId: parent.workspace_id,
25
+ prefix: parent.name,
26
+ qualifier: "fork",
27
+ parentWorkerId,
28
+ origin: parent.origin,
29
+ })
30
+ : await db.fork_insert_worker.get({
31
+ workspace_id: parent.workspace_id,
32
+ name: WorkerName.assert(name),
33
+ parent_worker_id: parentWorkerId,
34
+ origin: parent.origin,
35
+ });
29
36
  if (branch === undefined)
30
- throw new Error("fork: branch run insert returned no row");
37
+ throw new Error("fork: explicit branch worker insert returned no row");
31
38
  const branchWorkerId = branch.id;
39
+ await db.fork_set_ambient_cursor.run({
40
+ worker_id: branchWorkerId,
41
+ ambient_event_cursor: parent.ambient_event_cursor,
42
+ });
32
43
  // loops → new loops, mapping old id → new id. A copied loop is INHERITED HISTORY, never the
33
44
  // branch's live work (its own loop is enqueued fresh by injectWorker) — so a non-terminal status
34
45
  // is clamped to terminal (200). Otherwise a fork taken while the parent's loop is mid-flight (102)
35
46
  // would carry a frozen-live loop no drain ever advances, falsely marking the branch forever-live
36
- // to any liveness check (§worker-scheme-fork, the premature-terminate gate §send-premature-terminate).
47
+ // to any liveness check ({§worker-scheme-fork}, the premature-terminate gate {§send-premature-terminate}).
37
48
  const loops = await db.fork_get_loops.all({ worker_id: parentWorkerId });
38
49
  const loopMap = new Map();
39
50
  for (const l of loops) {
40
51
  const status = Fork.#TERMINAL_LOOP.has(l.status) ? l.status : 200;
41
- const nl = await db.fork_insert_loop.get({ worker_id: branchWorkerId, sequence: l.sequence, status, prompt: l.prompt, flags: l.flags });
52
+ const terminalResult = Fork.#TERMINAL_LOOP.has(l.status)
53
+ ? l.terminal_result
54
+ : JSON.stringify({ status: 200 });
55
+ if (terminalResult === null) {
56
+ throw new Error(`fork: terminal source loop ${l.id} has no durable result`);
57
+ }
58
+ const nl = await db.fork_insert_loop.get({
59
+ worker_id: branchWorkerId,
60
+ sequence: l.sequence,
61
+ status,
62
+ prompt: l.prompt,
63
+ flags: l.flags,
64
+ terminal_result: terminalResult,
65
+ });
42
66
  if (nl === undefined)
43
67
  throw new Error("fork: loop insert returned no row");
68
+ await db.fork_reidentify_loop_result.run({ loop_id: nl.id });
44
69
  loopMap.set(l.id, nl.id);
45
70
  }
46
71
  // turns → new turns, loop_id remapped, mapping old id → new id.
47
72
  const turns = await db.fork_get_turns.all({ worker_id: parentWorkerId });
48
73
  const turnMap = new Map();
49
74
  for (const { id, loop_id, ...rest } of turns) {
50
- // #254 — a fork inherits the parent's log for context but spends no new money:
75
+ // {§machine-processes-fork-cost} — a fork inherits the parent's log for context but spends no new money:
51
76
  // the copied turns are history, not fresh generations. Zero their usage so the
52
77
  // cost-rollup triggers add nothing — the workspace total stays true lifetime spend
53
78
  // (no double-count) and the branch's cost_usd accrues only what IT generates.
@@ -59,7 +84,7 @@ export default class Fork {
59
84
  throw new Error("fork: turn insert returned no row");
60
85
  turnMap.set(id, nt.id);
61
86
  }
62
- // entries → new entries: run/loop/turn ids remapped; fold-state and
87
+ // entries → new entries: worker/loop/turn ids remapped; fold-state and
63
88
  // attribution and content all preserved.
64
89
  const entries = await db.fork_get_log_entries.all({ worker_id: parentWorkerId });
65
90
  for (const e of entries) {
@@ -67,17 +92,17 @@ export default class Fork {
67
92
  const ne = await db.fork_insert_log_entry.get({ ...row, worker_id: branchWorkerId, loop_id: loopMap.get(e.loop_id), turn_id: turnMap.get(e.turn_id) });
68
93
  if (ne === undefined)
69
94
  throw new Error("fork: log entry copy returned no row");
70
- // §log-region-tagging — carry the row's region tags onto the copy (no-op when untagged).
95
+ // {§log-region-tagging} — carry the row's region tags onto the copy (no-op when untagged).
71
96
  await db.fork_copy_log_tags.run({ old_log_id: oldLogId, new_log_id: ne.id });
72
97
  }
73
- // §worker-scheme — inherit the parent's private scratch: same pathnames, the BRANCH as owner
98
+ // {§worker-scheme} — inherit the parent's private scratch: same pathnames, the BRANCH as owner
74
99
  // ({§entry-owner} — ownership is the column, never the pathname), so the branch's private
75
100
  // workspace is independent and diverges on its own edits.
76
- const scratch = await db.fork_get_worker_scope_entries.all({ workspace_id: parent.workspace_id, owner_id: parentWorkerId });
101
+ const scratch = await db.fork_get_private_entries.all({ workspace_id: parent.workspace_id, owner_id: parentWorkerId });
77
102
  for (const s of scratch) {
78
- const ne = await db.fork_insert_worker_scope_entry.get({ workspace_id: parent.workspace_id, owner_id: branchWorkerId, scheme: s.scheme, pathname: s.pathname, deep_hash: s.deep_hash, attributes: s.attributes });
103
+ const ne = await db.fork_insert_private_entry.get({ workspace_id: parent.workspace_id, owner_id: branchWorkerId, scheme: s.scheme, pathname: s.pathname, deep_hash: s.deep_hash, attributes: s.attributes });
79
104
  if (ne === undefined)
80
- throw new Error("fork: worker-scope entry copy returned no row");
105
+ throw new Error("fork: private entry copy returned no row");
81
106
  await db.fork_copy_entry_channels.run({ old_entry_id: s.id, new_entry_id: ne.id });
82
107
  await db.fork_copy_entry_tags.run({ old_entry_id: s.id, new_entry_id: ne.id });
83
108
  }
@@ -1 +1 @@
1
- {"version":3,"file":"fork.js","sourceRoot":"","sources":["../../src/core/fork.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fork.js","sourceRoot":"","sources":["../../src/core/fork.ts"],"names":[],"mappings":"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"}
@@ -1,34 +1,47 @@
1
- -- Fork a worker: deep-copy its log into a NEW run in the SAME workspace (SPEC §machine-processes —
1
+ -- Fork a worker: deep-copy its log into a new worker in the same workspace (SPEC {§machine-processes} —
2
2
  -- branch the log, share the world). loops → turns → entries are copied with their
3
3
  -- fold-state (expanded) and attribution (origin/source) intact; only the worker/loop/
4
- -- turn ids are remapped. Nothing of the world is copied (§machine-processes-fork-shares-the-world) — the workspace's entries and
5
- -- overlay are shared. The §env-delta reconciliation snapshot (worker_watermarks) is NOT
6
- -- copied; the branch first-sights its world like any fresh run.
4
+ -- turn ids are remapped. Nothing of the world is copied
5
+ -- ({§machine-processes-fork-shares-the-world}); workspace entries and the
6
+ -- overlay remain shared. The branch inherits the parent's ambient observation
7
+ -- cursor from the same initial fork snapshot as its copied log.
7
8
 
8
9
  -- PREP: fork_get_worker
9
- SELECT workspace_id, name, origin FROM workers WHERE id = $id;
10
+ SELECT workspace_id, name, origin, ambient_event_cursor FROM workers WHERE id = $id;
10
11
 
11
12
  -- PREP: fork_insert_worker
12
- -- A new worker in the parent's workspace; lineage recorded via parent_worker_id (§lifecycle-terms).
13
+ -- A new worker in the parent's workspace; lineage recorded via parent_worker_id ({§lifecycle-terms}).
13
14
  INSERT INTO workers (workspace_id, name, parent_worker_id, origin)
14
15
  VALUES ($workspace_id, $name, $parent_worker_id, $origin)
15
16
  RETURNING id;
16
17
 
17
- -- PREP: fork_count_branches
18
- -- How many fork branches the parent already has — for a UNIQUE `<parent>-fork-<N>` default name, so N
19
- -- self-forks of one parent are individually addressable (KILL/SEND/READ by name) instead of colliding
20
- -- on a single `<parent>-fork` that worker_resolve_by_name would resolve to the newest only (§worker-scheme-fork).
21
- SELECT COUNT(*) AS n FROM workers WHERE parent_worker_id = $parent_worker_id AND name LIKE $name_prefix;
18
+ -- PREP: fork_set_ambient_cursor
19
+ -- Use the cursor captured before log copying. If the parent observes more while
20
+ -- the fork is in flight, the branch stays conservatively behind and replays the
21
+ -- copied event ids idempotently rather than skipping unseen history.
22
+ UPDATE workers SET ambient_event_cursor = $ambient_event_cursor WHERE id = $worker_id;
22
23
 
23
24
  -- PREP: fork_get_loops
24
- SELECT id, sequence, status, prompt, flags
25
+ SELECT id, sequence, status, prompt, flags, terminal_result
25
26
  FROM loops WHERE worker_id = $worker_id ORDER BY id;
26
27
 
27
28
  -- PREP: fork_insert_loop
28
- INSERT INTO loops (worker_id, sequence, status, prompt, flags)
29
- VALUES ($worker_id, $sequence, $status, $prompt, $flags)
29
+ INSERT INTO loops (worker_id, sequence, status, prompt, flags, terminal_result)
30
+ VALUES ($worker_id, $sequence, $status, $prompt, $flags, $terminal_result)
30
31
  RETURNING id;
31
32
 
33
+ -- PREP: fork_reidentify_loop_result
34
+ -- A forked loop is a new durable resource. Success results need no instance;
35
+ -- failure results identify the branch loop rather than the source row.
36
+ UPDATE loops
37
+ SET terminal_result = json_set(
38
+ terminal_result,
39
+ '$.problem.instance',
40
+ 'loop:///' || id
41
+ )
42
+ WHERE id = $loop_id
43
+ AND json_type(terminal_result, '$.problem') = 'object';
44
+
32
45
  -- PREP: fork_get_turns
33
46
  -- All turns across the worker's loops, in order — loop_id is remapped by the caller.
34
47
  SELECT t.id, t.loop_id, t.sequence, t.timestamp, t.status,
@@ -44,40 +57,41 @@ RETURNING id;
44
57
 
45
58
  -- PREP: fork_get_log_entries
46
59
  -- worker_id is the branch's; loop_id/turn_id are remapped by the caller. The source `id` rides along so
47
- -- the caller can carry §log-region-tagging tags across (old id → new id). origin/source (attribution)
48
- -- and expanded (fold-state) ride along too. §machine-processes-fork-copies-the-log
60
+ -- the caller can carry {§log-region-tagging} tags across (old id → new id). origin/source (attribution)
61
+ -- and expanded (fold-state) ride along too. {§machine-processes-fork-copies-the-log}
49
62
  SELECT id, loop_id, turn_id, sequence, at, origin, source, op, suffix, signal,
50
- scheme, username, password, hostname, port, pathname, params, fragment,
63
+ ambient_event_id,
64
+ scheme, username, password, hostname, port, pathname, query, fragment,
51
65
  lineMarker, tx, mimetype_tx, rx, mimetype_rx, status_rx, tokens,
52
66
  state, outcome, attrs, expanded
53
67
  FROM log_entries WHERE worker_id = $worker_id ORDER BY id;
54
68
 
55
69
  -- PREP: fork_insert_log_entry
56
- -- RETURNING the new id so the caller can copy the row's region tags onto it (§log-region-tagging).
57
- INSERT INTO log_entries (worker_id, loop_id, turn_id, sequence, at, origin, source, op, suffix, signal, scheme, username, password, hostname, port, pathname, params, fragment, lineMarker, tx, mimetype_tx, rx, mimetype_rx, status_rx, tokens, state, outcome, attrs, expanded)
58
- VALUES ($worker_id, $loop_id, $turn_id, $sequence, $at, $origin, $source, $op, $suffix, $signal, $scheme, $username, $password, $hostname, $port, $pathname, $params, $fragment, $lineMarker, $tx, $mimetype_tx, $rx, $mimetype_rx, $status_rx, $tokens, $state, $outcome, $attrs, $expanded)
70
+ -- RETURNING the new id so the caller can copy the row's region tags onto it ({§log-region-tagging}).
71
+ INSERT INTO log_entries (worker_id, loop_id, turn_id, sequence, at, origin, source, ambient_event_id, op, suffix, signal, scheme, username, password, hostname, port, pathname, query, fragment, lineMarker, tx, mimetype_tx, rx, mimetype_rx, status_rx, tokens, state, outcome, attrs, expanded)
72
+ VALUES ($worker_id, $loop_id, $turn_id, $sequence, $at, $origin, $source, $ambient_event_id, $op, $suffix, $signal, $scheme, $username, $password, $hostname, $port, $pathname, $query, $fragment, $lineMarker, $tx, $mimetype_tx, $rx, $mimetype_rx, $status_rx, $tokens, $state, $outcome, $attrs, $expanded)
59
73
  RETURNING id;
60
74
 
61
75
  -- PREP: fork_copy_log_tags
62
- -- §log-region-tagging + §machine-processes-fork-copies-the-log — a forked log row keeps its region
76
+ -- {§log-region-tagging} + {§machine-processes-fork-copies-the-log} — a forked log row keeps its region
63
77
  -- tags along with its fold-state, so a branch inherits the parent's named working-sets.
64
78
  INSERT INTO log_tags (log_entry_id, tag)
65
79
  SELECT $new_log_id, tag FROM log_tags WHERE log_entry_id = $old_log_id;
66
80
 
67
- -- §worker-scheme — a fork inherits the parent's worker-scope SCRATCH (its private workspace), distinct
81
+ -- {§worker-scheme} — a fork inherits the parent's private entries, distinct
68
82
  -- from the shared workspace world above: "fork = everything-in-common-but-name, then diverges". The
69
- -- entries are deep-copied (new ids) with the owner remapped in the pathname (parent → branch), so
83
+ -- entries are deep-copied (new ids) with the owner remapped (parent → branch), so
70
84
  -- the branch's scratch is independent — it edits its own without touching the parent's.
71
85
 
72
- -- PREP: fork_get_worker_scope_entries
73
- -- The parent's worker-scope entries. Content-addressed deep artifact pointers
86
+ -- PREP: fork_get_private_entries
87
+ -- The parent's private entries. Content-addressed deep artifact pointers
74
88
  -- and attributes ride along; copying the channels keeps the pointer valid so
75
89
  -- the next-turn pump skips re-derivation (the content is byte-identical).
76
90
  SELECT id, scheme, pathname, deep_hash, attributes
77
91
  FROM entries WHERE workspace_id = $workspace_id AND owner_id = $owner_id ORDER BY id;
78
92
 
79
- -- PREP: fork_insert_worker_scope_entry
80
- -- A worker-scope entry copy with the owner-remapped pathname. synced_sig/membership_origin are NULL
93
+ -- PREP: fork_insert_private_entry
94
+ -- A private entry copy with the branch as owner. synced_sig/membership_origin are NULL
81
95
  -- (scratch is never disk-synced nor a file member); version defaults 0.
82
96
  INSERT INTO entries (workspace_id, owner_id, scheme, pathname, deep_hash, attributes)
83
97
  VALUES ($workspace_id, $owner_id, $scheme, $pathname, $deep_hash, $attributes)
@@ -86,8 +100,8 @@ RETURNING id;
86
100
  -- PREP: fork_copy_entry_channels
87
101
  -- Copy every source channel from the source entry to the copy. Deep projections
88
102
  -- live on the shared artifact, not on either entry.
89
- INSERT INTO entry_channels (entry_id, name, content, mimetype, tokens, state)
90
- SELECT $new_entry_id, name, content, mimetype, tokens, state FROM entry_channels WHERE entry_id = $old_entry_id;
103
+ INSERT INTO entry_channels (entry_id, name, content, mimetype, tokens, state, producer_result)
104
+ SELECT $new_entry_id, name, content, mimetype, tokens, state, producer_result FROM entry_channels WHERE entry_id = $old_entry_id;
91
105
 
92
106
  -- PREP: fork_copy_entry_tags
93
107
  INSERT INTO entry_tags (entry_id, tag)
@@ -1,2 +1,4 @@
1
1
  export declare const hermeticGitEnv: () => NodeJS.ProcessEnv;
2
+ export declare const isomorphicGitEnabled: () => boolean;
3
+ export declare const gitOutputMaxBytes: () => number;
2
4
  //# sourceMappingURL=git-env.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"git-env.d.ts","sourceRoot":"","sources":["../../src/core/git-env.ts"],"names":[],"mappings":"AAkBA,eAAO,MAAM,cAAc,QAAO,MAAM,CAAC,UAIvC,CAAC"}
1
+ {"version":3,"file":"git-env.d.ts","sourceRoot":"","sources":["../../src/core/git-env.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,cAAc,QAAO,MAAM,CAAC,UAIvC,CAAC;AAIH,eAAO,MAAM,oBAAoB,QAAO,OACM,CAAC;AAE/C,eAAO,MAAM,iBAAiB,QAAO,MAMpC,CAAC"}
@@ -1,24 +1,19 @@
1
- // Ambient GIT_* is scrubbed at the one boundary that spawns git — post-#461 that boundary is
2
- // the PLURNK_SERVICE_GIT_NATIVE=1 arm (GitMembership/GitState routing to system git) plus the
3
- // intg git fixtures; the default GitIso backend never spawns and never reads env, so it needs
4
- // none of this. A process launched from a git hook inherits GIT_DIR — ABSOLUTE in a worktree
5
- // checkout — which retargets every child git at the enclosing repo regardless of cwd (#401:
6
- // the pre-push drill's fixture seeds stacked onto lane branches and deleted tracked files; a
7
- // hook-launched daemon would misread project git state the same way). Git resolves everything
8
- // it needs from cwd; project state binds to the workspace's project_root, never to whoever
9
- // spawned us.
10
- //
11
- // AND the machine's GLOBAL/SYSTEM config is severed (#428): a sandbox git op that reads
12
- // ~/.gitconfig picks up the user's `core.hooksPath` — the dotfiles hook symlinked from
13
- // ~/.git/templates/hooks — and a probe overwrote that global hook with `exit 1`, silently failing
14
- // every leaf repo's push for a day (a recurrence of #401's class via the global-config vector).
15
- // Pointing GIT_CONFIG_GLOBAL/SYSTEM at /dev/null means NO git op we spawn can read, invoke, or
16
- // write the machine's global hooks/config — membership is repo-scoped and machine-deterministic,
17
- // and a sandbox can never escape to ~/.git or ~/.gitconfig. (Our reads — ls-files/rev-parse — need
18
- // no user identity; `--exclude-standard` honors the repo's own .gitignore, never a global one.)
1
+ // {§membership-git-hermetic} — native Git receives no ambient GIT_* or
2
+ // global/system configuration. Repository identity follows the explicit cwd,
3
+ // and user hooks/config cannot affect or escape a workspace operation.
19
4
  export const hermeticGitEnv = () => ({
20
5
  ...Object.fromEntries(Object.entries(process.env).filter(([k]) => !k.startsWith("GIT_"))),
21
6
  GIT_CONFIG_GLOBAL: "/dev/null",
22
7
  GIT_CONFIG_SYSTEM: "/dev/null",
23
8
  });
9
+ // Native Git is the default. Isomorphic Git is an explicit portability option,
10
+ // never an automatic fallback for an absent or failed native binary.
11
+ export const isomorphicGitEnabled = () => process.env.PLURNK_SERVICE_GIT_ISO === "1";
12
+ export const gitOutputMaxBytes = () => {
13
+ const value = Number(process.env.PLURNK_SERVICE_GIT_OUTPUT_MAX_BYTES);
14
+ if (!Number.isSafeInteger(value) || value < 1) {
15
+ throw new Error("PLURNK_SERVICE_GIT_OUTPUT_MAX_BYTES must be a positive safe integer");
16
+ }
17
+ return value;
18
+ };
24
19
  //# sourceMappingURL=git-env.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"git-env.js","sourceRoot":"","sources":["../../src/core/git-env.ts"],"names":[],"mappings":"AAAA,6FAA6F;AAC7F,8FAA8F;AAC9F,8FAA8F;AAC9F,6FAA6F;AAC7F,4FAA4F;AAC5F,6FAA6F;AAC7F,8FAA8F;AAC9F,2FAA2F;AAC3F,cAAc;AACd,EAAE;AACF,wFAAwF;AACxF,uFAAuF;AACvF,kGAAkG;AAClG,gGAAgG;AAChG,+FAA+F;AAC/F,iGAAiG;AACjG,mGAAmG;AACnG,gGAAgG;AAChG,MAAM,CAAC,MAAM,cAAc,GAAG,GAAsB,EAAE,CAAC,CAAC;IACpD,GAAG,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;IACzF,iBAAiB,EAAE,WAAW;IAC9B,iBAAiB,EAAE,WAAW;CACjC,CAAC,CAAC"}
1
+ {"version":3,"file":"git-env.js","sourceRoot":"","sources":["../../src/core/git-env.ts"],"names":[],"mappings":"AAAA,uEAAuE;AACvE,6EAA6E;AAC7E,uEAAuE;AACvE,MAAM,CAAC,MAAM,cAAc,GAAG,GAAsB,EAAE,CAAC,CAAC;IACpD,GAAG,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;IACzF,iBAAiB,EAAE,WAAW;IAC9B,iBAAiB,EAAE,WAAW;CACjC,CAAC,CAAC;AAEH,+EAA+E;AAC/E,qEAAqE;AACrE,MAAM,CAAC,MAAM,oBAAoB,GAAG,GAAY,EAAE,CAC9C,OAAO,CAAC,GAAG,CAAC,sBAAsB,KAAK,GAAG,CAAC;AAE/C,MAAM,CAAC,MAAM,iBAAiB,GAAG,GAAW,EAAE;IAC1C,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC;IACtE,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;QAC5C,MAAM,IAAI,KAAK,CAAC,qEAAqE,CAAC,CAAC;IAC3F,CAAC;IACD,OAAO,KAAK,CAAC;AACjB,CAAC,CAAC"}
@@ -1,4 +1,4 @@
1
- import type { GitStatus } from "./git-state.ts";
1
+ import type { GitStatusSnapshot } from "./git-state.ts";
2
2
  export declare class GitIsoError extends Error {
3
3
  constructor(root: string, operation: string, cause: unknown);
4
4
  }
@@ -7,6 +7,7 @@ export default class GitIso {
7
7
  static trackedFiles(root: string, cache: object): Promise<string[]>;
8
8
  static untrackedFiles(root: string, cache: object): Promise<string[]>;
9
9
  static repoToplevel(dir: string): Promise<string | null>;
10
- static status(root: string): Promise<GitStatus>;
10
+ static status(workspaceRoot: string, repositoryRoot?: string): Promise<GitStatusSnapshot>;
11
+ static add(root: string, filepath: string): Promise<void>;
11
12
  }
12
13
  //# sourceMappingURL=git-iso.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"git-iso.d.ts","sourceRoot":"","sources":["../../src/core/git-iso.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAEhD,qBAAa,WAAY,SAAQ,KAAK;IAClC,YAAY,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAkB1D;CACJ;AAED,MAAM,CAAC,OAAO,OAAO,MAAM;;IA4CvB,OAAa,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAGxE;IAaD,OAAa,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAE1E;IAqED,OAAa,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAM7D;IAKD,OAAa,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAEpD;CAwDJ"}
1
+ {"version":3,"file":"git-iso.d.ts","sourceRoot":"","sources":["../../src/core/git-iso.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAGxD,qBAAa,WAAY,SAAQ,KAAK;IAClC,YAAY,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAkB1D;CACJ;AAED,MAAM,CAAC,OAAO,OAAO,MAAM;;IA0CvB,OAAa,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAGxE;IAaD,OAAa,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAE1E;IAqED,OAAa,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAM7D;IAKD,OAAa,MAAM,CAAC,aAAa,EAAE,MAAM,EAAE,cAAc,GAAE,MAAsB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAE7G;IAuED,OAAa,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAE9D;CACJ"}
@@ -1,17 +1,14 @@
1
- // The in-process git READ backend (#461/#463, isomorphic-git + the `ignore` lib) — the portable
2
- // default behind every core git read. No subprocess, and hermetic BY CONSTRUCTION: isomorphic-git
3
- // takes an explicit `dir` and never reads GIT_* env, ~/.gitconfig, or the system config, so the
4
- // escape class hermeticGitEnv scrubs on the native path (#401/#428) cannot exist here. A sandboxed
5
- // or git-less host gets identical membership + telemetry. `PLURNK_SERVICE_GIT_NATIVE=1` routes the
6
- // callers (GitMembership, GitState) to system git instead — the membership pass measures ~8x native
7
- // (~130ms at 20k files); the status read is pure-JS workdir hashing (statusMatrix, ~55x), the
8
- // flag's main case on a large repo.
1
+ // {§git-isomorphic-opt-in} — optional in-process Git reads. This
2
+ // backend takes an explicit dir and reads no GIT_* env or global/system config.
3
+ // Native Git is the default; PLURNK_SERVICE_GIT_ISO=1 selects this slower
4
+ // portability backend for a deployment that cannot spawn Git.
9
5
  import git, { STAGE } from "isomorphic-git";
10
6
  import fs from "node:fs";
11
7
  import ignore from "ignore";
12
8
  import { readdir, readFile } from "node:fs/promises";
13
9
  import { existsSync } from "node:fs";
14
10
  import { join } from "node:path";
11
+ import Namespace from "./namespace.js";
15
12
  export class GitIsoError extends Error {
16
13
  constructor(root, operation, cause) {
17
14
  const detail = typeof cause === "object"
@@ -26,7 +23,7 @@ export class GitIsoError extends Error {
26
23
  ? cause.message.trim().split("\n").filter((line) => line.length > 0).at(-1)
27
24
  : String(cause);
28
25
  super(`isomorphic-git could not read repository "${root}" while ${operation}: ${detail ?? "unknown failure"}. `
29
- + "Set PLURNK_SERVICE_GIT_NATIVE=1 to use the system Git backend.", { cause });
26
+ + "Disable PLURNK_SERVICE_GIT_ISO to use the native Git backend.", { cause });
30
27
  this.name = "GitIsoError";
31
28
  }
32
29
  }
@@ -63,8 +60,6 @@ export default class GitIso {
63
60
  const gitlinks = [];
64
61
  await git.walk({
65
62
  fs, dir: root, cache, trees: [STAGE()],
66
- // Explicit param types (#469): a TS7031 fired on a box whose inference didn't flow the
67
- // WalkerMap contextual type into the destructured param — annotate, never rely on it.
68
63
  map: async (filepath, [stage]) => {
69
64
  if (filepath === "." || stage === null)
70
65
  return undefined;
@@ -79,13 +74,13 @@ export default class GitIso {
79
74
  return { blobs, gitlinks };
80
75
  }
81
76
  // Tracked files, workspace-relative — parity with `git ls-files --stage -z` + the gitlink
82
- // filter: only blob entries (files + symlinks) are members; a `commit` entry is a submodule
83
- // boundary (a separate declared repo) and a `tree` is walk hierarchy, never a file.
77
+ // filter: only blob entries (files + symlinks) are members; a `commit` entry is a
78
+ // submodule boundary and a `tree` is walk hierarchy, never a file.
84
79
  static async trackedFiles(root, cache) {
85
80
  return GitIso.#read(root, "reading tracked files", async () => (await GitIso.#stageEntries(root, cache)).blobs);
86
81
  }
87
82
  // Untracked-but-not-ignored files — parity with `git ls-files --others --exclude-standard`,
88
- // differential-gated against it across the gitignore edge-case corpus (#463). A pruning
83
+ // differential-gated against it across the gitignore edge-case corpus. A pruning
89
84
  // fs-walk with the `ignore` lib: rules load ONCE per .gitignore (per-file `git.isIgnored`
90
85
  // re-parses every call — measured 237x native; statusMatrix hashes the workdir — 55x, and
91
86
  // crosses embedded-repo boundaries; the whole membership pass measures ~8x). Precedence is
@@ -132,7 +127,7 @@ export default class GitIso {
132
127
  continue;
133
128
  const r = rel.length > 0 ? `${rel}/${entry.name}` : entry.name;
134
129
  if (boundaries.has(r))
135
- continue; // submodule — a separate declared repo
130
+ continue; // submodule repository boundary
136
131
  const isDir = entry.isDirectory();
137
132
  if (ignored(r, isDir))
138
133
  continue; // pruned: ignored dirs are never descended
@@ -189,28 +184,39 @@ export default class GitIso {
189
184
  // Working-tree status — parity with `git status --porcelain --branch`: branch, ahead/behind
190
185
  // the configured upstream, and staged/unstaged/untracked counts. Repository incompatibilities
191
186
  // surface as GitIsoError; GitState distinguishes the ordinary non-repo case before this call.
192
- static async status(root) {
193
- return GitIso.#read(root, "reading working-tree status", () => GitIso.#status(root));
187
+ static async status(workspaceRoot, repositoryRoot = workspaceRoot) {
188
+ return GitIso.#read(repositoryRoot, "reading working-tree status", () => GitIso.#status(workspaceRoot, repositoryRoot));
194
189
  }
195
- static async #status(root) {
190
+ static async #status(workspaceRoot, repositoryRoot) {
196
191
  const cache = {};
197
- const branch = await git.currentBranch({ fs, dir: root, fullname: false }) ?? "HEAD"; // detached → HEAD, as porcelain renders it
198
- const matrix = await git.statusMatrix({ fs, dir: root, cache });
192
+ const branch = await git.currentBranch({ fs, dir: repositoryRoot, fullname: false }) ?? "HEAD"; // detached → HEAD, as porcelain renders it
193
+ const matrix = await git.statusMatrix({ fs, dir: repositoryRoot, cache });
199
194
  let staged = 0;
200
195
  let unstaged = 0;
201
196
  let untracked = 0;
202
- for (const [, head, workdir, stage] of matrix) {
197
+ const files = [];
198
+ for (const [filepath, head, workdir, stage] of matrix) {
199
+ const path = Namespace.fromRepositoryPath(filepath, workspaceRoot, repositoryRoot);
203
200
  if (head === 0 && stage === 0 && workdir === 2) {
204
201
  untracked++;
202
+ files.push({ path, status: "??" });
205
203
  continue;
206
204
  }
207
- if (head === 1 ? stage !== 1 : stage !== 0)
208
- staged++; // index differs from HEAD → X column
209
- if ((workdir === 2 && stage !== 2) || (workdir === 0 && stage !== 0))
210
- unstaged++; // workdir differs from index → Y column
205
+ const isStaged = head === 1 ? stage !== 1 : stage !== 0;
206
+ const isUnstaged = (workdir === 2 && stage !== 2) || (workdir === 0 && stage !== 0);
207
+ if (isStaged)
208
+ staged++;
209
+ if (isUnstaged)
210
+ unstaged++;
211
+ if (isStaged || isUnstaged) {
212
+ const index = isStaged ? (head === 0 ? "A" : stage === 0 ? "D" : "M") : " ";
213
+ const worktree = isUnstaged ? (workdir === 0 ? "D" : "M") : " ";
214
+ files.push({ path, status: `${index}${worktree}` });
215
+ }
211
216
  }
212
- const { ahead, behind } = await GitIso.#aheadBehind(root, branch, cache);
213
- return { branch, ahead, behind, staged, unstaged, untracked };
217
+ files.sort((a, b) => a.path.localeCompare(b.path));
218
+ const { ahead, behind } = await GitIso.#aheadBehind(repositoryRoot, branch, cache);
219
+ return { branch, ahead, behind, staged, unstaged, untracked, files };
214
220
  }
215
221
  // ahead/behind vs the branch's configured upstream (branch.<name>.remote + .merge →
216
222
  // refs/remotes/<remote>/<branch>). No upstream configured or never fetched → 0/0, the
@@ -254,5 +260,8 @@ export default class GitIso {
254
260
  }
255
261
  return count;
256
262
  }
263
+ static async add(root, filepath) {
264
+ await git.add({ fs, dir: root, filepath });
265
+ }
257
266
  }
258
267
  //# sourceMappingURL=git-iso.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"git-iso.js","sourceRoot":"","sources":["../../src/core/git-iso.ts"],"names":[],"mappings":"AAAA,gGAAgG;AAChG,kGAAkG;AAClG,gGAAgG;AAChG,mGAAmG;AACnG,mGAAmG;AACnG,oGAAoG;AACpG,8FAA8F;AAC9F,oCAAoC;AAEpC,OAAO,GAAG,EAAE,EAAE,KAAK,EAAoB,MAAM,gBAAgB,CAAC;AAC9D,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,MAAuB,MAAM,QAAQ,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAGjC,MAAM,OAAO,WAAY,SAAQ,KAAK;IAClC,YAAY,IAAY,EAAE,SAAiB,EAAE,KAAc;QACvD,MAAM,MAAM,GAAG,OAAO,KAAK,KAAK,QAAQ;eACjC,KAAK,KAAK,IAAI;eACd,MAAM,IAAI,KAAK;eACf,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ;eAC9B,KAAK,CAAC,IAAI,KAAK,IAAI;eACnB,SAAS,IAAI,KAAK,CAAC,IAAI;eACvB,OAAO,KAAK,CAAC,IAAI,CAAC,OAAO,KAAK,QAAQ;YACzC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO;YACpB,CAAC,CAAC,KAAK,YAAY,KAAK;gBACpB,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;gBAC3E,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACxB,KAAK,CACD,6CAA6C,IAAI,WAAW,SAAS,KAAK,MAAM,IAAI,iBAAiB,IAAI;cACvG,gEAAgE,EAClE,EAAE,KAAK,EAAE,CACZ,CAAC;QACF,IAAI,CAAC,IAAI,GAAG,aAAa,CAAC;IAC9B,CAAC;CACJ;AAED,MAAM,CAAC,OAAO,OAAO,MAAM;IACvB,MAAM,CAAC,KAAK,CAAC,KAAK,CAAI,IAAY,EAAE,SAAiB,EAAE,IAAsB;QACzE,IAAI,CAAC;YACD,OAAO,MAAM,IAAI,EAAE,CAAC;QACxB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,MAAM,IAAI,WAAW,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;QAClD,CAAC;IACL,CAAC;IAED,kFAAkF;IAClF,oFAAoF;IACpF,oFAAoF;IACpF,sFAAsF;IACtF,sFAAsF;IACtF,MAAM,CAAC,UAAU,GAAG,IAAI,OAAO,EAAyE,CAAC;IACzG,MAAM,CAAC,aAAa,CAAC,IAAY,EAAE,KAAa;QAC5C,IAAI,QAAQ,GAAG,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC5C,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAAC,QAAQ,GAAG,IAAI,GAAG,EAAE,CAAC;YAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;QAAC,CAAC;QAC7F,IAAI,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC/B,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YAAC,KAAK,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAAC,CAAC;QAC/F,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,IAAY,EAAE,KAAa;QAC/C,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,MAAM,QAAQ,GAAa,EAAE,CAAC;QAC9B,MAAM,GAAG,CAAC,IAAI,CAAC;YACX,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,KAAK,EAAE,CAAC;YACtC,uFAAuF;YACvF,sFAAsF;YACtF,GAAG,EAAE,KAAK,EAAE,QAAgB,EAAE,CAAC,KAAK,CAA4B,EAAE,EAAE;gBAChE,IAAI,QAAQ,KAAK,GAAG,IAAI,KAAK,KAAK,IAAI;oBAAE,OAAO,SAAS,CAAC;gBACzD,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,IAAI,EAAE,CAAC;gBAChC,IAAI,IAAI,KAAK,MAAM;oBAAE,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAC1C,IAAI,IAAI,KAAK,QAAQ;oBAAE,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAC/C,OAAO,SAAS,CAAC;YACrB,CAAC;SACJ,CAAC,CAAC;QACH,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;IAC/B,CAAC;IAED,0FAA0F;IAC1F,4FAA4F;IAC5F,oFAAoF;IACpF,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,IAAY,EAAE,KAAa;QACjD,OAAO,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,uBAAuB,EAAE,KAAK,IAAI,EAAE,CAC1D,CAAC,MAAM,MAAM,CAAC,aAAa,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IACzD,CAAC;IAED,4FAA4F;IAC5F,wFAAwF;IACxF,0FAA0F;IAC1F,0FAA0F;IAC1F,2FAA2F;IAC3F,qDAAqD;IACrD,uFAAuF;IACvF,2FAA2F;IAC3F,4FAA4F;IAC5F,2FAA2F;IAC3F,mDAAmD;IACnD,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,IAAY,EAAE,KAAa;QACnD,OAAO,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,yBAAyB,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,eAAe,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;IACpG,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC,IAAY,EAAE,KAAa;QACpD,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACpE,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC;QAC/B,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC;QACrC,gFAAgF;QAChF,MAAM,QAAQ,GAAwC,EAAE,CAAC;QACzD,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QACjD,IAAI,QAAQ,KAAK,IAAI;YAAE,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QAC/E,MAAM,OAAO,GAAG,CAAC,GAAW,EAAE,KAAc,EAAW,EAAE;YACrD,IAAI,OAAO,GAAG,KAAK,CAAC;YACpB,KAAK,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,QAAQ,EAAE,CAAC;gBAClC,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,IAAI,GAAG,CAAC;oBAAE,SAAS;gBAC7D,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;gBACjE,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;gBAC/C,IAAI,CAAC,CAAC,OAAO;oBAAE,OAAO,GAAG,IAAI,CAAC;qBACzB,IAAI,CAAC,CAAC,SAAS;oBAAE,OAAO,GAAG,KAAK,CAAC;YAC1C,CAAC;YACD,OAAO,OAAO,CAAC;QACnB,CAAC,CAAC;QACF,MAAM,SAAS,GAAa,EAAE,CAAC;QAC/B,MAAM,OAAO,GAAG,KAAK,EAAE,GAAW,EAAiB,EAAE;YACjD,MAAM,EAAE,GAAG,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,YAAY,CAAC,CAAC;YACzC,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC;YAC9B,IAAI,UAAU,CAAC,EAAE,CAAC;gBAAE,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,MAAM,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC;YAC/F,KAAK,MAAM,KAAK,IAAI,MAAM,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;gBAC1E,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM;oBAAE,SAAS;gBACpC,MAAM,CAAC,GAAG,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC;gBAC/D,IAAI,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;oBAAE,SAAS,CAAE,uCAAuC;gBACzE,MAAM,KAAK,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;gBAClC,IAAI,OAAO,CAAC,CAAC,EAAE,KAAK,CAAC;oBAAE,SAAS,CAAE,2CAA2C;gBAC7E,IAAI,KAAK,EAAE,CAAC;oBACR,uEAAuE;oBACvE,sEAAsE;oBACtE,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC;wBAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;wBAAC,SAAS;oBAAC,CAAC;oBAC7E,MAAM,OAAO,CAAC,CAAC,CAAC,CAAC;gBACrB,CAAC;qBAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;oBACzB,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBACtB,CAAC;YACL,CAAC;YACD,QAAQ,CAAC,MAAM,GAAG,KAAK,CAAC,CAAE,sCAAsC;QACpE,CAAC,CAAC;QACF,MAAM,OAAO,CAAC,EAAE,CAAC,CAAC;QAClB,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,wFAAwF;IACxF,wFAAwF;IACxF,gEAAgE;IAChE,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,IAAY;QAClC,IAAI,CAAC;YACD,IAAI,MAAM,GAAG,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YAChC,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC;gBAC5C,MAAM,OAAO,GAAG,CAAC,MAAM,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;gBACxD,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC;oBAAE,OAAO,IAAI,CAAC;gBAChD,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC;YACpD,CAAC;YACD,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;YAC5C,IAAI,UAAU,CAAC,SAAS,CAAC;gBAAE,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,MAAM,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;YAC7F,OAAO,MAAM,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,cAAc,CAAC,EAAE,MAAM,CAAC,CAAC;QAChE,CAAC;QAAC,MAAM,CAAC;YACL,OAAO,IAAI,CAAC;QAChB,CAAC;IACL,CAAC;IAED,4FAA4F;IAC5F,sFAAsF;IACtF,wEAAwE;IACxE,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,GAAW;QACjC,IAAI,CAAC;YACD,OAAO,MAAM,GAAG,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC;QACrD,CAAC;QAAC,MAAM,CAAC;YACL,OAAO,IAAI,CAAC,CAAE,4DAA4D;QAC9E,CAAC;IACL,CAAC;IAED,4FAA4F;IAC5F,8FAA8F;IAC9F,8FAA8F;IAC9F,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,IAAY;QAC5B,OAAO,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,6BAA6B,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;IACzF,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,IAAY;QAC7B,MAAM,KAAK,GAAG,EAAE,CAAC;QACjB,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,aAAa,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,IAAI,MAAM,CAAC,CAAE,2CAA2C;QAClI,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,YAAY,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;QAChE,IAAI,MAAM,GAAG,CAAC,CAAC;QACf,IAAI,QAAQ,GAAG,CAAC,CAAC;QACjB,IAAI,SAAS,GAAG,CAAC,CAAC;QAClB,KAAK,MAAM,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,IAAI,MAAM,EAAE,CAAC;YAC5C,IAAI,IAAI,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI,OAAO,KAAK,CAAC,EAAE,CAAC;gBAAC,SAAS,EAAE,CAAC;gBAAC,SAAS;YAAC,CAAC;YAC1E,IAAI,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC;gBAAE,MAAM,EAAE,CAAC,CAAY,qCAAqC;YACtG,IAAI,CAAC,OAAO,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC,IAAI,CAAC,OAAO,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC;gBAAE,QAAQ,EAAE,CAAC,CAAE,wCAAwC;QAC/H,CAAC;QACD,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;QACzE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;IAClE,CAAC;IAED,oFAAoF;IACpF,sFAAsF;IACtF,wFAAwF;IACxF,yFAAyF;IACzF,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,IAAY,EAAE,MAAc,EAAE,KAAa;QACjE,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;QACrC,IAAI,MAAM,KAAK,MAAM;YAAE,OAAO,IAAI,CAAC,CAAE,gDAAgD;QACrF,IAAI,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,MAAM,SAAS,EAAE,CAAuB,CAAC;YAC7G,MAAM,KAAK,GAAG,MAAM,GAAG,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,MAAM,QAAQ,EAAE,CAAuB,CAAC;YAC3G,IAAI,MAAM,KAAK,SAAS,IAAI,KAAK,KAAK,SAAS;gBAAE,OAAO,IAAI,CAAC;YAC7D,MAAM,GAAG,GAAG,MAAM,GAAG,CAAC,UAAU,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,CAAC;YACjE,MAAM,EAAE,GAAG,MAAM,GAAG,CAAC,UAAU,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,gBAAgB,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,gBAAgB,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;YACzH,IAAI,GAAG,KAAK,EAAE;gBAAE,OAAO,IAAI,CAAC;YAC5B,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,aAAa,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,CAAa,CAAC,CAAC;YACrG,OAAO;gBACH,KAAK,EAAE,MAAM,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC;gBACxD,MAAM,EAAE,MAAM,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC;aAC3D,CAAC;QACN,CAAC;QAAC,MAAM,CAAC;YACL,OAAO,IAAI,CAAC,CAAE,4EAA4E;QAC9F,CAAC;IACL,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,IAAY,EAAE,GAAW,EAAE,IAAyB,EAAE,KAAa;QACzF,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,MAAM,KAAK,GAAG,CAAC,GAAG,CAAC,CAAC;QACpB,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;QAC/B,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtB,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,EAAY,CAAC;YAClC,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;gBAAE,SAAS;YAC7C,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACd,KAAK,EAAE,CAAC;YACR,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,GAAG,CAAC,UAAU,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC;YACvE,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;QACjC,CAAC;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;CACJ"}
1
+ {"version":3,"file":"git-iso.js","sourceRoot":"","sources":["../../src/core/git-iso.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,6 @@ import type { Db } from "./Db.ts";
2
2
  import type { PlurnkSchemeContext } from "./scheme-types.ts";
3
3
  export interface FsDivergence {
4
4
  pathname: string;
5
- scheme: string | null;
6
5
  entryId: number;
7
6
  channel: string;
8
7
  before: string;
@@ -11,6 +10,8 @@ export interface FsDivergence {
11
10
  export default class GitMembership {
12
11
  #private;
13
12
  static wouldGitAdmit(root: string, key: string, signal?: AbortSignal): Promise<boolean>;
13
+ static stageFile(root: string, key: string, signal?: AbortSignal): Promise<void>;
14
+ static projectRepository(db: Db, workspaceId: number, signal?: AbortSignal): Promise<string | null>;
14
15
  static resolveGitMembership(db: Db, workspaceId: number, signal: AbortSignal | undefined): Promise<string[]>;
15
16
  static resolveMembershipEffects(db: Db, workspaceId: number, signal: AbortSignal | undefined): Promise<{
16
17
  members: Array<{
@@ -1 +1 @@
1
- {"version":3,"file":"git-membership.d.ts","sourceRoot":"","sources":["../../src/core/git-membership.ts"],"names":[],"mappings":"AAmCA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAQ7D,MAAM,WAAW,YAAY;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;CACjB;AAKD,MAAM,CAAC,OAAO,OAAO,aAAa;;IAa9B,OAAa,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,CAO5F;IAyKD,OAAa,oBAAoB,CAC7B,EAAE,EAAE,EAAE,EACN,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,WAAW,GAAG,SAAS,GAChC,OAAO,CAAC,MAAM,EAAE,CAAC,CAmCnB;IASD,OAAa,wBAAwB,CACjC,EAAE,EAAE,EAAE,EACN,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,WAAW,GAAG,SAAS,GAChC,OAAO,CAAC;QAAE,OAAO,EAAE,KAAK,CAAC;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,QAAQ,GAAG,MAAM,CAAA;SAAE,CAAC,CAAC;QAAC,MAAM,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,CAkB5F;IA0GD,OAAa,kBAAkB,CAAC,GAAG,EAAE,mBAAmB,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,CAcjF;CAaJ"}
1
+ {"version":3,"file":"git-membership.d.ts","sourceRoot":"","sources":["../../src/core/git-membership.ts"],"names":[],"mappings":"AAuCA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAS7D,MAAM,WAAW,YAAY;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;CACjB;AAuDD,MAAM,CAAC,OAAO,OAAO,aAAa;;IAc9B,OAAa,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,CAO5F;IAED,OAAa,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAUrF;IAmDD,OAAa,iBAAiB,CAAC,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAKxG;IAoJD,OAAa,oBAAoB,CAC7B,EAAE,EAAE,EAAE,EACN,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,WAAW,GAAG,SAAS,GAChC,OAAO,CAAC,MAAM,EAAE,CAAC,CAEnB;IASD,OAAa,wBAAwB,CACjC,EAAE,EAAE,EAAE,EACN,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,WAAW,GAAG,SAAS,GAChC,OAAO,CAAC;QAAE,OAAO,EAAE,KAAK,CAAC;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,QAAQ,GAAG,MAAM,CAAA;SAAE,CAAC,CAAC;QAAC,MAAM,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,CAkB5F;IAqOD,OAAa,kBAAkB,CAAC,GAAG,EAAE,mBAAmB,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,CAcjF;CAcJ"}