devchain-cli 0.14.1 → 0.15.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 (392) hide show
  1. package/README.md +6 -4
  2. package/dist/cli.js +5 -11
  3. package/dist/drizzle/0065_next_lady_bullseye.sql +11 -0
  4. package/dist/drizzle/meta/0065_snapshot.json +5691 -0
  5. package/dist/drizzle/meta/_journal.json +7 -0
  6. package/dist/node_modules/@devchain/codebase-overview/tsconfig.tsbuildinfo +1 -1
  7. package/dist/node_modules/@devchain/codebase-overview/types.d.ts.map +1 -1
  8. package/dist/node_modules/@devchain/shared/__fixtures__/phase2-frames.d.ts +20 -0
  9. package/dist/node_modules/@devchain/shared/__fixtures__/phase2-frames.d.ts.map +1 -0
  10. package/dist/node_modules/@devchain/shared/__fixtures__/phase2-frames.js +77 -0
  11. package/dist/node_modules/@devchain/shared/__fixtures__/phase2-frames.js.map +1 -0
  12. package/dist/node_modules/@devchain/shared/device-key/index.d.ts +2 -0
  13. package/dist/node_modules/@devchain/shared/device-key/index.d.ts.map +1 -0
  14. package/dist/node_modules/@devchain/shared/device-key/index.js +2 -0
  15. package/dist/node_modules/@devchain/shared/device-key/index.js.map +1 -0
  16. package/dist/node_modules/@devchain/shared/device-key/keypair.d.ts +23 -0
  17. package/dist/node_modules/@devchain/shared/device-key/keypair.d.ts.map +1 -0
  18. package/dist/node_modules/@devchain/shared/device-key/keypair.js +54 -0
  19. package/dist/node_modules/@devchain/shared/device-key/keypair.js.map +1 -0
  20. package/dist/node_modules/@devchain/shared/e2ee/aad.d.ts +3 -0
  21. package/dist/node_modules/@devchain/shared/e2ee/aad.d.ts.map +1 -0
  22. package/dist/node_modules/@devchain/shared/e2ee/aad.js +0 -0
  23. package/dist/node_modules/@devchain/shared/e2ee/aad.js.map +1 -0
  24. package/dist/node_modules/@devchain/shared/e2ee/base64.d.ts +6 -0
  25. package/dist/node_modules/@devchain/shared/e2ee/base64.d.ts.map +1 -0
  26. package/dist/node_modules/@devchain/shared/e2ee/base64.js +69 -0
  27. package/dist/node_modules/@devchain/shared/e2ee/base64.js.map +1 -0
  28. package/dist/node_modules/@devchain/shared/e2ee/crypto-envelope.service.d.ts +9 -0
  29. package/dist/node_modules/@devchain/shared/e2ee/crypto-envelope.service.d.ts.map +1 -0
  30. package/dist/node_modules/@devchain/shared/e2ee/crypto-envelope.service.js +78 -0
  31. package/dist/node_modules/@devchain/shared/e2ee/crypto-envelope.service.js.map +1 -0
  32. package/dist/node_modules/@devchain/shared/e2ee/envelope.d.ts +63 -0
  33. package/dist/node_modules/@devchain/shared/e2ee/envelope.d.ts.map +1 -0
  34. package/dist/node_modules/@devchain/shared/e2ee/envelope.js +64 -0
  35. package/dist/node_modules/@devchain/shared/e2ee/envelope.js.map +1 -0
  36. package/dist/node_modules/@devchain/shared/e2ee/index.d.ts +10 -0
  37. package/dist/node_modules/@devchain/shared/e2ee/index.d.ts.map +1 -0
  38. package/dist/node_modules/@devchain/shared/e2ee/index.js +10 -0
  39. package/dist/node_modules/@devchain/shared/e2ee/index.js.map +1 -0
  40. package/dist/node_modules/@devchain/shared/e2ee/key-exchange.d.ts +17 -0
  41. package/dist/node_modules/@devchain/shared/e2ee/key-exchange.d.ts.map +1 -0
  42. package/dist/node_modules/@devchain/shared/e2ee/key-exchange.js +72 -0
  43. package/dist/node_modules/@devchain/shared/e2ee/key-exchange.js.map +1 -0
  44. package/dist/node_modules/@devchain/shared/e2ee/keypair.d.ts +13 -0
  45. package/dist/node_modules/@devchain/shared/e2ee/keypair.d.ts.map +1 -0
  46. package/dist/node_modules/@devchain/shared/e2ee/keypair.js +34 -0
  47. package/dist/node_modules/@devchain/shared/e2ee/keypair.js.map +1 -0
  48. package/dist/node_modules/@devchain/shared/e2ee/negotiation.d.ts +30 -0
  49. package/dist/node_modules/@devchain/shared/e2ee/negotiation.d.ts.map +1 -0
  50. package/dist/node_modules/@devchain/shared/e2ee/negotiation.js +70 -0
  51. package/dist/node_modules/@devchain/shared/e2ee/negotiation.js.map +1 -0
  52. package/dist/node_modules/@devchain/shared/e2ee/safety-number.d.ts +3 -0
  53. package/dist/node_modules/@devchain/shared/e2ee/safety-number.d.ts.map +1 -0
  54. package/dist/node_modules/@devchain/shared/e2ee/safety-number.js +33 -0
  55. package/dist/node_modules/@devchain/shared/e2ee/safety-number.js.map +1 -0
  56. package/dist/node_modules/@devchain/shared/e2ee/trust.d.ts +22 -0
  57. package/dist/node_modules/@devchain/shared/e2ee/trust.d.ts.map +1 -0
  58. package/dist/node_modules/@devchain/shared/e2ee/trust.js +25 -0
  59. package/dist/node_modules/@devchain/shared/e2ee/trust.js.map +1 -0
  60. package/dist/node_modules/@devchain/shared/index.d.ts +3 -0
  61. package/dist/node_modules/@devchain/shared/index.d.ts.map +1 -1
  62. package/dist/node_modules/@devchain/shared/index.js +3 -0
  63. package/dist/node_modules/@devchain/shared/index.js.map +1 -1
  64. package/dist/node_modules/@devchain/shared/schemas/export-schema.d.ts +14 -6
  65. package/dist/node_modules/@devchain/shared/schemas/export-schema.d.ts.map +1 -1
  66. package/dist/node_modules/@devchain/shared/schemas/export-schema.js +1 -0
  67. package/dist/node_modules/@devchain/shared/schemas/export-schema.js.map +1 -1
  68. package/dist/node_modules/@devchain/shared/tsconfig.tsbuildinfo +1 -1
  69. package/dist/node_modules/@devchain/shared/tunnel-protocol.d.ts +99 -0
  70. package/dist/node_modules/@devchain/shared/tunnel-protocol.d.ts.map +1 -0
  71. package/dist/node_modules/@devchain/shared/tunnel-protocol.js +148 -0
  72. package/dist/node_modules/@devchain/shared/tunnel-protocol.js.map +1 -0
  73. package/dist/server/app.main.module.js +2 -0
  74. package/dist/server/app.main.module.js.map +1 -1
  75. package/dist/server/app.normal.module.js +2 -0
  76. package/dist/server/app.normal.module.js.map +1 -1
  77. package/dist/server/common/config/env.config.js +5 -7
  78. package/dist/server/common/config/env.config.js.map +1 -1
  79. package/dist/server/common/test/app-bootstrap.helper.js +5 -1
  80. package/dist/server/common/test/app-bootstrap.helper.js.map +1 -1
  81. package/dist/server/modules/agent-message-delivery/adapters/legacy-delivery-formatter.adapter.js +4 -0
  82. package/dist/server/modules/agent-message-delivery/adapters/legacy-delivery-formatter.adapter.js.map +1 -1
  83. package/dist/server/modules/agent-message-delivery/agent-message-delivery.service.d.ts +3 -1
  84. package/dist/server/modules/agent-message-delivery/agent-message-delivery.service.js +16 -3
  85. package/dist/server/modules/agent-message-delivery/agent-message-delivery.service.js.map +1 -1
  86. package/dist/server/modules/agent-message-delivery/dtos/delivery.types.d.ts +4 -0
  87. package/dist/server/modules/cloud/cloud.module.js +8 -1
  88. package/dist/server/modules/cloud/cloud.module.js.map +1 -1
  89. package/dist/server/modules/cloud/controllers/auth-callback.controller.js +5 -4
  90. package/dist/server/modules/cloud/controllers/auth-callback.controller.js.map +1 -1
  91. package/dist/server/modules/cloud/controllers/devices-proxy.controller.js +1 -1
  92. package/dist/server/modules/cloud/controllers/devices-proxy.controller.js.map +1 -1
  93. package/dist/server/modules/cloud/controllers/preferences-proxy.controller.js +1 -1
  94. package/dist/server/modules/cloud/controllers/preferences-proxy.controller.js.map +1 -1
  95. package/dist/server/modules/cloud/controllers/qr-initiate-proxy.controller.js +1 -1
  96. package/dist/server/modules/cloud/controllers/qr-initiate-proxy.controller.js.map +1 -1
  97. package/dist/server/modules/cloud/controllers/store-tokens-error.d.ts +4 -0
  98. package/dist/server/modules/cloud/controllers/store-tokens-error.js +103 -0
  99. package/dist/server/modules/cloud/controllers/store-tokens-error.js.map +1 -0
  100. package/dist/server/modules/cloud/services/cloud-session-manager.service.js +18 -8
  101. package/dist/server/modules/cloud/services/cloud-session-manager.service.js.map +1 -1
  102. package/dist/server/modules/cloud/services/egress-queue.service.js +2 -2
  103. package/dist/server/modules/cloud/services/egress-queue.service.js.map +1 -1
  104. package/dist/server/modules/cloud/services/event-mapper.service.d.ts +9 -1
  105. package/dist/server/modules/cloud/services/event-mapper.service.js +18 -2
  106. package/dist/server/modules/cloud/services/event-mapper.service.js.map +1 -1
  107. package/dist/server/modules/cloud/services/project-activity-reporter.service.js +1 -1
  108. package/dist/server/modules/cloud/services/project-activity-reporter.service.js.map +1 -1
  109. package/dist/server/modules/cloud-tunnel/cloud-tunnel.module.js +57 -2
  110. package/dist/server/modules/cloud-tunnel/cloud-tunnel.module.js.map +1 -1
  111. package/dist/server/modules/cloud-tunnel/services/ask-user-question-push-gate.service.d.ts +20 -0
  112. package/dist/server/modules/cloud-tunnel/services/ask-user-question-push-gate.service.js +84 -0
  113. package/dist/server/modules/cloud-tunnel/services/ask-user-question-push-gate.service.js.map +1 -0
  114. package/dist/server/modules/cloud-tunnel/services/epic-dto.util.d.ts +3 -0
  115. package/dist/server/modules/cloud-tunnel/services/epic-dto.util.js +43 -0
  116. package/dist/server/modules/cloud-tunnel/services/epic-dto.util.js.map +1 -0
  117. package/dist/server/modules/cloud-tunnel/services/jsonrpc-error.util.d.ts +11 -0
  118. package/dist/server/modules/cloud-tunnel/services/jsonrpc-error.util.js +32 -0
  119. package/dist/server/modules/cloud-tunnel/services/jsonrpc-error.util.js.map +1 -0
  120. package/dist/server/modules/cloud-tunnel/services/lifecycle-operation-tracker.d.ts +30 -0
  121. package/dist/server/modules/cloud-tunnel/services/lifecycle-operation-tracker.js +80 -0
  122. package/dist/server/modules/cloud-tunnel/services/lifecycle-operation-tracker.js.map +1 -0
  123. package/dist/server/modules/cloud-tunnel/services/mobile-board-rpc.service.d.ts +16 -0
  124. package/dist/server/modules/cloud-tunnel/services/mobile-board-rpc.service.js +78 -0
  125. package/dist/server/modules/cloud-tunnel/services/mobile-board-rpc.service.js.map +1 -0
  126. package/dist/server/modules/cloud-tunnel/services/mobile-chat-rpc.service.d.ts +112 -0
  127. package/dist/server/modules/cloud-tunnel/services/mobile-chat-rpc.service.js +457 -0
  128. package/dist/server/modules/cloud-tunnel/services/mobile-chat-rpc.service.js.map +1 -0
  129. package/dist/server/modules/cloud-tunnel/services/tunnel-client.service.d.ts +28 -2
  130. package/dist/server/modules/cloud-tunnel/services/tunnel-client.service.js +143 -5
  131. package/dist/server/modules/cloud-tunnel/services/tunnel-client.service.js.map +1 -1
  132. package/dist/server/modules/cloud-tunnel/services/tunnel-event-forwarder.service.d.ts +21 -0
  133. package/dist/server/modules/cloud-tunnel/services/tunnel-event-forwarder.service.js +171 -0
  134. package/dist/server/modules/cloud-tunnel/services/tunnel-event-forwarder.service.js.map +1 -0
  135. package/dist/server/modules/cloud-tunnel/services/tunnel-handler.service.d.ts +9 -4
  136. package/dist/server/modules/cloud-tunnel/services/tunnel-handler.service.js +194 -52
  137. package/dist/server/modules/cloud-tunnel/services/tunnel-handler.service.js.map +1 -1
  138. package/dist/server/modules/cloud-tunnel/services/tunnel-push-crypto.service.d.ts +21 -0
  139. package/dist/server/modules/cloud-tunnel/services/tunnel-push-crypto.service.js +117 -0
  140. package/dist/server/modules/cloud-tunnel/services/tunnel-push-crypto.service.js.map +1 -0
  141. package/dist/server/modules/cloud-tunnel/services/tunnel-rpc-crypto.service.d.ts +41 -0
  142. package/dist/server/modules/cloud-tunnel/services/tunnel-rpc-crypto.service.js +116 -0
  143. package/dist/server/modules/cloud-tunnel/services/tunnel-rpc-crypto.service.js.map +1 -0
  144. package/dist/server/modules/cloud-tunnel/services/tunnel-viewport-crypto.service.d.ts +20 -0
  145. package/dist/server/modules/cloud-tunnel/services/tunnel-viewport-crypto.service.js +114 -0
  146. package/dist/server/modules/cloud-tunnel/services/tunnel-viewport-crypto.service.js.map +1 -0
  147. package/dist/server/modules/cloud-tunnel/services/viewport-frame-sink.d.ts +6 -0
  148. package/dist/server/modules/cloud-tunnel/services/viewport-frame-sink.js +7 -0
  149. package/dist/server/modules/cloud-tunnel/services/viewport-frame-sink.js.map +1 -0
  150. package/dist/server/modules/cloud-tunnel/services/viewport-streamer.service.d.ts +30 -0
  151. package/dist/server/modules/cloud-tunnel/services/viewport-streamer.service.js +228 -0
  152. package/dist/server/modules/cloud-tunnel/services/viewport-streamer.service.js.map +1 -0
  153. package/dist/server/modules/e2ee/controllers/e2ee-pairing.controller.d.ts +18 -0
  154. package/dist/server/modules/e2ee/controllers/e2ee-pairing.controller.js +62 -0
  155. package/dist/server/modules/e2ee/controllers/e2ee-pairing.controller.js.map +1 -0
  156. package/dist/server/modules/e2ee/controllers/e2ee-trust.controller.d.ts +19 -0
  157. package/dist/server/modules/e2ee/controllers/e2ee-trust.controller.js +85 -0
  158. package/dist/server/modules/e2ee/controllers/e2ee-trust.controller.js.map +1 -0
  159. package/dist/server/modules/e2ee/e2ee.module.d.ts +2 -0
  160. package/dist/server/modules/e2ee/e2ee.module.js +27 -0
  161. package/dist/server/modules/e2ee/e2ee.module.js.map +1 -0
  162. package/dist/server/modules/e2ee/services/e2ee-device-store.service.d.ts +29 -0
  163. package/dist/server/modules/e2ee/services/e2ee-device-store.service.js +138 -0
  164. package/dist/server/modules/e2ee/services/e2ee-device-store.service.js.map +1 -0
  165. package/dist/server/modules/e2ee/services/e2ee-keypair.service.d.ts +21 -0
  166. package/dist/server/modules/e2ee/services/e2ee-keypair.service.js +152 -0
  167. package/dist/server/modules/e2ee/services/e2ee-keypair.service.js.map +1 -0
  168. package/dist/server/modules/e2ee/services/e2ee-pairing.service.d.ts +28 -0
  169. package/dist/server/modules/e2ee/services/e2ee-pairing.service.js +107 -0
  170. package/dist/server/modules/e2ee/services/e2ee-pairing.service.js.map +1 -0
  171. package/dist/server/modules/e2ee/services/e2ee-trust.service.d.ts +36 -0
  172. package/dist/server/modules/e2ee/services/e2ee-trust.service.js +118 -0
  173. package/dist/server/modules/e2ee/services/e2ee-trust.service.js.map +1 -0
  174. package/dist/server/modules/epics/services/epics.service.d.ts +1 -0
  175. package/dist/server/modules/epics/services/epics.service.js +10 -0
  176. package/dist/server/modules/epics/services/epics.service.js.map +1 -1
  177. package/dist/server/modules/events/catalog/broadcast-metadata.d.ts +6 -2
  178. package/dist/server/modules/events/catalog/broadcast-registry.d.ts +2 -2
  179. package/dist/server/modules/events/catalog/broadcast-registry.js +58 -1
  180. package/dist/server/modules/events/catalog/broadcast-registry.js.map +1 -1
  181. package/dist/server/modules/events/catalog/claude.hooks.ask_user_question.pending.d.ts +122 -0
  182. package/dist/server/modules/events/catalog/claude.hooks.ask_user_question.pending.js +28 -0
  183. package/dist/server/modules/events/catalog/claude.hooks.ask_user_question.pending.js.map +1 -0
  184. package/dist/server/modules/events/catalog/claude.hooks.ask_user_question.resolved.d.ts +18 -0
  185. package/dist/server/modules/events/catalog/claude.hooks.ask_user_question.resolved.js +13 -0
  186. package/dist/server/modules/events/catalog/claude.hooks.ask_user_question.resolved.js.map +1 -0
  187. package/dist/server/modules/events/catalog/index.d.ts +90 -0
  188. package/dist/server/modules/events/catalog/index.js +4 -0
  189. package/dist/server/modules/events/catalog/index.js.map +1 -1
  190. package/dist/server/modules/events/catalog/project-broadcast.d.ts +7 -0
  191. package/dist/server/modules/events/catalog/project-broadcast.js +10 -0
  192. package/dist/server/modules/events/catalog/project-broadcast.js.map +1 -0
  193. package/dist/server/modules/events/catalog/session.transcript.discovered.d.ts +3 -0
  194. package/dist/server/modules/events/catalog/session.transcript.discovered.js +1 -0
  195. package/dist/server/modules/events/catalog/session.transcript.discovered.js.map +1 -1
  196. package/dist/server/modules/events/services/catalog-broadcaster.service.js +3 -4
  197. package/dist/server/modules/events/services/catalog-broadcaster.service.js.map +1 -1
  198. package/dist/server/modules/hooks/dtos/ask-user-question.dto.d.ts +5 -0
  199. package/dist/server/modules/hooks/dtos/ask-user-question.dto.js +51 -0
  200. package/dist/server/modules/hooks/dtos/ask-user-question.dto.js.map +1 -0
  201. package/dist/server/modules/hooks/dtos/hook-event.dto.d.ts +206 -5
  202. package/dist/server/modules/hooks/dtos/hook-event.dto.js +40 -8
  203. package/dist/server/modules/hooks/dtos/hook-event.dto.js.map +1 -1
  204. package/dist/server/modules/hooks/hooks.module.js +3 -2
  205. package/dist/server/modules/hooks/hooks.module.js.map +1 -1
  206. package/dist/server/modules/hooks/services/hooks-config.service.d.ts +1 -0
  207. package/dist/server/modules/hooks/services/hooks-config.service.js +52 -33
  208. package/dist/server/modules/hooks/services/hooks-config.service.js.map +1 -1
  209. package/dist/server/modules/hooks/services/hooks.service.d.ts +5 -1
  210. package/dist/server/modules/hooks/services/hooks.service.js +68 -2
  211. package/dist/server/modules/hooks/services/hooks.service.js.map +1 -1
  212. package/dist/server/modules/hooks/services/pending-ask-user-question.service.d.ts +38 -0
  213. package/dist/server/modules/hooks/services/pending-ask-user-question.service.js +105 -0
  214. package/dist/server/modules/hooks/services/pending-ask-user-question.service.js.map +1 -0
  215. package/dist/server/modules/orchestrator/worktrees/services/worktrees.service.js +3 -0
  216. package/dist/server/modules/orchestrator/worktrees/services/worktrees.service.js.map +1 -1
  217. package/dist/server/modules/projects/controllers/projects.controller.d.ts +7 -0
  218. package/dist/server/modules/projects/dtos/export.dto.d.ts +8 -0
  219. package/dist/server/modules/projects/dtos/export.dto.js +1 -0
  220. package/dist/server/modules/projects/dtos/export.dto.js.map +1 -1
  221. package/dist/server/modules/projects/helpers/project-export.d.ts +1 -0
  222. package/dist/server/modules/projects/helpers/project-export.js +19 -5
  223. package/dist/server/modules/projects/helpers/project-export.js.map +1 -1
  224. package/dist/server/modules/projects/helpers/project-import-sessions.d.ts +11 -0
  225. package/dist/server/modules/projects/helpers/project-import-sessions.js +47 -0
  226. package/dist/server/modules/projects/helpers/project-import-sessions.js.map +1 -0
  227. package/dist/server/modules/projects/helpers/project-import.d.ts +4 -0
  228. package/dist/server/modules/projects/helpers/project-import.js +12 -2
  229. package/dist/server/modules/projects/helpers/project-import.js.map +1 -1
  230. package/dist/server/modules/projects/services/projects.service.d.ts +5 -0
  231. package/dist/server/modules/providers/adapters/claude.adapter.d.ts +1 -0
  232. package/dist/server/modules/providers/adapters/claude.adapter.js +1 -0
  233. package/dist/server/modules/providers/adapters/claude.adapter.js.map +1 -1
  234. package/dist/server/modules/providers/adapters/opencode.adapter.d.ts +4 -1
  235. package/dist/server/modules/providers/adapters/opencode.adapter.js +3 -0
  236. package/dist/server/modules/providers/adapters/opencode.adapter.js.map +1 -1
  237. package/dist/server/modules/providers/adapters/provider-adapter.interface.d.ts +2 -0
  238. package/dist/server/modules/providers/controllers/providers.controller.d.ts +50 -3
  239. package/dist/server/modules/providers/controllers/providers.controller.js +12 -3
  240. package/dist/server/modules/providers/controllers/providers.controller.js.map +1 -1
  241. package/dist/server/modules/providers/services/provider-state-manager.service.d.ts +2 -1
  242. package/dist/server/modules/providers/services/provider-state-manager.service.js +43 -1
  243. package/dist/server/modules/providers/services/provider-state-manager.service.js.map +1 -1
  244. package/dist/server/modules/registry/controllers/templates.controller.d.ts +2 -1
  245. package/dist/server/modules/registry/services/template-cache.service.d.ts +2 -0
  246. package/dist/server/modules/registry/services/template-cache.service.js +5 -0
  247. package/dist/server/modules/registry/services/template-cache.service.js.map +1 -1
  248. package/dist/server/modules/registry/services/unified-template.service.d.ts +1 -0
  249. package/dist/server/modules/registry/services/unified-template.service.js +9 -1
  250. package/dist/server/modules/registry/services/unified-template.service.js.map +1 -1
  251. package/dist/server/modules/session-reader/__fixtures__/opencode-fixture-db.d.ts +44 -0
  252. package/dist/server/modules/session-reader/__fixtures__/opencode-fixture-db.js +85 -0
  253. package/dist/server/modules/session-reader/__fixtures__/opencode-fixture-db.js.map +1 -0
  254. package/dist/server/modules/session-reader/adapters/opencode-session-reader.adapter.d.ts +23 -0
  255. package/dist/server/modules/session-reader/adapters/opencode-session-reader.adapter.js +150 -0
  256. package/dist/server/modules/session-reader/adapters/opencode-session-reader.adapter.js.map +1 -0
  257. package/dist/server/modules/session-reader/adapters/session-reader-adapter.interface.d.ts +16 -2
  258. package/dist/server/modules/session-reader/adapters/session-reader-adapter.interface.js +39 -0
  259. package/dist/server/modules/session-reader/adapters/session-reader-adapter.interface.js.map +1 -1
  260. package/dist/server/modules/session-reader/adapters/utils/coalesce-turns.d.ts +11 -0
  261. package/dist/server/modules/session-reader/adapters/utils/coalesce-turns.js +81 -0
  262. package/dist/server/modules/session-reader/adapters/utils/coalesce-turns.js.map +1 -0
  263. package/dist/server/modules/session-reader/adapters/utils/tool-result-fold.d.ts +2 -0
  264. package/dist/server/modules/session-reader/adapters/utils/tool-result-fold.js +9 -0
  265. package/dist/server/modules/session-reader/adapters/utils/tool-result-fold.js.map +1 -0
  266. package/dist/server/modules/session-reader/builders/chunk-builder.js +0 -2
  267. package/dist/server/modules/session-reader/builders/chunk-builder.js.map +1 -1
  268. package/dist/server/modules/session-reader/builders/semantic-step-extractor.js +2 -0
  269. package/dist/server/modules/session-reader/builders/semantic-step-extractor.js.map +1 -1
  270. package/dist/server/modules/session-reader/controllers/session-reader.controller.d.ts +1 -0
  271. package/dist/server/modules/session-reader/data/pricing.json +387 -34
  272. package/dist/server/modules/session-reader/dtos/unified-message.types.d.ts +1 -0
  273. package/dist/server/modules/session-reader/dtos/unified-session.types.js.map +1 -1
  274. package/dist/server/modules/session-reader/parsers/claude-jsonl.parser.js +46 -0
  275. package/dist/server/modules/session-reader/parsers/claude-jsonl.parser.js.map +1 -1
  276. package/dist/server/modules/session-reader/parsers/codex-jsonl.parser.js +35 -17
  277. package/dist/server/modules/session-reader/parsers/codex-jsonl.parser.js.map +1 -1
  278. package/dist/server/modules/session-reader/readers/opencode-sqlite.reader.d.ts +69 -0
  279. package/dist/server/modules/session-reader/readers/opencode-sqlite.reader.js +378 -0
  280. package/dist/server/modules/session-reader/readers/opencode-sqlite.reader.js.map +1 -0
  281. package/dist/server/modules/session-reader/services/session-cache.service.d.ts +12 -3
  282. package/dist/server/modules/session-reader/services/session-cache.service.js +104 -19
  283. package/dist/server/modules/session-reader/services/session-cache.service.js.map +1 -1
  284. package/dist/server/modules/session-reader/services/session-reader.service.d.ts +5 -0
  285. package/dist/server/modules/session-reader/services/session-reader.service.js +51 -16
  286. package/dist/server/modules/session-reader/services/session-reader.service.js.map +1 -1
  287. package/dist/server/modules/session-reader/services/transcript-path-validator.service.js +1 -0
  288. package/dist/server/modules/session-reader/services/transcript-path-validator.service.js.map +1 -1
  289. package/dist/server/modules/session-reader/services/transcript-persistence.listener.d.ts +3 -0
  290. package/dist/server/modules/session-reader/services/transcript-persistence.listener.js +70 -1
  291. package/dist/server/modules/session-reader/services/transcript-persistence.listener.js.map +1 -1
  292. package/dist/server/modules/session-reader/services/transcript-watcher-rehydrator.service.d.ts +10 -0
  293. package/dist/server/modules/session-reader/services/transcript-watcher-rehydrator.service.js +47 -0
  294. package/dist/server/modules/session-reader/services/transcript-watcher-rehydrator.service.js.map +1 -0
  295. package/dist/server/modules/session-reader/services/transcript-watcher.service.d.ts +7 -1
  296. package/dist/server/modules/session-reader/services/transcript-watcher.service.js +177 -28
  297. package/dist/server/modules/session-reader/services/transcript-watcher.service.js.map +1 -1
  298. package/dist/server/modules/session-reader/session-reader.module.d.ts +3 -1
  299. package/dist/server/modules/session-reader/session-reader.module.js +10 -2
  300. package/dist/server/modules/session-reader/session-reader.module.js.map +1 -1
  301. package/dist/server/modules/sessions/controllers/sessions.controller.js +2 -22
  302. package/dist/server/modules/sessions/controllers/sessions.controller.js.map +1 -1
  303. package/dist/server/modules/sessions/dtos/sessions.dto.d.ts +1 -0
  304. package/dist/server/modules/sessions/dtos/sessions.dto.js.map +1 -1
  305. package/dist/server/modules/sessions/services/active-session-lookup.service.d.ts +5 -0
  306. package/dist/server/modules/sessions/services/active-session-lookup.service.js +12 -0
  307. package/dist/server/modules/sessions/services/active-session-lookup.service.js.map +1 -1
  308. package/dist/server/modules/sessions/services/message-enqueue.service.d.ts +2 -0
  309. package/dist/server/modules/sessions/services/message-enqueue.service.js +2 -0
  310. package/dist/server/modules/sessions/services/message-enqueue.service.js.map +1 -1
  311. package/dist/server/modules/sessions/services/message-pool.types.d.ts +2 -0
  312. package/dist/server/modules/sessions/services/provider-launch-config/provider-launch-config.service.js +1 -1
  313. package/dist/server/modules/sessions/services/provider-launch-config/provider-launch-config.service.js.map +1 -1
  314. package/dist/server/modules/sessions/services/session-lifecycle-facade.service.d.ts +18 -0
  315. package/dist/server/modules/sessions/services/session-lifecycle-facade.service.js +74 -0
  316. package/dist/server/modules/sessions/services/session-lifecycle-facade.service.js.map +1 -0
  317. package/dist/server/modules/sessions/services/session-runtime/__test-utils__/pipeline-harness.d.ts +4 -2
  318. package/dist/server/modules/sessions/services/session-runtime/__test-utils__/pipeline-harness.js +4 -2
  319. package/dist/server/modules/sessions/services/session-runtime/__test-utils__/pipeline-harness.js.map +1 -1
  320. package/dist/server/modules/sessions/services/session-runtime/session-launch-pipeline.service.js +2 -2
  321. package/dist/server/modules/sessions/services/session-runtime/session-launch-pipeline.service.js.map +1 -1
  322. package/dist/server/modules/sessions/services/session-runtime/session-restore-pipeline.service.js +2 -2
  323. package/dist/server/modules/sessions/services/session-runtime/session-restore-pipeline.service.js.map +1 -1
  324. package/dist/server/modules/sessions/services/sessions-message-pool.service.js +15 -3
  325. package/dist/server/modules/sessions/services/sessions-message-pool.service.js.map +1 -1
  326. package/dist/server/modules/sessions/services/sessions.service.d.ts +8 -0
  327. package/dist/server/modules/sessions/services/sessions.service.js +52 -1
  328. package/dist/server/modules/sessions/services/sessions.service.js.map +1 -1
  329. package/dist/server/modules/sessions/sessions-lifecycle.module.d.ts +2 -0
  330. package/dist/server/modules/sessions/sessions-lifecycle.module.js +23 -0
  331. package/dist/server/modules/sessions/sessions-lifecycle.module.js.map +1 -0
  332. package/dist/server/modules/settings/local/delegates/core-settings.delegate.js.map +1 -1
  333. package/dist/server/modules/storage/db/schema.d.ts +83 -0
  334. package/dist/server/modules/storage/db/schema.js +15 -2
  335. package/dist/server/modules/storage/db/schema.js.map +1 -1
  336. package/dist/server/modules/storage/interfaces/storage.interface.d.ts +13 -2
  337. package/dist/server/modules/storage/interfaces/storage.interface.js.map +1 -1
  338. package/dist/server/modules/storage/local/delegates/epic.delegate.d.ts +1 -0
  339. package/dist/server/modules/storage/local/delegates/epic.delegate.js +8 -0
  340. package/dist/server/modules/storage/local/delegates/epic.delegate.js.map +1 -1
  341. package/dist/server/modules/storage/local/delegates/provider.delegate.d.ts +5 -1
  342. package/dist/server/modules/storage/local/delegates/provider.delegate.js +122 -0
  343. package/dist/server/modules/storage/local/delegates/provider.delegate.js.map +1 -1
  344. package/dist/server/modules/storage/local/delegates/session.delegate.d.ts +9 -0
  345. package/dist/server/modules/storage/local/delegates/session.delegate.js +115 -0
  346. package/dist/server/modules/storage/local/delegates/session.delegate.js.map +1 -0
  347. package/dist/server/modules/storage/local/local-storage.service.d.ts +10 -0
  348. package/dist/server/modules/storage/local/local-storage.service.js +20 -0
  349. package/dist/server/modules/storage/local/local-storage.service.js.map +1 -1
  350. package/dist/server/modules/storage/models/domain.models.d.ts +1 -0
  351. package/dist/server/modules/subscribers/services/automation-scheduler.service.js.map +1 -1
  352. package/dist/server/modules/teams/services/teams.service.d.ts +28 -2
  353. package/dist/server/modules/teams/services/teams.service.js +175 -0
  354. package/dist/server/modules/teams/services/teams.service.js.map +1 -1
  355. package/dist/server/modules/teams/storage/teams.store.d.ts +5 -0
  356. package/dist/server/modules/teams/storage/teams.store.js +34 -0
  357. package/dist/server/modules/teams/storage/teams.store.js.map +1 -1
  358. package/dist/server/modules/terminal/gateways/terminal.gateway.d.ts +5 -0
  359. package/dist/server/modules/terminal/gateways/terminal.gateway.js +38 -0
  360. package/dist/server/modules/terminal/gateways/terminal.gateway.js.map +1 -1
  361. package/dist/server/modules/terminal/services/pty.service.js +11 -3
  362. package/dist/server/modules/terminal/services/pty.service.js.map +1 -1
  363. package/dist/server/modules/terminal/services/terminal-io/terminal-io.service.d.ts +1 -1
  364. package/dist/server/modules/terminal/services/terminal-io/terminal-io.service.js +9 -2
  365. package/dist/server/modules/terminal/services/terminal-io/terminal-io.service.js.map +1 -1
  366. package/dist/server/modules/terminal/services/terminal-io/viewport-capture.d.ts +12 -0
  367. package/dist/server/modules/terminal/services/terminal-io/viewport-capture.js +50 -0
  368. package/dist/server/modules/terminal/services/terminal-io/viewport-capture.js.map +1 -0
  369. package/dist/server/modules/terminal/services/terminal-session/terminal-session.d.ts +2 -0
  370. package/dist/server/modules/terminal/services/terminal-session/terminal-session.js +10 -4
  371. package/dist/server/modules/terminal/services/terminal-session/terminal-session.js.map +1 -1
  372. package/dist/server/modules/terminal/services/terminal-viewport/terminal-viewport.facade.d.ts +12 -0
  373. package/dist/server/modules/terminal/services/terminal-viewport/terminal-viewport.facade.js +55 -0
  374. package/dist/server/modules/terminal/services/terminal-viewport/terminal-viewport.facade.js.map +1 -0
  375. package/dist/server/modules/terminal/terminal-viewport.module.d.ts +2 -0
  376. package/dist/server/modules/terminal/terminal-viewport.module.js +24 -0
  377. package/dist/server/modules/terminal/terminal-viewport.module.js.map +1 -0
  378. package/dist/server/templates/3-agents-dev.json +33 -28
  379. package/dist/server/templates/teams-dev.json +42 -70
  380. package/dist/server/tsconfig.tsbuildinfo +1 -1
  381. package/dist/server/ui/assets/{ReviewDetailPage-CobRKQBn.js → ReviewDetailPage-BpPjTAgL.js} +1 -1
  382. package/dist/server/ui/assets/{ReviewsPage-Bb6ZmriH.js → ReviewsPage-CAs14WVx.js} +1 -1
  383. package/dist/server/ui/assets/index-CzMrWNAV.css +32 -0
  384. package/dist/server/ui/assets/index-DhGz-UAr.js +1100 -0
  385. package/dist/server/ui/assets/{useReviewSubscription-DzaIaXy7.js → useReviewSubscription-CscSQD7B.js} +1 -1
  386. package/dist/server/ui/favicon.svg +2 -16
  387. package/dist/server/ui/index.html +2 -2
  388. package/dist/templates/3-agents-dev.json +33 -28
  389. package/dist/templates/teams-dev.json +42 -70
  390. package/package.json +23 -8
  391. package/dist/server/ui/assets/index-BV_-Jlz8.js +0 -1095
  392. package/dist/server/ui/assets/index-C_ZOt0it.css +0 -32
@@ -0,0 +1,150 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
19
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
20
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
21
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
22
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
23
+ };
24
+ var __importStar = (this && this.__importStar) || (function () {
25
+ var ownKeys = function(o) {
26
+ ownKeys = Object.getOwnPropertyNames || function (o) {
27
+ var ar = [];
28
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
29
+ return ar;
30
+ };
31
+ return ownKeys(o);
32
+ };
33
+ return function (mod) {
34
+ if (mod && mod.__esModule) return mod;
35
+ var result = {};
36
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
37
+ __setModuleDefault(result, mod);
38
+ return result;
39
+ };
40
+ })();
41
+ var __metadata = (this && this.__metadata) || function (k, v) {
42
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
43
+ };
44
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
45
+ return function (target, key) { decorator(target, key, paramIndex); }
46
+ };
47
+ var OpenCodeSessionReaderAdapter_1;
48
+ Object.defineProperty(exports, "__esModule", { value: true });
49
+ exports.OpenCodeSessionReaderAdapter = void 0;
50
+ const common_1 = require("@nestjs/common");
51
+ const os = __importStar(require("node:os"));
52
+ const path = __importStar(require("node:path"));
53
+ const pricing_interface_1 = require("../services/pricing.interface");
54
+ const error_types_1 = require("../../../common/errors/error-types");
55
+ const opencode_sqlite_reader_1 = require("../readers/opencode-sqlite.reader");
56
+ const OPENCODE_ROOT = '.local/share/opencode';
57
+ const OPENCODE_DB_FILE = 'opencode.db';
58
+ const DISCOVERY_WINDOW_MS = 120_000;
59
+ let OpenCodeSessionReaderAdapter = OpenCodeSessionReaderAdapter_1 = class OpenCodeSessionReaderAdapter {
60
+ constructor(pricingService) {
61
+ this.pricingService = pricingService;
62
+ this.providerName = 'opencode';
63
+ this.incrementalMode = 'snapshot';
64
+ this.sourceKind = 'db';
65
+ this.logger = new common_1.Logger(OpenCodeSessionReaderAdapter_1.name);
66
+ const root = path.join(os.homedir(), OPENCODE_ROOT);
67
+ this.allowedRoots = [root];
68
+ this.dbPath = path.join(root, OPENCODE_DB_FILE);
69
+ this.reader = new opencode_sqlite_reader_1.OpencodeSqliteReader(this.pricingService);
70
+ }
71
+ async discoverSessionFile(context) {
72
+ if (!context.sessionStartedAt) {
73
+ this.logger.debug({ projectRoot: context.projectRoot, sessionId: context.sessionId }, 'OpenCode discovery needs sessionStartedAt — skipping this attempt');
74
+ return [];
75
+ }
76
+ const directory = path.resolve(context.projectRoot);
77
+ let candidates;
78
+ try {
79
+ candidates = this.reader.findSessionCandidates(this.dbPath, {
80
+ directory,
81
+ startedAtMs: context.sessionStartedAt.getTime(),
82
+ windowMs: DISCOVERY_WINDOW_MS,
83
+ });
84
+ }
85
+ catch (error) {
86
+ this.logger.debug({ error: String(error?.message ?? error), directory }, 'OpenCode candidate query failed — will retry');
87
+ return [];
88
+ }
89
+ return candidates.map((c) => ({
90
+ filePath: this.dbPath,
91
+ providerName: this.providerName,
92
+ providerSessionId: c.providerSessionId,
93
+ sizeBytes: 0,
94
+ lastModified: new Date(c.timeUpdated).toISOString(),
95
+ }));
96
+ }
97
+ async getFreshnessToken(sourceRef) {
98
+ const providerSessionId = this.requireSessionId(sourceRef.providerSessionId);
99
+ return this.reader.getFreshness(this.resolveDbPath(sourceRef), providerSessionId);
100
+ }
101
+ async parseFullSession(filePath, sourceRef) {
102
+ const providerSessionId = this.requireSessionId(sourceRef?.providerSessionId);
103
+ const { session } = this.reader.readSession(this.resolveDbPath(sourceRef, filePath), providerSessionId);
104
+ return session;
105
+ }
106
+ async parseIncremental(filePath, _options, sourceRef) {
107
+ const providerSessionId = this.requireSessionId(sourceRef?.providerSessionId);
108
+ const { session, sizeBytes } = this.reader.readSession(this.resolveDbPath(sourceRef, filePath), providerSessionId);
109
+ return {
110
+ hasMore: false,
111
+ nextByteOffset: sizeBytes,
112
+ messageCount: session.messages.length,
113
+ entries: session.messages,
114
+ metrics: session.metrics,
115
+ warnings: session.warnings,
116
+ };
117
+ }
118
+ async parseSessionFile(_filePath, _options) {
119
+ throw new error_types_1.ValidationError('OpenCode is a DB-backed source: parseSessionFile requires a SessionSourceRef with providerSessionId — use parseFullSession instead', { providerName: this.providerName });
120
+ }
121
+ getWatchPaths(_projectRoot) {
122
+ return [`${this.dbPath}-wal`];
123
+ }
124
+ calculateCost(entries, model) {
125
+ let total = 0;
126
+ for (const entry of entries) {
127
+ const usage = entry.usage;
128
+ if (usage) {
129
+ total += this.pricingService.calculateMessageCost(model, usage.input, usage.output, usage.cacheRead, usage.cacheCreation);
130
+ }
131
+ }
132
+ return total;
133
+ }
134
+ resolveDbPath(sourceRef, filePath) {
135
+ return sourceRef?.filePath ?? filePath ?? this.dbPath;
136
+ }
137
+ requireSessionId(providerSessionId) {
138
+ if (!providerSessionId) {
139
+ throw new error_types_1.ValidationError('OpenCode session read requires providerSessionId (ses_…) on the SessionSourceRef', { providerName: this.providerName });
140
+ }
141
+ return providerSessionId;
142
+ }
143
+ };
144
+ exports.OpenCodeSessionReaderAdapter = OpenCodeSessionReaderAdapter;
145
+ exports.OpenCodeSessionReaderAdapter = OpenCodeSessionReaderAdapter = OpenCodeSessionReaderAdapter_1 = __decorate([
146
+ (0, common_1.Injectable)(),
147
+ __param(0, (0, common_1.Inject)(pricing_interface_1.PRICING_SERVICE)),
148
+ __metadata("design:paramtypes", [Object])
149
+ ], OpenCodeSessionReaderAdapter);
150
+ //# sourceMappingURL=opencode-session-reader.adapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"opencode-session-reader.adapter.js","sourceRoot":"","sources":["../../../../src/modules/session-reader/adapters/opencode-session-reader.adapter.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,20 @@
1
1
  import type { UnifiedSession, UnifiedMetrics } from '../dtos/unified-session.types';
2
+ export interface SessionSourceRef {
3
+ filePath: string;
4
+ providerSessionId?: string;
5
+ providerName: string;
6
+ kind: 'file' | 'db';
7
+ }
8
+ export declare function defaultFileFreshnessToken(sourceRef: SessionSourceRef): Promise<{
9
+ mtimeMs: number;
10
+ size: number;
11
+ }>;
2
12
  export interface SessionDiscoveryContext {
3
13
  projectRoot: string;
4
14
  transcriptPath?: string;
5
15
  providerSessionId?: string;
16
+ sessionStartedAt?: Date;
17
+ sessionId?: string;
6
18
  }
7
19
  export interface SessionFileInfo {
8
20
  filePath: string;
@@ -27,11 +39,13 @@ export interface IncrementalResult {
27
39
  export interface SessionReaderAdapter {
28
40
  readonly providerName: string;
29
41
  readonly incrementalMode: 'delta' | 'snapshot';
42
+ readonly sourceKind?: 'file' | 'db';
30
43
  readonly allowedRoots: string[];
31
44
  discoverSessionFile(context: SessionDiscoveryContext): Promise<SessionFileInfo[]>;
32
45
  parseSessionFile(filePath: string, options?: ParseOptions): Promise<IncrementalResult>;
33
- parseIncremental(filePath: string, options: ParseOptions): Promise<IncrementalResult>;
46
+ parseIncremental(filePath: string, options: ParseOptions, sourceRef?: SessionSourceRef): Promise<IncrementalResult>;
34
47
  getWatchPaths(projectRoot: string): string[];
35
48
  calculateCost(entries: unknown[], model: string): number;
36
- parseFullSession(filePath: string): Promise<UnifiedSession>;
49
+ parseFullSession(filePath: string, sourceRef?: SessionSourceRef): Promise<UnifiedSession>;
50
+ getFreshnessToken?(sourceRef: SessionSourceRef): Promise<unknown>;
37
51
  }
@@ -1,3 +1,42 @@
1
1
  "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
2
35
  Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.defaultFileFreshnessToken = defaultFileFreshnessToken;
37
+ const fs = __importStar(require("node:fs/promises"));
38
+ async function defaultFileFreshnessToken(sourceRef) {
39
+ const stat = await fs.stat(sourceRef.filePath);
40
+ return { mtimeMs: stat.mtime.getTime(), size: stat.size };
41
+ }
3
42
  //# sourceMappingURL=session-reader-adapter.interface.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"session-reader-adapter.interface.js","sourceRoot":"","sources":["../../../../src/modules/session-reader/adapters/session-reader-adapter.interface.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"session-reader-adapter.interface.js","sourceRoot":"","sources":["../../../../src/modules/session-reader/adapters/session-reader-adapter.interface.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgDA,8DAKC;AA7CD,qDAAuC;AAwChC,KAAK,UAAU,yBAAyB,CAC7C,SAA2B;IAE3B,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IAC/C,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;AAC5D,CAAC"}
@@ -0,0 +1,11 @@
1
+ import type { TokenUsage, UnifiedMessage, UnifiedMetrics } from '../../dtos/unified-session.types';
2
+ export interface CoalesceTurnsResult {
3
+ messages: UnifiedMessage[];
4
+ metrics: UnifiedMetrics;
5
+ }
6
+ export declare function sumTokenUsage(target: TokenUsage | undefined, addition: TokenUsage | undefined): TokenUsage | undefined;
7
+ export declare function foldTurnParts(target: UnifiedMessage, source: UnifiedMessage): void;
8
+ export declare function coalesceAssistantTurns(session: {
9
+ messages: UnifiedMessage[];
10
+ metrics: UnifiedMetrics;
11
+ }): CoalesceTurnsResult;
@@ -0,0 +1,81 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.sumTokenUsage = sumTokenUsage;
4
+ exports.foldTurnParts = foldTurnParts;
5
+ exports.coalesceAssistantTurns = coalesceAssistantTurns;
6
+ const CONTINUATION_STOP_REASON = 'tool_use';
7
+ function sumTokenUsage(target, addition) {
8
+ if (!addition)
9
+ return target;
10
+ if (!target)
11
+ return { ...addition };
12
+ return {
13
+ input: target.input + addition.input,
14
+ output: target.output + addition.output,
15
+ cacheRead: target.cacheRead + addition.cacheRead,
16
+ cacheCreation: target.cacheCreation + addition.cacheCreation,
17
+ };
18
+ }
19
+ function foldTurnParts(target, source) {
20
+ target.content.push(...source.content);
21
+ target.toolCalls.push(...source.toolCalls);
22
+ target.toolResults.push(...source.toolResults);
23
+ if (source.role === 'assistant') {
24
+ target.usage = sumTokenUsage(target.usage, source.usage);
25
+ target.stopReason = source.stopReason ?? null;
26
+ if (source.model && !target.model)
27
+ target.model = source.model;
28
+ }
29
+ }
30
+ function cloneForMerge(msg) {
31
+ return {
32
+ ...msg,
33
+ content: [...msg.content],
34
+ toolCalls: [...msg.toolCalls],
35
+ toolResults: [...msg.toolResults],
36
+ };
37
+ }
38
+ function coalesceAssistantTurns(session) {
39
+ const out = [];
40
+ let openTurn = null;
41
+ let openTurnOwned = false;
42
+ let merged = false;
43
+ for (const msg of session.messages) {
44
+ const mergeable = openTurn !== null &&
45
+ msg.role === 'assistant' &&
46
+ !msg.isCompactSummary &&
47
+ msg.isSidechain === openTurn.isSidechain;
48
+ if (mergeable) {
49
+ if (!openTurnOwned) {
50
+ const clone = cloneForMerge(openTurn);
51
+ out[out.length - 1] = clone;
52
+ openTurn = clone;
53
+ openTurnOwned = true;
54
+ }
55
+ foldTurnParts(openTurn, msg);
56
+ merged = true;
57
+ if (openTurn.stopReason !== CONTINUATION_STOP_REASON) {
58
+ openTurn = null;
59
+ openTurnOwned = false;
60
+ }
61
+ continue;
62
+ }
63
+ out.push(msg);
64
+ if (msg.role === 'assistant' &&
65
+ !msg.isCompactSummary &&
66
+ msg.stopReason === CONTINUATION_STOP_REASON) {
67
+ openTurn = msg;
68
+ openTurnOwned = false;
69
+ }
70
+ else {
71
+ openTurn = null;
72
+ openTurnOwned = false;
73
+ }
74
+ }
75
+ const messages = merged ? out : session.messages;
76
+ return {
77
+ messages,
78
+ metrics: { ...session.metrics, messageCount: messages.length },
79
+ };
80
+ }
81
+ //# sourceMappingURL=coalesce-turns.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"coalesce-turns.js","sourceRoot":"","sources":["../../../../../src/modules/session-reader/adapters/utils/coalesce-turns.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import type { UnifiedMessage } from '../../dtos/unified-session.types';
2
+ export declare function isToolResultOnlyMessage(msg: UnifiedMessage): boolean;
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isToolResultOnlyMessage = isToolResultOnlyMessage;
4
+ function isToolResultOnlyMessage(msg) {
5
+ return (msg.role === 'user' &&
6
+ msg.toolResults.length > 0 &&
7
+ !msg.content.some((block) => block.type === 'text'));
8
+ }
9
+ //# sourceMappingURL=tool-result-fold.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool-result-fold.js","sourceRoot":"","sources":["../../../../../src/modules/session-reader/adapters/utils/tool-result-fold.ts"],"names":[],"mappings":";;AAeA,0DAMC;AAND,SAAgB,uBAAuB,CAAC,GAAmB;IACzD,OAAO,CACL,GAAG,CAAC,IAAI,KAAK,MAAM;QACnB,GAAG,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC;QAC1B,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,MAAM,CAAC,CACpD,CAAC;AACJ,CAAC"}
@@ -14,8 +14,6 @@ function classifyMessage(msg) {
14
14
  return 'compact';
15
15
  if (isSystemMessage(msg))
16
16
  return 'system';
17
- if (msg.role === 'user' && msg.toolResults.length > 0)
18
- return 'ai';
19
17
  if (isUserChunkMessage(msg))
20
18
  return 'user';
21
19
  return 'ai';
@@ -1 +1 @@
1
- {"version":3,"file":"chunk-builder.js","sourceRoot":"","sources":["../../../../src/modules/session-reader/builders/chunk-builder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chunk-builder.js","sourceRoot":"","sources":["../../../../src/modules/session-reader/builders/chunk-builder.ts"],"names":[],"mappings":"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"}
@@ -10,6 +10,8 @@ function extractSemanticSteps(messages) {
10
10
  if (msg.role === 'assistant') {
11
11
  extractAssistantSteps(msg, steps, stepIndex);
12
12
  stepIndex = steps.length;
13
+ extractToolResultSteps(msg, steps, stepIndex);
14
+ stepIndex = steps.length;
13
15
  }
14
16
  else if (msg.role === 'user') {
15
17
  extractToolResultSteps(msg, steps, stepIndex);
@@ -1 +1 @@
1
- {"version":3,"file":"semantic-step-extractor.js","sourceRoot":"","sources":["../../../../src/modules/session-reader/builders/semantic-step-extractor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"semantic-step-extractor.js","sourceRoot":"","sources":["../../../../src/modules/session-reader/builders/semantic-step-extractor.ts"],"names":[],"mappings":"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"}
@@ -27,6 +27,7 @@ export declare class SessionReaderController {
27
27
  deltaChunks: Record<string, unknown>[];
28
28
  deltaMessages: Record<string, unknown>[];
29
29
  cursor: string;
30
+ replaceFromChunkId: string | null;
30
31
  replaceFromChunkIndex: number;
31
32
  metrics: import("../dtos/unified-session.types").UnifiedMetrics;
32
33
  totalChunkCount: number;