@markusylisiurunen/tau 0.3.21 → 0.3.23

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 (690) hide show
  1. package/README.md +1 -1
  2. package/dist/core/auth/auth_manager.js.map +1 -1
  3. package/dist/core/auth/auth_storage.js +249 -23
  4. package/dist/core/auth/auth_storage.js.map +1 -1
  5. package/dist/core/auth/cli.js +96 -25
  6. package/dist/core/auth/cli.js.map +1 -1
  7. package/dist/core/auth/credential_store.js +53 -10
  8. package/dist/core/auth/credential_store.js.map +1 -1
  9. package/dist/core/auth/index.js +1 -1
  10. package/dist/core/auth/index.js.map +1 -1
  11. package/dist/core/auth/providers/openai_codex.js +65 -33
  12. package/dist/core/auth/providers/openai_codex.js.map +1 -1
  13. package/dist/core/events/types.js +1 -7
  14. package/dist/core/events/types.js.map +1 -1
  15. package/dist/core/index.js +1 -2
  16. package/dist/core/index.js.map +1 -1
  17. package/dist/core/models/catalog.js +20 -24
  18. package/dist/core/models/catalog.js.map +1 -1
  19. package/dist/core/session/compaction.js +0 -4
  20. package/dist/core/session/compaction.js.map +1 -1
  21. package/dist/core/session/core_session.js +3 -0
  22. package/dist/core/session/core_session.js.map +1 -1
  23. package/dist/core/session/pruning.js +8 -17
  24. package/dist/core/session/pruning.js.map +1 -1
  25. package/dist/core/session/runner.js +12 -2
  26. package/dist/core/session/runner.js.map +1 -1
  27. package/dist/core/session/session_engine.js +62 -38
  28. package/dist/core/session/session_engine.js.map +1 -1
  29. package/dist/core/subagents/control_plane.js +8 -9
  30. package/dist/core/subagents/control_plane.js.map +1 -1
  31. package/dist/core/tools/execution_backend.js +13 -3
  32. package/dist/core/tools/execution_backend.js.map +1 -1
  33. package/dist/core/version.js +1 -1
  34. package/dist/diff_tool/app/dist/assets/abap-CLvhMVsD.js +1 -0
  35. package/dist/diff_tool/app/dist/assets/actionscript-3--17pq3dv.js +1 -0
  36. package/dist/diff_tool/app/dist/assets/ada-C5qYipkI.js +1 -0
  37. package/dist/diff_tool/app/dist/assets/andromeeda-vGVdxbeo.js +1 -0
  38. package/dist/diff_tool/app/dist/assets/angular-html-D8c6NJtn.js +1 -0
  39. package/dist/diff_tool/app/dist/assets/angular-ts-CKOHcqki.js +1 -0
  40. package/dist/diff_tool/app/dist/assets/apache-U0d_L8uA.js +1 -0
  41. package/dist/diff_tool/app/dist/assets/apex-VAyPSnFM.js +1 -0
  42. package/dist/diff_tool/app/dist/assets/apl-CQNGWx_V.js +1 -0
  43. package/dist/diff_tool/app/dist/assets/applescript-CCn79oCD.js +1 -0
  44. package/dist/diff_tool/app/dist/assets/ara-4CJ0cIlV.js +1 -0
  45. package/dist/diff_tool/app/dist/assets/asciidoc-DE70LPWp.js +1 -0
  46. package/dist/diff_tool/app/dist/assets/asm-Cmm7eHzH.js +1 -0
  47. package/dist/diff_tool/app/dist/assets/astro-DtaLiRs1.js +1 -0
  48. package/dist/diff_tool/app/dist/assets/aurora-x-CDeNXAV0.js +1 -0
  49. package/dist/diff_tool/app/dist/assets/awk-BWXHIvNe.js +1 -0
  50. package/dist/diff_tool/app/dist/assets/ayu-dark-DluEY0Gj.js +1 -0
  51. package/dist/diff_tool/app/dist/assets/ayu-light-C3h-C4tm.js +1 -0
  52. package/dist/diff_tool/app/dist/assets/ayu-mirage-Bqwy1Gya.js +1 -0
  53. package/dist/diff_tool/app/dist/assets/ballerina-B7ZEbQpA.js +1 -0
  54. package/dist/diff_tool/app/dist/assets/bat-Bo4NYOV-.js +1 -0
  55. package/dist/diff_tool/app/dist/assets/beancount-D-usSTwE.js +1 -0
  56. package/dist/diff_tool/app/dist/assets/berry-DKpUyyne.js +1 -0
  57. package/dist/diff_tool/app/dist/assets/bibtex-Ci_nEsc7.js +1 -0
  58. package/dist/diff_tool/app/dist/assets/bicep-CUHmPFLl.js +1 -0
  59. package/dist/diff_tool/app/dist/assets/bird2-C6vDhewU.js +1 -0
  60. package/dist/diff_tool/app/dist/assets/blade-8lF6vUn0.js +1 -0
  61. package/dist/diff_tool/app/dist/assets/bsl-BkkzgIyY.js +1 -0
  62. package/dist/diff_tool/app/dist/assets/c-C4UbPC2L.js +1 -0
  63. package/dist/diff_tool/app/dist/assets/c3-BFHwR3_K.js +1 -0
  64. package/dist/diff_tool/app/dist/assets/cadence-CQ2zXKGN.js +1 -0
  65. package/dist/diff_tool/app/dist/assets/cairo-DLTphjLi.js +1 -0
  66. package/dist/diff_tool/app/dist/assets/catppuccin-frappe-3VR1Za6u.js +1 -0
  67. package/dist/diff_tool/app/dist/assets/catppuccin-latte-DwIHMF0Q.js +1 -0
  68. package/dist/diff_tool/app/dist/assets/catppuccin-macchiato-DYnBP6_5.js +1 -0
  69. package/dist/diff_tool/app/dist/assets/catppuccin-mocha-DYhrFGRu.js +1 -0
  70. package/dist/diff_tool/app/dist/assets/clarity-SemFz856.js +1 -0
  71. package/dist/diff_tool/app/dist/assets/clojure-DqKBuwfJ.js +1 -0
  72. package/dist/diff_tool/app/dist/assets/cmake-Bj61d0ZC.js +1 -0
  73. package/dist/diff_tool/app/dist/assets/cobol-B-SqiS-l.js +1 -0
  74. package/dist/diff_tool/app/dist/assets/codeowners-C8r90Shi.js +1 -0
  75. package/dist/diff_tool/app/dist/assets/codeql-oeQT6MSM.js +1 -0
  76. package/dist/diff_tool/app/dist/assets/coffee-Dd1E2KHP.js +1 -0
  77. package/dist/diff_tool/app/dist/assets/common-lisp-Cv5bFMCO.js +1 -0
  78. package/dist/diff_tool/app/dist/assets/coq-BrsZFFmf.js +1 -0
  79. package/dist/diff_tool/app/dist/assets/cpp-fmh9U4o8.js +1 -0
  80. package/dist/diff_tool/app/dist/assets/crystal-ZMQ-EyMz.js +1 -0
  81. package/dist/diff_tool/app/dist/assets/csharp-oqKa8noW.js +1 -0
  82. package/dist/diff_tool/app/dist/assets/css-3Sj4Fmhw.js +1 -0
  83. package/dist/diff_tool/app/dist/assets/csv-Dx-8-gkx.js +1 -0
  84. package/dist/diff_tool/app/dist/assets/cue-CE9AQfxI.js +1 -0
  85. package/dist/diff_tool/app/dist/assets/cypher-ClKdZ_lG.js +1 -0
  86. package/dist/diff_tool/app/dist/assets/d-qD-0Kul2.js +1 -0
  87. package/dist/diff_tool/app/dist/assets/dark-plus-Cs2F2srj.js +1 -0
  88. package/dist/diff_tool/app/dist/assets/dart-CnvKMtbv.js +1 -0
  89. package/dist/diff_tool/app/dist/assets/dax-BkyTk9wS.js +1 -0
  90. package/dist/diff_tool/app/dist/assets/desktop-Dlh5hvp9.js +1 -0
  91. package/dist/diff_tool/app/dist/assets/diff-woXpYk--.js +1 -0
  92. package/dist/diff_tool/app/dist/assets/docker-IyjqRm3v.js +1 -0
  93. package/dist/diff_tool/app/dist/assets/dotenv-_5a1GRtc.js +1 -0
  94. package/dist/diff_tool/app/dist/assets/dracula-BHWKrbxM.js +1 -0
  95. package/dist/diff_tool/app/dist/assets/dracula-soft-5eyTD99u.js +1 -0
  96. package/dist/diff_tool/app/dist/assets/dream-maker-DW3nJb8Q.js +1 -0
  97. package/dist/diff_tool/app/dist/assets/edge-CwGnyfEm.js +1 -0
  98. package/dist/diff_tool/app/dist/assets/elixir-B4YFjqQ-.js +1 -0
  99. package/dist/diff_tool/app/dist/assets/elm-DmUdvg9q.js +1 -0
  100. package/dist/diff_tool/app/dist/assets/emacs-lisp-B4R74twV.js +1 -0
  101. package/dist/diff_tool/app/dist/assets/erb-CMpzjtLy.js +1 -0
  102. package/dist/diff_tool/app/dist/assets/erlang-Cphh6RMH.js +1 -0
  103. package/dist/diff_tool/app/dist/assets/everforest-dark-sB-x3p7T.js +1 -0
  104. package/dist/diff_tool/app/dist/assets/everforest-light-Df2xbC6M.js +1 -0
  105. package/dist/diff_tool/app/dist/assets/fennel-DQxkIbk2.js +1 -0
  106. package/dist/diff_tool/app/dist/assets/fish-BJitypiv.js +1 -0
  107. package/dist/diff_tool/app/dist/assets/fluent-C03EYrpw.js +1 -0
  108. package/dist/diff_tool/app/dist/assets/fortran-fixed-form-DEKoE2YW.js +1 -0
  109. package/dist/diff_tool/app/dist/assets/fortran-free-form-CYNrtFtB.js +1 -0
  110. package/dist/diff_tool/app/dist/assets/fsharp-D13ZGOAj.js +1 -0
  111. package/dist/diff_tool/app/dist/assets/gdresource-C0sCabJj.js +1 -0
  112. package/dist/diff_tool/app/dist/assets/gdscript-Cp2uCuqX.js +1 -0
  113. package/dist/diff_tool/app/dist/assets/gdshader-CBce3t8t.js +1 -0
  114. package/dist/diff_tool/app/dist/assets/genie-CV2tkWYe.js +1 -0
  115. package/dist/diff_tool/app/dist/assets/gherkin-DExj1W_8.js +1 -0
  116. package/dist/diff_tool/app/dist/assets/git-commit-BSykSTBG.js +1 -0
  117. package/dist/diff_tool/app/dist/assets/git-rebase-EqdynY_f.js +1 -0
  118. package/dist/diff_tool/app/dist/assets/github-dark-C-LZuMrd.js +1 -0
  119. package/dist/diff_tool/app/dist/assets/github-dark-default-DXG-b-1a.js +1 -0
  120. package/dist/diff_tool/app/dist/assets/github-dark-dimmed-Bx1FflLF.js +1 -0
  121. package/dist/diff_tool/app/dist/assets/github-dark-high-contrast-B_tTalzw.js +1 -0
  122. package/dist/diff_tool/app/dist/assets/github-light-EUqPIrTm.js +1 -0
  123. package/dist/diff_tool/app/dist/assets/github-light-default-BXViO-2h.js +1 -0
  124. package/dist/diff_tool/app/dist/assets/github-light-high-contrast-B68TUdTA.js +1 -0
  125. package/dist/diff_tool/app/dist/assets/gleam-CSRkHgEL.js +1 -0
  126. package/dist/diff_tool/app/dist/assets/glimmer-js-C04Hkqrn.js +1 -0
  127. package/dist/diff_tool/app/dist/assets/glimmer-ts-BYuV-E66.js +1 -0
  128. package/dist/diff_tool/app/dist/assets/glsl-Dw8Wzaba.js +1 -0
  129. package/dist/diff_tool/app/dist/assets/gn-ilITqXS6.js +1 -0
  130. package/dist/diff_tool/app/dist/assets/gnuplot-7GGW24-e.js +1 -0
  131. package/dist/diff_tool/app/dist/assets/go-rLFTqkRN.js +1 -0
  132. package/dist/diff_tool/app/dist/assets/graphql-CKOWRasR.js +1 -0
  133. package/dist/diff_tool/app/dist/assets/groovy-CacY0gHj.js +1 -0
  134. package/dist/diff_tool/app/dist/assets/gruvbox-dark-hard-C820rvS2.js +1 -0
  135. package/dist/diff_tool/app/dist/assets/gruvbox-dark-medium-BPjhmG05.js +1 -0
  136. package/dist/diff_tool/app/dist/assets/gruvbox-dark-soft-MrdJrrXF.js +1 -0
  137. package/dist/diff_tool/app/dist/assets/gruvbox-light-hard-BC_s9l72.js +1 -0
  138. package/dist/diff_tool/app/dist/assets/gruvbox-light-medium-BAWPOn9u.js +1 -0
  139. package/dist/diff_tool/app/dist/assets/gruvbox-light-soft-BSMLrYjP.js +1 -0
  140. package/dist/diff_tool/app/dist/assets/hack-DSoYuKAw.js +1 -0
  141. package/dist/diff_tool/app/dist/assets/{haml-B8DHNrY2.js → haml-CW2clvKn.js} +1 -1
  142. package/dist/diff_tool/app/dist/assets/handlebars-Dt42oUMG.js +1 -0
  143. package/dist/diff_tool/app/dist/assets/haskell-D8IpX4py.js +1 -0
  144. package/dist/diff_tool/app/dist/assets/haxe-OTjmBuCE.js +1 -0
  145. package/dist/diff_tool/app/dist/assets/hcl-Dh228itO.js +1 -0
  146. package/dist/diff_tool/app/dist/assets/hjson-CxZEssPk.js +1 -0
  147. package/dist/diff_tool/app/dist/assets/hlsl-Cvrh5tZx.js +1 -0
  148. package/dist/diff_tool/app/dist/assets/horizon-CE9ld1lL.js +1 -0
  149. package/dist/diff_tool/app/dist/assets/horizon-bright-DSNQnXHK.js +1 -0
  150. package/dist/diff_tool/app/dist/assets/houston-CsvMBhTu.js +1 -0
  151. package/dist/diff_tool/app/dist/assets/{html-GMplVEZG.js → html-BssM8xm3.js} +1 -1
  152. package/dist/diff_tool/app/dist/assets/html-derivative-7ty0Z2kF.js +1 -0
  153. package/dist/diff_tool/app/dist/assets/http-CzGxCb-E.js +1 -0
  154. package/dist/diff_tool/app/dist/assets/hurl-DMjbA1F9.js +1 -0
  155. package/dist/diff_tool/app/dist/assets/hxml-B0Qn7Nwc.js +1 -0
  156. package/dist/diff_tool/app/dist/assets/hy-CZbG8q4J.js +1 -0
  157. package/dist/diff_tool/app/dist/assets/imba-DsUTQ-LC.js +1 -0
  158. package/dist/diff_tool/app/dist/assets/index-Az_6lupE.css +1 -0
  159. package/dist/diff_tool/app/dist/assets/index-BiNqgTgO.js +1579 -0
  160. package/dist/diff_tool/app/dist/assets/ini-B5eOa1yu.js +1 -0
  161. package/dist/diff_tool/app/dist/assets/java-BVtLVPoR.js +1 -0
  162. package/dist/diff_tool/app/dist/assets/javascript-CmzoS6sL.js +1 -0
  163. package/dist/diff_tool/app/dist/assets/jinja-MpkGgATF.js +1 -0
  164. package/dist/diff_tool/app/dist/assets/jison-BJkiJV2g.js +1 -0
  165. package/dist/diff_tool/app/dist/assets/json-ByAo1NYt.js +1 -0
  166. package/dist/diff_tool/app/dist/assets/json5-BR5RXkoi.js +1 -0
  167. package/dist/diff_tool/app/dist/assets/jsonc-CYpm1nAK.js +1 -0
  168. package/dist/diff_tool/app/dist/assets/jsonl-CmCQp5Yx.js +1 -0
  169. package/dist/diff_tool/app/dist/assets/jsonnet-CJTPZ8u_.js +1 -0
  170. package/dist/diff_tool/app/dist/assets/jssm-DXw9l8Rf.js +1 -0
  171. package/dist/diff_tool/app/dist/assets/jsx-DNzVmx9w.js +1 -0
  172. package/dist/diff_tool/app/dist/assets/julia-rksgfDyz.js +1 -0
  173. package/dist/diff_tool/app/dist/assets/just-Bf6HaeeV.js +1 -0
  174. package/dist/diff_tool/app/dist/assets/kanagawa-dragon-CXtmUGW6.js +1 -0
  175. package/dist/diff_tool/app/dist/assets/kanagawa-lotus-BN08jTvb.js +1 -0
  176. package/dist/diff_tool/app/dist/assets/kanagawa-wave-CTweb8Dz.js +1 -0
  177. package/dist/diff_tool/app/dist/assets/kdl-CsD5j6eV.js +1 -0
  178. package/dist/diff_tool/app/dist/assets/kotlin-DhhofPvG.js +1 -0
  179. package/dist/diff_tool/app/dist/assets/kusto-C7mF5XQf.js +1 -0
  180. package/dist/diff_tool/app/dist/assets/laserwave-C_8bwKvT.js +1 -0
  181. package/dist/diff_tool/app/dist/assets/latex-Cql66cfm.js +1 -0
  182. package/dist/diff_tool/app/dist/assets/lean-CewbzKMR.js +1 -0
  183. package/dist/diff_tool/app/dist/assets/less-DVTAwKKz.js +1 -0
  184. package/dist/diff_tool/app/dist/assets/light-plus-DVQuIRkW.js +1 -0
  185. package/dist/diff_tool/app/dist/assets/liquid-wULyfiX7.js +1 -0
  186. package/dist/diff_tool/app/dist/assets/llvm-Cm23YOpf.js +1 -0
  187. package/dist/diff_tool/app/dist/assets/log-BNLmms1o.js +1 -0
  188. package/dist/diff_tool/app/dist/assets/logo-Cluzi2Zq.js +1 -0
  189. package/dist/diff_tool/app/dist/assets/lua-B1VfQC3R.js +1 -0
  190. package/dist/diff_tool/app/dist/assets/luau-FMPmPwt6.js +1 -0
  191. package/dist/diff_tool/app/dist/assets/make-Dixweg8N.js +1 -0
  192. package/dist/diff_tool/app/dist/assets/markdown-BYOwaDjH.js +1 -0
  193. package/dist/diff_tool/app/dist/assets/marko-D8Hd5-bx.js +1 -0
  194. package/dist/diff_tool/app/dist/assets/material-theme-Bm3Qr25_.js +1 -0
  195. package/dist/diff_tool/app/dist/assets/material-theme-darker-2IIEA8gg.js +1 -0
  196. package/dist/diff_tool/app/dist/assets/material-theme-lighter-uhdI0v04.js +1 -0
  197. package/dist/diff_tool/app/dist/assets/material-theme-ocean-CHQ94UKr.js +1 -0
  198. package/dist/diff_tool/app/dist/assets/material-theme-palenight-B5W6OYN7.js +1 -0
  199. package/dist/diff_tool/app/dist/assets/matlab-D7qyCx1q.js +1 -0
  200. package/dist/diff_tool/app/dist/assets/mdc-DmQ944Ag.js +1 -0
  201. package/dist/diff_tool/app/dist/assets/mdx-DQZ5AkYe.js +1 -0
  202. package/dist/diff_tool/app/dist/assets/mermaid-Bk4SNUv9.js +1 -0
  203. package/dist/diff_tool/app/dist/assets/min-dark-BSWPekZh.js +1 -0
  204. package/dist/diff_tool/app/dist/assets/min-light-DDpmG2fV.js +1 -0
  205. package/dist/diff_tool/app/dist/assets/mipsasm-BMqwQI7S.js +1 -0
  206. package/dist/diff_tool/app/dist/assets/mojo-BgCJLMeH.js +1 -0
  207. package/dist/diff_tool/app/dist/assets/monokai-CdkpiU2Y.js +1 -0
  208. package/dist/diff_tool/app/dist/assets/moonbit-CaWjb8XO.js +1 -0
  209. package/dist/diff_tool/app/dist/assets/move-B1IS1UjX.js +1 -0
  210. package/dist/diff_tool/app/dist/assets/narrat-_X_XdTYD.js +1 -0
  211. package/dist/diff_tool/app/dist/assets/nextflow-BJtWHP5T.js +1 -0
  212. package/dist/diff_tool/app/dist/assets/nextflow-groovy-DJMQeKeT.js +1 -0
  213. package/dist/diff_tool/app/dist/assets/nginx-BDob-g0F.js +1 -0
  214. package/dist/diff_tool/app/dist/assets/night-owl-DhmEMT88.js +1 -0
  215. package/dist/diff_tool/app/dist/assets/night-owl-light-eJ-hLW7d.js +1 -0
  216. package/dist/diff_tool/app/dist/assets/nim-Det1uggZ.js +1 -0
  217. package/dist/diff_tool/app/dist/assets/nix-IvuFDN5E.js +1 -0
  218. package/dist/diff_tool/app/dist/assets/nord-Cb4Vim4T.js +1 -0
  219. package/dist/diff_tool/app/dist/assets/nushell-DcLAeLz5.js +1 -0
  220. package/dist/diff_tool/app/dist/assets/objective-c-D1A_Heim.js +1 -0
  221. package/dist/diff_tool/app/dist/assets/objective-cpp-BsSzOQcm.js +1 -0
  222. package/dist/diff_tool/app/dist/assets/ocaml-O90oeIOV.js +1 -0
  223. package/dist/diff_tool/app/dist/assets/odin-B1RWQWA5.js +1 -0
  224. package/dist/diff_tool/app/dist/assets/one-dark-pro-CLwyXe_n.js +1 -0
  225. package/dist/diff_tool/app/dist/assets/one-light-D7Lr4KcI.js +1 -0
  226. package/dist/diff_tool/app/dist/assets/openscad-BUDT5pXO.js +1 -0
  227. package/dist/diff_tool/app/dist/assets/pascal-4ZHwLPI5.js +1 -0
  228. package/dist/diff_tool/app/dist/assets/perl-Dcgc5L27.js +1 -0
  229. package/dist/diff_tool/app/dist/assets/php-BjwNWaG2.js +1 -0
  230. package/dist/diff_tool/app/dist/assets/pierre-dark-CpLgRqie.js +1 -0
  231. package/dist/diff_tool/app/dist/assets/pierre-dark-protanopia-deuteranopia-B35FxJx-.js +1 -0
  232. package/dist/diff_tool/app/dist/assets/pierre-dark-soft-kZQmAZld.js +1 -0
  233. package/dist/diff_tool/app/dist/assets/pierre-dark-tritanopia-CpjhbsIL.js +1 -0
  234. package/dist/diff_tool/app/dist/assets/pierre-dark-vibrant-CpQYzh95.js +1 -0
  235. package/dist/diff_tool/app/dist/assets/pierre-light-CoaEpmwp.js +1 -0
  236. package/dist/diff_tool/app/dist/assets/pierre-light-protanopia-deuteranopia-0fSaH845.js +1 -0
  237. package/dist/diff_tool/app/dist/assets/pierre-light-soft-lWLdNTOI.js +1 -0
  238. package/dist/diff_tool/app/dist/assets/pierre-light-tritanopia-CEbqgOJL.js +1 -0
  239. package/dist/diff_tool/app/dist/assets/pierre-light-vibrant-D80Fkn33.js +1 -0
  240. package/dist/diff_tool/app/dist/assets/pkl-ot-7Btpt.js +1 -0
  241. package/dist/diff_tool/app/dist/assets/plastic-DQwYfKfQ.js +1 -0
  242. package/dist/diff_tool/app/dist/assets/plsql-DGHpHOYJ.js +1 -0
  243. package/dist/diff_tool/app/dist/assets/po-BiJDBrnU.js +1 -0
  244. package/dist/diff_tool/app/dist/assets/poimandres-DRFjx7u4.js +1 -0
  245. package/dist/diff_tool/app/dist/assets/polar-C7UOKdEL.js +1 -0
  246. package/dist/diff_tool/app/dist/assets/postcss-BXeXVLqQ.js +1 -0
  247. package/dist/diff_tool/app/dist/assets/powerquery-DNMTfnFr.js +1 -0
  248. package/dist/diff_tool/app/dist/assets/powershell-DshXNtvi.js +1 -0
  249. package/dist/diff_tool/app/dist/assets/prisma-BsRQq5mF.js +1 -0
  250. package/dist/diff_tool/app/dist/assets/prolog-iXnhIJG7.js +1 -0
  251. package/dist/diff_tool/app/dist/assets/proto-DB4EqR-F.js +1 -0
  252. package/dist/diff_tool/app/dist/assets/pug-BNSHQAJG.js +1 -0
  253. package/dist/diff_tool/app/dist/assets/puppet-CDv2pdJW.js +1 -0
  254. package/dist/diff_tool/app/dist/assets/purescript-9MfHhQsQ.js +1 -0
  255. package/dist/diff_tool/app/dist/assets/python-gzcpVVnB.js +1 -0
  256. package/dist/diff_tool/app/dist/assets/qml-5kU4d63S.js +1 -0
  257. package/dist/diff_tool/app/dist/assets/qmldir-DCQb3MpD.js +1 -0
  258. package/dist/diff_tool/app/dist/assets/qss-Fe1Jh2GI.js +1 -0
  259. package/dist/diff_tool/app/dist/assets/r-T1WpUQOu.js +1 -0
  260. package/dist/diff_tool/app/dist/assets/racket-DcIDlBhZ.js +1 -0
  261. package/dist/diff_tool/app/dist/assets/raku-B3gFvitq.js +1 -0
  262. package/dist/diff_tool/app/dist/assets/razor-Dp-yzXAB.js +1 -0
  263. package/dist/diff_tool/app/dist/assets/red-CJ3rzSJv.js +1 -0
  264. package/dist/diff_tool/app/dist/assets/reg-CRGYupPL.js +1 -0
  265. package/dist/diff_tool/app/dist/assets/regexp-CIsu-B9m.js +1 -0
  266. package/dist/diff_tool/app/dist/assets/rel-BtDbiS_P.js +1 -0
  267. package/dist/diff_tool/app/dist/assets/riscv-Ckw8ddFX.js +1 -0
  268. package/dist/diff_tool/app/dist/assets/ron-VUp2lXgN.js +1 -0
  269. package/dist/diff_tool/app/dist/assets/rose-pine-BthvhNj6.js +1 -0
  270. package/dist/diff_tool/app/dist/assets/rose-pine-dawn-Dg85fqjY.js +1 -0
  271. package/dist/diff_tool/app/dist/assets/rose-pine-moon-hon4tzzS.js +1 -0
  272. package/dist/diff_tool/app/dist/assets/rosmsg-CAekHB0j.js +1 -0
  273. package/dist/diff_tool/app/dist/assets/rst-ro17CyW2.js +1 -0
  274. package/dist/diff_tool/app/dist/assets/ruby-DU34BtJN.js +1 -0
  275. package/dist/diff_tool/app/dist/assets/rust-Cfkwpbl8.js +1 -0
  276. package/dist/diff_tool/app/dist/assets/sas-DvM2ogJU.js +1 -0
  277. package/dist/diff_tool/app/dist/assets/sass-DXrisJhu.js +1 -0
  278. package/dist/diff_tool/app/dist/assets/scala-DKOlJaKm.js +1 -0
  279. package/dist/diff_tool/app/dist/assets/scheme-DQCgrYNe.js +1 -0
  280. package/dist/diff_tool/app/dist/assets/scss-lF64kkIV.js +1 -0
  281. package/dist/diff_tool/app/dist/assets/sdbl-bTVj8UrX.js +1 -0
  282. package/dist/diff_tool/app/dist/assets/shaderlab-TOUzSsQk.js +1 -0
  283. package/dist/diff_tool/app/dist/assets/shellscript-WmDXBLCa.js +1 -0
  284. package/dist/diff_tool/app/dist/assets/shellsession--GggGr4o.js +1 -0
  285. package/dist/diff_tool/app/dist/assets/slack-dark-DnToyrRv.js +1 -0
  286. package/dist/diff_tool/app/dist/assets/slack-ochin-B2OO5cIa.js +1 -0
  287. package/dist/diff_tool/app/dist/assets/smalltalk-B16xEiuN.js +1 -0
  288. package/dist/diff_tool/app/dist/assets/snazzy-light-4G7pJPwS.js +1 -0
  289. package/dist/diff_tool/app/dist/assets/solarized-dark-DV17i1UV.js +1 -0
  290. package/dist/diff_tool/app/dist/assets/solarized-light-DSh2HLQt.js +1 -0
  291. package/dist/diff_tool/app/dist/assets/solidity-CKzVLygQ.js +1 -0
  292. package/dist/diff_tool/app/dist/assets/soy-CxEGzs-_.js +1 -0
  293. package/dist/diff_tool/app/dist/assets/sparql-D_iOobhT.js +1 -0
  294. package/dist/diff_tool/app/dist/assets/splunk-BC2Px7Mm.js +1 -0
  295. package/dist/diff_tool/app/dist/assets/sql-D8qrGuIn.js +1 -0
  296. package/dist/diff_tool/app/dist/assets/ssh-config-BgfXC-Er.js +1 -0
  297. package/dist/diff_tool/app/dist/assets/stata-5W1sjsQI.js +1 -0
  298. package/dist/diff_tool/app/dist/assets/stylus-B6D30XZt.js +1 -0
  299. package/dist/diff_tool/app/dist/assets/surrealql-DprXW366.js +1 -0
  300. package/dist/diff_tool/app/dist/assets/svelte-CzjcC8Mf.js +1 -0
  301. package/dist/diff_tool/app/dist/assets/swift-DonLKvLd.js +1 -0
  302. package/dist/diff_tool/app/dist/assets/synthwave-84-nFMaYfgc.js +1 -0
  303. package/dist/diff_tool/app/dist/assets/system-verilog-DJ5XKQeo.js +1 -0
  304. package/dist/diff_tool/app/dist/assets/systemd-BxMlprV5.js +1 -0
  305. package/dist/diff_tool/app/dist/assets/talonscript-CohzipZa.js +1 -0
  306. package/dist/diff_tool/app/dist/assets/tasl-DMoTqEGO.js +1 -0
  307. package/dist/diff_tool/app/dist/assets/tcl-CZd0xW_V.js +1 -0
  308. package/dist/diff_tool/app/dist/assets/templ-BOYl0ITc.js +1 -0
  309. package/dist/diff_tool/app/dist/assets/terraform-DswuEJGm.js +1 -0
  310. package/dist/diff_tool/app/dist/assets/tex-fc_nK7Hm.js +1 -0
  311. package/dist/diff_tool/app/dist/assets/tokyo-night-oM2G3aXe.js +1 -0
  312. package/dist/diff_tool/app/dist/assets/toml-CcmNWLt0.js +1 -0
  313. package/dist/diff_tool/app/dist/assets/ts-tags-q7RBsUYS.js +1 -0
  314. package/dist/diff_tool/app/dist/assets/tsv-sltzmVWM.js +1 -0
  315. package/dist/diff_tool/app/dist/assets/tsx-4vmj3sX4.js +1 -0
  316. package/dist/diff_tool/app/dist/assets/turtle-ByJddavk.js +1 -0
  317. package/dist/diff_tool/app/dist/assets/twig-67g55beP.js +1 -0
  318. package/dist/diff_tool/app/dist/assets/typescript-Bx4zhx0M.js +1 -0
  319. package/dist/diff_tool/app/dist/assets/typespec-BRdr0IET.js +1 -0
  320. package/dist/diff_tool/app/dist/assets/typst-DI99ib-x.js +1 -0
  321. package/dist/diff_tool/app/dist/assets/v-DETTlOr0.js +1 -0
  322. package/dist/diff_tool/app/dist/assets/vala-zf12oZj6.js +1 -0
  323. package/dist/diff_tool/app/dist/assets/vb-Djn5o6TS.js +1 -0
  324. package/dist/diff_tool/app/dist/assets/verilog-CiiDBU1e.js +1 -0
  325. package/dist/diff_tool/app/dist/assets/vesper-DdrHHSXu.js +1 -0
  326. package/dist/diff_tool/app/dist/assets/vhdl-BroJfC0k.js +1 -0
  327. package/dist/diff_tool/app/dist/assets/viml-DvXPmvsu.js +1 -0
  328. package/dist/diff_tool/app/dist/assets/vitesse-black-fwtXNY1n.js +1 -0
  329. package/dist/diff_tool/app/dist/assets/vitesse-dark-BZCL-v6S.js +1 -0
  330. package/dist/diff_tool/app/dist/assets/vitesse-light-VbXTXTou.js +1 -0
  331. package/dist/diff_tool/app/dist/assets/vue-G4plfR7G.js +1 -0
  332. package/dist/diff_tool/app/dist/assets/vue-html-BiigD-BR.js +1 -0
  333. package/dist/diff_tool/app/dist/assets/vue-vine-Cbdk3EZl.js +1 -0
  334. package/dist/diff_tool/app/dist/assets/vyper-CgoNMtux.js +1 -0
  335. package/dist/diff_tool/app/dist/assets/{wasm-CG6Dc4jp.js → wasm-BnjxR4X6.js} +1 -1
  336. package/dist/diff_tool/app/dist/assets/wasm-ByWQv1Qj.js +1 -0
  337. package/dist/diff_tool/app/dist/assets/wenyan-C8pVoKbM.js +1 -0
  338. package/dist/diff_tool/app/dist/assets/wgsl-BsKzXJz4.js +1 -0
  339. package/dist/diff_tool/app/dist/assets/wikitext-ClFFjSW2.js +1 -0
  340. package/dist/diff_tool/app/dist/assets/wit-DdvCle-K.js +1 -0
  341. package/dist/diff_tool/app/dist/assets/wolfram-DLL8P-h_.js +1 -0
  342. package/dist/diff_tool/app/dist/assets/xml-B3vUkid0.js +1 -0
  343. package/dist/diff_tool/app/dist/assets/xsl-ClW1O00E.js +1 -0
  344. package/dist/diff_tool/app/dist/assets/yaml-DBUv6oV4.js +1 -0
  345. package/dist/diff_tool/app/dist/assets/zenscript-BnlCZFoB.js +1 -0
  346. package/dist/diff_tool/app/dist/assets/zig-CMLA9XwU.js +1 -0
  347. package/dist/diff_tool/app/dist/index.html +2 -2
  348. package/dist/execution/cloudflare_sandbox_execution_environment.js +54 -6
  349. package/dist/execution/cloudflare_sandbox_execution_environment.js.map +1 -1
  350. package/dist/execution/local_execution_environment.js +6 -3
  351. package/dist/execution/local_execution_environment.js.map +1 -1
  352. package/dist/execution/tool_backend_execution_environment.js +1 -1
  353. package/dist/execution/tool_backend_execution_environment.js.map +1 -1
  354. package/dist/host/hosted_ephemeral_agent_session.js +19 -14
  355. package/dist/host/hosted_ephemeral_agent_session.js.map +1 -1
  356. package/dist/host/local_session_host.js +269 -97
  357. package/dist/host/local_session_host.js.map +1 -1
  358. package/dist/host/session_host.js +2 -1
  359. package/dist/host/session_host.js.map +1 -1
  360. package/dist/host/session_protocol_handler.js +34 -5
  361. package/dist/host/session_protocol_handler.js.map +1 -1
  362. package/dist/main.js +33 -18
  363. package/dist/main.js.map +1 -1
  364. package/dist/protocol/session_protocol.d.ts +2 -1
  365. package/dist/protocol/session_protocol.js +108 -5
  366. package/dist/protocol/session_protocol.js.map +1 -1
  367. package/dist/store/file_session_store.js +223 -41
  368. package/dist/store/file_session_store.js.map +1 -1
  369. package/dist/transport/stdio_session_transport.d.ts +2 -0
  370. package/dist/transport/stdio_session_transport.js +30 -3
  371. package/dist/transport/stdio_session_transport.js.map +1 -1
  372. package/dist/tui/chat_controller/diff_review_service.js +8 -5
  373. package/dist/tui/chat_controller/diff_review_service.js.map +1 -1
  374. package/dist/tui/session_chat_controller.js +113 -46
  375. package/dist/tui/session_chat_controller.js.map +1 -1
  376. package/package.json +8 -8
  377. package/dist/core/events/index.js +0 -3
  378. package/dist/core/events/index.js.map +0 -1
  379. package/dist/core/events/parser.js +0 -334
  380. package/dist/core/events/parser.js.map +0 -1
  381. package/dist/diff_tool/app/dist/assets/abap-BdImnpbu.js +0 -1
  382. package/dist/diff_tool/app/dist/assets/actionscript-3-CoDkCxhg.js +0 -1
  383. package/dist/diff_tool/app/dist/assets/ada-bCR0ucgS.js +0 -1
  384. package/dist/diff_tool/app/dist/assets/andromeeda-C4gqWexZ.js +0 -1
  385. package/dist/diff_tool/app/dist/assets/angular-html-DMxchsRu.js +0 -1
  386. package/dist/diff_tool/app/dist/assets/angular-ts-DzOHUlBM.js +0 -1
  387. package/dist/diff_tool/app/dist/assets/apache-Pmp26Uib.js +0 -1
  388. package/dist/diff_tool/app/dist/assets/apex-D8_7TLub.js +0 -1
  389. package/dist/diff_tool/app/dist/assets/apl-dKokRX4l.js +0 -1
  390. package/dist/diff_tool/app/dist/assets/applescript-Co6uUVPk.js +0 -1
  391. package/dist/diff_tool/app/dist/assets/ara-BRHolxvo.js +0 -1
  392. package/dist/diff_tool/app/dist/assets/asciidoc-Ve4PFQV2.js +0 -1
  393. package/dist/diff_tool/app/dist/assets/asm-D_Q5rh1f.js +0 -1
  394. package/dist/diff_tool/app/dist/assets/astro-CbQHKStN.js +0 -1
  395. package/dist/diff_tool/app/dist/assets/aurora-x-D-2ljcwZ.js +0 -1
  396. package/dist/diff_tool/app/dist/assets/awk-DMzUqQB5.js +0 -1
  397. package/dist/diff_tool/app/dist/assets/ayu-dark-DYE7WIF3.js +0 -1
  398. package/dist/diff_tool/app/dist/assets/ayu-light-BA47KaF1.js +0 -1
  399. package/dist/diff_tool/app/dist/assets/ayu-mirage-32ctXXKs.js +0 -1
  400. package/dist/diff_tool/app/dist/assets/ballerina-BFfxhgS-.js +0 -1
  401. package/dist/diff_tool/app/dist/assets/bat-BkioyH1T.js +0 -1
  402. package/dist/diff_tool/app/dist/assets/beancount-k_qm7-4y.js +0 -1
  403. package/dist/diff_tool/app/dist/assets/berry-uYugtg8r.js +0 -1
  404. package/dist/diff_tool/app/dist/assets/bibtex-CHM0blh-.js +0 -1
  405. package/dist/diff_tool/app/dist/assets/bicep-Bmn6On1c.js +0 -1
  406. package/dist/diff_tool/app/dist/assets/bird2-DPOp833l.js +0 -1
  407. package/dist/diff_tool/app/dist/assets/blade-D4QpJJKB.js +0 -1
  408. package/dist/diff_tool/app/dist/assets/bsl-BO_Y6i37.js +0 -1
  409. package/dist/diff_tool/app/dist/assets/c-BIGW1oBm.js +0 -1
  410. package/dist/diff_tool/app/dist/assets/c3-eo99z4R2.js +0 -1
  411. package/dist/diff_tool/app/dist/assets/cadence-Bv_4Rxtq.js +0 -1
  412. package/dist/diff_tool/app/dist/assets/cairo-KRGpt6FW.js +0 -1
  413. package/dist/diff_tool/app/dist/assets/catppuccin-frappe-DFWUc33u.js +0 -1
  414. package/dist/diff_tool/app/dist/assets/catppuccin-latte-C9dUb6Cb.js +0 -1
  415. package/dist/diff_tool/app/dist/assets/catppuccin-macchiato-DQyhUUbL.js +0 -1
  416. package/dist/diff_tool/app/dist/assets/catppuccin-mocha-D87Tk5Gz.js +0 -1
  417. package/dist/diff_tool/app/dist/assets/clarity-D53aC0YG.js +0 -1
  418. package/dist/diff_tool/app/dist/assets/clojure-P80f7IUj.js +0 -1
  419. package/dist/diff_tool/app/dist/assets/cmake-D1j8_8rp.js +0 -1
  420. package/dist/diff_tool/app/dist/assets/cobol-nwyudZeR.js +0 -1
  421. package/dist/diff_tool/app/dist/assets/codeowners-Bp6g37R7.js +0 -1
  422. package/dist/diff_tool/app/dist/assets/codeql-DsOJ9woJ.js +0 -1
  423. package/dist/diff_tool/app/dist/assets/coffee-Ch7k5sss.js +0 -1
  424. package/dist/diff_tool/app/dist/assets/common-lisp-Cg-RD9OK.js +0 -1
  425. package/dist/diff_tool/app/dist/assets/coq-DkFqJrB1.js +0 -1
  426. package/dist/diff_tool/app/dist/assets/cpp-CofmeUqb.js +0 -1
  427. package/dist/diff_tool/app/dist/assets/crystal-tKQVLTB8.js +0 -1
  428. package/dist/diff_tool/app/dist/assets/csharp-COcwbKMJ.js +0 -1
  429. package/dist/diff_tool/app/dist/assets/css-DPfMkruS.js +0 -1
  430. package/dist/diff_tool/app/dist/assets/csv-fuZLfV_i.js +0 -1
  431. package/dist/diff_tool/app/dist/assets/cue-D82EKSYY.js +0 -1
  432. package/dist/diff_tool/app/dist/assets/cypher-COkxafJQ.js +0 -1
  433. package/dist/diff_tool/app/dist/assets/d-85-TOEBH.js +0 -1
  434. package/dist/diff_tool/app/dist/assets/dark-plus-C3mMm8J8.js +0 -1
  435. package/dist/diff_tool/app/dist/assets/dart-CF10PKvl.js +0 -1
  436. package/dist/diff_tool/app/dist/assets/dax-CEL-wOlO.js +0 -1
  437. package/dist/diff_tool/app/dist/assets/desktop-BmXAJ9_W.js +0 -1
  438. package/dist/diff_tool/app/dist/assets/diff-D97Zzqfu.js +0 -1
  439. package/dist/diff_tool/app/dist/assets/docker-BcOcwvcX.js +0 -1
  440. package/dist/diff_tool/app/dist/assets/dotenv-Da5cRb03.js +0 -1
  441. package/dist/diff_tool/app/dist/assets/dracula-BzJJZx-M.js +0 -1
  442. package/dist/diff_tool/app/dist/assets/dracula-soft-BXkSAIEj.js +0 -1
  443. package/dist/diff_tool/app/dist/assets/dream-maker-BtqSS_iP.js +0 -1
  444. package/dist/diff_tool/app/dist/assets/edge-BkV0erSs.js +0 -1
  445. package/dist/diff_tool/app/dist/assets/elixir-CDX3lj18.js +0 -1
  446. package/dist/diff_tool/app/dist/assets/elm-DbKCFpqz.js +0 -1
  447. package/dist/diff_tool/app/dist/assets/emacs-lisp-C9XAeP06.js +0 -1
  448. package/dist/diff_tool/app/dist/assets/erb-B12qg9BL.js +0 -1
  449. package/dist/diff_tool/app/dist/assets/erlang-DsQrWhSR.js +0 -1
  450. package/dist/diff_tool/app/dist/assets/everforest-dark-BgDCqdQA.js +0 -1
  451. package/dist/diff_tool/app/dist/assets/everforest-light-C8M2exoo.js +0 -1
  452. package/dist/diff_tool/app/dist/assets/fennel-BYunw83y.js +0 -1
  453. package/dist/diff_tool/app/dist/assets/fish-BvzEVeQv.js +0 -1
  454. package/dist/diff_tool/app/dist/assets/fluent-C4IJs8-o.js +0 -1
  455. package/dist/diff_tool/app/dist/assets/fortran-fixed-form-CkoXwp7k.js +0 -1
  456. package/dist/diff_tool/app/dist/assets/fortran-free-form-BxgE0vQu.js +0 -1
  457. package/dist/diff_tool/app/dist/assets/fsharp-CXgrBDvD.js +0 -1
  458. package/dist/diff_tool/app/dist/assets/gdresource-BOOCDP_w.js +0 -1
  459. package/dist/diff_tool/app/dist/assets/gdscript-C5YyOfLZ.js +0 -1
  460. package/dist/diff_tool/app/dist/assets/gdshader-DkwncUOv.js +0 -1
  461. package/dist/diff_tool/app/dist/assets/genie-D0YGMca9.js +0 -1
  462. package/dist/diff_tool/app/dist/assets/gherkin-DyxjwDmM.js +0 -1
  463. package/dist/diff_tool/app/dist/assets/git-commit-F4YmCXRG.js +0 -1
  464. package/dist/diff_tool/app/dist/assets/git-rebase-r7XF79zn.js +0 -1
  465. package/dist/diff_tool/app/dist/assets/github-dark-DHJKELXO.js +0 -1
  466. package/dist/diff_tool/app/dist/assets/github-dark-default-Cuk6v7N8.js +0 -1
  467. package/dist/diff_tool/app/dist/assets/github-dark-dimmed-DH5Ifo-i.js +0 -1
  468. package/dist/diff_tool/app/dist/assets/github-dark-high-contrast-E3gJ1_iC.js +0 -1
  469. package/dist/diff_tool/app/dist/assets/github-light-DAi9KRSo.js +0 -1
  470. package/dist/diff_tool/app/dist/assets/github-light-default-D7oLnXFd.js +0 -1
  471. package/dist/diff_tool/app/dist/assets/github-light-high-contrast-BfjtVDDH.js +0 -1
  472. package/dist/diff_tool/app/dist/assets/gleam-BspZqrRM.js +0 -1
  473. package/dist/diff_tool/app/dist/assets/glimmer-js-Rg0-pVw9.js +0 -1
  474. package/dist/diff_tool/app/dist/assets/glimmer-ts-U6CK756n.js +0 -1
  475. package/dist/diff_tool/app/dist/assets/glsl-DplSGwfg.js +0 -1
  476. package/dist/diff_tool/app/dist/assets/gn-n2N0HUVH.js +0 -1
  477. package/dist/diff_tool/app/dist/assets/gnuplot-DdkO51Og.js +0 -1
  478. package/dist/diff_tool/app/dist/assets/go-CxLEBnE3.js +0 -1
  479. package/dist/diff_tool/app/dist/assets/graphql-ChdNCCLP.js +0 -1
  480. package/dist/diff_tool/app/dist/assets/groovy-gcz8RCvz.js +0 -1
  481. package/dist/diff_tool/app/dist/assets/gruvbox-dark-hard-CFHQjOhq.js +0 -1
  482. package/dist/diff_tool/app/dist/assets/gruvbox-dark-medium-GsRaNv29.js +0 -1
  483. package/dist/diff_tool/app/dist/assets/gruvbox-dark-soft-CVdnzihN.js +0 -1
  484. package/dist/diff_tool/app/dist/assets/gruvbox-light-hard-CH1njM8p.js +0 -1
  485. package/dist/diff_tool/app/dist/assets/gruvbox-light-medium-DRw_LuNl.js +0 -1
  486. package/dist/diff_tool/app/dist/assets/gruvbox-light-soft-hJgmCMqR.js +0 -1
  487. package/dist/diff_tool/app/dist/assets/hack-CaT9iCJl.js +0 -1
  488. package/dist/diff_tool/app/dist/assets/handlebars-BL8al0AC.js +0 -1
  489. package/dist/diff_tool/app/dist/assets/haskell-Df6bDoY_.js +0 -1
  490. package/dist/diff_tool/app/dist/assets/haxe-CzTSHFRz.js +0 -1
  491. package/dist/diff_tool/app/dist/assets/hcl-BWvSN4gD.js +0 -1
  492. package/dist/diff_tool/app/dist/assets/hjson-D5-asLiD.js +0 -1
  493. package/dist/diff_tool/app/dist/assets/hlsl-D3lLCCz7.js +0 -1
  494. package/dist/diff_tool/app/dist/assets/horizon-BUw7H-hv.js +0 -1
  495. package/dist/diff_tool/app/dist/assets/horizon-bright-Cn-bp-IR.js +0 -1
  496. package/dist/diff_tool/app/dist/assets/houston-DnULxvSX.js +0 -1
  497. package/dist/diff_tool/app/dist/assets/html-derivative-BFtXZ54Q.js +0 -1
  498. package/dist/diff_tool/app/dist/assets/http-jrhK8wxY.js +0 -1
  499. package/dist/diff_tool/app/dist/assets/hurl-irOxFIW8.js +0 -1
  500. package/dist/diff_tool/app/dist/assets/hxml-Bvhsp5Yf.js +0 -1
  501. package/dist/diff_tool/app/dist/assets/hy-DFXneXwc.js +0 -1
  502. package/dist/diff_tool/app/dist/assets/imba-DGztddWO.js +0 -1
  503. package/dist/diff_tool/app/dist/assets/index-2iDVL7Tb.css +0 -1
  504. package/dist/diff_tool/app/dist/assets/index-D466OuVg.js +0 -1580
  505. package/dist/diff_tool/app/dist/assets/ini-BEwlwnbL.js +0 -1
  506. package/dist/diff_tool/app/dist/assets/java-CylS5w8V.js +0 -1
  507. package/dist/diff_tool/app/dist/assets/javascript-wDzz0qaB.js +0 -1
  508. package/dist/diff_tool/app/dist/assets/jinja-4LBKfQ-Z.js +0 -1
  509. package/dist/diff_tool/app/dist/assets/jison-wvAkD_A8.js +0 -1
  510. package/dist/diff_tool/app/dist/assets/json-Cp-IABpG.js +0 -1
  511. package/dist/diff_tool/app/dist/assets/json5-C9tS-k6U.js +0 -1
  512. package/dist/diff_tool/app/dist/assets/jsonc-Des-eS-w.js +0 -1
  513. package/dist/diff_tool/app/dist/assets/jsonl-DcaNXYhu.js +0 -1
  514. package/dist/diff_tool/app/dist/assets/jsonnet-DFQXde-d.js +0 -1
  515. package/dist/diff_tool/app/dist/assets/jssm-C2t-YnRu.js +0 -1
  516. package/dist/diff_tool/app/dist/assets/jsx-g9-lgVsj.js +0 -1
  517. package/dist/diff_tool/app/dist/assets/julia-CxzCAyBv.js +0 -1
  518. package/dist/diff_tool/app/dist/assets/just-Cw27pwNe.js +0 -1
  519. package/dist/diff_tool/app/dist/assets/kanagawa-dragon-CkXjmgJE.js +0 -1
  520. package/dist/diff_tool/app/dist/assets/kanagawa-lotus-CfQXZHmo.js +0 -1
  521. package/dist/diff_tool/app/dist/assets/kanagawa-wave-DWedfzmr.js +0 -1
  522. package/dist/diff_tool/app/dist/assets/kdl-DV7GczEv.js +0 -1
  523. package/dist/diff_tool/app/dist/assets/kotlin-BdnUsdx6.js +0 -1
  524. package/dist/diff_tool/app/dist/assets/kusto-DZf3V79B.js +0 -1
  525. package/dist/diff_tool/app/dist/assets/laserwave-DUszq2jm.js +0 -1
  526. package/dist/diff_tool/app/dist/assets/latex-CWtU0Tv5.js +0 -1
  527. package/dist/diff_tool/app/dist/assets/lean-BZvkOJ9d.js +0 -1
  528. package/dist/diff_tool/app/dist/assets/less-B1dDrJ26.js +0 -1
  529. package/dist/diff_tool/app/dist/assets/light-plus-B7mTdjB0.js +0 -1
  530. package/dist/diff_tool/app/dist/assets/liquid-DYVedYrR.js +0 -1
  531. package/dist/diff_tool/app/dist/assets/llvm-DjAJT7YJ.js +0 -1
  532. package/dist/diff_tool/app/dist/assets/log-2UxHyX5q.js +0 -1
  533. package/dist/diff_tool/app/dist/assets/logo-BtOb2qkB.js +0 -1
  534. package/dist/diff_tool/app/dist/assets/lua-BaeVxFsk.js +0 -1
  535. package/dist/diff_tool/app/dist/assets/luau-C-HG3fhB.js +0 -1
  536. package/dist/diff_tool/app/dist/assets/make-CHLpvVh8.js +0 -1
  537. package/dist/diff_tool/app/dist/assets/markdown-Cvjx9yec.js +0 -1
  538. package/dist/diff_tool/app/dist/assets/marko-CnJfTvn9.js +0 -1
  539. package/dist/diff_tool/app/dist/assets/material-theme-D5KoaKCx.js +0 -1
  540. package/dist/diff_tool/app/dist/assets/material-theme-darker-BfHTSMKl.js +0 -1
  541. package/dist/diff_tool/app/dist/assets/material-theme-lighter-B0m2ddpp.js +0 -1
  542. package/dist/diff_tool/app/dist/assets/material-theme-ocean-CyktbL80.js +0 -1
  543. package/dist/diff_tool/app/dist/assets/material-theme-palenight-Csfq5Kiy.js +0 -1
  544. package/dist/diff_tool/app/dist/assets/matlab-D7o27uSR.js +0 -1
  545. package/dist/diff_tool/app/dist/assets/mdc-BMNejdWA.js +0 -1
  546. package/dist/diff_tool/app/dist/assets/mdx-Cmh6b_Ma.js +0 -1
  547. package/dist/diff_tool/app/dist/assets/mermaid-mWjccvbQ.js +0 -1
  548. package/dist/diff_tool/app/dist/assets/min-dark-CafNBF8u.js +0 -1
  549. package/dist/diff_tool/app/dist/assets/min-light-CTRr51gU.js +0 -1
  550. package/dist/diff_tool/app/dist/assets/mipsasm-CKIfxQSi.js +0 -1
  551. package/dist/diff_tool/app/dist/assets/mojo-rZm6bMo-.js +0 -1
  552. package/dist/diff_tool/app/dist/assets/monokai-D4h5O-jR.js +0 -1
  553. package/dist/diff_tool/app/dist/assets/moonbit-_H4v1dQx.js +0 -1
  554. package/dist/diff_tool/app/dist/assets/move-IF9eRakj.js +0 -1
  555. package/dist/diff_tool/app/dist/assets/narrat-DRg8JJMk.js +0 -1
  556. package/dist/diff_tool/app/dist/assets/nextflow-Zz6hmt5N.js +0 -1
  557. package/dist/diff_tool/app/dist/assets/nextflow-groovy-BeH2EWoN.js +0 -1
  558. package/dist/diff_tool/app/dist/assets/nginx-BpAMiNFr.js +0 -1
  559. package/dist/diff_tool/app/dist/assets/night-owl-C39BiMTA.js +0 -1
  560. package/dist/diff_tool/app/dist/assets/night-owl-light-CMTm3GFP.js +0 -1
  561. package/dist/diff_tool/app/dist/assets/nim-CVrawwO9.js +0 -1
  562. package/dist/diff_tool/app/dist/assets/nix-CwoSXNpI.js +0 -1
  563. package/dist/diff_tool/app/dist/assets/nord-Ddv68eIx.js +0 -1
  564. package/dist/diff_tool/app/dist/assets/nushell-Cz2AlsmD.js +0 -1
  565. package/dist/diff_tool/app/dist/assets/objective-c-DXmwc3jG.js +0 -1
  566. package/dist/diff_tool/app/dist/assets/objective-cpp-CLxacb5B.js +0 -1
  567. package/dist/diff_tool/app/dist/assets/ocaml-C0hk2d4L.js +0 -1
  568. package/dist/diff_tool/app/dist/assets/odin-BBf5iR-q.js +0 -1
  569. package/dist/diff_tool/app/dist/assets/one-dark-pro-DVMEJ2y_.js +0 -1
  570. package/dist/diff_tool/app/dist/assets/one-light-C3Wv6jpd.js +0 -1
  571. package/dist/diff_tool/app/dist/assets/openscad-C4EeE6gA.js +0 -1
  572. package/dist/diff_tool/app/dist/assets/pascal-D93ZcfNL.js +0 -1
  573. package/dist/diff_tool/app/dist/assets/perl-C0TMdlhV.js +0 -1
  574. package/dist/diff_tool/app/dist/assets/php-Dhbhpdrm.js +0 -1
  575. package/dist/diff_tool/app/dist/assets/pierre-dark-CyvmCCZW.js +0 -1
  576. package/dist/diff_tool/app/dist/assets/pierre-dark-protanopia-deuteranopia-Rgc0TwpF.js +0 -1
  577. package/dist/diff_tool/app/dist/assets/pierre-dark-soft-BHGpRqa4.js +0 -1
  578. package/dist/diff_tool/app/dist/assets/pierre-dark-tritanopia-Beq2gCRQ.js +0 -1
  579. package/dist/diff_tool/app/dist/assets/pierre-dark-vibrant-BWBVywrn.js +0 -1
  580. package/dist/diff_tool/app/dist/assets/pierre-light-480U9XYS.js +0 -1
  581. package/dist/diff_tool/app/dist/assets/pierre-light-protanopia-deuteranopia-CaVOBURG.js +0 -1
  582. package/dist/diff_tool/app/dist/assets/pierre-light-soft-CVdyfjmI.js +0 -1
  583. package/dist/diff_tool/app/dist/assets/pierre-light-tritanopia-B4_gpKOM.js +0 -1
  584. package/dist/diff_tool/app/dist/assets/pierre-light-vibrant-DdTDNdfJ.js +0 -1
  585. package/dist/diff_tool/app/dist/assets/pkl-u5AG7uiY.js +0 -1
  586. package/dist/diff_tool/app/dist/assets/plastic-3e1v2bzS.js +0 -1
  587. package/dist/diff_tool/app/dist/assets/plsql-ChMvpjG-.js +0 -1
  588. package/dist/diff_tool/app/dist/assets/po-BTJTHyun.js +0 -1
  589. package/dist/diff_tool/app/dist/assets/poimandres-CS3Unz2-.js +0 -1
  590. package/dist/diff_tool/app/dist/assets/polar-C0HS_06l.js +0 -1
  591. package/dist/diff_tool/app/dist/assets/postcss-CXtECtnM.js +0 -1
  592. package/dist/diff_tool/app/dist/assets/powerquery-CEu0bR-o.js +0 -1
  593. package/dist/diff_tool/app/dist/assets/powershell-Dpen1YoG.js +0 -1
  594. package/dist/diff_tool/app/dist/assets/prisma-Dd19v3D-.js +0 -1
  595. package/dist/diff_tool/app/dist/assets/prolog-CbFg5uaA.js +0 -1
  596. package/dist/diff_tool/app/dist/assets/proto-C7zT0LnQ.js +0 -1
  597. package/dist/diff_tool/app/dist/assets/pug-CGlum2m_.js +0 -1
  598. package/dist/diff_tool/app/dist/assets/puppet-BMWR74SV.js +0 -1
  599. package/dist/diff_tool/app/dist/assets/purescript-CklMAg4u.js +0 -1
  600. package/dist/diff_tool/app/dist/assets/python-B6aJPvgy.js +0 -1
  601. package/dist/diff_tool/app/dist/assets/qml-3beO22l8.js +0 -1
  602. package/dist/diff_tool/app/dist/assets/qmldir-C8lEn-DE.js +0 -1
  603. package/dist/diff_tool/app/dist/assets/qss-IeuSbFQv.js +0 -1
  604. package/dist/diff_tool/app/dist/assets/r-Dspwwk_N.js +0 -1
  605. package/dist/diff_tool/app/dist/assets/racket-BqYA7rlc.js +0 -1
  606. package/dist/diff_tool/app/dist/assets/raku-DXvB9xmW.js +0 -1
  607. package/dist/diff_tool/app/dist/assets/razor-Uh8Bk_45.js +0 -1
  608. package/dist/diff_tool/app/dist/assets/red-bN70gL4F.js +0 -1
  609. package/dist/diff_tool/app/dist/assets/reg-C-SQnVFl.js +0 -1
  610. package/dist/diff_tool/app/dist/assets/regexp-CDVJQ6XC.js +0 -1
  611. package/dist/diff_tool/app/dist/assets/rel-C3B-1QV4.js +0 -1
  612. package/dist/diff_tool/app/dist/assets/riscv-BM1_JUlF.js +0 -1
  613. package/dist/diff_tool/app/dist/assets/ron-D8l8udqQ.js +0 -1
  614. package/dist/diff_tool/app/dist/assets/rose-pine-dawn-DHQR4-dF.js +0 -1
  615. package/dist/diff_tool/app/dist/assets/rose-pine-moon-D4_iv3hh.js +0 -1
  616. package/dist/diff_tool/app/dist/assets/rose-pine-qdsjHGoJ.js +0 -1
  617. package/dist/diff_tool/app/dist/assets/rosmsg-BJDFO7_C.js +0 -1
  618. package/dist/diff_tool/app/dist/assets/rst-BrH8l1NY.js +0 -1
  619. package/dist/diff_tool/app/dist/assets/ruby-Dw2BHqvy.js +0 -1
  620. package/dist/diff_tool/app/dist/assets/rust-B1yitclQ.js +0 -1
  621. package/dist/diff_tool/app/dist/assets/sas-cz2c8ADy.js +0 -1
  622. package/dist/diff_tool/app/dist/assets/sass-Cj5Yp3dK.js +0 -1
  623. package/dist/diff_tool/app/dist/assets/scala-C151Ov-r.js +0 -1
  624. package/dist/diff_tool/app/dist/assets/scheme-C98Dy4si.js +0 -1
  625. package/dist/diff_tool/app/dist/assets/scss-OYdSNvt2.js +0 -1
  626. package/dist/diff_tool/app/dist/assets/sdbl-DVxCFoDh.js +0 -1
  627. package/dist/diff_tool/app/dist/assets/shaderlab-Dg9Lc6iA.js +0 -1
  628. package/dist/diff_tool/app/dist/assets/shellscript-Yzrsuije.js +0 -1
  629. package/dist/diff_tool/app/dist/assets/shellsession-BADoaaVG.js +0 -1
  630. package/dist/diff_tool/app/dist/assets/slack-dark-BthQWCQV.js +0 -1
  631. package/dist/diff_tool/app/dist/assets/slack-ochin-DqwNpetd.js +0 -1
  632. package/dist/diff_tool/app/dist/assets/smalltalk-BERRCDM3.js +0 -1
  633. package/dist/diff_tool/app/dist/assets/snazzy-light-Bw305WKR.js +0 -1
  634. package/dist/diff_tool/app/dist/assets/solarized-dark-DXbdFlpD.js +0 -1
  635. package/dist/diff_tool/app/dist/assets/solarized-light-L9t79GZl.js +0 -1
  636. package/dist/diff_tool/app/dist/assets/solidity-rGO070M0.js +0 -1
  637. package/dist/diff_tool/app/dist/assets/soy-Brmx7dQM.js +0 -1
  638. package/dist/diff_tool/app/dist/assets/sparql-rVzFXLq3.js +0 -1
  639. package/dist/diff_tool/app/dist/assets/splunk-BtCnVYZw.js +0 -1
  640. package/dist/diff_tool/app/dist/assets/sql-BLtJtn59.js +0 -1
  641. package/dist/diff_tool/app/dist/assets/ssh-config-_ykCGR6B.js +0 -1
  642. package/dist/diff_tool/app/dist/assets/stata-BH5u7GGu.js +0 -1
  643. package/dist/diff_tool/app/dist/assets/stylus-BEDo0Tqx.js +0 -1
  644. package/dist/diff_tool/app/dist/assets/surrealql-Bq5Q-fJD.js +0 -1
  645. package/dist/diff_tool/app/dist/assets/svelte-C_ipcX3V.js +0 -1
  646. package/dist/diff_tool/app/dist/assets/swift-D82vCrfD.js +0 -1
  647. package/dist/diff_tool/app/dist/assets/synthwave-84-CbfX1IO0.js +0 -1
  648. package/dist/diff_tool/app/dist/assets/system-verilog-CnnmHF94.js +0 -1
  649. package/dist/diff_tool/app/dist/assets/systemd-4A_iFExJ.js +0 -1
  650. package/dist/diff_tool/app/dist/assets/talonscript-CkByrt1z.js +0 -1
  651. package/dist/diff_tool/app/dist/assets/tasl-QIJgUcNo.js +0 -1
  652. package/dist/diff_tool/app/dist/assets/tcl-dwOrl1Do.js +0 -1
  653. package/dist/diff_tool/app/dist/assets/templ-P3uqSqPl.js +0 -1
  654. package/dist/diff_tool/app/dist/assets/terraform-BETggiCN.js +0 -1
  655. package/dist/diff_tool/app/dist/assets/tex-idrVyKtj.js +0 -1
  656. package/dist/diff_tool/app/dist/assets/tokyo-night-hegEt444.js +0 -1
  657. package/dist/diff_tool/app/dist/assets/toml-vGWfd6FD.js +0 -1
  658. package/dist/diff_tool/app/dist/assets/ts-tags-zn1MmPIZ.js +0 -1
  659. package/dist/diff_tool/app/dist/assets/tsv-B_m7g4N7.js +0 -1
  660. package/dist/diff_tool/app/dist/assets/tsx-COt5Ahok.js +0 -1
  661. package/dist/diff_tool/app/dist/assets/turtle-BsS91CYL.js +0 -1
  662. package/dist/diff_tool/app/dist/assets/twig-DNn4PbVi.js +0 -1
  663. package/dist/diff_tool/app/dist/assets/typescript-BPQ3VLAy.js +0 -1
  664. package/dist/diff_tool/app/dist/assets/typespec-BGHnOYBU.js +0 -1
  665. package/dist/diff_tool/app/dist/assets/typst-DHCkPAjA.js +0 -1
  666. package/dist/diff_tool/app/dist/assets/v-BcVCzyr7.js +0 -1
  667. package/dist/diff_tool/app/dist/assets/vala-CsfeWuGM.js +0 -1
  668. package/dist/diff_tool/app/dist/assets/vb-D17OF-Vu.js +0 -1
  669. package/dist/diff_tool/app/dist/assets/verilog-BQ8w6xss.js +0 -1
  670. package/dist/diff_tool/app/dist/assets/vesper-DU1UobuO.js +0 -1
  671. package/dist/diff_tool/app/dist/assets/vhdl-CeAyd5Ju.js +0 -1
  672. package/dist/diff_tool/app/dist/assets/viml-CJc9bBzg.js +0 -1
  673. package/dist/diff_tool/app/dist/assets/vitesse-black-Bkuqu6BP.js +0 -1
  674. package/dist/diff_tool/app/dist/assets/vitesse-dark-D0r3Knsf.js +0 -1
  675. package/dist/diff_tool/app/dist/assets/vitesse-light-CVO1_9PV.js +0 -1
  676. package/dist/diff_tool/app/dist/assets/vue-DN_0RTcg.js +0 -1
  677. package/dist/diff_tool/app/dist/assets/vue-html-AaS7Mt5G.js +0 -1
  678. package/dist/diff_tool/app/dist/assets/vue-vine-CQOfvN7w.js +0 -1
  679. package/dist/diff_tool/app/dist/assets/vyper-CDx5xZoG.js +0 -1
  680. package/dist/diff_tool/app/dist/assets/wasm-MzD3tlZU.js +0 -1
  681. package/dist/diff_tool/app/dist/assets/wenyan-BV7otONQ.js +0 -1
  682. package/dist/diff_tool/app/dist/assets/wgsl-Dx-B1_4e.js +0 -1
  683. package/dist/diff_tool/app/dist/assets/wikitext-BhOHFoWU.js +0 -1
  684. package/dist/diff_tool/app/dist/assets/wit-5i3qLPDT.js +0 -1
  685. package/dist/diff_tool/app/dist/assets/wolfram-lXgVvXCa.js +0 -1
  686. package/dist/diff_tool/app/dist/assets/xml-sdJ4AIDG.js +0 -1
  687. package/dist/diff_tool/app/dist/assets/xsl-CtQFsRM5.js +0 -1
  688. package/dist/diff_tool/app/dist/assets/yaml-Buea-lGh.js +0 -1
  689. package/dist/diff_tool/app/dist/assets/zenscript-DVFEvuxE.js +0 -1
  690. package/dist/diff_tool/app/dist/assets/zig-VOosw3JB.js +0 -1
@@ -1,17 +1,23 @@
1
1
  import { randomUUID } from "node:crypto";
2
- import { mkdir, readdir, readFile, rename, rm, writeFile } from "node:fs/promises";
2
+ import { chmod, lstat, mkdir, readdir, readFile, rename, rm, stat, writeFile, } from "node:fs/promises";
3
3
  import { homedir } from "node:os";
4
4
  import { basename, join } from "node:path";
5
5
  import { validateSessionProtocolResult } from "../protocol/session_protocol.js";
6
6
  import { assertExpectedSessionRevision, validateSessionStoreSnapshot, } from "./session_store.js";
7
7
  const SNAPSHOT_FILE_EXTENSION = ".json";
8
+ const SNAPSHOT_TEMP_FILE_PATTERN = /^([A-Za-z0-9_-]+\.json)\.(\d+)\.(\d+)\.([0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})\.tmp$/;
9
+ const SNAPSHOT_LOCK_OWNER_FILENAME = "owner.json";
8
10
  const SNAPSHOT_LOCK_TIMEOUT_MS = 30_000;
9
11
  const SNAPSHOT_LOCK_RETRY_MS = 10;
12
+ const SNAPSHOT_INCOMPLETE_LOCK_STALE_MS = 1_000;
13
+ const PRIVATE_DIRECTORY_MODE = 0o700;
14
+ const PRIVATE_FILE_MODE = 0o600;
10
15
  export function getDefaultSessionStoreDirectory(homeDir) {
11
16
  return join(homeDir ?? homedir(), ".config", "tau", "sessions");
12
17
  }
13
18
  export class FileSessionStore {
14
19
  directory;
20
+ initialization;
15
21
  constructor(options) {
16
22
  this.directory = options.directory;
17
23
  }
@@ -22,29 +28,31 @@ export class FileSessionStore {
22
28
  assertExpectedSessionRevision(validated.sessionId, options.expectedRevision, current);
23
29
  const finalPath = this.snapshotPath(validated.sessionId);
24
30
  const tempPath = `${finalPath}.${process.pid}.${Date.now()}.${randomUUID()}.tmp`;
25
- await writeFile(tempPath, `${JSON.stringify(validated)}\n`, "utf8");
26
- await rename(tempPath, finalPath);
31
+ try {
32
+ await writeFile(tempPath, `${JSON.stringify(validated)}\n`, {
33
+ encoding: "utf8",
34
+ flag: "wx",
35
+ mode: PRIVATE_FILE_MODE,
36
+ });
37
+ await rename(tempPath, finalPath);
38
+ await chmod(finalPath, PRIVATE_FILE_MODE);
39
+ }
40
+ finally {
41
+ await rm(tempPath, { force: true });
42
+ }
27
43
  });
28
44
  }
29
45
  async loadSession(sessionId) {
30
- let raw;
31
- try {
32
- raw = await readFile(this.snapshotPath(sessionId), "utf8");
33
- }
34
- catch (error) {
35
- if (isNotFound(error)) {
36
- return undefined;
37
- }
38
- throw error;
39
- }
40
- return parseStoredSnapshot(sessionId, raw);
46
+ await this.ensureInitialized();
47
+ return await this.loadSessionUnlocked(sessionId);
41
48
  }
42
49
  async listSessionSnapshots() {
50
+ await this.ensureInitialized();
43
51
  const filenames = await this.snapshotFilenames();
44
52
  const snapshots = [];
45
53
  for (const filename of filenames) {
46
54
  const sessionId = sessionIdFromSnapshotFilename(filename);
47
- const snapshot = await this.loadSession(sessionId);
55
+ const snapshot = await this.loadSessionUnlocked(sessionId);
48
56
  if (snapshot) {
49
57
  snapshots.push(snapshot);
50
58
  }
@@ -56,12 +64,42 @@ export class FileSessionStore {
56
64
  const current = await this.loadSessionUnlocked(sessionId);
57
65
  assertExpectedSessionRevision(sessionId, options.expectedRevision, current);
58
66
  await rm(this.snapshotPath(sessionId), { force: true });
67
+ await this.cleanupSessionTemporaryFiles(sessionId);
59
68
  });
60
69
  }
70
+ async ensureInitialized() {
71
+ await this.ensureDirectoryPermissions();
72
+ if (!this.initialization) {
73
+ this.initialization = this.initialize().catch((error) => {
74
+ this.initialization = undefined;
75
+ throw error;
76
+ });
77
+ }
78
+ await this.initialization;
79
+ }
80
+ async initialize() {
81
+ const entries = await readdir(this.directory);
82
+ const sessionIds = new Set();
83
+ for (const entry of entries) {
84
+ const sessionId = sessionIdFromSnapshotTempFilename(entry);
85
+ if (sessionId !== undefined) {
86
+ sessionIds.add(sessionId);
87
+ }
88
+ }
89
+ for (const sessionId of sessionIds) {
90
+ await this.withSnapshotLockRaw(sessionId, () => this.cleanupSessionTemporaryFiles(sessionId));
91
+ }
92
+ }
93
+ async ensureDirectoryPermissions() {
94
+ await mkdir(this.directory, { recursive: true, mode: PRIVATE_DIRECTORY_MODE });
95
+ await chmod(this.directory, PRIVATE_DIRECTORY_MODE);
96
+ }
61
97
  async loadSessionUnlocked(sessionId) {
98
+ const path = this.snapshotPath(sessionId);
62
99
  let raw;
63
100
  try {
64
- raw = await readFile(this.snapshotPath(sessionId), "utf8");
101
+ await chmod(path, PRIVATE_FILE_MODE);
102
+ raw = await readFile(path, "utf8");
65
103
  }
66
104
  catch (error) {
67
105
  if (isNotFound(error)) {
@@ -72,19 +110,8 @@ export class FileSessionStore {
72
110
  return parseStoredSnapshot(sessionId, raw);
73
111
  }
74
112
  async snapshotFilenames() {
75
- let entries;
76
- try {
77
- entries = await readdir(this.directory);
78
- }
79
- catch (error) {
80
- if (isNotFound(error)) {
81
- return [];
82
- }
83
- throw error;
84
- }
85
- return entries
86
- .filter((entry) => entry.endsWith(SNAPSHOT_FILE_EXTENSION))
87
- .sort((a, b) => a.localeCompare(b));
113
+ const entries = await readdir(this.directory);
114
+ return entries.filter((entry) => isSnapshotFilename(entry)).sort((a, b) => a.localeCompare(b));
88
115
  }
89
116
  snapshotPath(sessionId) {
90
117
  return join(this.directory, snapshotFilename(sessionId));
@@ -92,31 +119,155 @@ export class FileSessionStore {
92
119
  snapshotLockPath(sessionId) {
93
120
  return `${this.snapshotPath(sessionId)}.lock`;
94
121
  }
122
+ async cleanupSessionTemporaryFiles(sessionId) {
123
+ const expectedSnapshotFilename = snapshotFilename(sessionId);
124
+ const entries = await readdir(this.directory);
125
+ for (const entry of entries) {
126
+ const match = SNAPSHOT_TEMP_FILE_PATTERN.exec(entry);
127
+ if (!match || match[1] !== expectedSnapshotFilename) {
128
+ continue;
129
+ }
130
+ const path = join(this.directory, entry);
131
+ const metadata = await lstat(path).catch((error) => {
132
+ if (isNotFound(error))
133
+ return undefined;
134
+ throw error;
135
+ });
136
+ if (!metadata?.isFile() || !isOwnedByCurrentUser(metadata.uid)) {
137
+ continue;
138
+ }
139
+ await rm(path, { force: true });
140
+ }
141
+ }
95
142
  async withSnapshotLock(sessionId, handler) {
96
- await mkdir(this.directory, { recursive: true });
143
+ await this.ensureInitialized();
144
+ return await this.withSnapshotLockRaw(sessionId, async () => {
145
+ await this.cleanupSessionTemporaryFiles(sessionId);
146
+ return await handler();
147
+ });
148
+ }
149
+ async withSnapshotLockRaw(sessionId, handler) {
150
+ await this.ensureDirectoryPermissions();
97
151
  const lockPath = this.snapshotLockPath(sessionId);
98
- const startedAt = Date.now();
152
+ const owner = await acquireSnapshotLock(lockPath, sessionId);
153
+ try {
154
+ return await handler();
155
+ }
156
+ finally {
157
+ await releaseSnapshotLock(lockPath, owner);
158
+ }
159
+ }
160
+ }
161
+ async function acquireSnapshotLock(lockPath, sessionId) {
162
+ const owner = {
163
+ pid: process.pid,
164
+ token: randomUUID(),
165
+ createdAt: Date.now(),
166
+ };
167
+ const candidatePath = `${lockPath}.candidate.${owner.token}`;
168
+ const startedAt = Date.now();
169
+ try {
170
+ await mkdir(candidatePath, { mode: PRIVATE_DIRECTORY_MODE });
171
+ await chmod(candidatePath, PRIVATE_DIRECTORY_MODE);
172
+ const ownerPath = join(candidatePath, SNAPSHOT_LOCK_OWNER_FILENAME);
173
+ await writeFile(ownerPath, JSON.stringify(owner), {
174
+ encoding: "utf8",
175
+ flag: "wx",
176
+ mode: PRIVATE_FILE_MODE,
177
+ });
178
+ await chmod(ownerPath, PRIVATE_FILE_MODE);
99
179
  while (true) {
100
180
  try {
101
- await mkdir(lockPath);
102
- break;
181
+ await rename(candidatePath, lockPath);
182
+ return owner;
103
183
  }
104
184
  catch (error) {
105
- if (!isAlreadyExists(error)) {
185
+ if (!isLockExists(error)) {
106
186
  throw error;
107
187
  }
108
- if (Date.now() - startedAt > SNAPSHOT_LOCK_TIMEOUT_MS) {
188
+ if (await recoverStaleSnapshotLock(lockPath)) {
189
+ continue;
190
+ }
191
+ if (Date.now() - startedAt >= SNAPSHOT_LOCK_TIMEOUT_MS) {
109
192
  throw new Error(`timed out waiting for stored session snapshot lock: ${sessionId}`);
110
193
  }
111
194
  await sleep(SNAPSHOT_LOCK_RETRY_MS);
112
195
  }
113
196
  }
114
- try {
115
- return await handler();
197
+ }
198
+ finally {
199
+ await rm(candidatePath, { recursive: true, force: true });
200
+ }
201
+ }
202
+ async function recoverStaleSnapshotLock(lockPath) {
203
+ const owner = await readSnapshotLockOwner(lockPath);
204
+ if (owner) {
205
+ if (isProcessAlive(owner.pid)) {
206
+ return false;
116
207
  }
117
- finally {
118
- await rm(lockPath, { recursive: true, force: true });
208
+ return await quarantineStaleSnapshotLock(lockPath);
209
+ }
210
+ let lockStat;
211
+ try {
212
+ lockStat = await stat(lockPath);
213
+ }
214
+ catch (error) {
215
+ if (isNotFound(error)) {
216
+ return true;
217
+ }
218
+ throw error;
219
+ }
220
+ if (Date.now() - lockStat.mtimeMs < SNAPSHOT_INCOMPLETE_LOCK_STALE_MS) {
221
+ return false;
222
+ }
223
+ return await quarantineStaleSnapshotLock(lockPath);
224
+ }
225
+ async function quarantineStaleSnapshotLock(lockPath) {
226
+ const stalePath = `${lockPath}.stale.${randomUUID()}`;
227
+ try {
228
+ await rename(lockPath, stalePath);
229
+ }
230
+ catch (error) {
231
+ if (isNotFound(error)) {
232
+ return true;
119
233
  }
234
+ throw error;
235
+ }
236
+ await rm(stalePath, { recursive: true, force: true });
237
+ return true;
238
+ }
239
+ async function releaseSnapshotLock(lockPath, expectedOwner) {
240
+ const owner = await readSnapshotLockOwner(lockPath);
241
+ if (owner?.token !== expectedOwner.token) {
242
+ return;
243
+ }
244
+ await rm(lockPath, { recursive: true, force: true });
245
+ }
246
+ async function readSnapshotLockOwner(lockPath) {
247
+ let raw;
248
+ try {
249
+ raw = await readFile(join(lockPath, SNAPSHOT_LOCK_OWNER_FILENAME), "utf8");
250
+ }
251
+ catch (error) {
252
+ if (isNotFound(error)) {
253
+ return undefined;
254
+ }
255
+ throw error;
256
+ }
257
+ try {
258
+ const value = JSON.parse(raw);
259
+ if (!Number.isInteger(value.pid) ||
260
+ (value.pid ?? 0) <= 0 ||
261
+ typeof value.token !== "string" ||
262
+ value.token.length === 0 ||
263
+ typeof value.createdAt !== "number" ||
264
+ !Number.isFinite(value.createdAt)) {
265
+ return undefined;
266
+ }
267
+ return value;
268
+ }
269
+ catch {
270
+ return undefined;
120
271
  }
121
272
  }
122
273
  function parseStoredSnapshot(sessionId, raw) {
@@ -138,6 +289,13 @@ function parseStoredSnapshot(sessionId, raw) {
138
289
  }
139
290
  return snapshot.value;
140
291
  }
292
+ function isSnapshotFilename(filename) {
293
+ if (!filename.endsWith(SNAPSHOT_FILE_EXTENSION)) {
294
+ return false;
295
+ }
296
+ const sessionId = sessionIdFromSnapshotFilename(filename);
297
+ return snapshotFilename(sessionId) === filename;
298
+ }
141
299
  function snapshotFilename(sessionId) {
142
300
  return `${Buffer.from(sessionId, "utf8").toString("base64url")}${SNAPSHOT_FILE_EXTENSION}`;
143
301
  }
@@ -145,11 +303,35 @@ function sessionIdFromSnapshotFilename(filename) {
145
303
  const encoded = basename(filename, SNAPSHOT_FILE_EXTENSION);
146
304
  return Buffer.from(encoded, "base64url").toString("utf8");
147
305
  }
306
+ function sessionIdFromSnapshotTempFilename(filename) {
307
+ const match = SNAPSHOT_TEMP_FILE_PATTERN.exec(filename);
308
+ if (!match?.[1]) {
309
+ return undefined;
310
+ }
311
+ const sessionId = sessionIdFromSnapshotFilename(match[1]);
312
+ return snapshotFilename(sessionId) === match[1] ? sessionId : undefined;
313
+ }
314
+ function isOwnedByCurrentUser(uid) {
315
+ return typeof process.getuid !== "function" || uid === process.getuid();
316
+ }
317
+ function isProcessAlive(pid) {
318
+ try {
319
+ process.kill(pid, 0);
320
+ return true;
321
+ }
322
+ catch (error) {
323
+ return !(error instanceof Error &&
324
+ "code" in error &&
325
+ (error.code === "ESRCH" || error.code === "EINVAL"));
326
+ }
327
+ }
148
328
  function isNotFound(error) {
149
329
  return error instanceof Error && "code" in error && error.code === "ENOENT";
150
330
  }
151
- function isAlreadyExists(error) {
152
- return error instanceof Error && "code" in error && error.code === "EEXIST";
331
+ function isLockExists(error) {
332
+ return (error instanceof Error &&
333
+ "code" in error &&
334
+ (error.code === "EEXIST" || error.code === "ENOTEMPTY"));
153
335
  }
154
336
  function sleep(ms) {
155
337
  return new Promise((resolve) => setTimeout(resolve, ms));
@@ -1 +1 @@
1
- {"version":3,"file":"file_session_store.js","sourceRoot":"","sources":["../../src/store/file_session_store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"file_session_store.js","sourceRoot":"","sources":["../../src/store/file_session_store.ts"],"names":[],"mappings":"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"}
@@ -14,6 +14,7 @@ export declare class StdioSessionProtocolTransport implements SessionProtocolTra
14
14
  private readyValue?;
15
15
  private readonly stdoutBuffer;
16
16
  private stderrBuffer;
17
+ private stderrTruncated;
17
18
  private connectPromise?;
18
19
  private closePromise?;
19
20
  private isConnected;
@@ -36,6 +37,7 @@ export declare class StdioSessionProtocolTransport implements SessionProtocolTra
36
37
  private readonly handleProcessExit;
37
38
  private readonly handleProcessClose;
38
39
  private onProcessTerminated;
40
+ private getStderrDiagnostic;
39
41
  private handleSessionProtocolLine;
40
42
  private failTransport;
41
43
  private rejectReadyIfPending;
@@ -3,6 +3,20 @@ import { TauProcessError, TauTransportError } from "./errors.js";
3
3
  import { PendingSessionProtocolRequests, } from "./pending_session_protocol_requests.js";
4
4
  import { createDeferred, handleSessionProtocolTransportParseFailure, handleSessionProtocolTransportResponse, notifySessionProtocolClientToolListeners, notifySessionProtocolDeltaListeners, notifySessionProtocolEphemeralListeners, notifySessionProtocolPendingUserMessagesListeners, waitForPromiseOrTimeout, withTimeout, } from "./session_protocol_transport_helpers.js";
5
5
  const CLOSE_TIMEOUT_MS = 2_000;
6
+ const STDERR_DIAGNOSTIC_MAX_BYTES = 64 * 1024;
7
+ const STDERR_TRUNCATION_MARKER = "[stderr truncated; showing tail]\n";
8
+ const STDERR_TRUNCATION_MARKER_BYTES = Buffer.byteLength(STDERR_TRUNCATION_MARKER, "utf8");
9
+ function truncateUtf8Tail(value, maxBytes) {
10
+ const buffer = Buffer.from(value, "utf8");
11
+ if (buffer.byteLength <= maxBytes) {
12
+ return value;
13
+ }
14
+ let start = buffer.byteLength - maxBytes;
15
+ while (start < buffer.byteLength && (buffer[start] & 0xc0) === 0x80) {
16
+ start += 1;
17
+ }
18
+ return buffer.subarray(start).toString("utf8");
19
+ }
6
20
  export class StdioSessionProtocolTransport {
7
21
  process;
8
22
  deltaListeners = new Set();
@@ -15,6 +29,7 @@ export class StdioSessionProtocolTransport {
15
29
  readyValue;
16
30
  stdoutBuffer = new LineBuffer();
17
31
  stderrBuffer = "";
32
+ stderrTruncated = false;
18
33
  connectPromise;
19
34
  closePromise;
20
35
  isConnected = false;
@@ -163,11 +178,18 @@ export class StdioSessionProtocolTransport {
163
178
  }
164
179
  };
165
180
  handleStderrData = (chunk) => {
166
- this.stderrBuffer += chunk.toString();
181
+ const next = `${this.stderrBuffer}${chunk.toString()}`;
182
+ const maxTailBytes = STDERR_DIAGNOSTIC_MAX_BYTES - STDERR_TRUNCATION_MARKER_BYTES;
183
+ if (this.stderrTruncated || Buffer.byteLength(next, "utf8") > STDERR_DIAGNOSTIC_MAX_BYTES) {
184
+ this.stderrBuffer = truncateUtf8Tail(next, maxTailBytes);
185
+ this.stderrTruncated = true;
186
+ return;
187
+ }
188
+ this.stderrBuffer = next;
167
189
  };
168
190
  handleProcessError = (error) => {
169
191
  this.failTransport(new TauProcessError("tau rpc process transport failure", {
170
- stderr: this.stderrBuffer,
192
+ stderr: this.getStderrDiagnostic(),
171
193
  cause: error,
172
194
  }));
173
195
  };
@@ -194,9 +216,14 @@ export class StdioSessionProtocolTransport {
194
216
  this.failTransport(new TauProcessError(message, {
195
217
  exitCode: exit.code,
196
218
  signal: exit.signal,
197
- stderr: this.stderrBuffer,
219
+ stderr: this.getStderrDiagnostic(),
198
220
  }));
199
221
  }
222
+ getStderrDiagnostic() {
223
+ return this.stderrTruncated
224
+ ? `${STDERR_TRUNCATION_MARKER}${this.stderrBuffer}`
225
+ : this.stderrBuffer;
226
+ }
200
227
  handleSessionProtocolLine(line) {
201
228
  const parsed = parseSessionProtocolOutgoingLine(line);
202
229
  if (!parsed.ok) {
@@ -1 +1 @@
1
- {"version":3,"file":"stdio_session_transport.js","sourceRoot":"","sources":["../../src/transport/stdio_session_transport.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"stdio_session_transport.js","sourceRoot":"","sources":["../../src/transport/stdio_session_transport.ts"],"names":[],"mappings":"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"}
@@ -31,7 +31,10 @@ export class DiffReviewService {
31
31
  ? "starting diff review, esc to cancel"
32
32
  : "diff review active, finish in the tool or press esc to cancel";
33
33
  }
34
- async start(argsText) {
34
+ async start(argsText, callbacks = {
35
+ startSession: this.startSession,
36
+ onReviewReturned: this.onReviewReturned,
37
+ }) {
35
38
  if (this.state) {
36
39
  this.view.addSystemMessage("diff review is already active.", "warn");
37
40
  return;
@@ -87,7 +90,7 @@ export class DiffReviewService {
87
90
  };
88
91
  this.interruptLifecycle.beginBusyTask(busyTask);
89
92
  try {
90
- const started = await this.startSession({
93
+ const started = await callbacks.startSession({
91
94
  source: { kind: "git_diff", diffArgs },
92
95
  diffTool,
93
96
  signal: abortController.signal,
@@ -99,7 +102,7 @@ export class DiffReviewService {
99
102
  }
100
103
  this.attachStartedSession(state, started);
101
104
  const result = await started.result;
102
- this.handleResult(state, result);
105
+ await this.handleResult(state, result, callbacks.onReviewReturned);
103
106
  }
104
107
  catch (error) {
105
108
  if (abortController.signal.aborted) {
@@ -231,7 +234,7 @@ export class DiffReviewService {
231
234
  });
232
235
  this.refreshStatus();
233
236
  }
234
- handleResult(state, result) {
237
+ async handleResult(state, result, onReviewReturned) {
235
238
  if (result.status === "returned") {
236
239
  state.messageFinalized = true;
237
240
  this.view.replaceMessage(state.messageId, {
@@ -239,7 +242,7 @@ export class DiffReviewService {
239
242
  text: result.review,
240
243
  kind: "review",
241
244
  });
242
- this.onReviewReturned({
245
+ await onReviewReturned({
243
246
  diffCommand: state.diffCommand,
244
247
  reviewedFiles: state.reviewedFiles,
245
248
  review: result.review,
@@ -1 +1 @@
1
- {"version":3,"file":"diff_review_service.js","sourceRoot":"","sources":["../../../src/tui/chat_controller/diff_review_service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"diff_review_service.js","sourceRoot":"","sources":["../../../src/tui/chat_controller/diff_review_service.ts"],"names":[],"mappings":"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"}