devchain-cli 0.25.0 → 0.26.1

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 (653) hide show
  1. package/README.md +1 -1
  2. package/dist/build-info.json +2 -2
  3. package/dist/cli.js +34 -76
  4. package/dist/drizzle/0094_agent_worktree_lanes.sql +20 -0
  5. package/dist/drizzle/meta/0094_snapshot.json +7810 -0
  6. package/dist/drizzle/meta/_journal.json +7 -0
  7. package/dist/host-cli-pins.json +1 -1
  8. package/dist/host-install/devchain-host-bootstrap.tgz +0 -0
  9. package/dist/host-install/pins.json +2 -1
  10. package/dist/lib/git-owner.js +30 -205
  11. package/dist/lib/git-shim.js +417 -0
  12. package/dist/lib/git-supervisor.js +289 -0
  13. package/dist/lib/host-api-key.js +75 -19
  14. package/dist/lib/local-api.js +4 -2
  15. package/dist/lib/local-app-process.js +77 -0
  16. package/dist/node_modules/@devchain/shared/index.d.ts +1 -0
  17. package/dist/node_modules/@devchain/shared/index.d.ts.map +1 -1
  18. package/dist/node_modules/@devchain/shared/index.js +1 -0
  19. package/dist/node_modules/@devchain/shared/index.js.map +1 -1
  20. package/dist/node_modules/@devchain/shared/mobile-rpc-contract/index.d.ts +510 -5
  21. package/dist/node_modules/@devchain/shared/mobile-rpc-contract/index.d.ts.map +1 -1
  22. package/dist/node_modules/@devchain/shared/mobile-rpc-contract/index.js +55 -0
  23. package/dist/node_modules/@devchain/shared/mobile-rpc-contract/index.js.map +1 -1
  24. package/dist/node_modules/@devchain/shared/schemas/index.d.ts +1 -0
  25. package/dist/node_modules/@devchain/shared/schemas/index.d.ts.map +1 -1
  26. package/dist/node_modules/@devchain/shared/schemas/index.js +1 -0
  27. package/dist/node_modules/@devchain/shared/schemas/index.js.map +1 -1
  28. package/dist/node_modules/@devchain/shared/schemas/provider-clis.js +1 -1
  29. package/dist/node_modules/@devchain/shared/schemas/provider-clis.js.map +1 -1
  30. package/dist/node_modules/@devchain/shared/schemas/provider-usage.d.ts +350 -0
  31. package/dist/node_modules/@devchain/shared/schemas/provider-usage.d.ts.map +1 -0
  32. package/dist/node_modules/@devchain/shared/schemas/provider-usage.js +71 -0
  33. package/dist/node_modules/@devchain/shared/schemas/provider-usage.js.map +1 -0
  34. package/dist/node_modules/@devchain/shared/tsconfig.tsbuildinfo +1 -1
  35. package/dist/server/app.module.js +4 -0
  36. package/dist/server/app.module.js.map +1 -1
  37. package/dist/server/common/config/env.config.d.ts +3 -0
  38. package/dist/server/common/config/env.config.js +1 -0
  39. package/dist/server/common/config/env.config.js.map +1 -1
  40. package/dist/server/common/config/host-image.json +3 -3
  41. package/dist/server/common/config/vm-destroy-fence.d.ts +18 -0
  42. package/dist/server/common/config/vm-destroy-fence.js +38 -0
  43. package/dist/server/common/config/vm-destroy-fence.js.map +1 -0
  44. package/dist/server/common/errors/error-types.d.ts +3 -0
  45. package/dist/server/common/errors/error-types.js +10 -1
  46. package/dist/server/common/errors/error-types.js.map +1 -1
  47. package/dist/server/common/git-shim-paths.d.ts +5 -0
  48. package/dist/server/common/git-shim-paths.js +25 -0
  49. package/dist/server/common/git-shim-paths.js.map +1 -0
  50. package/dist/server/common/test/fake-bootstrap.server.d.ts +5 -0
  51. package/dist/server/common/test/fake-bootstrap.server.js +12 -3
  52. package/dist/server/common/test/fake-bootstrap.server.js.map +1 -1
  53. package/dist/server/common/test/shared-vm.stub.d.ts +2 -0
  54. package/dist/server/common/test/shared-vm.stub.js +13 -0
  55. package/dist/server/common/test/shared-vm.stub.js.map +1 -0
  56. package/dist/server/main.js +2 -0
  57. package/dist/server/main.js.map +1 -1
  58. package/dist/server/modules/cloud-tunnel/cloud-tunnel.module.js +2 -0
  59. package/dist/server/modules/cloud-tunnel/cloud-tunnel.module.js.map +1 -1
  60. package/dist/server/modules/cloud-tunnel/services/mobile-chat-rpc.service.d.ts +5 -1
  61. package/dist/server/modules/cloud-tunnel/services/mobile-chat-rpc.service.js +11 -2
  62. package/dist/server/modules/cloud-tunnel/services/mobile-chat-rpc.service.js.map +1 -1
  63. package/dist/server/modules/cloud-tunnel/services/mobile-rpc-contract.generated.d.ts +506 -1
  64. package/dist/server/modules/cloud-tunnel/services/mobile-rpc-contract.generated.js +56 -1
  65. package/dist/server/modules/cloud-tunnel/services/mobile-rpc-contract.generated.js.map +1 -1
  66. package/dist/server/modules/cloud-tunnel/services/mobile-rpc-workspace-access.service.d.ts +1 -0
  67. package/dist/server/modules/cloud-tunnel/services/mobile-rpc-workspace-access.service.js +1 -0
  68. package/dist/server/modules/cloud-tunnel/services/mobile-rpc-workspace-access.service.js.map +1 -1
  69. package/dist/server/modules/cloud-tunnel/services/tunnel-handler.service.js +1 -0
  70. package/dist/server/modules/cloud-tunnel/services/tunnel-handler.service.js.map +1 -1
  71. package/dist/server/modules/events/catalog/broadcast-registry.js +8 -0
  72. package/dist/server/modules/events/catalog/broadcast-registry.js.map +1 -1
  73. package/dist/server/modules/events/catalog/index.d.ts +18 -11
  74. package/dist/server/modules/events/catalog/index.js +3 -0
  75. package/dist/server/modules/events/catalog/index.js.map +1 -1
  76. package/dist/server/modules/events/catalog/provider-usage.updated.d.ts +12 -0
  77. package/dist/server/modules/events/catalog/provider-usage.updated.js +13 -0
  78. package/dist/server/modules/events/catalog/provider-usage.updated.js.map +1 -0
  79. package/dist/server/modules/events/catalog/review.comment.created.d.ts +2 -2
  80. package/dist/server/modules/events/catalog/review.created.d.ts +8 -8
  81. package/dist/server/modules/file-sync/file-sync.dto.d.ts +18 -0
  82. package/dist/server/modules/file-sync/file-sync.dto.js +12 -2
  83. package/dist/server/modules/file-sync/file-sync.dto.js.map +1 -1
  84. package/dist/server/modules/file-sync/file-sync.module.js +17 -2
  85. package/dist/server/modules/file-sync/file-sync.module.js.map +1 -1
  86. package/dist/server/modules/file-sync/file-sync.service.d.ts +4 -0
  87. package/dist/server/modules/file-sync/file-sync.service.js +35 -0
  88. package/dist/server/modules/file-sync/file-sync.service.js.map +1 -1
  89. package/dist/server/modules/file-sync/git-guard.dto.d.ts +0 -21
  90. package/dist/server/modules/file-sync/git-guard.dto.js +1 -7
  91. package/dist/server/modules/file-sync/git-guard.dto.js.map +1 -1
  92. package/dist/server/modules/file-sync/home-git-guard.service.d.ts +3 -0
  93. package/dist/server/modules/file-sync/home-git-guard.service.js +128 -22
  94. package/dist/server/modules/file-sync/home-git-guard.service.js.map +1 -1
  95. package/dist/server/modules/file-sync/host-git-guard.controller.d.ts +3 -1
  96. package/dist/server/modules/file-sync/host-git-guard.controller.js +11 -5
  97. package/dist/server/modules/file-sync/host-git-guard.controller.js.map +1 -1
  98. package/dist/server/modules/file-sync/host-sync.controller.d.ts +11 -7
  99. package/dist/server/modules/file-sync/host-sync.controller.js +53 -20
  100. package/dist/server/modules/file-sync/host-sync.controller.js.map +1 -1
  101. package/dist/server/modules/file-sync/syncthing-launcher.d.ts +1 -0
  102. package/dist/server/modules/file-sync/syncthing-launcher.js +2 -1
  103. package/dist/server/modules/file-sync/syncthing-launcher.js.map +1 -1
  104. package/dist/server/modules/file-sync/testing/fake-file-sync.service.d.ts +2 -1
  105. package/dist/server/modules/file-sync/testing/fake-file-sync.service.js +6 -0
  106. package/dist/server/modules/file-sync/testing/fake-file-sync.service.js.map +1 -1
  107. package/dist/server/modules/git/dtos/git.dto.d.ts +4 -4
  108. package/dist/server/modules/mcp/dtos/mcp.dto.d.ts +95 -1
  109. package/dist/server/modules/mcp/dtos/mcp.dto.js +45 -2
  110. package/dist/server/modules/mcp/dtos/mcp.dto.js.map +1 -1
  111. package/dist/server/modules/mcp/mcp-full.module.js +2 -0
  112. package/dist/server/modules/mcp/mcp-full.module.js.map +1 -1
  113. package/dist/server/modules/mcp/services/handlers/epic-context.d.ts +2 -2
  114. package/dist/server/modules/mcp/services/handlers/epic-tools.js +16 -0
  115. package/dist/server/modules/mcp/services/handlers/epic-tools.js.map +1 -1
  116. package/dist/server/modules/mcp/services/handlers/teams-tools.d.ts +1 -0
  117. package/dist/server/modules/mcp/services/handlers/teams-tools.js +51 -0
  118. package/dist/server/modules/mcp/services/handlers/teams-tools.js.map +1 -1
  119. package/dist/server/modules/mcp/services/handlers/worktree-context.d.ts +6 -0
  120. package/dist/server/modules/mcp/services/handlers/worktree-context.js +3 -0
  121. package/dist/server/modules/mcp/services/handlers/worktree-context.js.map +1 -0
  122. package/dist/server/modules/mcp/services/handlers/worktree-tools.d.ts +7 -0
  123. package/dist/server/modules/mcp/services/handlers/worktree-tools.js +77 -0
  124. package/dist/server/modules/mcp/services/handlers/worktree-tools.js.map +1 -0
  125. package/dist/server/modules/mcp/services/mcp-tool-binding.registry.d.ts +2 -1
  126. package/dist/server/modules/mcp/services/mcp-tool-binding.registry.js +6 -2
  127. package/dist/server/modules/mcp/services/mcp-tool-binding.registry.js.map +1 -1
  128. package/dist/server/modules/mcp/tool-descriptors/binding-types.d.ts +4 -2
  129. package/dist/server/modules/mcp/tool-descriptors/binding-types.js.map +1 -1
  130. package/dist/server/modules/mcp/tool-descriptors/epic.metadata.js +2 -2
  131. package/dist/server/modules/mcp/tool-descriptors/epic.metadata.js.map +1 -1
  132. package/dist/server/modules/mcp/tool-descriptors/index.js +2 -0
  133. package/dist/server/modules/mcp/tool-descriptors/index.js.map +1 -1
  134. package/dist/server/modules/mcp/tool-descriptors/runtime-bindings.js +2 -0
  135. package/dist/server/modules/mcp/tool-descriptors/runtime-bindings.js.map +1 -1
  136. package/dist/server/modules/mcp/tool-descriptors/team.bindings.js +1 -0
  137. package/dist/server/modules/mcp/tool-descriptors/team.bindings.js.map +1 -1
  138. package/dist/server/modules/mcp/tool-descriptors/team.metadata.js +33 -0
  139. package/dist/server/modules/mcp/tool-descriptors/team.metadata.js.map +1 -1
  140. package/dist/server/modules/mcp/tool-descriptors/worktree.bindings.d.ts +1 -0
  141. package/dist/server/modules/mcp/tool-descriptors/worktree.bindings.js +20 -0
  142. package/dist/server/modules/mcp/tool-descriptors/worktree.bindings.js.map +1 -0
  143. package/dist/server/modules/mcp/tool-descriptors/worktree.metadata.d.ts +2 -0
  144. package/dist/server/modules/mcp/tool-descriptors/worktree.metadata.js +105 -0
  145. package/dist/server/modules/mcp/tool-descriptors/worktree.metadata.js.map +1 -0
  146. package/dist/server/modules/provider-auth/opencode-credential-family.v2.d.ts +4 -0
  147. package/dist/server/modules/provider-auth/opencode-credential-family.v2.js +41 -0
  148. package/dist/server/modules/provider-auth/opencode-credential-family.v2.js.map +1 -0
  149. package/dist/server/modules/provider-auth/opencode-credentials.d.ts +25 -0
  150. package/dist/server/modules/provider-auth/opencode-credentials.js +102 -0
  151. package/dist/server/modules/provider-auth/opencode-credentials.js.map +1 -0
  152. package/dist/server/modules/provider-auth/opencode-pc-logins.service.d.ts +11 -0
  153. package/dist/server/modules/provider-auth/opencode-pc-logins.service.js +62 -0
  154. package/dist/server/modules/provider-auth/opencode-pc-logins.service.js.map +1 -0
  155. package/dist/server/modules/provider-auth/opencode-pc-logins.v1.d.ts +1 -0
  156. package/dist/server/modules/provider-auth/opencode-pc-logins.v1.js +25 -0
  157. package/dist/server/modules/provider-auth/opencode-pc-logins.v1.js.map +1 -0
  158. package/dist/server/modules/provider-auth/opencode-pc-logins.v2.d.ts +3 -0
  159. package/dist/server/modules/provider-auth/opencode-pc-logins.v2.js +25 -0
  160. package/dist/server/modules/provider-auth/opencode-pc-logins.v2.js.map +1 -0
  161. package/dist/server/modules/provider-auth/provider-auth-adapters.d.ts +4 -1
  162. package/dist/server/modules/provider-auth/provider-auth-adapters.js +65 -33
  163. package/dist/server/modules/provider-auth/provider-auth-adapters.js.map +1 -1
  164. package/dist/server/modules/provider-auth/provider-auth-generator.service.d.ts +3 -1
  165. package/dist/server/modules/provider-auth/provider-auth-generator.service.js +12 -6
  166. package/dist/server/modules/provider-auth/provider-auth-generator.service.js.map +1 -1
  167. package/dist/server/modules/provider-auth/provider-auth-vault.service.d.ts +3 -2
  168. package/dist/server/modules/provider-auth/provider-auth-vault.service.js +8 -25
  169. package/dist/server/modules/provider-auth/provider-auth-vault.service.js.map +1 -1
  170. package/dist/server/modules/provider-auth/provider-auth-watcher.service.d.ts +5 -1
  171. package/dist/server/modules/provider-auth/provider-auth-watcher.service.js +32 -1
  172. package/dist/server/modules/provider-auth/provider-auth-watcher.service.js.map +1 -1
  173. package/dist/server/modules/provider-auth/provider-auth.module.js +4 -0
  174. package/dist/server/modules/provider-auth/provider-auth.module.js.map +1 -1
  175. package/dist/server/modules/provider-usage/checkers/agy.checker.d.ts +15 -0
  176. package/dist/server/modules/provider-usage/checkers/agy.checker.js +129 -0
  177. package/dist/server/modules/provider-usage/checkers/agy.checker.js.map +1 -0
  178. package/dist/server/modules/provider-usage/checkers/checker-helpers.d.ts +4 -0
  179. package/dist/server/modules/provider-usage/checkers/checker-helpers.js +12 -0
  180. package/dist/server/modules/provider-usage/checkers/checker-helpers.js.map +1 -0
  181. package/dist/server/modules/provider-usage/checkers/claude-login.checker.d.ts +10 -0
  182. package/dist/server/modules/provider-usage/checkers/claude-login.checker.js +92 -0
  183. package/dist/server/modules/provider-usage/checkers/claude-login.checker.js.map +1 -0
  184. package/dist/server/modules/provider-usage/checkers/claude-token.checker.d.ts +5 -0
  185. package/dist/server/modules/provider-usage/checkers/claude-token.checker.js +80 -0
  186. package/dist/server/modules/provider-usage/checkers/claude-token.checker.js.map +1 -0
  187. package/dist/server/modules/provider-usage/checkers/claude-usage-parser.d.ts +12 -0
  188. package/dist/server/modules/provider-usage/checkers/claude-usage-parser.js +113 -0
  189. package/dist/server/modules/provider-usage/checkers/claude-usage-parser.js.map +1 -0
  190. package/dist/server/modules/provider-usage/checkers/codex.checker.d.ts +7 -0
  191. package/dist/server/modules/provider-usage/checkers/codex.checker.js +159 -0
  192. package/dist/server/modules/provider-usage/checkers/codex.checker.js.map +1 -0
  193. package/dist/server/modules/provider-usage/checkers/private-cwd.d.ts +1 -0
  194. package/dist/server/modules/provider-usage/checkers/private-cwd.js +8 -0
  195. package/dist/server/modules/provider-usage/checkers/private-cwd.js.map +1 -0
  196. package/dist/server/modules/provider-usage/controllers/provider-usage.controller.d.ts +7 -0
  197. package/dist/server/modules/provider-usage/controllers/provider-usage.controller.js +51 -0
  198. package/dist/server/modules/provider-usage/controllers/provider-usage.controller.js.map +1 -0
  199. package/dist/server/modules/provider-usage/provider-usage.module.d.ts +2 -0
  200. package/dist/server/modules/provider-usage/provider-usage.module.js +58 -0
  201. package/dist/server/modules/provider-usage/provider-usage.module.js.map +1 -0
  202. package/dist/server/modules/provider-usage/provider-usage.types.d.ts +26 -0
  203. package/dist/server/modules/provider-usage/provider-usage.types.js +5 -0
  204. package/dist/server/modules/provider-usage/provider-usage.types.js.map +1 -0
  205. package/dist/server/modules/provider-usage/services/provider-usage-accounts.d.ts +5 -0
  206. package/dist/server/modules/provider-usage/services/provider-usage-accounts.js +94 -0
  207. package/dist/server/modules/provider-usage/services/provider-usage-accounts.js.map +1 -0
  208. package/dist/server/modules/provider-usage/services/provider-usage-accounts.service.d.ts +23 -0
  209. package/dist/server/modules/provider-usage/services/provider-usage-accounts.service.js +81 -0
  210. package/dist/server/modules/provider-usage/services/provider-usage-accounts.service.js.map +1 -0
  211. package/dist/server/modules/provider-usage/services/provider-usage.service.d.ts +37 -0
  212. package/dist/server/modules/provider-usage/services/provider-usage.service.js +262 -0
  213. package/dist/server/modules/provider-usage/services/provider-usage.service.js.map +1 -0
  214. package/dist/server/modules/providers/adapters/capabilities/index.d.ts +2 -2
  215. package/dist/server/modules/providers/adapters/capabilities/index.js +2 -1
  216. package/dist/server/modules/providers/adapters/capabilities/index.js.map +1 -1
  217. package/dist/server/modules/providers/adapters/capabilities/provider-plugin.capability.d.ts +16 -2
  218. package/dist/server/modules/providers/adapters/capabilities/session-command.capability.d.ts +5 -0
  219. package/dist/server/modules/providers/adapters/capabilities/session-command.capability.js +3 -0
  220. package/dist/server/modules/providers/adapters/capabilities/session-command.capability.js.map +1 -0
  221. package/dist/server/modules/providers/adapters/capabilities/type-guards.d.ts +4 -1
  222. package/dist/server/modules/providers/adapters/capabilities/type-guards.js +5 -3
  223. package/dist/server/modules/providers/adapters/capabilities/type-guards.js.map +1 -1
  224. package/dist/server/modules/providers/adapters/claude.adapter.d.ts +6 -3
  225. package/dist/server/modules/providers/adapters/claude.adapter.js +7 -2
  226. package/dist/server/modules/providers/adapters/claude.adapter.js.map +1 -1
  227. package/dist/server/modules/providers/adapters/codex.adapter.d.ts +6 -6
  228. package/dist/server/modules/providers/adapters/codex.adapter.js +47 -41
  229. package/dist/server/modules/providers/adapters/codex.adapter.js.map +1 -1
  230. package/dist/server/modules/providers/adapters/opencode-cli-version.d.ts +13 -0
  231. package/dist/server/modules/providers/adapters/opencode-cli-version.js +24 -0
  232. package/dist/server/modules/providers/adapters/opencode-cli-version.js.map +1 -0
  233. package/dist/server/modules/providers/adapters/opencode-config-content.d.ts +1 -0
  234. package/dist/server/modules/providers/adapters/opencode-config-content.js +43 -0
  235. package/dist/server/modules/providers/adapters/opencode-config-content.js.map +1 -0
  236. package/dist/server/modules/providers/adapters/opencode-launch.v1.d.ts +4 -0
  237. package/dist/server/modules/providers/adapters/opencode-launch.v1.js +10 -0
  238. package/dist/server/modules/providers/adapters/opencode-launch.v1.js.map +1 -0
  239. package/dist/server/modules/providers/adapters/opencode-launch.v2.d.ts +2 -0
  240. package/dist/server/modules/providers/adapters/opencode-launch.v2.js +18 -0
  241. package/dist/server/modules/providers/adapters/opencode-launch.v2.js.map +1 -0
  242. package/dist/server/modules/providers/adapters/opencode.adapter.d.ts +3 -4
  243. package/dist/server/modules/providers/adapters/opencode.adapter.js +11 -42
  244. package/dist/server/modules/providers/adapters/opencode.adapter.js.map +1 -1
  245. package/dist/server/modules/providers/adapters/plugin-catalog.utils.d.ts +3 -0
  246. package/dist/server/modules/providers/adapters/plugin-catalog.utils.js +10 -0
  247. package/dist/server/modules/providers/adapters/plugin-catalog.utils.js.map +1 -1
  248. package/dist/server/modules/providers/adapters/provider-adapter.interface.d.ts +9 -3
  249. package/dist/server/modules/providers/adapters/provider-cli-policy.d.ts +3 -0
  250. package/dist/server/modules/providers/adapters/provider-cli-policy.js +8 -0
  251. package/dist/server/modules/providers/adapters/provider-cli-policy.js.map +1 -1
  252. package/dist/server/modules/providers/controllers/provider-models.controller.d.ts +3 -1
  253. package/dist/server/modules/providers/controllers/provider-models.controller.js +18 -3
  254. package/dist/server/modules/providers/controllers/provider-models.controller.js.map +1 -1
  255. package/dist/server/modules/providers/providers.module.js +5 -0
  256. package/dist/server/modules/providers/providers.module.js.map +1 -1
  257. package/dist/server/modules/providers/services/codex-app-server.client.d.ts +11 -0
  258. package/dist/server/modules/providers/services/codex-app-server.client.js +129 -0
  259. package/dist/server/modules/providers/services/codex-app-server.client.js.map +1 -0
  260. package/dist/server/modules/providers/services/provider-cli-version-probe.module.d.ts +2 -0
  261. package/dist/server/modules/providers/services/provider-cli-version-probe.module.js +23 -0
  262. package/dist/server/modules/providers/services/provider-cli-version-probe.module.js.map +1 -0
  263. package/dist/server/modules/providers/services/provider-cli-version-probe.service.d.ts +8 -0
  264. package/dist/server/modules/providers/services/provider-cli-version-probe.service.js +65 -0
  265. package/dist/server/modules/providers/services/provider-cli-version-probe.service.js.map +1 -0
  266. package/dist/server/modules/providers/services/provider-plugins.service.d.ts +5 -1
  267. package/dist/server/modules/providers/services/provider-plugins.service.js +43 -16
  268. package/dist/server/modules/providers/services/provider-plugins.service.js.map +1 -1
  269. package/dist/server/modules/providers/utils/codex-config.d.ts +9 -0
  270. package/dist/server/modules/providers/utils/codex-config.js +34 -16
  271. package/dist/server/modules/providers/utils/codex-config.js.map +1 -1
  272. package/dist/server/modules/providers/utils/private-cwd.d.ts +1 -0
  273. package/dist/server/modules/providers/utils/private-cwd.js +12 -0
  274. package/dist/server/modules/providers/utils/private-cwd.js.map +1 -0
  275. package/dist/server/modules/remotes/contract/host-routes.d.ts +2180 -35
  276. package/dist/server/modules/remotes/contract/host-routes.js +168 -16
  277. package/dist/server/modules/remotes/contract/host-routes.js.map +1 -1
  278. package/dist/server/modules/remotes/controllers/home-shared-vm-notices.controller.d.ts +10 -0
  279. package/dist/server/modules/remotes/controllers/home-shared-vm-notices.controller.js +59 -0
  280. package/dist/server/modules/remotes/controllers/home-shared-vm-notices.controller.js.map +1 -0
  281. package/dist/server/modules/remotes/controllers/remotes.controller.js +1 -0
  282. package/dist/server/modules/remotes/controllers/remotes.controller.js.map +1 -1
  283. package/dist/server/modules/remotes/dtos/remote-notices.dto.d.ts +4 -0
  284. package/dist/server/modules/remotes/dtos/remote-notices.dto.js +3 -0
  285. package/dist/server/modules/remotes/dtos/remote-notices.dto.js.map +1 -0
  286. package/dist/server/modules/remotes/dtos/remote.dto.d.ts +2 -0
  287. package/dist/server/modules/remotes/dtos/remote.dto.js.map +1 -1
  288. package/dist/server/modules/remotes/dtos/shared-vm.dto.d.ts +488 -0
  289. package/dist/server/modules/remotes/dtos/shared-vm.dto.js +60 -0
  290. package/dist/server/modules/remotes/dtos/shared-vm.dto.js.map +1 -0
  291. package/dist/server/modules/remotes/git-coordinator/git-checkpoint.d.ts +5 -0
  292. package/dist/server/modules/remotes/git-coordinator/git-checkpoint.js +95 -0
  293. package/dist/server/modules/remotes/git-coordinator/git-checkpoint.js.map +1 -0
  294. package/dist/server/modules/remotes/git-coordinator/git-coordinator-index.service.d.ts +18 -0
  295. package/dist/server/modules/remotes/git-coordinator/git-coordinator-index.service.js +192 -0
  296. package/dist/server/modules/remotes/git-coordinator/git-coordinator-index.service.js.map +1 -0
  297. package/dist/server/modules/remotes/git-coordinator/git-coordinator.dto.d.ts +519 -0
  298. package/dist/server/modules/remotes/git-coordinator/git-coordinator.dto.js +104 -0
  299. package/dist/server/modules/remotes/git-coordinator/git-coordinator.dto.js.map +1 -0
  300. package/dist/server/modules/remotes/git-coordinator/git-coordinator.service.d.ts +66 -0
  301. package/dist/server/modules/remotes/git-coordinator/git-coordinator.service.js +555 -0
  302. package/dist/server/modules/remotes/git-coordinator/git-coordinator.service.js.map +1 -0
  303. package/dist/server/modules/remotes/git-coordinator/git-coordinator.store.d.ts +11 -0
  304. package/dist/server/modules/remotes/git-coordinator/git-coordinator.store.js +69 -0
  305. package/dist/server/modules/remotes/git-coordinator/git-coordinator.store.js.map +1 -0
  306. package/dist/server/modules/remotes/git-coordinator/git-process-identity.d.ts +3 -0
  307. package/dist/server/modules/remotes/git-coordinator/git-process-identity.js +71 -0
  308. package/dist/server/modules/remotes/git-coordinator/git-process-identity.js.map +1 -0
  309. package/dist/server/modules/remotes/git-coordinator/host-git-coordinator.controller.d.ts +19 -0
  310. package/dist/server/modules/remotes/git-coordinator/host-git-coordinator.controller.js +181 -0
  311. package/dist/server/modules/remotes/git-coordinator/host-git-coordinator.controller.js.map +1 -0
  312. package/dist/server/modules/remotes/git-coordinator/loopback.d.ts +2 -0
  313. package/dist/server/modules/remotes/git-coordinator/loopback.js +10 -0
  314. package/dist/server/modules/remotes/git-coordinator/loopback.js.map +1 -0
  315. package/dist/server/modules/remotes/git-coordinator/vm-git-coordinator.controller.d.ts +9 -0
  316. package/dist/server/modules/remotes/git-coordinator/vm-git-coordinator.controller.js +66 -0
  317. package/dist/server/modules/remotes/git-coordinator/vm-git-coordinator.controller.js.map +1 -0
  318. package/dist/server/modules/remotes/git-owner.store.d.ts +102 -1
  319. package/dist/server/modules/remotes/git-owner.store.js +37 -11
  320. package/dist/server/modules/remotes/git-owner.store.js.map +1 -1
  321. package/dist/server/modules/remotes/git-shim/git-shim-registry.service.d.ts +30 -0
  322. package/dist/server/modules/remotes/git-shim/git-shim-registry.service.js +175 -0
  323. package/dist/server/modules/remotes/git-shim/git-shim-registry.service.js.map +1 -0
  324. package/dist/server/modules/remotes/git-writes/change-barrier.d.ts +16 -0
  325. package/dist/server/modules/remotes/git-writes/change-barrier.js +40 -0
  326. package/dist/server/modules/remotes/git-writes/change-barrier.js.map +1 -0
  327. package/dist/server/modules/remotes/git-writes/home-git-handover.service.d.ts +42 -0
  328. package/dist/server/modules/remotes/git-writes/home-git-handover.service.js +349 -0
  329. package/dist/server/modules/remotes/git-writes/home-git-handover.service.js.map +1 -0
  330. package/dist/server/modules/remotes/git-writes/home-git-transitions.d.ts +16 -0
  331. package/dist/server/modules/remotes/git-writes/home-git-transitions.js +12 -0
  332. package/dist/server/modules/remotes/git-writes/home-git-transitions.js.map +1 -0
  333. package/dist/server/modules/remotes/git-writes/home-git-write.controller.d.ts +10 -0
  334. package/dist/server/modules/remotes/git-writes/home-git-write.controller.js +74 -0
  335. package/dist/server/modules/remotes/git-writes/home-git-write.controller.js.map +1 -0
  336. package/dist/server/modules/remotes/git-writes/home-git-write.service.d.ts +72 -0
  337. package/dist/server/modules/remotes/git-writes/home-git-write.service.js +481 -0
  338. package/dist/server/modules/remotes/git-writes/home-git-write.service.js.map +1 -0
  339. package/dist/server/modules/remotes/git-writes/home-git-write.store.d.ts +39 -0
  340. package/dist/server/modules/remotes/git-writes/home-git-write.store.js +78 -0
  341. package/dist/server/modules/remotes/git-writes/home-git-write.store.js.map +1 -0
  342. package/dist/server/modules/remotes/host/host-helper.dto.d.ts +4 -0
  343. package/dist/server/modules/remotes/host/host-helper.dto.js +14 -1
  344. package/dist/server/modules/remotes/host/host-helper.dto.js.map +1 -1
  345. package/dist/server/modules/remotes/host/host-helper.service.d.ts +5 -1
  346. package/dist/server/modules/remotes/host/host-helper.service.js +9 -3
  347. package/dist/server/modules/remotes/host/host-helper.service.js.map +1 -1
  348. package/dist/server/modules/remotes/host/host-opencode-credentials.v2.d.ts +7 -0
  349. package/dist/server/modules/remotes/host/host-opencode-credentials.v2.js +46 -0
  350. package/dist/server/modules/remotes/host/host-opencode-credentials.v2.js.map +1 -0
  351. package/dist/server/modules/remotes/host/host-provider-auth.service.d.ts +11 -2
  352. package/dist/server/modules/remotes/host/host-provider-auth.service.js +92 -14
  353. package/dist/server/modules/remotes/host/host-provider-auth.service.js.map +1 -1
  354. package/dist/server/modules/remotes/host/host-provider-usage-revision.d.ts +2 -0
  355. package/dist/server/modules/remotes/host/host-provider-usage-revision.js +11 -0
  356. package/dist/server/modules/remotes/host/host-provider-usage-revision.js.map +1 -0
  357. package/dist/server/modules/remotes/host/host-provider-usage-settings.controller.d.ts +11 -0
  358. package/dist/server/modules/remotes/host/host-provider-usage-settings.controller.js +62 -0
  359. package/dist/server/modules/remotes/host/host-provider-usage-settings.controller.js.map +1 -0
  360. package/dist/server/modules/remotes/host/host-provider-usage-settings.service.d.ts +9 -0
  361. package/dist/server/modules/remotes/host/host-provider-usage-settings.service.js +35 -0
  362. package/dist/server/modules/remotes/host/host-provider-usage-settings.service.js.map +1 -0
  363. package/dist/server/modules/remotes/host/host-shared-vm.controller.d.ts +24 -0
  364. package/dist/server/modules/remotes/host/host-shared-vm.controller.js +183 -0
  365. package/dist/server/modules/remotes/host/host-shared-vm.controller.js.map +1 -0
  366. package/dist/server/modules/remotes/host/host-shared-vm.service.d.ts +28 -0
  367. package/dist/server/modules/remotes/host/host-shared-vm.service.js +159 -0
  368. package/dist/server/modules/remotes/host/host-shared-vm.service.js.map +1 -0
  369. package/dist/server/modules/remotes/host/host-shared-vm.store.d.ts +18 -0
  370. package/dist/server/modules/remotes/host/host-shared-vm.store.js +105 -0
  371. package/dist/server/modules/remotes/host/host-shared-vm.store.js.map +1 -0
  372. package/dist/server/modules/remotes/host/host-update.controller.js +3 -3
  373. package/dist/server/modules/remotes/host/host-update.controller.js.map +1 -1
  374. package/dist/server/modules/remotes/host/host.service.d.ts +3 -1
  375. package/dist/server/modules/remotes/host/host.service.js +9 -2
  376. package/dist/server/modules/remotes/host/host.service.js.map +1 -1
  377. package/dist/server/modules/remotes/host/shared-vm.contract.d.ts +184 -0
  378. package/dist/server/modules/remotes/host/shared-vm.contract.js +44 -0
  379. package/dist/server/modules/remotes/host/shared-vm.contract.js.map +1 -0
  380. package/dist/server/modules/remotes/host-install/host-install-block.d.ts +2 -0
  381. package/dist/server/modules/remotes/host-install/host-install-block.js +3 -2
  382. package/dist/server/modules/remotes/host-install/host-install-block.js.map +1 -1
  383. package/dist/server/modules/remotes/host-install/host-install.service.d.ts +2 -0
  384. package/dist/server/modules/remotes/host-install/host-install.service.js +10 -0
  385. package/dist/server/modules/remotes/host-install/host-install.service.js.map +1 -1
  386. package/dist/server/modules/remotes/host-install/host-join-block.d.ts +16 -0
  387. package/dist/server/modules/remotes/host-install/host-join-block.js +122 -0
  388. package/dist/server/modules/remotes/host-install/host-join-block.js.map +1 -0
  389. package/dist/server/modules/remotes/host-install/ssh-runner.d.ts +1 -0
  390. package/dist/server/modules/remotes/host-install/ssh-runner.js +2 -2
  391. package/dist/server/modules/remotes/host-install/ssh-runner.js.map +1 -1
  392. package/dist/server/modules/remotes/operations/attach.operation.d.ts +9 -2
  393. package/dist/server/modules/remotes/operations/attach.operation.js +38 -11
  394. package/dist/server/modules/remotes/operations/attach.operation.js.map +1 -1
  395. package/dist/server/modules/remotes/operations/claim.operation.d.ts +4 -0
  396. package/dist/server/modules/remotes/operations/claim.operation.js +15 -0
  397. package/dist/server/modules/remotes/operations/claim.operation.js.map +1 -1
  398. package/dist/server/modules/remotes/operations/claude-user-instructions.d.ts +2 -0
  399. package/dist/server/modules/remotes/operations/claude-user-instructions.js +23 -0
  400. package/dist/server/modules/remotes/operations/claude-user-instructions.js.map +1 -0
  401. package/dist/server/modules/remotes/operations/destroy-vm.operation.d.ts +4 -2
  402. package/dist/server/modules/remotes/operations/destroy-vm.operation.js +43 -23
  403. package/dist/server/modules/remotes/operations/destroy-vm.operation.js.map +1 -1
  404. package/dist/server/modules/remotes/operations/detach.operation.d.ts +12 -1
  405. package/dist/server/modules/remotes/operations/detach.operation.js +106 -29
  406. package/dist/server/modules/remotes/operations/detach.operation.js.map +1 -1
  407. package/dist/server/modules/remotes/operations/disconnect-all.operation.d.ts +50 -0
  408. package/dist/server/modules/remotes/operations/disconnect-all.operation.js +222 -0
  409. package/dist/server/modules/remotes/operations/disconnect-all.operation.js.map +1 -0
  410. package/dist/server/modules/remotes/operations/file-sync-handoff.d.ts +3 -1
  411. package/dist/server/modules/remotes/operations/file-sync-handoff.js +69 -68
  412. package/dist/server/modules/remotes/operations/file-sync-handoff.js.map +1 -1
  413. package/dist/server/modules/remotes/operations/git-owner.dto.d.ts +10 -44
  414. package/dist/server/modules/remotes/operations/git-owner.dto.js +1 -12
  415. package/dist/server/modules/remotes/operations/git-owner.dto.js.map +1 -1
  416. package/dist/server/modules/remotes/operations/guarded-vm-destroy.d.ts +2 -0
  417. package/dist/server/modules/remotes/operations/guarded-vm-destroy.js +14 -0
  418. package/dist/server/modules/remotes/operations/guarded-vm-destroy.js.map +1 -1
  419. package/dist/server/modules/remotes/operations/install-host.operation.d.ts +21 -1
  420. package/dist/server/modules/remotes/operations/install-host.operation.js +285 -27
  421. package/dist/server/modules/remotes/operations/install-host.operation.js.map +1 -1
  422. package/dist/server/modules/remotes/operations/remote-host.client.d.ts +51 -12
  423. package/dist/server/modules/remotes/operations/remote-host.client.js +129 -23
  424. package/dist/server/modules/remotes/operations/remote-host.client.js.map +1 -1
  425. package/dist/server/modules/remotes/operations/remote-operation.dto.d.ts +161 -0
  426. package/dist/server/modules/remotes/operations/remote-operation.dto.js +12 -1
  427. package/dist/server/modules/remotes/operations/remote-operation.dto.js.map +1 -1
  428. package/dist/server/modules/remotes/operations/remote-operation.runner.d.ts +4 -2
  429. package/dist/server/modules/remotes/operations/remote-operation.runner.js +53 -9
  430. package/dist/server/modules/remotes/operations/remote-operation.runner.js.map +1 -1
  431. package/dist/server/modules/remotes/operations/remote-operation.types.d.ts +6 -3
  432. package/dist/server/modules/remotes/operations/remote-operation.types.js +10 -1
  433. package/dist/server/modules/remotes/operations/remote-operation.types.js.map +1 -1
  434. package/dist/server/modules/remotes/operations/remote-operations.controller.d.ts +2 -3
  435. package/dist/server/modules/remotes/operations/remote-operations.controller.js +20 -25
  436. package/dist/server/modules/remotes/operations/remote-operations.controller.js.map +1 -1
  437. package/dist/server/modules/remotes/operations/remote-operations.service.d.ts +11 -9
  438. package/dist/server/modules/remotes/operations/remote-operations.service.js +123 -118
  439. package/dist/server/modules/remotes/operations/remote-operations.service.js.map +1 -1
  440. package/dist/server/modules/remotes/operations/remote-worktree-guard.d.ts +16 -0
  441. package/dist/server/modules/remotes/operations/remote-worktree-guard.js +100 -0
  442. package/dist/server/modules/remotes/operations/remote-worktree-guard.js.map +1 -0
  443. package/dist/server/modules/remotes/operations/reset-vm.operation.d.ts +15 -2
  444. package/dist/server/modules/remotes/operations/reset-vm.operation.js +115 -15
  445. package/dist/server/modules/remotes/operations/reset-vm.operation.js.map +1 -1
  446. package/dist/server/modules/remotes/operations/update-host.operation.d.ts +2 -0
  447. package/dist/server/modules/remotes/operations/update-host.operation.js +11 -5
  448. package/dist/server/modules/remotes/operations/update-host.operation.js.map +1 -1
  449. package/dist/server/modules/remotes/operations/vm-operations.controller.d.ts +5 -1
  450. package/dist/server/modules/remotes/operations/vm-operations.controller.js +36 -2
  451. package/dist/server/modules/remotes/operations/vm-operations.controller.js.map +1 -1
  452. package/dist/server/modules/remotes/operations/vm-operations.dto.d.ts +150 -0
  453. package/dist/server/modules/remotes/operations/vm-operations.dto.js +9 -1
  454. package/dist/server/modules/remotes/operations/vm-operations.dto.js.map +1 -1
  455. package/dist/server/modules/remotes/operations/vm-operations.service.d.ts +3 -1
  456. package/dist/server/modules/remotes/operations/vm-operations.service.js +38 -15
  457. package/dist/server/modules/remotes/operations/vm-operations.service.js.map +1 -1
  458. package/dist/server/modules/remotes/ports/remote-health.port.d.ts +2 -0
  459. package/dist/server/modules/remotes/ports/remote-health.port.js.map +1 -1
  460. package/dist/server/modules/remotes/remotes.module.js +47 -2
  461. package/dist/server/modules/remotes/remotes.module.js.map +1 -1
  462. package/dist/server/modules/remotes/services/home-shared-vm-notices.service.d.ts +18 -0
  463. package/dist/server/modules/remotes/services/home-shared-vm-notices.service.js +81 -0
  464. package/dist/server/modules/remotes/services/home-shared-vm-notices.service.js.map +1 -0
  465. package/dist/server/modules/remotes/services/remote-forced-detach.service.d.ts +11 -0
  466. package/dist/server/modules/remotes/services/remote-forced-detach.service.js +69 -0
  467. package/dist/server/modules/remotes/services/remote-forced-detach.service.js.map +1 -0
  468. package/dist/server/modules/remotes/services/remote-forced-detach.store.d.ts +23 -0
  469. package/dist/server/modules/remotes/services/remote-forced-detach.store.js +73 -0
  470. package/dist/server/modules/remotes/services/remote-forced-detach.store.js.map +1 -0
  471. package/dist/server/modules/remotes/services/remote-health.service.d.ts +7 -1
  472. package/dist/server/modules/remotes/services/remote-health.service.js +41 -4
  473. package/dist/server/modules/remotes/services/remote-health.service.js.map +1 -1
  474. package/dist/server/modules/remotes/services/remote-provider-usage-settings.service.d.ts +13 -0
  475. package/dist/server/modules/remotes/services/remote-provider-usage-settings.service.js +57 -0
  476. package/dist/server/modules/remotes/services/remote-provider-usage-settings.service.js.map +1 -0
  477. package/dist/server/modules/remotes/services/remote-shared-vm.service.d.ts +37 -0
  478. package/dist/server/modules/remotes/services/remote-shared-vm.service.js +184 -0
  479. package/dist/server/modules/remotes/services/remote-shared-vm.service.js.map +1 -0
  480. package/dist/server/modules/remotes/services/remote-shared-vm.store.d.ts +11 -0
  481. package/dist/server/modules/remotes/services/remote-shared-vm.store.js +75 -0
  482. package/dist/server/modules/remotes/services/remote-shared-vm.store.js.map +1 -0
  483. package/dist/server/modules/remotes/sync/remote-file-sync.service.d.ts +5 -1
  484. package/dist/server/modules/remotes/sync/remote-file-sync.service.js +95 -41
  485. package/dist/server/modules/remotes/sync/remote-file-sync.service.js.map +1 -1
  486. package/dist/server/modules/remotes/time/project-time-settler.dto.d.ts +2 -2
  487. package/dist/server/modules/remotes/transport/host-transport.d.ts +2 -0
  488. package/dist/server/modules/remotes/transport/host-transport.js +7 -0
  489. package/dist/server/modules/remotes/transport/host-transport.js.map +1 -1
  490. package/dist/server/modules/reviews/dtos/review.dto.d.ts +2 -2
  491. package/dist/server/modules/runtime-context-capture/codex-plugin-profile-materializer.service.d.ts +5 -1
  492. package/dist/server/modules/runtime-context-capture/codex-plugin-profile-materializer.service.js +25 -5
  493. package/dist/server/modules/runtime-context-capture/codex-plugin-profile-materializer.service.js.map +1 -1
  494. package/dist/server/modules/session-reader/__fixtures__/opencode-fixture-db.d.ts +6 -4
  495. package/dist/server/modules/session-reader/__fixtures__/opencode-fixture-db.js +17 -20
  496. package/dist/server/modules/session-reader/__fixtures__/opencode-fixture-db.js.map +1 -1
  497. package/dist/server/modules/session-reader/__fixtures__/opencode-v2-fixture-db.d.ts +61 -0
  498. package/dist/server/modules/session-reader/__fixtures__/opencode-v2-fixture-db.js +250 -0
  499. package/dist/server/modules/session-reader/__fixtures__/opencode-v2-fixture-db.js.map +1 -0
  500. package/dist/server/modules/session-reader/adapters/codex-session-reader.adapter.d.ts +1 -0
  501. package/dist/server/modules/session-reader/adapters/codex-session-reader.adapter.js +1 -0
  502. package/dist/server/modules/session-reader/adapters/codex-session-reader.adapter.js.map +1 -1
  503. package/dist/server/modules/session-reader/adapters/opencode-session-reader.adapter.d.ts +3 -1
  504. package/dist/server/modules/session-reader/adapters/opencode-session-reader.adapter.js +34 -13
  505. package/dist/server/modules/session-reader/adapters/opencode-session-reader.adapter.js.map +1 -1
  506. package/dist/server/modules/session-reader/adapters/session-reader-adapter.interface.d.ts +1 -0
  507. package/dist/server/modules/session-reader/data/pricing.json +302 -61
  508. package/dist/server/modules/session-reader/readers/opencode-sqlite.db.d.ts +73 -0
  509. package/dist/server/modules/session-reader/readers/opencode-sqlite.db.js +176 -0
  510. package/dist/server/modules/session-reader/readers/opencode-sqlite.db.js.map +1 -0
  511. package/dist/server/modules/session-reader/readers/opencode-sqlite.v1.reader.d.ts +45 -0
  512. package/dist/server/modules/session-reader/readers/{opencode-sqlite.reader.js → opencode-sqlite.v1.reader.js} +171 -164
  513. package/dist/server/modules/session-reader/readers/opencode-sqlite.v1.reader.js.map +1 -0
  514. package/dist/server/modules/session-reader/readers/opencode-sqlite.v2.reader.d.ts +15 -0
  515. package/dist/server/modules/session-reader/readers/opencode-sqlite.v2.reader.js +474 -0
  516. package/dist/server/modules/session-reader/readers/opencode-sqlite.v2.reader.js.map +1 -0
  517. package/dist/server/modules/session-reader/services/pricing.interface.d.ts +1 -0
  518. package/dist/server/modules/session-reader/services/pricing.interface.js.map +1 -1
  519. package/dist/server/modules/session-reader/services/pricing.service.d.ts +1 -0
  520. package/dist/server/modules/session-reader/services/pricing.service.js +3 -0
  521. package/dist/server/modules/session-reader/services/pricing.service.js.map +1 -1
  522. package/dist/server/modules/session-reader/services/session-reader.service.js +6 -1
  523. package/dist/server/modules/session-reader/services/session-reader.service.js.map +1 -1
  524. package/dist/server/modules/sessions/services/message-enqueue.service.d.ts +3 -0
  525. package/dist/server/modules/sessions/services/message-enqueue.service.js +1 -0
  526. package/dist/server/modules/sessions/services/message-enqueue.service.js.map +1 -1
  527. package/dist/server/modules/sessions/services/message-pool.types.d.ts +6 -0
  528. package/dist/server/modules/sessions/services/message-pool.types.js +6 -1
  529. package/dist/server/modules/sessions/services/message-pool.types.js.map +1 -1
  530. package/dist/server/modules/sessions/services/provider-launch-config/provider-launch-config.service.d.ts +2 -0
  531. package/dist/server/modules/sessions/services/provider-launch-config/provider-launch-config.service.js +18 -1
  532. package/dist/server/modules/sessions/services/provider-launch-config/provider-launch-config.service.js.map +1 -1
  533. package/dist/server/modules/sessions/services/provider-runtime-preparation/launch-script.d.ts +5 -0
  534. package/dist/server/modules/sessions/services/provider-runtime-preparation/launch-script.js +37 -0
  535. package/dist/server/modules/sessions/services/provider-runtime-preparation/launch-script.js.map +1 -0
  536. package/dist/server/modules/sessions/services/provider-runtime-preparation/provider-runtime-preparation.service.d.ts +8 -1
  537. package/dist/server/modules/sessions/services/provider-runtime-preparation/provider-runtime-preparation.service.js +50 -2
  538. package/dist/server/modules/sessions/services/provider-runtime-preparation/provider-runtime-preparation.service.js.map +1 -1
  539. package/dist/server/modules/sessions/services/provider-runtime-preparation/provider-runtime-preparation.types.d.ts +1 -0
  540. package/dist/server/modules/sessions/services/session-lifecycle-facade.service.d.ts +7 -2
  541. package/dist/server/modules/sessions/services/session-lifecycle-facade.service.js +4 -4
  542. package/dist/server/modules/sessions/services/session-lifecycle-facade.service.js.map +1 -1
  543. package/dist/server/modules/sessions/services/session-runtime/__test-utils__/pipeline-harness.d.ts +2 -0
  544. package/dist/server/modules/sessions/services/session-runtime/__test-utils__/pipeline-harness.js +2 -0
  545. package/dist/server/modules/sessions/services/session-runtime/__test-utils__/pipeline-harness.js.map +1 -1
  546. package/dist/server/modules/sessions/services/session-runtime/session-launch-pipeline.service.js +6 -7
  547. package/dist/server/modules/sessions/services/session-runtime/session-launch-pipeline.service.js.map +1 -1
  548. package/dist/server/modules/sessions/services/session-runtime/session-restore-pipeline.service.js +1 -2
  549. package/dist/server/modules/sessions/services/session-runtime/session-restore-pipeline.service.js.map +1 -1
  550. package/dist/server/modules/sessions/services/sessions-message-pool.service.d.ts +1 -0
  551. package/dist/server/modules/sessions/services/sessions-message-pool.service.js +30 -0
  552. package/dist/server/modules/sessions/services/sessions-message-pool.service.js.map +1 -1
  553. package/dist/server/modules/sessions/sessions.module.js +15 -0
  554. package/dist/server/modules/sessions/sessions.module.js.map +1 -1
  555. package/dist/server/modules/settings/dtos/settings.dto.d.ts +33 -0
  556. package/dist/server/modules/settings/dtos/settings.dto.js +2 -0
  557. package/dist/server/modules/settings/dtos/settings.dto.js.map +1 -1
  558. package/dist/server/modules/settings/local/delegates/core-settings.delegate.d.ts +3 -0
  559. package/dist/server/modules/settings/local/delegates/core-settings.delegate.js +35 -0
  560. package/dist/server/modules/settings/local/delegates/core-settings.delegate.js.map +1 -1
  561. package/dist/server/modules/settings/local/delegates/provider-cli-settings.delegate.js +6 -1
  562. package/dist/server/modules/settings/local/delegates/provider-cli-settings.delegate.js.map +1 -1
  563. package/dist/server/modules/settings/services/settings.service.d.ts +2 -1
  564. package/dist/server/modules/settings/services/settings.service.js +3 -0
  565. package/dist/server/modules/settings/services/settings.service.js.map +1 -1
  566. package/dist/server/modules/storage/db/schema.d.ts +235 -0
  567. package/dist/server/modules/storage/db/schema.js +22 -1
  568. package/dist/server/modules/storage/db/schema.js.map +1 -1
  569. package/dist/server/modules/storage/interfaces/storage.interface.d.ts +10 -2
  570. package/dist/server/modules/storage/interfaces/storage.interface.js.map +1 -1
  571. package/dist/server/modules/storage/local/delegates/project-replica.delegate.js +7 -0
  572. package/dist/server/modules/storage/local/delegates/project-replica.delegate.js.map +1 -1
  573. package/dist/server/modules/storage/local/delegates/worktree.delegate.d.ts +14 -0
  574. package/dist/server/modules/storage/local/delegates/worktree.delegate.js +89 -0
  575. package/dist/server/modules/storage/local/delegates/worktree.delegate.js.map +1 -0
  576. package/dist/server/modules/storage/local/helpers/host-abandoned-projects.d.ts +5 -0
  577. package/dist/server/modules/storage/local/helpers/host-abandoned-projects.js +39 -0
  578. package/dist/server/modules/storage/local/helpers/host-abandoned-projects.js.map +1 -0
  579. package/dist/server/modules/storage/local/local-storage.service.js +2 -0
  580. package/dist/server/modules/storage/local/local-storage.service.js.map +1 -1
  581. package/dist/server/modules/storage/local/storage-routes.d.ts +26 -0
  582. package/dist/server/modules/storage/local/storage-routes.js +9 -0
  583. package/dist/server/modules/storage/local/storage-routes.js.map +1 -1
  584. package/dist/server/modules/storage/models/domain.models.d.ts +20 -1
  585. package/dist/server/modules/storage/models/domain.models.js +1 -0
  586. package/dist/server/modules/storage/models/domain.models.js.map +1 -1
  587. package/dist/server/modules/storage/write-gate/storage-write-scope.d.ts +1 -0
  588. package/dist/server/modules/storage/write-gate/storage-write-scope.js +1 -0
  589. package/dist/server/modules/storage/write-gate/storage-write-scope.js.map +1 -1
  590. package/dist/server/modules/teams/services/teams.service.d.ts +46 -6
  591. package/dist/server/modules/teams/services/teams.service.js +129 -8
  592. package/dist/server/modules/teams/services/teams.service.js.map +1 -1
  593. package/dist/server/modules/teams/teams.module.js +14 -1
  594. package/dist/server/modules/teams/teams.module.js.map +1 -1
  595. package/dist/server/modules/terminal/services/terminal-io/delivery.d.ts +2 -2
  596. package/dist/server/modules/terminal/services/terminal-io/delivery.js.map +1 -1
  597. package/dist/server/modules/terminal/services/terminal-io/terminal-io.service.d.ts +1 -1
  598. package/dist/server/modules/terminal/services/terminal-io/terminal-io.service.js +6 -1
  599. package/dist/server/modules/terminal/services/terminal-io/terminal-io.service.js.map +1 -1
  600. package/dist/server/modules/vm-providers/proxmox-vm.provider.d.ts +1 -0
  601. package/dist/server/modules/vm-providers/proxmox-vm.provider.js +17 -0
  602. package/dist/server/modules/vm-providers/proxmox-vm.provider.js.map +1 -1
  603. package/dist/server/modules/worktrees/git-output.d.ts +5 -0
  604. package/dist/server/modules/worktrees/git-output.js +53 -0
  605. package/dist/server/modules/worktrees/git-output.js.map +1 -0
  606. package/dist/server/modules/worktrees/host-worktrees.controller.d.ts +10 -0
  607. package/dist/server/modules/worktrees/host-worktrees.controller.js +59 -0
  608. package/dist/server/modules/worktrees/host-worktrees.controller.js.map +1 -0
  609. package/dist/server/modules/worktrees/host-worktrees.dto.d.ts +40 -0
  610. package/dist/server/modules/worktrees/host-worktrees.dto.js +9 -0
  611. package/dist/server/modules/worktrees/host-worktrees.dto.js.map +1 -0
  612. package/dist/server/modules/worktrees/project-git-mutex.d.ts +5 -0
  613. package/dist/server/modules/worktrees/project-git-mutex.js +38 -0
  614. package/dist/server/modules/worktrees/project-git-mutex.js.map +1 -0
  615. package/dist/server/modules/worktrees/worktree-admission.service.d.ts +15 -0
  616. package/dist/server/modules/worktrees/worktree-admission.service.js +87 -0
  617. package/dist/server/modules/worktrees/worktree-admission.service.js.map +1 -0
  618. package/dist/server/modules/worktrees/worktree-git-runner.d.ts +12 -0
  619. package/dist/server/modules/worktrees/worktree-git-runner.js +57 -0
  620. package/dist/server/modules/worktrees/worktree-git-runner.js.map +1 -0
  621. package/dist/server/modules/worktrees/worktrees.errors.d.ts +5 -0
  622. package/dist/server/modules/worktrees/worktrees.errors.js +11 -0
  623. package/dist/server/modules/worktrees/worktrees.errors.js.map +1 -0
  624. package/dist/server/modules/worktrees/worktrees.module.d.ts +2 -0
  625. package/dist/server/modules/worktrees/worktrees.module.js +37 -0
  626. package/dist/server/modules/worktrees/worktrees.module.js.map +1 -0
  627. package/dist/server/modules/worktrees/worktrees.service.d.ts +50 -0
  628. package/dist/server/modules/worktrees/worktrees.service.js +586 -0
  629. package/dist/server/modules/worktrees/worktrees.service.js.map +1 -0
  630. package/dist/server/modules/worktrees/worktrees.types.d.ts +58 -0
  631. package/dist/server/modules/worktrees/worktrees.types.js +3 -0
  632. package/dist/server/modules/worktrees/worktrees.types.js.map +1 -0
  633. package/dist/server/templates/teams-dev.json +6 -6
  634. package/dist/server/tsconfig.build.tsbuildinfo +1 -1
  635. package/dist/server/ui/assets/{ExternalRichEditor-CB-LjWox.js → ExternalRichEditor-NpBNzn_X.js} +1 -1
  636. package/dist/server/ui/assets/{ReviewDetailPage-CpMMjYet.js → ReviewDetailPage-DxVCE1zh.js} +1 -1
  637. package/dist/server/ui/assets/{ReviewsPage-Cw17_agp.js → ReviewsPage-Bx6jkULr.js} +1 -1
  638. package/dist/server/ui/assets/index-BZjQEWOy.css +32 -0
  639. package/dist/server/ui/assets/{index-DmRXRpSy.js → index-CLPZxkZt.js} +263 -263
  640. package/dist/server/ui/assets/{useReviewSubscription-wd5iHNQy.js → useReviewSubscription-BLuFzXjh.js} +1 -1
  641. package/dist/server/ui/index.html +2 -2
  642. package/dist/templates/teams-dev.json +6 -6
  643. package/npm-shrinkwrap.json +6189 -0
  644. package/package.json +22 -22
  645. package/dist/server/modules/file-sync/host-git-index.controller.d.ts +0 -10
  646. package/dist/server/modules/file-sync/host-git-index.controller.js +0 -67
  647. package/dist/server/modules/file-sync/host-git-index.controller.js.map +0 -1
  648. package/dist/server/modules/remotes/operations/git-owner.operation.d.ts +0 -35
  649. package/dist/server/modules/remotes/operations/git-owner.operation.js +0 -216
  650. package/dist/server/modules/remotes/operations/git-owner.operation.js.map +0 -1
  651. package/dist/server/modules/session-reader/readers/opencode-sqlite.reader.d.ts +0 -73
  652. package/dist/server/modules/session-reader/readers/opencode-sqlite.reader.js.map +0 -1
  653. package/dist/server/ui/assets/index-BwuNu70G.css +0 -32
@@ -1,35 +1,97 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
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
+ })();
5
35
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.OpencodeSqliteReader = void 0;
7
- exports.normalizeOpencodeSession = normalizeOpencodeSession;
8
- const better_sqlite3_1 = __importDefault(require("better-sqlite3"));
36
+ exports.OpencodeSqliteV1Reader = void 0;
37
+ exports.normalizeOpencodeV1Session = normalizeOpencodeV1Session;
38
+ const fs = __importStar(require("node:fs"));
39
+ const os = __importStar(require("node:os"));
40
+ const path = __importStar(require("node:path"));
9
41
  const logger_1 = require("../../../common/logging/logger");
10
42
  const error_types_1 = require("../../../common/errors/error-types");
11
43
  const estimate_content_tokens_1 = require("../adapters/utils/estimate-content-tokens");
12
- const logger = (0, logger_1.createLogger)('OpencodeSqliteReader');
13
- const PROVIDER_NAME = 'opencode';
14
- const DEFAULT_MAX_TOOL_OUTPUT_CHARS = 100_000;
15
- const DEFAULT_BUSY_TIMEOUT_MS = 5_000;
16
- const DEFAULT_OPEN_RETRIES = 3;
17
- const OPEN_RETRY_DELAY_MS = 50;
18
- const DEFAULT_CONTEXT_WINDOW_TOKENS = 200_000;
19
- class OpencodeSqliteReader {
44
+ const opencode_sqlite_db_1 = require("./opencode-sqlite.db");
45
+ const logger = (0, logger_1.createLogger)('OpencodeSqliteV1Reader');
46
+ const MODELS_CATALOG_FILE = path.join('.cache', 'opencode', 'models.json');
47
+ const catalogCache = new Map();
48
+ const catalogKey = (ref) => `${ref.providerId}\u0000${ref.modelId}`;
49
+ function lookupCatalogContextWindow(catalogPath, ref) {
50
+ try {
51
+ const stat = fs.statSync(catalogPath);
52
+ let entry = catalogCache.get(catalogPath);
53
+ if (!entry || entry.mtimeMs !== stat.mtimeMs || entry.size !== stat.size) {
54
+ entry = {
55
+ mtimeMs: stat.mtimeMs,
56
+ size: stat.size,
57
+ limits: parseCatalogLimits(fs.readFileSync(catalogPath, 'utf8')),
58
+ };
59
+ catalogCache.set(catalogPath, entry);
60
+ }
61
+ return entry.limits.get(catalogKey(ref)) ?? null;
62
+ }
63
+ catch (error) {
64
+ logger.debug({ error: String(error?.message ?? error) }, 'OpenCode model catalog unavailable — using the fallback window');
65
+ return null;
66
+ }
67
+ }
68
+ function parseCatalogLimits(json) {
69
+ const limits = new Map();
70
+ const catalog = JSON.parse(json);
71
+ for (const [providerId, provider] of Object.entries(catalog ?? {})) {
72
+ for (const [modelId, model] of Object.entries(provider?.models ?? {})) {
73
+ const context = (0, opencode_sqlite_db_1.asContextLimit)(model?.limit?.context);
74
+ if (context != null)
75
+ limits.set(catalogKey({ providerId, modelId }), context);
76
+ }
77
+ }
78
+ return limits;
79
+ }
80
+ class OpencodeSqliteV1Reader {
20
81
  pricing;
21
82
  maxToolOutputChars;
22
- busyTimeoutMs;
23
- openRetries;
83
+ connection;
84
+ modelsCatalogPath;
24
85
  constructor(pricing, options) {
25
86
  this.pricing = pricing;
26
- this.maxToolOutputChars = options?.maxToolOutputChars ?? DEFAULT_MAX_TOOL_OUTPUT_CHARS;
27
- this.busyTimeoutMs = options?.busyTimeoutMs ?? DEFAULT_BUSY_TIMEOUT_MS;
28
- this.openRetries = options?.openRetries ?? DEFAULT_OPEN_RETRIES;
87
+ this.maxToolOutputChars = options?.maxToolOutputChars ?? opencode_sqlite_db_1.DEFAULT_MAX_TOOL_OUTPUT_CHARS;
88
+ this.connection = { busyTimeoutMs: options?.busyTimeoutMs, openRetries: options?.openRetries };
89
+ this.modelsCatalogPath =
90
+ options?.modelsCatalogPath ?? path.join(os.homedir(), MODELS_CATALOG_FILE);
29
91
  }
30
92
  readSession(dbPath, providerSessionId) {
31
- return this.withDb(dbPath, (db) => {
32
- this.assertSchema(db);
93
+ return (0, opencode_sqlite_db_1.withOpencodeDb)(dbPath, this.connection, (db) => {
94
+ assertV1Schema(db);
33
95
  const sessionRow = db
34
96
  .prepare(`SELECT id, title, model, agent, parent_id, time_created, time_updated
35
97
  FROM session WHERE id = ?`)
@@ -45,15 +107,16 @@ class OpencodeSqliteReader {
45
107
  .prepare(`SELECT id, message_id, time_updated, data
46
108
  FROM part WHERE session_id = ? ORDER BY id`)
47
109
  .all(providerSessionId);
48
- return normalizeOpencodeSession(dbPath, sessionRow, messageRows, partRows, {
110
+ return normalizeOpencodeV1Session(dbPath, sessionRow, messageRows, partRows, {
49
111
  pricing: this.pricing,
50
112
  maxToolOutputChars: this.maxToolOutputChars,
113
+ catalogContextWindow: (ref) => lookupCatalogContextWindow(this.modelsCatalogPath, ref),
51
114
  });
52
115
  });
53
116
  }
54
117
  readSummary(dbPath, providerSessionId) {
55
- return this.withDb(dbPath, (db) => {
56
- this.assertSchema(db);
118
+ return (0, opencode_sqlite_db_1.withOpencodeDb)(dbPath, this.connection, (db) => {
119
+ assertV1Schema(db);
57
120
  const sessionRow = db
58
121
  .prepare(`SELECT id, model, time_created, time_updated
59
122
  FROM session WHERE id = ?`)
@@ -98,18 +161,30 @@ class OpencodeSqliteReader {
98
161
  ORDER BY time_created, id`)
99
162
  .all(providerSessionId);
100
163
  const models = [...new Set(modelRows.map((row) => row.model).filter(Boolean))];
101
- const primaryModel = models[0] ?? parseSessionModelId(sessionRow.model);
164
+ const primaryModel = models[0] ?? (0, opencode_sqlite_db_1.parseSessionModelId)(sessionRow.model);
102
165
  const contextRow = db
103
- .prepare(`SELECT
104
- COALESCE(json_extract(data, '$.tokens.input'), 0) AS inputTokens,
105
- COALESCE(json_extract(data, '$.tokens.output'), 0)
106
- + COALESCE(json_extract(data, '$.tokens.reasoning'), 0) AS outputTokens,
107
- COALESCE(json_extract(data, '$.tokens.cache.read'), 0) AS cacheReadTokens,
108
- COALESCE(json_extract(data, '$.tokens.cache.write'), 0) AS cacheCreationTokens
166
+ .prepare(`SELECT inputTokens, outputTokens, cacheReadTokens, cacheCreationTokens FROM (
167
+ SELECT time_created, id,
168
+ COALESCE(json_extract(data, '$.tokens.input'), 0) AS inputTokens,
169
+ COALESCE(json_extract(data, '$.tokens.output'), 0)
170
+ + COALESCE(json_extract(data, '$.tokens.reasoning'), 0) AS outputTokens,
171
+ COALESCE(json_extract(data, '$.tokens.cache.read'), 0) AS cacheReadTokens,
172
+ COALESCE(json_extract(data, '$.tokens.cache.write'), 0) AS cacheCreationTokens
173
+ FROM message
174
+ WHERE session_id = ? AND json_valid(data)
175
+ AND json_extract(data, '$.role') = 'assistant'
176
+ AND json_type(data, '$.tokens') = 'object')
177
+ WHERE inputTokens + outputTokens + cacheReadTokens + cacheCreationTokens > 0
178
+ ORDER BY time_created DESC, id DESC LIMIT 1`)
179
+ .get(providerSessionId);
180
+ const lastModel = db
181
+ .prepare(`SELECT json_extract(data, '$.providerID') AS providerId,
182
+ json_extract(data, '$.modelID') AS modelId
109
183
  FROM message
110
184
  WHERE session_id = ? AND json_valid(data)
111
185
  AND json_extract(data, '$.role') = 'assistant'
112
- AND json_type(data, '$.tokens') = 'object'
186
+ AND json_type(data, '$.providerID') = 'text'
187
+ AND json_type(data, '$.modelID') = 'text'
113
188
  ORDER BY time_created DESC, id DESC LIMIT 1`)
114
189
  .get(providerSessionId);
115
190
  const totalTokens = tokenRow.inputTokens +
@@ -122,11 +197,27 @@ class OpencodeSqliteReader {
122
197
  contextRow.cacheReadTokens +
123
198
  contextRow.cacheCreationTokens
124
199
  : 0;
125
- const costUsd = this.pricing && primaryModel
126
- ? this.pricing.calculateMessageCost(primaryModel, tokenRow.inputTokens, tokenRow.outputTokens, tokenRow.cacheReadTokens, tokenRow.cacheCreationTokens)
127
- : 0;
128
- const contextWindowTokens = (primaryModel && this.pricing?.getContextWindowSize(primaryModel)) ||
129
- DEFAULT_CONTEXT_WINDOW_TOKENS;
200
+ const costUsd = (0, opencode_sqlite_db_1.resolveCostUsd)({
201
+ pricing: this.pricing,
202
+ primaryModel,
203
+ tokens: {
204
+ input: tokenRow.inputTokens,
205
+ output: tokenRow.outputTokens,
206
+ cacheRead: tokenRow.cacheReadTokens,
207
+ cacheWrite: tokenRow.cacheCreationTokens,
208
+ },
209
+ recordedCostUsd: () => {
210
+ const rows = db
211
+ .prepare(`SELECT json_extract(data, '$.cost') AS cost FROM message
212
+ WHERE session_id = ? AND json_valid(data)
213
+ AND json_extract(data, '$.role') = 'assistant'
214
+ AND json_type(data, '$.cost') IN ('integer', 'real')
215
+ ORDER BY time_created, id`)
216
+ .all(providerSessionId);
217
+ return rows.reduce((sum, row) => sum + row.cost, 0);
218
+ },
219
+ });
220
+ const contextWindowTokens = (0, opencode_sqlite_db_1.resolveContextWindowTokens)(lastModel ? lookupCatalogContextWindow(this.modelsCatalogPath, lastModel) : null, primaryModel, this.pricing);
130
221
  const durationMs = shapeRow.firstTimestamp != null && shapeRow.lastTimestamp != null
131
222
  ? shapeRow.lastTimestamp - shapeRow.firstTimestamp
132
223
  : Math.max(0, sessionRow.time_updated - sessionRow.time_created);
@@ -154,8 +245,8 @@ class OpencodeSqliteReader {
154
245
  });
155
246
  }
156
247
  getFreshness(dbPath, providerSessionId) {
157
- return this.withDb(dbPath, (db) => {
158
- this.assertSchema(db);
248
+ return (0, opencode_sqlite_db_1.withOpencodeDb)(dbPath, this.connection, (db) => {
249
+ assertV1Schema(db);
159
250
  const row = db
160
251
  .prepare(`SELECT
161
252
  (SELECT count(*) FROM part WHERE session_id = @sid) AS count,
@@ -169,8 +260,8 @@ class OpencodeSqliteReader {
169
260
  });
170
261
  }
171
262
  findSessionCandidates(dbPath, params) {
172
- return this.withDb(dbPath, (db) => {
173
- this.assertSchema(db);
263
+ return (0, opencode_sqlite_db_1.withOpencodeDb)(dbPath, this.connection, (db) => {
264
+ assertV1Schema(db);
174
265
  const rows = db
175
266
  .prepare(`SELECT s.id AS providerSessionId, s.directory AS directory,
176
267
  s.time_created AS timeCreated, s.time_updated AS timeUpdated
@@ -187,80 +278,16 @@ class OpencodeSqliteReader {
187
278
  return rows;
188
279
  });
189
280
  }
190
- withDb(dbPath, fn) {
191
- let lastError;
192
- for (let attempt = 0; attempt <= this.openRetries; attempt++) {
193
- let db;
194
- try {
195
- db = new better_sqlite3_1.default(dbPath, { readonly: true, fileMustExist: true });
196
- db.pragma(`busy_timeout = ${this.busyTimeoutMs}`);
197
- return fn(db);
198
- }
199
- catch (error) {
200
- lastError = error;
201
- if (!this.isTransientLock(error) || attempt === this.openRetries) {
202
- throw this.wrapOpenError(error, dbPath);
203
- }
204
- this.sleep(OPEN_RETRY_DELAY_MS * (attempt + 1));
205
- }
206
- finally {
207
- db?.close();
208
- }
209
- }
210
- throw this.wrapOpenError(lastError, dbPath);
211
- }
212
- isTransientLock(error) {
213
- const code = error?.code;
214
- return code === 'SQLITE_BUSY' || code === 'SQLITE_LOCKED';
215
- }
216
- wrapOpenError(error, dbPath) {
217
- if (error instanceof error_types_1.NotFoundError || error instanceof error_types_1.ValidationError) {
218
- return error;
219
- }
220
- return new error_types_1.ValidationError('Failed to open OpenCode SQLite container', {
221
- category: 'opencode-db',
222
- dbPath,
223
- error: String(error?.message ?? error),
224
- });
225
- }
226
- sleep(ms) {
227
- const end = Date.now() + ms;
228
- while (Date.now() < end) {
229
- }
230
- }
231
- assertSchema(db) {
232
- const tables = new Set(db
233
- .prepare(`SELECT name FROM sqlite_master
234
- WHERE type = 'table' AND name IN ('session', 'message', 'part')`)
235
- .all().map((r) => r.name));
236
- for (const required of ['session', 'message', 'part']) {
237
- if (!tables.has(required)) {
238
- throw new error_types_1.ValidationError('OpenCode DB schema drift: missing table', {
239
- category: 'opencode-schema',
240
- missingTable: required,
241
- });
242
- }
243
- }
244
- this.assertColumns(db, 'session', ['id', 'time_updated']);
245
- this.assertColumns(db, 'message', ['id', 'session_id', 'data']);
246
- this.assertColumns(db, 'part', ['id', 'message_id', 'session_id', 'data']);
247
- }
248
- assertColumns(db, table, required) {
249
- const cols = new Set(db.prepare(`PRAGMA table_info(${table})`).all().map((c) => c.name));
250
- for (const col of required) {
251
- if (!cols.has(col)) {
252
- throw new error_types_1.ValidationError('OpenCode DB schema drift: missing column', {
253
- category: 'opencode-schema',
254
- table,
255
- missingColumn: col,
256
- });
257
- }
258
- }
259
- }
260
281
  }
261
- exports.OpencodeSqliteReader = OpencodeSqliteReader;
262
- function normalizeOpencodeSession(dbPath, sessionRow, messageRows, partRows, options) {
263
- const maxToolOutputChars = options?.maxToolOutputChars ?? DEFAULT_MAX_TOOL_OUTPUT_CHARS;
282
+ exports.OpencodeSqliteV1Reader = OpencodeSqliteV1Reader;
283
+ function assertV1Schema(db) {
284
+ (0, opencode_sqlite_db_1.assertOpencodeTables)(db, ['session', 'message', 'part']);
285
+ (0, opencode_sqlite_db_1.assertOpencodeColumns)(db, 'session', ['id', 'time_updated']);
286
+ (0, opencode_sqlite_db_1.assertOpencodeColumns)(db, 'message', ['id', 'session_id', 'data']);
287
+ (0, opencode_sqlite_db_1.assertOpencodeColumns)(db, 'part', ['id', 'message_id', 'session_id', 'data']);
288
+ }
289
+ function normalizeOpencodeV1Session(dbPath, sessionRow, messageRows, partRows, options) {
290
+ const maxToolOutputChars = options?.maxToolOutputChars ?? opencode_sqlite_db_1.DEFAULT_MAX_TOOL_OUTPUT_CHARS;
264
291
  const pricing = options?.pricing;
265
292
  const partsByMessage = new Map();
266
293
  let sizeBytes = 0;
@@ -284,22 +311,31 @@ function normalizeOpencodeSession(dbPath, sessionRow, messageRows, partRows, opt
284
311
  let totalCacheCreation = 0;
285
312
  let compactionCount = 0;
286
313
  let lastAssistantContextTokens = 0;
314
+ let lastModel;
315
+ let recordedCostUsd = 0;
287
316
  for (const messageRow of messageRows) {
288
317
  if (messageRow.time_updated > maxUpdated)
289
318
  maxUpdated = messageRow.time_updated;
290
- const data = safeParse(messageRow.data) ?? {};
319
+ const data = (0, opencode_sqlite_db_1.parseOpencodeJson)(messageRow.data) ?? {};
291
320
  const role = data.role === 'assistant' ? 'assistant' : 'user';
292
321
  if (data.modelID) {
293
322
  modelsSet.add(data.modelID);
294
323
  if (!primaryModel)
295
324
  primaryModel = data.modelID;
296
325
  }
326
+ if (role === 'assistant') {
327
+ if (data.modelID && data.providerID) {
328
+ lastModel = { providerId: data.providerID, modelId: data.modelID };
329
+ }
330
+ if (typeof data.cost === 'number' && Number.isFinite(data.cost))
331
+ recordedCostUsd += data.cost;
332
+ }
297
333
  const content = [];
298
334
  const toolCalls = [];
299
335
  const toolResults = [];
300
336
  let isCompactSummary = false;
301
337
  for (const part of partsByMessage.get(messageRow.id) ?? []) {
302
- const p = safeParse(part.data);
338
+ const p = (0, opencode_sqlite_db_1.parseOpencodeJson)(part.data);
303
339
  if (!p?.type)
304
340
  continue;
305
341
  switch (p.type) {
@@ -356,8 +392,9 @@ function normalizeOpencodeSession(dbPath, sessionRow, messageRows, partRows, opt
356
392
  cacheRead: data.tokens.cache?.read ?? 0,
357
393
  cacheCreation: data.tokens.cache?.write ?? 0,
358
394
  };
359
- lastAssistantContextTokens =
360
- usage.input + usage.output + usage.cacheRead + usage.cacheCreation;
395
+ const total = usage.input + usage.output + usage.cacheRead + usage.cacheCreation;
396
+ if (total > 0)
397
+ lastAssistantContextTokens = total;
361
398
  }
362
399
  if (content.length === 0)
363
400
  continue;
@@ -378,13 +415,21 @@ function normalizeOpencodeSession(dbPath, sessionRow, messageRows, partRows, opt
378
415
  });
379
416
  }
380
417
  if (!primaryModel)
381
- primaryModel = parseSessionModelId(sessionRow.model);
418
+ primaryModel = (0, opencode_sqlite_db_1.parseSessionModelId)(sessionRow.model);
382
419
  const totalTokens = totalInput + totalOutput + totalCacheRead + totalCacheCreation;
383
- const costUsd = pricing && primaryModel
384
- ? pricing.calculateMessageCost(primaryModel, totalInput, totalOutput, totalCacheRead, totalCacheCreation)
385
- : 0;
420
+ const costUsd = (0, opencode_sqlite_db_1.resolveCostUsd)({
421
+ pricing,
422
+ primaryModel,
423
+ tokens: {
424
+ input: totalInput,
425
+ output: totalOutput,
426
+ cacheRead: totalCacheRead,
427
+ cacheWrite: totalCacheCreation,
428
+ },
429
+ recordedCostUsd: () => recordedCostUsd,
430
+ });
386
431
  const visibleContextTokens = (0, estimate_content_tokens_1.estimateVisibleFromMessages)(messages);
387
- const contextWindowTokens = (primaryModel && pricing?.getContextWindowSize(primaryModel)) || DEFAULT_CONTEXT_WINDOW_TOKENS;
432
+ const contextWindowTokens = (0, opencode_sqlite_db_1.resolveContextWindowTokens)(lastModel ? (options?.catalogContextWindow?.(lastModel) ?? null) : null, primaryModel, pricing);
388
433
  const durationMs = messages.length >= 2
389
434
  ? messages[messages.length - 1].timestamp.getTime() - messages[0].timestamp.getTime()
390
435
  : Math.max(0, (sessionRow.time_updated ?? 0) - (sessionRow.time_created ?? 0));
@@ -412,7 +457,7 @@ function normalizeOpencodeSession(dbPath, sessionRow, messageRows, partRows, opt
412
457
  };
413
458
  const session = {
414
459
  id: sessionRow.id,
415
- providerName: PROVIDER_NAME,
460
+ providerName: opencode_sqlite_db_1.OPENCODE_PROVIDER_NAME,
416
461
  filePath: dbPath,
417
462
  messages,
418
463
  metrics,
@@ -428,7 +473,7 @@ function mapToolPart(p, content, toolCalls, toolResults, maxToolOutputChars) {
428
473
  content.push({ type: 'tool_call', toolCallId, toolName, input });
429
474
  toolCalls.push({ id: toolCallId, name: toolName, input, isTask: false });
430
475
  const rawOutput = isError ? (p.state?.error ?? '') : p.state?.output;
431
- const { content: outContent, isTruncated, fullLength, } = capToolOutput(rawOutput, maxToolOutputChars);
476
+ const { content: outContent, isTruncated, fullLength, } = (0, opencode_sqlite_db_1.capToolOutput)(rawOutput, maxToolOutputChars);
432
477
  content.push({
433
478
  type: 'tool_result',
434
479
  toolCallId,
@@ -443,42 +488,4 @@ function mapToolPart(p, content, toolCalls, toolResults, maxToolOutputChars) {
443
488
  ...(isTruncated ? { isTruncated, fullLength } : {}),
444
489
  });
445
490
  }
446
- function capToolOutput(rawOutput, maxChars) {
447
- let text;
448
- if (typeof rawOutput === 'string') {
449
- text = rawOutput;
450
- }
451
- else if (rawOutput == null) {
452
- text = '';
453
- }
454
- else {
455
- try {
456
- text = JSON.stringify(rawOutput);
457
- }
458
- catch {
459
- text = String(rawOutput);
460
- }
461
- }
462
- if (text.length > maxChars) {
463
- return { content: text.slice(0, maxChars), isTruncated: true, fullLength: text.length };
464
- }
465
- return { content: text, isTruncated: false };
466
- }
467
- function parseSessionModelId(raw) {
468
- if (!raw)
469
- return '';
470
- const parsed = safeParse(raw);
471
- if (parsed && typeof parsed.id === 'string')
472
- return parsed.id;
473
- return raw;
474
- }
475
- function safeParse(json) {
476
- try {
477
- return JSON.parse(json);
478
- }
479
- catch {
480
- logger.debug('Failed to parse OpenCode JSON blob — skipping');
481
- return null;
482
- }
483
- }
484
- //# sourceMappingURL=opencode-sqlite.reader.js.map
491
+ //# sourceMappingURL=opencode-sqlite.v1.reader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"opencode-sqlite.v1.reader.js","sourceRoot":"","sources":["../../../../src/modules/session-reader/readers/opencode-sqlite.v1.reader.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import type { PricingServiceInterface } from '../services/pricing.interface';
2
+ import { type OpencodeCandidateQuery, type OpencodeConnectionOptions, type OpencodeFreshness, type OpencodeSessionCandidate, type OpencodeSessionRead, type OpencodeSummaryRead, type OpencodeTranscriptReader } from './opencode-sqlite.db';
3
+ export interface OpencodeV2ReaderOptions extends OpencodeConnectionOptions {
4
+ maxToolOutputChars?: number;
5
+ }
6
+ export declare class OpencodeSqliteV2Reader implements OpencodeTranscriptReader {
7
+ private readonly pricing?;
8
+ private readonly maxToolOutputChars;
9
+ private readonly connection;
10
+ constructor(pricing?: PricingServiceInterface | undefined, options?: OpencodeV2ReaderOptions);
11
+ readSession(dbPath: string, providerSessionId: string): OpencodeSessionRead;
12
+ readSummary(dbPath: string, providerSessionId: string): OpencodeSummaryRead;
13
+ getFreshness(dbPath: string, providerSessionId: string): OpencodeFreshness;
14
+ findSessionCandidates(dbPath: string, params: OpencodeCandidateQuery): OpencodeSessionCandidate[];
15
+ }