commandmate 0.49.3 → 0.50.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (877) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/app-build-manifest.json +454 -408
  3. package/.next/app-path-routes-manifest.json +19 -13
  4. package/.next/build-manifest.json +5 -5
  5. package/.next/prerender-manifest.json +9 -9
  6. package/.next/react-loadable-manifest.json +1 -1
  7. package/.next/required-server-files.json +1 -1
  8. package/.next/routes-manifest.json +32 -0
  9. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  10. package/.next/server/app/api/agents/update/route_client-reference-manifest.js +1 -1
  11. package/.next/server/app/api/agents/versions/route_client-reference-manifest.js +1 -1
  12. package/.next/server/app/api/app/release-notes/route_client-reference-manifest.js +1 -1
  13. package/.next/server/app/api/app/update/route_client-reference-manifest.js +1 -1
  14. package/.next/server/app/api/app/update-check/route_client-reference-manifest.js +1 -1
  15. package/.next/server/app/api/auth/login/route_client-reference-manifest.js +1 -1
  16. package/.next/server/app/api/auth/logout/route_client-reference-manifest.js +1 -1
  17. package/.next/server/app/api/auth/status/route_client-reference-manifest.js +1 -1
  18. package/.next/server/app/api/capabilities/route.js +1 -1
  19. package/.next/server/app/api/capabilities/route_client-reference-manifest.js +1 -1
  20. package/.next/server/app/api/daily-summary/route.js +1 -1
  21. package/.next/server/app/api/daily-summary/route.js.nft.json +1 -1
  22. package/.next/server/app/api/daily-summary/route_client-reference-manifest.js +1 -1
  23. package/.next/server/app/api/daily-summary/status/route.js +1 -1
  24. package/.next/server/app/api/daily-summary/status/route.js.nft.json +1 -1
  25. package/.next/server/app/api/daily-summary/status/route_client-reference-manifest.js +1 -1
  26. package/.next/server/app/api/external-apps/[id]/health/route_client-reference-manifest.js +1 -1
  27. package/.next/server/app/api/external-apps/[id]/route_client-reference-manifest.js +1 -1
  28. package/.next/server/app/api/external-apps/route_client-reference-manifest.js +1 -1
  29. package/.next/server/app/api/fs/browse/route_client-reference-manifest.js +1 -1
  30. package/.next/server/app/api/fs/recent-paths/route_client-reference-manifest.js +1 -1
  31. package/.next/server/app/api/hooks/agent-event/route.js +1 -103
  32. package/.next/server/app/api/hooks/agent-event/route.js.nft.json +1 -1
  33. package/.next/server/app/api/hooks/agent-event/route_client-reference-manifest.js +1 -1
  34. package/.next/server/app/api/hooks/claude-done/route.js +2 -2
  35. package/.next/server/app/api/hooks/claude-done/route.js.nft.json +1 -1
  36. package/.next/server/app/api/hooks/claude-done/route_client-reference-manifest.js +1 -1
  37. package/.next/server/app/api/hooks/permission-request/route.js +1 -1
  38. package/.next/server/app/api/hooks/permission-request/route.js.nft.json +1 -1
  39. package/.next/server/app/api/hooks/permission-request/route_client-reference-manifest.js +1 -1
  40. package/.next/server/app/api/metrics/vibe/route_client-reference-manifest.js +1 -1
  41. package/.next/server/app/api/ollama/models/route_client-reference-manifest.js +1 -1
  42. package/.next/server/app/api/push/escalation/route.js +1 -1
  43. package/.next/server/app/api/push/escalation/route.js.nft.json +1 -1
  44. package/.next/server/app/api/push/escalation/route_client-reference-manifest.js +1 -1
  45. package/.next/server/app/api/push/subscriptions/route.js +1 -1
  46. package/.next/server/app/api/push/subscriptions/route_client-reference-manifest.js +1 -1
  47. package/.next/server/app/api/push/vapid/route.js +1 -1
  48. package/.next/server/app/api/push/vapid/route.js.nft.json +1 -1
  49. package/.next/server/app/api/push/vapid/route_client-reference-manifest.js +1 -1
  50. package/.next/server/app/api/relays/[relayId]/cancel/route.js +1 -1
  51. package/.next/server/app/api/relays/[relayId]/cancel/route.js.nft.json +1 -1
  52. package/.next/server/app/api/relays/[relayId]/cancel/route_client-reference-manifest.js +1 -1
  53. package/.next/server/app/api/relays/[relayId]/resolve/route.js +1 -1
  54. package/.next/server/app/api/relays/[relayId]/resolve/route.js.nft.json +1 -1
  55. package/.next/server/app/api/relays/[relayId]/resolve/route_client-reference-manifest.js +1 -1
  56. package/.next/server/app/api/relays/[relayId]/route.js +1 -1
  57. package/.next/server/app/api/relays/[relayId]/route_client-reference-manifest.js +1 -1
  58. package/.next/server/app/api/relays/route.js +1 -1
  59. package/.next/server/app/api/relays/route.js.nft.json +1 -1
  60. package/.next/server/app/api/relays/route_client-reference-manifest.js +1 -1
  61. package/.next/server/app/api/remote/pair/route.js +2 -2
  62. package/.next/server/app/api/remote/pair/route_client-reference-manifest.js +1 -1
  63. package/.next/server/app/api/repositories/[id]/role-defaults/route.js +1 -0
  64. package/.next/server/app/api/repositories/[id]/role-defaults/route.js.nft.json +1 -0
  65. package/.next/server/app/api/repositories/[id]/role-defaults/route_client-reference-manifest.js +1 -0
  66. package/.next/server/app/api/repositories/[id]/route_client-reference-manifest.js +1 -1
  67. package/.next/server/app/api/repositories/clone/[jobId]/route.js +1 -1
  68. package/.next/server/app/api/repositories/clone/[jobId]/route.js.nft.json +1 -1
  69. package/.next/server/app/api/repositories/clone/[jobId]/route_client-reference-manifest.js +1 -1
  70. package/.next/server/app/api/repositories/clone/route.js +1 -1
  71. package/.next/server/app/api/repositories/clone/route.js.nft.json +1 -1
  72. package/.next/server/app/api/repositories/clone/route_client-reference-manifest.js +1 -1
  73. package/.next/server/app/api/repositories/excluded/route_client-reference-manifest.js +1 -1
  74. package/.next/server/app/api/repositories/restore/route.js +1 -1
  75. package/.next/server/app/api/repositories/restore/route.js.nft.json +1 -1
  76. package/.next/server/app/api/repositories/restore/route_client-reference-manifest.js +1 -1
  77. package/.next/server/app/api/repositories/route.js +1 -1
  78. package/.next/server/app/api/repositories/route.js.nft.json +1 -1
  79. package/.next/server/app/api/repositories/route_client-reference-manifest.js +1 -1
  80. package/.next/server/app/api/repositories/scan/route.js +1 -1
  81. package/.next/server/app/api/repositories/scan/route.js.nft.json +1 -1
  82. package/.next/server/app/api/repositories/scan/route_client-reference-manifest.js +1 -1
  83. package/.next/server/app/api/repositories/sync/route.js +1 -1
  84. package/.next/server/app/api/repositories/sync/route.js.nft.json +1 -1
  85. package/.next/server/app/api/repositories/sync/route_client-reference-manifest.js +1 -1
  86. package/.next/server/app/api/repositories/validate-path/route.js +1 -1
  87. package/.next/server/app/api/repositories/validate-path/route_client-reference-manifest.js +1 -1
  88. package/.next/server/app/api/roles/[id]/route.js +1 -0
  89. package/.next/server/app/api/roles/[id]/route.js.nft.json +1 -0
  90. package/.next/server/app/api/roles/[id]/route_client-reference-manifest.js +1 -0
  91. package/.next/server/app/api/roles/route.js +1 -0
  92. package/.next/server/app/api/roles/route.js.nft.json +1 -0
  93. package/.next/server/app/api/roles/route_client-reference-manifest.js +1 -0
  94. package/.next/server/app/api/settings/agent-role-defaults/route.js +1 -0
  95. package/.next/server/app/api/settings/agent-role-defaults/route.js.nft.json +1 -0
  96. package/.next/server/app/api/settings/agent-role-defaults/route_client-reference-manifest.js +1 -0
  97. package/.next/server/app/api/settings/default-agents/route.js +1 -1
  98. package/.next/server/app/api/settings/default-agents/route.js.nft.json +1 -1
  99. package/.next/server/app/api/settings/default-agents/route_client-reference-manifest.js +1 -1
  100. package/.next/server/app/api/settings/default-surface-mode/route_client-reference-manifest.js +1 -1
  101. package/.next/server/app/api/sidebar/group-order/route_client-reference-manifest.js +1 -1
  102. package/.next/server/app/api/skills/[id]/route_client-reference-manifest.js +1 -1
  103. package/.next/server/app/api/skills/installations/route_client-reference-manifest.js +1 -1
  104. package/.next/server/app/api/skills/operations/route_client-reference-manifest.js +1 -1
  105. package/.next/server/app/api/skills/reindex/route_client-reference-manifest.js +1 -1
  106. package/.next/server/app/api/skills/route_client-reference-manifest.js +1 -1
  107. package/.next/server/app/api/slash-commands/route.js +1 -1
  108. package/.next/server/app/api/slash-commands/route_client-reference-manifest.js +1 -1
  109. package/.next/server/app/api/tasks/[taskId]/cancel/route_client-reference-manifest.js +1 -1
  110. package/.next/server/app/api/tasks/[taskId]/route.js +1 -1
  111. package/.next/server/app/api/tasks/[taskId]/route_client-reference-manifest.js +1 -1
  112. package/.next/server/app/api/templates/[id]/route_client-reference-manifest.js +1 -1
  113. package/.next/server/app/api/templates/route_client-reference-manifest.js +1 -1
  114. package/.next/server/app/api/verification/runs/[runId]/route.js +1 -1
  115. package/.next/server/app/api/verification/runs/[runId]/route_client-reference-manifest.js +1 -1
  116. package/.next/server/app/api/verification/runs/route.js +1 -1
  117. package/.next/server/app/api/verification/runs/route_client-reference-manifest.js +1 -1
  118. package/.next/server/app/api/worktrees/[id]/auto-yes/route.js +1 -1
  119. package/.next/server/app/api/worktrees/[id]/auto-yes/route.js.nft.json +1 -1
  120. package/.next/server/app/api/worktrees/[id]/auto-yes/route_client-reference-manifest.js +1 -1
  121. package/.next/server/app/api/worktrees/[id]/capture/route.js +1 -1
  122. package/.next/server/app/api/worktrees/[id]/capture/route.js.nft.json +1 -1
  123. package/.next/server/app/api/worktrees/[id]/capture/route_client-reference-manifest.js +1 -1
  124. package/.next/server/app/api/worktrees/[id]/clear-composer/route.js +1 -1
  125. package/.next/server/app/api/worktrees/[id]/clear-composer/route.js.nft.json +1 -1
  126. package/.next/server/app/api/worktrees/[id]/clear-composer/route_client-reference-manifest.js +1 -1
  127. package/.next/server/app/api/worktrees/[id]/cli-reference/route.js +1 -1
  128. package/.next/server/app/api/worktrees/[id]/cli-reference/route_client-reference-manifest.js +1 -1
  129. package/.next/server/app/api/worktrees/[id]/cli-tool/route.js +1 -1
  130. package/.next/server/app/api/worktrees/[id]/cli-tool/route_client-reference-manifest.js +1 -1
  131. package/.next/server/app/api/worktrees/[id]/cmate/schedules/route.js +3 -3
  132. package/.next/server/app/api/worktrees/[id]/cmate/schedules/route.js.nft.json +1 -1
  133. package/.next/server/app/api/worktrees/[id]/cmate/schedules/route_client-reference-manifest.js +1 -1
  134. package/.next/server/app/api/worktrees/[id]/current-output/route.js +1 -1
  135. package/.next/server/app/api/worktrees/[id]/current-output/route.js.nft.json +1 -1
  136. package/.next/server/app/api/worktrees/[id]/current-output/route_client-reference-manifest.js +1 -1
  137. package/.next/server/app/api/worktrees/[id]/direct-input/route.js +1 -1
  138. package/.next/server/app/api/worktrees/[id]/direct-input/route.js.nft.json +1 -1
  139. package/.next/server/app/api/worktrees/[id]/direct-input/route_client-reference-manifest.js +1 -1
  140. package/.next/server/app/api/worktrees/[id]/env/route.js +1 -1
  141. package/.next/server/app/api/worktrees/[id]/env/route_client-reference-manifest.js +1 -1
  142. package/.next/server/app/api/worktrees/[id]/execution-logs/[logId]/route.js +1 -1
  143. package/.next/server/app/api/worktrees/[id]/execution-logs/[logId]/route_client-reference-manifest.js +1 -1
  144. package/.next/server/app/api/worktrees/[id]/execution-logs/route.js +2 -2
  145. package/.next/server/app/api/worktrees/[id]/execution-logs/route.js.nft.json +1 -1
  146. package/.next/server/app/api/worktrees/[id]/execution-logs/route_client-reference-manifest.js +1 -1
  147. package/.next/server/app/api/worktrees/[id]/files/[...path]/route_client-reference-manifest.js +1 -1
  148. package/.next/server/app/api/worktrees/[id]/git/branch/create/route.js +1 -1
  149. package/.next/server/app/api/worktrees/[id]/git/branch/create/route_client-reference-manifest.js +1 -1
  150. package/.next/server/app/api/worktrees/[id]/git/branch/delete/route.js +1 -1
  151. package/.next/server/app/api/worktrees/[id]/git/branch/delete/route_client-reference-manifest.js +1 -1
  152. package/.next/server/app/api/worktrees/[id]/git/branches/route.js +1 -1
  153. package/.next/server/app/api/worktrees/[id]/git/branches/route_client-reference-manifest.js +1 -1
  154. package/.next/server/app/api/worktrees/[id]/git/checkout/route.js +1 -1
  155. package/.next/server/app/api/worktrees/[id]/git/checkout/route_client-reference-manifest.js +1 -1
  156. package/.next/server/app/api/worktrees/[id]/git/commit/route.js +1 -1
  157. package/.next/server/app/api/worktrees/[id]/git/commit/route_client-reference-manifest.js +1 -1
  158. package/.next/server/app/api/worktrees/[id]/git/diff/route.js +1 -1
  159. package/.next/server/app/api/worktrees/[id]/git/diff/route_client-reference-manifest.js +1 -1
  160. package/.next/server/app/api/worktrees/[id]/git/fetch/route.js +1 -1
  161. package/.next/server/app/api/worktrees/[id]/git/fetch/route_client-reference-manifest.js +1 -1
  162. package/.next/server/app/api/worktrees/[id]/git/log/route.js +1 -1
  163. package/.next/server/app/api/worktrees/[id]/git/log/route_client-reference-manifest.js +1 -1
  164. package/.next/server/app/api/worktrees/[id]/git/pull/route.js +1 -1
  165. package/.next/server/app/api/worktrees/[id]/git/pull/route_client-reference-manifest.js +1 -1
  166. package/.next/server/app/api/worktrees/[id]/git/push/route.js +1 -1
  167. package/.next/server/app/api/worktrees/[id]/git/push/route_client-reference-manifest.js +1 -1
  168. package/.next/server/app/api/worktrees/[id]/git/reset/route.js +1 -1
  169. package/.next/server/app/api/worktrees/[id]/git/reset/route_client-reference-manifest.js +1 -1
  170. package/.next/server/app/api/worktrees/[id]/git/revert/route.js +1 -1
  171. package/.next/server/app/api/worktrees/[id]/git/revert/route_client-reference-manifest.js +1 -1
  172. package/.next/server/app/api/worktrees/[id]/git/show/[commitHash]/route.js +1 -1
  173. package/.next/server/app/api/worktrees/[id]/git/show/[commitHash]/route_client-reference-manifest.js +1 -1
  174. package/.next/server/app/api/worktrees/[id]/git/stage/route.js +1 -1
  175. package/.next/server/app/api/worktrees/[id]/git/stage/route_client-reference-manifest.js +1 -1
  176. package/.next/server/app/api/worktrees/[id]/git/staged/route.js +1 -1
  177. package/.next/server/app/api/worktrees/[id]/git/staged/route_client-reference-manifest.js +1 -1
  178. package/.next/server/app/api/worktrees/[id]/git/stash/[index]/route.js +1 -1
  179. package/.next/server/app/api/worktrees/[id]/git/stash/[index]/route_client-reference-manifest.js +1 -1
  180. package/.next/server/app/api/worktrees/[id]/git/stash/apply/route.js +1 -1
  181. package/.next/server/app/api/worktrees/[id]/git/stash/apply/route_client-reference-manifest.js +1 -1
  182. package/.next/server/app/api/worktrees/[id]/git/stash/pop/route.js +1 -1
  183. package/.next/server/app/api/worktrees/[id]/git/stash/pop/route_client-reference-manifest.js +1 -1
  184. package/.next/server/app/api/worktrees/[id]/git/stash/push/route.js +1 -1
  185. package/.next/server/app/api/worktrees/[id]/git/stash/push/route_client-reference-manifest.js +1 -1
  186. package/.next/server/app/api/worktrees/[id]/git/stash/route.js +1 -1
  187. package/.next/server/app/api/worktrees/[id]/git/stash/route_client-reference-manifest.js +1 -1
  188. package/.next/server/app/api/worktrees/[id]/git/status/route.js +1 -1
  189. package/.next/server/app/api/worktrees/[id]/git/status/route_client-reference-manifest.js +1 -1
  190. package/.next/server/app/api/worktrees/[id]/git/unstage/route.js +1 -1
  191. package/.next/server/app/api/worktrees/[id]/git/unstage/route_client-reference-manifest.js +1 -1
  192. package/.next/server/app/api/worktrees/[id]/git/working-diff/route.js +1 -1
  193. package/.next/server/app/api/worktrees/[id]/git/working-diff/route_client-reference-manifest.js +1 -1
  194. package/.next/server/app/api/worktrees/[id]/instances/notes/route.js +1 -1
  195. package/.next/server/app/api/worktrees/[id]/instances/notes/route_client-reference-manifest.js +1 -1
  196. package/.next/server/app/api/worktrees/[id]/instances/opencode/route.js +1 -1
  197. package/.next/server/app/api/worktrees/[id]/instances/opencode/route.js.nft.json +1 -1
  198. package/.next/server/app/api/worktrees/[id]/instances/opencode/route_client-reference-manifest.js +1 -1
  199. package/.next/server/app/api/worktrees/[id]/instances/roles/route.js +1 -0
  200. package/.next/server/app/api/worktrees/[id]/instances/roles/route.js.nft.json +1 -0
  201. package/.next/server/app/api/worktrees/[id]/instances/roles/route_client-reference-manifest.js +1 -0
  202. package/.next/server/app/api/worktrees/[id]/instances/roles/settle/route.js +1 -0
  203. package/.next/server/app/api/worktrees/[id]/instances/roles/settle/route.js.nft.json +1 -0
  204. package/.next/server/app/api/worktrees/[id]/instances/roles/settle/route_client-reference-manifest.js +1 -0
  205. package/.next/server/app/api/worktrees/[id]/interrupt/route.js +1 -1
  206. package/.next/server/app/api/worktrees/[id]/interrupt/route.js.nft.json +1 -1
  207. package/.next/server/app/api/worktrees/[id]/interrupt/route_client-reference-manifest.js +1 -1
  208. package/.next/server/app/api/worktrees/[id]/kill-session/route.js +2 -2
  209. package/.next/server/app/api/worktrees/[id]/kill-session/route.js.nft.json +1 -1
  210. package/.next/server/app/api/worktrees/[id]/kill-session/route_client-reference-manifest.js +1 -1
  211. package/.next/server/app/api/worktrees/[id]/logs/[filename]/route_client-reference-manifest.js +1 -1
  212. package/.next/server/app/api/worktrees/[id]/logs/route_client-reference-manifest.js +1 -1
  213. package/.next/server/app/api/worktrees/[id]/marp-render/route.js +1 -1
  214. package/.next/server/app/api/worktrees/[id]/marp-render/route_client-reference-manifest.js +1 -1
  215. package/.next/server/app/api/worktrees/[id]/memos/[memoId]/route.js +1 -1
  216. package/.next/server/app/api/worktrees/[id]/memos/[memoId]/route_client-reference-manifest.js +1 -1
  217. package/.next/server/app/api/worktrees/[id]/memos/route.js +1 -1
  218. package/.next/server/app/api/worktrees/[id]/memos/route_client-reference-manifest.js +1 -1
  219. package/.next/server/app/api/worktrees/[id]/messages/route.js +1 -1
  220. package/.next/server/app/api/worktrees/[id]/messages/route_client-reference-manifest.js +1 -1
  221. package/.next/server/app/api/worktrees/[id]/opencode/diff/route_client-reference-manifest.js +1 -1
  222. package/.next/server/app/api/worktrees/[id]/opencode/session/route.js +1 -1
  223. package/.next/server/app/api/worktrees/[id]/opencode/session/route.js.nft.json +1 -1
  224. package/.next/server/app/api/worktrees/[id]/opencode/session/route_client-reference-manifest.js +1 -1
  225. package/.next/server/app/api/worktrees/[id]/opencode/share/route.js +1 -1
  226. package/.next/server/app/api/worktrees/[id]/opencode/share/route.js.nft.json +1 -1
  227. package/.next/server/app/api/worktrees/[id]/opencode/share/route_client-reference-manifest.js +1 -1
  228. package/.next/server/app/api/worktrees/[id]/prompt-response/route.js +1 -1
  229. package/.next/server/app/api/worktrees/[id]/prompt-response/route.js.nft.json +1 -1
  230. package/.next/server/app/api/worktrees/[id]/prompt-response/route_client-reference-manifest.js +1 -1
  231. package/.next/server/app/api/worktrees/[id]/prompt-response/strict/route.js +1 -1
  232. package/.next/server/app/api/worktrees/[id]/prompt-response/strict/route.js.nft.json +1 -1
  233. package/.next/server/app/api/worktrees/[id]/prompt-response/strict/route_client-reference-manifest.js +1 -1
  234. package/.next/server/app/api/worktrees/[id]/resolve-target/route.js +1 -1
  235. package/.next/server/app/api/worktrees/[id]/resolve-target/route_client-reference-manifest.js +1 -1
  236. package/.next/server/app/api/worktrees/[id]/respond/route.js +1 -1
  237. package/.next/server/app/api/worktrees/[id]/respond/route.js.nft.json +1 -1
  238. package/.next/server/app/api/worktrees/[id]/respond/route_client-reference-manifest.js +1 -1
  239. package/.next/server/app/api/worktrees/[id]/route.js +1 -1
  240. package/.next/server/app/api/worktrees/[id]/route.js.nft.json +1 -1
  241. package/.next/server/app/api/worktrees/[id]/route_client-reference-manifest.js +1 -1
  242. package/.next/server/app/api/worktrees/[id]/schedules/[scheduleId]/route.js +2 -2
  243. package/.next/server/app/api/worktrees/[id]/schedules/[scheduleId]/route.js.nft.json +1 -1
  244. package/.next/server/app/api/worktrees/[id]/schedules/[scheduleId]/route_client-reference-manifest.js +1 -1
  245. package/.next/server/app/api/worktrees/[id]/schedules/active/route.js +2 -2
  246. package/.next/server/app/api/worktrees/[id]/schedules/active/route.js.nft.json +1 -1
  247. package/.next/server/app/api/worktrees/[id]/schedules/active/route_client-reference-manifest.js +1 -1
  248. package/.next/server/app/api/worktrees/[id]/schedules/route.js +2 -2
  249. package/.next/server/app/api/worktrees/[id]/schedules/route.js.nft.json +1 -1
  250. package/.next/server/app/api/worktrees/[id]/schedules/route_client-reference-manifest.js +1 -1
  251. package/.next/server/app/api/worktrees/[id]/search/route_client-reference-manifest.js +1 -1
  252. package/.next/server/app/api/worktrees/[id]/send/route.js +1 -1
  253. package/.next/server/app/api/worktrees/[id]/send/route.js.nft.json +1 -1
  254. package/.next/server/app/api/worktrees/[id]/send/route_client-reference-manifest.js +1 -1
  255. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/git-workflow/route.js +3 -104
  256. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/git-workflow/route.js.nft.json +1 -1
  257. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/git-workflow/route_client-reference-manifest.js +1 -1
  258. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/install/route.js +1 -1
  259. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/install/route.js.nft.json +1 -1
  260. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/install/route_client-reference-manifest.js +1 -1
  261. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/plan/route.js +1 -1
  262. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/plan/route.js.nft.json +1 -1
  263. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/plan/route_client-reference-manifest.js +1 -1
  264. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/uninstall/route.js +1 -1
  265. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/uninstall/route.js.nft.json +1 -1
  266. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/uninstall/route_client-reference-manifest.js +1 -1
  267. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/uninstall-plan/route.js +1 -1
  268. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/uninstall-plan/route.js.nft.json +1 -1
  269. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/uninstall-plan/route_client-reference-manifest.js +1 -1
  270. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/update/route.js +1 -1
  271. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/update/route.js.nft.json +1 -1
  272. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/update/route_client-reference-manifest.js +1 -1
  273. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/update-plan/route.js +1 -1
  274. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/update-plan/route.js.nft.json +1 -1
  275. package/.next/server/app/api/worktrees/[id]/skills/[skillId]/update-plan/route_client-reference-manifest.js +1 -1
  276. package/.next/server/app/api/worktrees/[id]/skills/route.js +1 -1
  277. package/.next/server/app/api/worktrees/[id]/skills/route_client-reference-manifest.js +1 -1
  278. package/.next/server/app/api/worktrees/[id]/slash-commands/route.js +1 -1
  279. package/.next/server/app/api/worktrees/[id]/slash-commands/route.js.nft.json +1 -1
  280. package/.next/server/app/api/worktrees/[id]/slash-commands/route_client-reference-manifest.js +1 -1
  281. package/.next/server/app/api/worktrees/[id]/special-keys/route.js +1 -1
  282. package/.next/server/app/api/worktrees/[id]/special-keys/route.js.nft.json +1 -1
  283. package/.next/server/app/api/worktrees/[id]/special-keys/route_client-reference-manifest.js +1 -1
  284. package/.next/server/app/api/worktrees/[id]/tasks/route.js +2 -2
  285. package/.next/server/app/api/worktrees/[id]/tasks/route.js.nft.json +1 -1
  286. package/.next/server/app/api/worktrees/[id]/tasks/route_client-reference-manifest.js +1 -1
  287. package/.next/server/app/api/worktrees/[id]/terminal/route.js +1 -103
  288. package/.next/server/app/api/worktrees/[id]/terminal/route.js.nft.json +1 -1
  289. package/.next/server/app/api/worktrees/[id]/terminal/route_client-reference-manifest.js +1 -1
  290. package/.next/server/app/api/worktrees/[id]/timers/history/route.js +1 -1
  291. package/.next/server/app/api/worktrees/[id]/timers/history/route_client-reference-manifest.js +1 -1
  292. package/.next/server/app/api/worktrees/[id]/timers/route.js +1 -1
  293. package/.next/server/app/api/worktrees/[id]/timers/route.js.nft.json +1 -1
  294. package/.next/server/app/api/worktrees/[id]/timers/route_client-reference-manifest.js +1 -1
  295. package/.next/server/app/api/worktrees/[id]/todos/[todoId]/route_client-reference-manifest.js +1 -1
  296. package/.next/server/app/api/worktrees/[id]/todos/route_client-reference-manifest.js +1 -1
  297. package/.next/server/app/api/worktrees/[id]/tree/[...path]/route_client-reference-manifest.js +1 -1
  298. package/.next/server/app/api/worktrees/[id]/tree/route_client-reference-manifest.js +1 -1
  299. package/.next/server/app/api/worktrees/[id]/upload/[...path]/route_client-reference-manifest.js +1 -1
  300. package/.next/server/app/api/worktrees/[id]/verify/config/route.js +1 -1
  301. package/.next/server/app/api/worktrees/[id]/verify/config/route_client-reference-manifest.js +1 -1
  302. package/.next/server/app/api/worktrees/[id]/verify/route.js +1 -1
  303. package/.next/server/app/api/worktrees/[id]/verify/route.js.nft.json +1 -1
  304. package/.next/server/app/api/worktrees/[id]/verify/route_client-reference-manifest.js +1 -1
  305. package/.next/server/app/api/worktrees/[id]/verify/runs/[runId]/cancel/route.js +1 -1
  306. package/.next/server/app/api/worktrees/[id]/verify/runs/[runId]/cancel/route.js.nft.json +1 -1
  307. package/.next/server/app/api/worktrees/[id]/verify/runs/[runId]/cancel/route_client-reference-manifest.js +1 -1
  308. package/.next/server/app/api/worktrees/[id]/verify/runs/[runId]/route.js +1 -1
  309. package/.next/server/app/api/worktrees/[id]/verify/runs/[runId]/route_client-reference-manifest.js +1 -1
  310. package/.next/server/app/api/worktrees/[id]/verify/runs/route.js +1 -1
  311. package/.next/server/app/api/worktrees/[id]/verify/runs/route_client-reference-manifest.js +1 -1
  312. package/.next/server/app/api/worktrees/[id]/viewed/route.js +1 -1
  313. package/.next/server/app/api/worktrees/[id]/viewed/route_client-reference-manifest.js +1 -1
  314. package/.next/server/app/api/worktrees/apply-default-agents/route_client-reference-manifest.js +1 -1
  315. package/.next/server/app/api/worktrees/route.js +1 -1
  316. package/.next/server/app/api/worktrees/route.js.nft.json +1 -1
  317. package/.next/server/app/api/worktrees/route_client-reference-manifest.js +1 -1
  318. package/.next/server/app/login/page_client-reference-manifest.js +1 -1
  319. package/.next/server/app/manifest.webmanifest/route_client-reference-manifest.js +1 -1
  320. package/.next/server/app/more/page.js +1 -1
  321. package/.next/server/app/more/page_client-reference-manifest.js +1 -1
  322. package/.next/server/app/offline/page_client-reference-manifest.js +1 -1
  323. package/.next/server/app/page_client-reference-manifest.js +1 -1
  324. package/.next/server/app/proxy/[...path]/route_client-reference-manifest.js +1 -1
  325. package/.next/server/app/repositories/page.js +2 -2
  326. package/.next/server/app/repositories/page_client-reference-manifest.js +1 -1
  327. package/.next/server/app/review/page.js +1 -1
  328. package/.next/server/app/review/page_client-reference-manifest.js +1 -1
  329. package/.next/server/app/sessions/page.js +1 -1
  330. package/.next/server/app/sessions/page_client-reference-manifest.js +1 -1
  331. package/.next/server/app/skills/[skillId]/page_client-reference-manifest.js +1 -1
  332. package/.next/server/app/skills/installed/page_client-reference-manifest.js +1 -1
  333. package/.next/server/app/skills/page_client-reference-manifest.js +1 -1
  334. package/.next/server/app/worktrees/[id]/files/[...path]/page_client-reference-manifest.js +1 -1
  335. package/.next/server/app/worktrees/[id]/page.js +11 -11
  336. package/.next/server/app/worktrees/[id]/page_client-reference-manifest.js +1 -1
  337. package/.next/server/app/worktrees/[id]/terminal/page_client-reference-manifest.js +1 -1
  338. package/.next/server/app-paths-manifest.json +19 -13
  339. package/.next/server/chunks/1184.js +5 -0
  340. package/.next/server/chunks/1501.js +5 -5
  341. package/.next/server/chunks/1656.js +2 -2
  342. package/.next/server/chunks/1957.js +2 -2
  343. package/.next/server/chunks/1990.js +103 -0
  344. package/.next/server/chunks/2119.js +1 -1
  345. package/.next/server/chunks/2404.js +1 -1
  346. package/.next/server/chunks/2445.js +1 -1
  347. package/.next/server/chunks/2819.js +1 -0
  348. package/.next/server/chunks/2897.js +1 -1
  349. package/.next/server/chunks/3042.js +2 -0
  350. package/.next/server/chunks/3241.js +1 -1
  351. package/.next/server/chunks/3294.js +3 -0
  352. package/.next/server/chunks/3417.js +1 -1
  353. package/.next/server/chunks/3480.js +1 -1
  354. package/.next/server/chunks/3505.js +2 -6
  355. package/.next/server/chunks/3543.js +1 -1
  356. package/.next/server/chunks/3801.js +2 -2
  357. package/.next/server/chunks/3945.js +1 -1
  358. package/.next/server/chunks/4207.js +1 -1
  359. package/.next/server/chunks/454.js +1 -0
  360. package/.next/server/chunks/4645.js +1 -0
  361. package/.next/server/chunks/4911.js +1 -1
  362. package/.next/server/chunks/5350.js +6 -2
  363. package/.next/server/chunks/5354.js +1 -1
  364. package/.next/server/chunks/5571.js +1 -1
  365. package/.next/server/chunks/6009.js +12 -0
  366. package/.next/server/chunks/6130.js +1 -1
  367. package/.next/server/chunks/6285.js +1 -1
  368. package/.next/server/chunks/6401.js +1 -1
  369. package/.next/server/chunks/6486.js +2 -2
  370. package/.next/server/chunks/6569.js +1 -0
  371. package/.next/server/chunks/6781.js +1 -1
  372. package/.next/server/chunks/6793.js +4 -4
  373. package/.next/server/chunks/696.js +3 -0
  374. package/.next/server/chunks/7023.js +3 -3
  375. package/.next/server/chunks/{9702.js → 7083.js} +1 -1
  376. package/.next/server/chunks/741.js +1 -0
  377. package/.next/server/chunks/7662.js +1 -0
  378. package/.next/server/chunks/7905.js +1 -1
  379. package/.next/server/chunks/8143.js +33 -0
  380. package/.next/server/chunks/8581.js +6 -6
  381. package/.next/server/chunks/8728.js +2 -2
  382. package/.next/server/chunks/8782.js +1 -1
  383. package/.next/server/chunks/8807.js +97 -10
  384. package/.next/server/chunks/8918.js +3 -105
  385. package/.next/server/chunks/8955.js +1 -0
  386. package/.next/server/chunks/923.js +1 -0
  387. package/.next/server/chunks/9390.js +2 -2
  388. package/.next/server/chunks/9627.js +5 -5
  389. package/.next/server/chunks/973.js +1 -0
  390. package/.next/server/chunks/9731.js +3 -3
  391. package/.next/server/middleware-build-manifest.js +1 -1
  392. package/.next/server/middleware-manifest.json +5 -5
  393. package/.next/server/middleware-react-loadable-manifest.js +1 -1
  394. package/.next/server/pages/500.html +1 -1
  395. package/.next/server/server-reference-manifest.json +1 -1
  396. package/.next/static/chunks/2314-2c9d587a27e8f731.js +1 -0
  397. package/.next/static/chunks/2407-ee881c99e218975b.js +1 -0
  398. package/.next/static/chunks/3931-24d7e245a93feb25.js +1 -0
  399. package/.next/static/chunks/4548-9afa02fd18afa6c7.js +1 -0
  400. package/.next/static/chunks/{5794-7975b8e51e731b19.js → 5794-38b3b504b3d97e04.js} +1 -1
  401. package/.next/static/chunks/{6966-d8dc6032410ffaba.js → 6966-dbfa4a43397f8c6d.js} +1 -1
  402. package/.next/static/chunks/7090-28e83f5a0efdb3b4.js +1 -0
  403. package/.next/static/chunks/7229.016d007c467a3600.js +1 -0
  404. package/.next/static/chunks/{8407-35bbfc84793d7004.js → 8407-dd6a8062fc449899.js} +1 -1
  405. package/.next/static/chunks/app/api/agents/update/route-476063c3571b81dd.js +1 -0
  406. package/.next/static/chunks/app/api/agents/versions/route-476063c3571b81dd.js +1 -0
  407. package/.next/static/chunks/app/api/app/release-notes/route-476063c3571b81dd.js +1 -0
  408. package/.next/static/chunks/app/api/app/update/route-476063c3571b81dd.js +1 -0
  409. package/.next/static/chunks/app/api/app/update-check/route-476063c3571b81dd.js +1 -0
  410. package/.next/static/chunks/app/api/auth/login/route-476063c3571b81dd.js +1 -0
  411. package/.next/static/chunks/app/api/auth/logout/route-476063c3571b81dd.js +1 -0
  412. package/.next/static/chunks/app/api/auth/status/route-476063c3571b81dd.js +1 -0
  413. package/.next/static/chunks/app/api/capabilities/route-476063c3571b81dd.js +1 -0
  414. package/.next/static/chunks/app/api/daily-summary/route-476063c3571b81dd.js +1 -0
  415. package/.next/static/chunks/app/api/daily-summary/status/route-476063c3571b81dd.js +1 -0
  416. package/.next/static/chunks/app/api/external-apps/[id]/health/route-476063c3571b81dd.js +1 -0
  417. package/.next/static/chunks/app/api/external-apps/[id]/route-476063c3571b81dd.js +1 -0
  418. package/.next/static/chunks/app/api/external-apps/route-476063c3571b81dd.js +1 -0
  419. package/.next/static/chunks/app/api/fs/browse/route-476063c3571b81dd.js +1 -0
  420. package/.next/static/chunks/app/api/fs/recent-paths/route-476063c3571b81dd.js +1 -0
  421. package/.next/static/chunks/app/api/hooks/agent-event/route-476063c3571b81dd.js +1 -0
  422. package/.next/static/chunks/app/api/hooks/claude-done/route-476063c3571b81dd.js +1 -0
  423. package/.next/static/chunks/app/api/hooks/permission-request/route-476063c3571b81dd.js +1 -0
  424. package/.next/static/chunks/app/api/metrics/vibe/route-476063c3571b81dd.js +1 -0
  425. package/.next/static/chunks/app/api/ollama/models/route-476063c3571b81dd.js +1 -0
  426. package/.next/static/chunks/app/api/push/escalation/route-476063c3571b81dd.js +1 -0
  427. package/.next/static/chunks/app/api/push/subscriptions/route-476063c3571b81dd.js +1 -0
  428. package/.next/static/chunks/app/api/push/vapid/route-476063c3571b81dd.js +1 -0
  429. package/.next/static/chunks/app/api/relays/[relayId]/cancel/route-476063c3571b81dd.js +1 -0
  430. package/.next/static/chunks/app/api/relays/[relayId]/resolve/route-476063c3571b81dd.js +1 -0
  431. package/.next/static/chunks/app/api/relays/[relayId]/route-476063c3571b81dd.js +1 -0
  432. package/.next/static/chunks/app/api/relays/route-476063c3571b81dd.js +1 -0
  433. package/.next/static/chunks/app/api/remote/pair/route-476063c3571b81dd.js +1 -0
  434. package/.next/static/chunks/app/api/repositories/[id]/role-defaults/route-476063c3571b81dd.js +1 -0
  435. package/.next/static/chunks/app/api/repositories/[id]/route-476063c3571b81dd.js +1 -0
  436. package/.next/static/chunks/app/api/repositories/clone/[jobId]/route-476063c3571b81dd.js +1 -0
  437. package/.next/static/chunks/app/api/repositories/clone/route-476063c3571b81dd.js +1 -0
  438. package/.next/static/chunks/app/api/repositories/excluded/route-476063c3571b81dd.js +1 -0
  439. package/.next/static/chunks/app/api/repositories/restore/route-476063c3571b81dd.js +1 -0
  440. package/.next/static/chunks/app/api/repositories/route-476063c3571b81dd.js +1 -0
  441. package/.next/static/chunks/app/api/repositories/scan/route-476063c3571b81dd.js +1 -0
  442. package/.next/static/chunks/app/api/repositories/sync/route-476063c3571b81dd.js +1 -0
  443. package/.next/static/chunks/app/api/repositories/validate-path/route-476063c3571b81dd.js +1 -0
  444. package/.next/static/chunks/app/api/roles/[id]/route-476063c3571b81dd.js +1 -0
  445. package/.next/static/chunks/app/api/roles/route-476063c3571b81dd.js +1 -0
  446. package/.next/static/chunks/app/api/settings/agent-role-defaults/route-476063c3571b81dd.js +1 -0
  447. package/.next/static/chunks/app/api/settings/default-agents/route-476063c3571b81dd.js +1 -0
  448. package/.next/static/chunks/app/api/settings/default-surface-mode/route-476063c3571b81dd.js +1 -0
  449. package/.next/static/chunks/app/api/sidebar/group-order/route-476063c3571b81dd.js +1 -0
  450. package/.next/static/chunks/app/api/skills/[id]/route-476063c3571b81dd.js +1 -0
  451. package/.next/static/chunks/app/api/skills/installations/route-476063c3571b81dd.js +1 -0
  452. package/.next/static/chunks/app/api/skills/operations/route-476063c3571b81dd.js +1 -0
  453. package/.next/static/chunks/app/api/skills/reindex/route-476063c3571b81dd.js +1 -0
  454. package/.next/static/chunks/app/api/skills/route-476063c3571b81dd.js +1 -0
  455. package/.next/static/chunks/app/api/slash-commands/route-476063c3571b81dd.js +1 -0
  456. package/.next/static/chunks/app/api/tasks/[taskId]/cancel/route-476063c3571b81dd.js +1 -0
  457. package/.next/static/chunks/app/api/tasks/[taskId]/route-476063c3571b81dd.js +1 -0
  458. package/.next/static/chunks/app/api/templates/[id]/route-476063c3571b81dd.js +1 -0
  459. package/.next/static/chunks/app/api/templates/route-476063c3571b81dd.js +1 -0
  460. package/.next/static/chunks/app/api/verification/runs/[runId]/route-476063c3571b81dd.js +1 -0
  461. package/.next/static/chunks/app/api/verification/runs/route-476063c3571b81dd.js +1 -0
  462. package/.next/static/chunks/app/api/worktrees/[id]/auto-yes/route-476063c3571b81dd.js +1 -0
  463. package/.next/static/chunks/app/api/worktrees/[id]/capture/route-476063c3571b81dd.js +1 -0
  464. package/.next/static/chunks/app/api/worktrees/[id]/clear-composer/route-476063c3571b81dd.js +1 -0
  465. package/.next/static/chunks/app/api/worktrees/[id]/cli-reference/route-476063c3571b81dd.js +1 -0
  466. package/.next/static/chunks/app/api/worktrees/[id]/cli-tool/route-476063c3571b81dd.js +1 -0
  467. package/.next/static/chunks/app/api/worktrees/[id]/cmate/schedules/route-476063c3571b81dd.js +1 -0
  468. package/.next/static/chunks/app/api/worktrees/[id]/current-output/route-476063c3571b81dd.js +1 -0
  469. package/.next/static/chunks/app/api/worktrees/[id]/direct-input/route-476063c3571b81dd.js +1 -0
  470. package/.next/static/chunks/app/api/worktrees/[id]/env/route-476063c3571b81dd.js +1 -0
  471. package/.next/static/chunks/app/api/worktrees/[id]/execution-logs/[logId]/route-476063c3571b81dd.js +1 -0
  472. package/.next/static/chunks/app/api/worktrees/[id]/execution-logs/route-476063c3571b81dd.js +1 -0
  473. package/.next/static/chunks/app/api/worktrees/[id]/files/[...path]/route-476063c3571b81dd.js +1 -0
  474. package/.next/static/chunks/app/api/worktrees/[id]/git/branch/create/route-476063c3571b81dd.js +1 -0
  475. package/.next/static/chunks/app/api/worktrees/[id]/git/branch/delete/route-476063c3571b81dd.js +1 -0
  476. package/.next/static/chunks/app/api/worktrees/[id]/git/branches/route-476063c3571b81dd.js +1 -0
  477. package/.next/static/chunks/app/api/worktrees/[id]/git/checkout/route-476063c3571b81dd.js +1 -0
  478. package/.next/static/chunks/app/api/worktrees/[id]/git/commit/route-476063c3571b81dd.js +1 -0
  479. package/.next/static/chunks/app/api/worktrees/[id]/git/diff/route-476063c3571b81dd.js +1 -0
  480. package/.next/static/chunks/app/api/worktrees/[id]/git/fetch/route-476063c3571b81dd.js +1 -0
  481. package/.next/static/chunks/app/api/worktrees/[id]/git/log/route-476063c3571b81dd.js +1 -0
  482. package/.next/static/chunks/app/api/worktrees/[id]/git/pull/route-476063c3571b81dd.js +1 -0
  483. package/.next/static/chunks/app/api/worktrees/[id]/git/push/route-476063c3571b81dd.js +1 -0
  484. package/.next/static/chunks/app/api/worktrees/[id]/git/reset/route-476063c3571b81dd.js +1 -0
  485. package/.next/static/chunks/app/api/worktrees/[id]/git/revert/route-476063c3571b81dd.js +1 -0
  486. package/.next/static/chunks/app/api/worktrees/[id]/git/show/[commitHash]/route-476063c3571b81dd.js +1 -0
  487. package/.next/static/chunks/app/api/worktrees/[id]/git/stage/route-476063c3571b81dd.js +1 -0
  488. package/.next/static/chunks/app/api/worktrees/[id]/git/staged/route-476063c3571b81dd.js +1 -0
  489. package/.next/static/chunks/app/api/worktrees/[id]/git/stash/[index]/route-476063c3571b81dd.js +1 -0
  490. package/.next/static/chunks/app/api/worktrees/[id]/git/stash/apply/route-476063c3571b81dd.js +1 -0
  491. package/.next/static/chunks/app/api/worktrees/[id]/git/stash/pop/route-476063c3571b81dd.js +1 -0
  492. package/.next/static/chunks/app/api/worktrees/[id]/git/stash/push/route-476063c3571b81dd.js +1 -0
  493. package/.next/static/chunks/app/api/worktrees/[id]/git/stash/route-476063c3571b81dd.js +1 -0
  494. package/.next/static/chunks/app/api/worktrees/[id]/git/status/route-476063c3571b81dd.js +1 -0
  495. package/.next/static/chunks/app/api/worktrees/[id]/git/unstage/route-476063c3571b81dd.js +1 -0
  496. package/.next/static/chunks/app/api/worktrees/[id]/git/working-diff/route-476063c3571b81dd.js +1 -0
  497. package/.next/static/chunks/app/api/worktrees/[id]/instances/notes/route-476063c3571b81dd.js +1 -0
  498. package/.next/static/chunks/app/api/worktrees/[id]/instances/opencode/route-476063c3571b81dd.js +1 -0
  499. package/.next/static/chunks/app/api/worktrees/[id]/instances/roles/route-476063c3571b81dd.js +1 -0
  500. package/.next/static/chunks/app/api/worktrees/[id]/instances/roles/settle/route-476063c3571b81dd.js +1 -0
  501. package/.next/static/chunks/app/api/worktrees/[id]/interrupt/route-476063c3571b81dd.js +1 -0
  502. package/.next/static/chunks/app/api/worktrees/[id]/kill-session/route-476063c3571b81dd.js +1 -0
  503. package/.next/static/chunks/app/api/worktrees/[id]/logs/[filename]/route-476063c3571b81dd.js +1 -0
  504. package/.next/static/chunks/app/api/worktrees/[id]/logs/route-476063c3571b81dd.js +1 -0
  505. package/.next/static/chunks/app/api/worktrees/[id]/marp-render/route-476063c3571b81dd.js +1 -0
  506. package/.next/static/chunks/app/api/worktrees/[id]/memos/[memoId]/route-476063c3571b81dd.js +1 -0
  507. package/.next/static/chunks/app/api/worktrees/[id]/memos/route-476063c3571b81dd.js +1 -0
  508. package/.next/static/chunks/app/api/worktrees/[id]/messages/route-476063c3571b81dd.js +1 -0
  509. package/.next/static/chunks/app/api/worktrees/[id]/opencode/diff/route-476063c3571b81dd.js +1 -0
  510. package/.next/static/chunks/app/api/worktrees/[id]/opencode/session/route-476063c3571b81dd.js +1 -0
  511. package/.next/static/chunks/app/api/worktrees/[id]/opencode/share/route-476063c3571b81dd.js +1 -0
  512. package/.next/static/chunks/app/api/worktrees/[id]/prompt-response/route-476063c3571b81dd.js +1 -0
  513. package/.next/static/chunks/app/api/worktrees/[id]/prompt-response/strict/route-476063c3571b81dd.js +1 -0
  514. package/.next/static/chunks/app/api/worktrees/[id]/resolve-target/route-476063c3571b81dd.js +1 -0
  515. package/.next/static/chunks/app/api/worktrees/[id]/respond/route-476063c3571b81dd.js +1 -0
  516. package/.next/static/chunks/app/api/worktrees/[id]/route-476063c3571b81dd.js +1 -0
  517. package/.next/static/chunks/app/api/worktrees/[id]/schedules/[scheduleId]/route-476063c3571b81dd.js +1 -0
  518. package/.next/static/chunks/app/api/worktrees/[id]/schedules/active/route-476063c3571b81dd.js +1 -0
  519. package/.next/static/chunks/app/api/worktrees/[id]/schedules/route-476063c3571b81dd.js +1 -0
  520. package/.next/static/chunks/app/api/worktrees/[id]/search/route-476063c3571b81dd.js +1 -0
  521. package/.next/static/chunks/app/api/worktrees/[id]/send/route-476063c3571b81dd.js +1 -0
  522. package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/git-workflow/route-476063c3571b81dd.js +1 -0
  523. package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/install/route-476063c3571b81dd.js +1 -0
  524. package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/plan/route-476063c3571b81dd.js +1 -0
  525. package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/uninstall/route-476063c3571b81dd.js +1 -0
  526. package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/uninstall-plan/route-476063c3571b81dd.js +1 -0
  527. package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/update/route-476063c3571b81dd.js +1 -0
  528. package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/update-plan/route-476063c3571b81dd.js +1 -0
  529. package/.next/static/chunks/app/api/worktrees/[id]/skills/route-476063c3571b81dd.js +1 -0
  530. package/.next/static/chunks/app/api/worktrees/[id]/slash-commands/route-476063c3571b81dd.js +1 -0
  531. package/.next/static/chunks/app/api/worktrees/[id]/special-keys/route-476063c3571b81dd.js +1 -0
  532. package/.next/static/chunks/app/api/worktrees/[id]/tasks/route-476063c3571b81dd.js +1 -0
  533. package/.next/static/chunks/app/api/worktrees/[id]/terminal/route-476063c3571b81dd.js +1 -0
  534. package/.next/static/chunks/app/api/worktrees/[id]/timers/history/route-476063c3571b81dd.js +1 -0
  535. package/.next/static/chunks/app/api/worktrees/[id]/timers/route-476063c3571b81dd.js +1 -0
  536. package/.next/static/chunks/app/api/worktrees/[id]/todos/[todoId]/route-476063c3571b81dd.js +1 -0
  537. package/.next/static/chunks/app/api/worktrees/[id]/todos/route-476063c3571b81dd.js +1 -0
  538. package/.next/static/chunks/app/api/worktrees/[id]/tree/[...path]/route-476063c3571b81dd.js +1 -0
  539. package/.next/static/chunks/app/api/worktrees/[id]/tree/route-476063c3571b81dd.js +1 -0
  540. package/.next/static/chunks/app/api/worktrees/[id]/upload/[...path]/route-476063c3571b81dd.js +1 -0
  541. package/.next/static/chunks/app/api/worktrees/[id]/verify/config/route-476063c3571b81dd.js +1 -0
  542. package/.next/static/chunks/app/api/worktrees/[id]/verify/route-476063c3571b81dd.js +1 -0
  543. package/.next/static/chunks/app/api/worktrees/[id]/verify/runs/[runId]/cancel/route-476063c3571b81dd.js +1 -0
  544. package/.next/static/chunks/app/api/worktrees/[id]/verify/runs/[runId]/route-476063c3571b81dd.js +1 -0
  545. package/.next/static/chunks/app/api/worktrees/[id]/verify/runs/route-476063c3571b81dd.js +1 -0
  546. package/.next/static/chunks/app/api/worktrees/[id]/viewed/route-476063c3571b81dd.js +1 -0
  547. package/.next/static/chunks/app/api/worktrees/apply-default-agents/route-476063c3571b81dd.js +1 -0
  548. package/.next/static/chunks/app/api/worktrees/route-476063c3571b81dd.js +1 -0
  549. package/.next/static/chunks/app/layout-7bf800fcc5e025b1.js +1 -0
  550. package/.next/static/chunks/app/manifest.webmanifest/route-476063c3571b81dd.js +1 -0
  551. package/.next/static/chunks/app/more/{page-ff5af5ca48774c89.js → page-e8f5780f6e4fb657.js} +1 -1
  552. package/.next/static/chunks/app/{page-b4863bfe0452e09d.js → page-869f353a4ac4e15b.js} +1 -1
  553. package/.next/static/chunks/app/proxy/[...path]/route-476063c3571b81dd.js +1 -0
  554. package/.next/static/chunks/app/repositories/page-bedb505687010f18.js +1 -0
  555. package/.next/static/chunks/app/review/page-87c4a9b0de50fa80.js +1 -0
  556. package/.next/static/chunks/app/sessions/{page-c6eb7c02db2f4c80.js → page-82ca46793789fce4.js} +1 -1
  557. package/.next/static/chunks/app/worktrees/[id]/layout-476063c3571b81dd.js +1 -0
  558. package/.next/static/chunks/app/worktrees/[id]/page-570eb79fbbd1a934.js +1 -0
  559. package/.next/static/chunks/{webpack-838df0273b03af19.js → webpack-16b1a3143fa42ca0.js} +1 -1
  560. package/.next/static/css/d4f2c9522cf1b449.css +1 -0
  561. package/.next/static/z4d8-5MaLkoD-4EhueZwk/_buildManifest.js +1 -0
  562. package/.next/trace +14 -13
  563. package/.next/types/app/api/repositories/[id]/role-defaults/route.ts +347 -0
  564. package/.next/types/app/api/roles/[id]/route.ts +347 -0
  565. package/.next/types/app/api/roles/route.ts +347 -0
  566. package/.next/types/app/api/settings/agent-role-defaults/route.ts +347 -0
  567. package/.next/types/app/api/worktrees/[id]/instances/roles/route.ts +347 -0
  568. package/.next/types/app/api/worktrees/[id]/instances/roles/settle/route.ts +347 -0
  569. package/.next/types/routes.d.ts +7 -1
  570. package/.next/types/validator.ts +54 -0
  571. package/dist/cli/commands/instances.d.ts +1 -0
  572. package/dist/cli/commands/instances.d.ts.map +1 -1
  573. package/dist/cli/commands/instances.js +290 -33
  574. package/dist/cli/commands/message-dispatch.d.ts +25 -3
  575. package/dist/cli/commands/message-dispatch.d.ts.map +1 -1
  576. package/dist/cli/commands/message-dispatch.js +26 -6
  577. package/dist/cli/commands/relays.d.ts +5 -0
  578. package/dist/cli/commands/relays.d.ts.map +1 -1
  579. package/dist/cli/commands/relays.js +37 -1
  580. package/dist/cli/commands/roles.d.ts +11 -0
  581. package/dist/cli/commands/roles.d.ts.map +1 -0
  582. package/dist/cli/commands/roles.js +392 -0
  583. package/dist/cli/commands/send.d.ts.map +1 -1
  584. package/dist/cli/commands/send.js +526 -38
  585. package/dist/cli/docs/agent-operations.d.ts +1 -1
  586. package/dist/cli/docs/agent-operations.d.ts.map +1 -1
  587. package/dist/cli/docs/agent-operations.js +91 -3
  588. package/dist/cli/index.d.ts +4 -0
  589. package/dist/cli/index.d.ts.map +1 -1
  590. package/dist/cli/index.js +6 -0
  591. package/dist/cli/types/api-responses.d.ts +54 -0
  592. package/dist/cli/types/api-responses.d.ts.map +1 -1
  593. package/dist/cli/types/index.d.ts +38 -0
  594. package/dist/cli/types/index.d.ts.map +1 -1
  595. package/dist/cli/types/index.js +15 -1
  596. package/dist/cli/utils/agent-instances.d.ts +29 -1
  597. package/dist/cli/utils/agent-instances.d.ts.map +1 -1
  598. package/dist/cli/utils/agent-instances.js +67 -7
  599. package/dist/cli/utils/agent-roles.d.ts +75 -0
  600. package/dist/cli/utils/agent-roles.d.ts.map +1 -0
  601. package/dist/cli/utils/agent-roles.js +238 -0
  602. package/dist/cli/utils/api-client-errors.d.ts +23 -1
  603. package/dist/cli/utils/api-client-errors.d.ts.map +1 -1
  604. package/dist/cli/utils/api-client-errors.js +14 -2
  605. package/dist/cli/utils/api-client.d.ts +8 -0
  606. package/dist/cli/utils/api-client.d.ts.map +1 -1
  607. package/dist/cli/utils/api-client.js +13 -1
  608. package/dist/cli/utils/role-failure.d.ts +31 -0
  609. package/dist/cli/utils/role-failure.d.ts.map +1 -0
  610. package/dist/cli/utils/role-failure.js +90 -0
  611. package/dist/cli/utils/role-input.d.ts +16 -0
  612. package/dist/cli/utils/role-input.d.ts.map +1 -0
  613. package/dist/cli/utils/role-input.js +78 -0
  614. package/dist/cli/utils/security-logger.d.ts +17 -0
  615. package/dist/cli/utils/security-logger.d.ts.map +1 -1
  616. package/dist/cli/utils/security-logger.js +44 -5
  617. package/dist/lib/detection/tools/verified-against.d.ts +16 -0
  618. package/dist/lib/detection/tools/verified-against.d.ts.map +1 -1
  619. package/dist/lib/detection/tools/verified-against.js +16 -0
  620. package/dist/lib/session/send-attempt-types.d.ts +4 -0
  621. package/dist/lib/session/send-attempt-types.d.ts.map +1 -1
  622. package/dist/lib/verification/verify-config.d.ts +22 -0
  623. package/dist/lib/verification/verify-config.d.ts.map +1 -1
  624. package/dist/lib/verification/verify-config.js +32 -2
  625. package/dist/server/locales/en/worktree.json +25 -6
  626. package/dist/server/locales/ja/worktree.json +25 -6
  627. package/dist/server/src/config/safe-directory.js +30 -0
  628. package/dist/server/src/lib/agent-roles/adapters.js +174 -0
  629. package/dist/server/src/lib/agent-roles/artifacts.js +638 -0
  630. package/dist/server/src/lib/agent-roles/composition.js +222 -0
  631. package/dist/server/src/lib/agent-roles/fingerprint.js +21 -0
  632. package/dist/server/src/lib/agent-roles/jsonc.js +85 -0
  633. package/dist/server/src/lib/agent-roles/launch-errors.js +58 -0
  634. package/dist/server/src/lib/agent-roles/pane-env.js +63 -0
  635. package/dist/server/src/lib/agent-roles/resolve.js +375 -0
  636. package/dist/server/src/lib/agent-roles/toml-basic.js +140 -0
  637. package/dist/server/src/lib/agent-roles/unicode.js +16 -0
  638. package/dist/server/src/lib/agent-roles/validation.js +61 -0
  639. package/dist/server/src/lib/cli-tools/antigravity.js +39 -6
  640. package/dist/server/src/lib/cli-tools/base.js +63 -5
  641. package/dist/server/src/lib/cli-tools/claude-auto-default-nudge.js +141 -0
  642. package/dist/server/src/lib/cli-tools/claude.js +7 -1
  643. package/dist/server/src/lib/cli-tools/codex.js +134 -21
  644. package/dist/server/src/lib/cli-tools/command-code.js +24 -1
  645. package/dist/server/src/lib/cli-tools/copilot.js +36 -7
  646. package/dist/server/src/lib/cli-tools/gemini.js +37 -3
  647. package/dist/server/src/lib/cli-tools/launch-answer-skips.js +76 -0
  648. package/dist/server/src/lib/cli-tools/opencode-v2.js +10 -0
  649. package/dist/server/src/lib/cli-tools/opencode.js +58 -7
  650. package/dist/server/src/lib/cli-tools/submit-composer-read.js +24 -4
  651. package/dist/server/src/lib/cli-tools/vibe-local.js +25 -1
  652. package/dist/server/src/lib/db/agent-instances-db.js +53 -0
  653. package/dist/server/src/lib/db/agent-roles-db.js +409 -0
  654. package/dist/server/src/lib/db/agent-session-cost-sampler.js +3 -2
  655. package/dist/server/src/lib/db/db-instance.js +7 -37
  656. package/dist/server/src/lib/db/migrations/index.js +4 -0
  657. package/dist/server/src/lib/db/migrations/runner.js +1 -1
  658. package/dist/server/src/lib/db/migrations/v64-agent-roles.js +123 -0
  659. package/dist/server/src/lib/db/migrations/v65-agent-instance-creation-keys.js +42 -0
  660. package/dist/server/src/lib/db/relay-db.js +35 -0
  661. package/dist/server/src/lib/detection/cli-patterns.js +13 -3
  662. package/dist/server/src/lib/detection/model-info-extractor.js +1 -1
  663. package/dist/server/src/lib/detection/tools/claude/patterns.js +76 -0
  664. package/dist/server/src/lib/detection/tools/codex/cli-patterns.js +5 -0
  665. package/dist/server/src/lib/detection/tools/codex/detect.js +5 -1
  666. package/dist/server/src/lib/detection/tools/codex/patterns.js +52 -2
  667. package/dist/server/src/lib/detection/tools/codex/prompt.js +23 -3
  668. package/dist/server/src/lib/detection/tools/opencode/detect.js +30 -15
  669. package/dist/server/src/lib/detection/tools/opencode/patterns.js +268 -7
  670. package/dist/server/src/lib/detection/tools/opencode/readiness.js +16 -7
  671. package/dist/server/src/lib/detection/tools/opencode-v2/detect.js +51 -15
  672. package/dist/server/src/lib/detection/tools/opencode-v2/patterns.js +195 -11
  673. package/dist/server/src/lib/detection/tools/run-detection.js +5 -2
  674. package/dist/server/src/lib/detection/tools/verified-against.js +16 -0
  675. package/dist/server/src/lib/detection/tools/vibe-local/readiness.js +22 -0
  676. package/dist/server/src/lib/git/git-common-dir.js +192 -0
  677. package/dist/server/src/lib/hooks/hook-settings-generator.js +8 -2
  678. package/dist/server/src/lib/hooks/sources/copilot/hook-settings.js +31 -1
  679. package/dist/server/src/lib/hooks/sources/launch-command.js +31 -8
  680. package/dist/server/src/lib/hooks/sources/opencode/client.js +20 -0
  681. package/dist/server/src/lib/hooks/sources/opencode-v2/client.js +24 -0
  682. package/dist/server/src/lib/hooks/sources/opencode-v2/history.js +208 -35
  683. package/dist/server/src/lib/hooks/sources/opencode-v2/secrets.js +7 -1
  684. package/dist/server/src/lib/hooks/sources/opencode-v2/subscription.js +117 -2
  685. package/dist/server/src/lib/job-executor.js +18 -1
  686. package/dist/server/src/lib/polling/response-checker-extraction-steps.js +58 -4
  687. package/dist/server/src/lib/polling/response-checker.js +32 -7
  688. package/dist/server/src/lib/relay/relay-delivery-block.js +150 -0
  689. package/dist/server/src/lib/relay/relay-delivery.js +59 -2
  690. package/dist/server/src/lib/response-cleaner.js +13 -3
  691. package/dist/server/src/lib/response-extractor.js +38 -3
  692. package/dist/server/src/lib/session/agent-session-lifecycle.js +9 -1
  693. package/dist/server/src/lib/session/claude-executor.js +13 -1
  694. package/dist/server/src/lib/session/claude-session.js +109 -13
  695. package/dist/server/src/lib/session/instance-input-lock.js +93 -4
  696. package/dist/server/src/lib/session/role-launch.js +722 -0
  697. package/dist/server/src/lib/session/send-attempt-state.js +7 -0
  698. package/dist/server/src/lib/session/send-user-message.js +6 -0
  699. package/dist/server/src/lib/session/session-generation-archive.js +7 -8
  700. package/dist/server/src/lib/session/session-launch-flight.js +33 -1
  701. package/dist/server/src/lib/session/worktree-session-reconcile.js +5 -0
  702. package/dist/server/src/lib/test-run-detection.js +53 -0
  703. package/dist/server/src/lib/tmux/read-mode.js +4 -0
  704. package/dist/server/src/lib/tmux/session-hook-scripts.js +36 -4
  705. package/dist/server/src/lib/tui-accumulator.js +14 -5
  706. package/dist/server/src/lib/verification/env-clean-gate.js +117 -12
  707. package/dist/server/src/lib/verification/gate-runner.js +9 -8
  708. package/dist/server/src/lib/verification/verify-config.js +32 -2
  709. package/dist/server/src/types/agent-roles.js +56 -0
  710. package/dist/types/agent-roles.d.ts +351 -0
  711. package/dist/types/agent-roles.d.ts.map +1 -0
  712. package/dist/types/agent-roles.js +56 -0
  713. package/docs/en/user-guide/webapp-guide.md +16 -0
  714. package/package.json +2 -1
  715. package/release-notes/0.50.0.json +113 -0
  716. package/.next/server/chunks/1308.js +0 -1
  717. package/.next/server/chunks/4490.js +0 -1
  718. package/.next/server/chunks/4936.js +0 -1
  719. package/.next/server/chunks/610.js +0 -1
  720. package/.next/server/chunks/6119.js +0 -1
  721. package/.next/server/chunks/7491.js +0 -3
  722. package/.next/server/chunks/7926.js +0 -1
  723. package/.next/server/chunks/9360.js +0 -2
  724. package/.next/server/chunks/9584.js +0 -1
  725. package/.next/static/LNfVZiq6FZwKsV7L9Mi6M/_buildManifest.js +0 -1
  726. package/.next/static/chunks/2407-87ec01332344ec2b.js +0 -1
  727. package/.next/static/chunks/344-e1cefd00787060e4.js +0 -1
  728. package/.next/static/chunks/3931-3ef48b8d97357282.js +0 -1
  729. package/.next/static/chunks/7229.7f0f5a7032b612b4.js +0 -1
  730. package/.next/static/chunks/8165-263172c17ae8e8c3.js +0 -1
  731. package/.next/static/chunks/app/api/agents/update/route-96fc12d400b49b13.js +0 -1
  732. package/.next/static/chunks/app/api/agents/versions/route-96fc12d400b49b13.js +0 -1
  733. package/.next/static/chunks/app/api/app/release-notes/route-96fc12d400b49b13.js +0 -1
  734. package/.next/static/chunks/app/api/app/update/route-96fc12d400b49b13.js +0 -1
  735. package/.next/static/chunks/app/api/app/update-check/route-96fc12d400b49b13.js +0 -1
  736. package/.next/static/chunks/app/api/auth/login/route-96fc12d400b49b13.js +0 -1
  737. package/.next/static/chunks/app/api/auth/logout/route-96fc12d400b49b13.js +0 -1
  738. package/.next/static/chunks/app/api/auth/status/route-96fc12d400b49b13.js +0 -1
  739. package/.next/static/chunks/app/api/capabilities/route-96fc12d400b49b13.js +0 -1
  740. package/.next/static/chunks/app/api/daily-summary/route-96fc12d400b49b13.js +0 -1
  741. package/.next/static/chunks/app/api/daily-summary/status/route-96fc12d400b49b13.js +0 -1
  742. package/.next/static/chunks/app/api/external-apps/[id]/health/route-96fc12d400b49b13.js +0 -1
  743. package/.next/static/chunks/app/api/external-apps/[id]/route-96fc12d400b49b13.js +0 -1
  744. package/.next/static/chunks/app/api/external-apps/route-96fc12d400b49b13.js +0 -1
  745. package/.next/static/chunks/app/api/fs/browse/route-96fc12d400b49b13.js +0 -1
  746. package/.next/static/chunks/app/api/fs/recent-paths/route-96fc12d400b49b13.js +0 -1
  747. package/.next/static/chunks/app/api/hooks/agent-event/route-96fc12d400b49b13.js +0 -1
  748. package/.next/static/chunks/app/api/hooks/claude-done/route-96fc12d400b49b13.js +0 -1
  749. package/.next/static/chunks/app/api/hooks/permission-request/route-96fc12d400b49b13.js +0 -1
  750. package/.next/static/chunks/app/api/metrics/vibe/route-96fc12d400b49b13.js +0 -1
  751. package/.next/static/chunks/app/api/ollama/models/route-96fc12d400b49b13.js +0 -1
  752. package/.next/static/chunks/app/api/push/escalation/route-96fc12d400b49b13.js +0 -1
  753. package/.next/static/chunks/app/api/push/subscriptions/route-96fc12d400b49b13.js +0 -1
  754. package/.next/static/chunks/app/api/push/vapid/route-96fc12d400b49b13.js +0 -1
  755. package/.next/static/chunks/app/api/relays/[relayId]/cancel/route-96fc12d400b49b13.js +0 -1
  756. package/.next/static/chunks/app/api/relays/[relayId]/resolve/route-96fc12d400b49b13.js +0 -1
  757. package/.next/static/chunks/app/api/relays/[relayId]/route-96fc12d400b49b13.js +0 -1
  758. package/.next/static/chunks/app/api/relays/route-96fc12d400b49b13.js +0 -1
  759. package/.next/static/chunks/app/api/remote/pair/route-96fc12d400b49b13.js +0 -1
  760. package/.next/static/chunks/app/api/repositories/[id]/route-96fc12d400b49b13.js +0 -1
  761. package/.next/static/chunks/app/api/repositories/clone/[jobId]/route-96fc12d400b49b13.js +0 -1
  762. package/.next/static/chunks/app/api/repositories/clone/route-96fc12d400b49b13.js +0 -1
  763. package/.next/static/chunks/app/api/repositories/excluded/route-96fc12d400b49b13.js +0 -1
  764. package/.next/static/chunks/app/api/repositories/restore/route-96fc12d400b49b13.js +0 -1
  765. package/.next/static/chunks/app/api/repositories/route-96fc12d400b49b13.js +0 -1
  766. package/.next/static/chunks/app/api/repositories/scan/route-96fc12d400b49b13.js +0 -1
  767. package/.next/static/chunks/app/api/repositories/sync/route-96fc12d400b49b13.js +0 -1
  768. package/.next/static/chunks/app/api/repositories/validate-path/route-96fc12d400b49b13.js +0 -1
  769. package/.next/static/chunks/app/api/settings/default-agents/route-96fc12d400b49b13.js +0 -1
  770. package/.next/static/chunks/app/api/settings/default-surface-mode/route-96fc12d400b49b13.js +0 -1
  771. package/.next/static/chunks/app/api/sidebar/group-order/route-96fc12d400b49b13.js +0 -1
  772. package/.next/static/chunks/app/api/skills/[id]/route-96fc12d400b49b13.js +0 -1
  773. package/.next/static/chunks/app/api/skills/installations/route-96fc12d400b49b13.js +0 -1
  774. package/.next/static/chunks/app/api/skills/operations/route-96fc12d400b49b13.js +0 -1
  775. package/.next/static/chunks/app/api/skills/reindex/route-96fc12d400b49b13.js +0 -1
  776. package/.next/static/chunks/app/api/skills/route-96fc12d400b49b13.js +0 -1
  777. package/.next/static/chunks/app/api/slash-commands/route-96fc12d400b49b13.js +0 -1
  778. package/.next/static/chunks/app/api/tasks/[taskId]/cancel/route-96fc12d400b49b13.js +0 -1
  779. package/.next/static/chunks/app/api/tasks/[taskId]/route-96fc12d400b49b13.js +0 -1
  780. package/.next/static/chunks/app/api/templates/[id]/route-96fc12d400b49b13.js +0 -1
  781. package/.next/static/chunks/app/api/templates/route-96fc12d400b49b13.js +0 -1
  782. package/.next/static/chunks/app/api/verification/runs/[runId]/route-96fc12d400b49b13.js +0 -1
  783. package/.next/static/chunks/app/api/verification/runs/route-96fc12d400b49b13.js +0 -1
  784. package/.next/static/chunks/app/api/worktrees/[id]/auto-yes/route-96fc12d400b49b13.js +0 -1
  785. package/.next/static/chunks/app/api/worktrees/[id]/capture/route-96fc12d400b49b13.js +0 -1
  786. package/.next/static/chunks/app/api/worktrees/[id]/clear-composer/route-96fc12d400b49b13.js +0 -1
  787. package/.next/static/chunks/app/api/worktrees/[id]/cli-reference/route-96fc12d400b49b13.js +0 -1
  788. package/.next/static/chunks/app/api/worktrees/[id]/cli-tool/route-96fc12d400b49b13.js +0 -1
  789. package/.next/static/chunks/app/api/worktrees/[id]/cmate/schedules/route-96fc12d400b49b13.js +0 -1
  790. package/.next/static/chunks/app/api/worktrees/[id]/current-output/route-96fc12d400b49b13.js +0 -1
  791. package/.next/static/chunks/app/api/worktrees/[id]/direct-input/route-96fc12d400b49b13.js +0 -1
  792. package/.next/static/chunks/app/api/worktrees/[id]/env/route-96fc12d400b49b13.js +0 -1
  793. package/.next/static/chunks/app/api/worktrees/[id]/execution-logs/[logId]/route-96fc12d400b49b13.js +0 -1
  794. package/.next/static/chunks/app/api/worktrees/[id]/execution-logs/route-96fc12d400b49b13.js +0 -1
  795. package/.next/static/chunks/app/api/worktrees/[id]/files/[...path]/route-96fc12d400b49b13.js +0 -1
  796. package/.next/static/chunks/app/api/worktrees/[id]/git/branch/create/route-96fc12d400b49b13.js +0 -1
  797. package/.next/static/chunks/app/api/worktrees/[id]/git/branch/delete/route-96fc12d400b49b13.js +0 -1
  798. package/.next/static/chunks/app/api/worktrees/[id]/git/branches/route-96fc12d400b49b13.js +0 -1
  799. package/.next/static/chunks/app/api/worktrees/[id]/git/checkout/route-96fc12d400b49b13.js +0 -1
  800. package/.next/static/chunks/app/api/worktrees/[id]/git/commit/route-96fc12d400b49b13.js +0 -1
  801. package/.next/static/chunks/app/api/worktrees/[id]/git/diff/route-96fc12d400b49b13.js +0 -1
  802. package/.next/static/chunks/app/api/worktrees/[id]/git/fetch/route-96fc12d400b49b13.js +0 -1
  803. package/.next/static/chunks/app/api/worktrees/[id]/git/log/route-96fc12d400b49b13.js +0 -1
  804. package/.next/static/chunks/app/api/worktrees/[id]/git/pull/route-96fc12d400b49b13.js +0 -1
  805. package/.next/static/chunks/app/api/worktrees/[id]/git/push/route-96fc12d400b49b13.js +0 -1
  806. package/.next/static/chunks/app/api/worktrees/[id]/git/reset/route-96fc12d400b49b13.js +0 -1
  807. package/.next/static/chunks/app/api/worktrees/[id]/git/revert/route-96fc12d400b49b13.js +0 -1
  808. package/.next/static/chunks/app/api/worktrees/[id]/git/show/[commitHash]/route-96fc12d400b49b13.js +0 -1
  809. package/.next/static/chunks/app/api/worktrees/[id]/git/stage/route-96fc12d400b49b13.js +0 -1
  810. package/.next/static/chunks/app/api/worktrees/[id]/git/staged/route-96fc12d400b49b13.js +0 -1
  811. package/.next/static/chunks/app/api/worktrees/[id]/git/stash/[index]/route-96fc12d400b49b13.js +0 -1
  812. package/.next/static/chunks/app/api/worktrees/[id]/git/stash/apply/route-96fc12d400b49b13.js +0 -1
  813. package/.next/static/chunks/app/api/worktrees/[id]/git/stash/pop/route-96fc12d400b49b13.js +0 -1
  814. package/.next/static/chunks/app/api/worktrees/[id]/git/stash/push/route-96fc12d400b49b13.js +0 -1
  815. package/.next/static/chunks/app/api/worktrees/[id]/git/stash/route-96fc12d400b49b13.js +0 -1
  816. package/.next/static/chunks/app/api/worktrees/[id]/git/status/route-96fc12d400b49b13.js +0 -1
  817. package/.next/static/chunks/app/api/worktrees/[id]/git/unstage/route-96fc12d400b49b13.js +0 -1
  818. package/.next/static/chunks/app/api/worktrees/[id]/git/working-diff/route-96fc12d400b49b13.js +0 -1
  819. package/.next/static/chunks/app/api/worktrees/[id]/instances/notes/route-96fc12d400b49b13.js +0 -1
  820. package/.next/static/chunks/app/api/worktrees/[id]/instances/opencode/route-96fc12d400b49b13.js +0 -1
  821. package/.next/static/chunks/app/api/worktrees/[id]/interrupt/route-96fc12d400b49b13.js +0 -1
  822. package/.next/static/chunks/app/api/worktrees/[id]/kill-session/route-96fc12d400b49b13.js +0 -1
  823. package/.next/static/chunks/app/api/worktrees/[id]/logs/[filename]/route-96fc12d400b49b13.js +0 -1
  824. package/.next/static/chunks/app/api/worktrees/[id]/logs/route-96fc12d400b49b13.js +0 -1
  825. package/.next/static/chunks/app/api/worktrees/[id]/marp-render/route-96fc12d400b49b13.js +0 -1
  826. package/.next/static/chunks/app/api/worktrees/[id]/memos/[memoId]/route-96fc12d400b49b13.js +0 -1
  827. package/.next/static/chunks/app/api/worktrees/[id]/memos/route-96fc12d400b49b13.js +0 -1
  828. package/.next/static/chunks/app/api/worktrees/[id]/messages/route-96fc12d400b49b13.js +0 -1
  829. package/.next/static/chunks/app/api/worktrees/[id]/opencode/diff/route-96fc12d400b49b13.js +0 -1
  830. package/.next/static/chunks/app/api/worktrees/[id]/opencode/session/route-96fc12d400b49b13.js +0 -1
  831. package/.next/static/chunks/app/api/worktrees/[id]/opencode/share/route-96fc12d400b49b13.js +0 -1
  832. package/.next/static/chunks/app/api/worktrees/[id]/prompt-response/route-96fc12d400b49b13.js +0 -1
  833. package/.next/static/chunks/app/api/worktrees/[id]/prompt-response/strict/route-96fc12d400b49b13.js +0 -1
  834. package/.next/static/chunks/app/api/worktrees/[id]/resolve-target/route-96fc12d400b49b13.js +0 -1
  835. package/.next/static/chunks/app/api/worktrees/[id]/respond/route-96fc12d400b49b13.js +0 -1
  836. package/.next/static/chunks/app/api/worktrees/[id]/route-96fc12d400b49b13.js +0 -1
  837. package/.next/static/chunks/app/api/worktrees/[id]/schedules/[scheduleId]/route-96fc12d400b49b13.js +0 -1
  838. package/.next/static/chunks/app/api/worktrees/[id]/schedules/active/route-96fc12d400b49b13.js +0 -1
  839. package/.next/static/chunks/app/api/worktrees/[id]/schedules/route-96fc12d400b49b13.js +0 -1
  840. package/.next/static/chunks/app/api/worktrees/[id]/search/route-96fc12d400b49b13.js +0 -1
  841. package/.next/static/chunks/app/api/worktrees/[id]/send/route-96fc12d400b49b13.js +0 -1
  842. package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/git-workflow/route-96fc12d400b49b13.js +0 -1
  843. package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/install/route-96fc12d400b49b13.js +0 -1
  844. package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/plan/route-96fc12d400b49b13.js +0 -1
  845. package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/uninstall/route-96fc12d400b49b13.js +0 -1
  846. package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/uninstall-plan/route-96fc12d400b49b13.js +0 -1
  847. package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/update/route-96fc12d400b49b13.js +0 -1
  848. package/.next/static/chunks/app/api/worktrees/[id]/skills/[skillId]/update-plan/route-96fc12d400b49b13.js +0 -1
  849. package/.next/static/chunks/app/api/worktrees/[id]/skills/route-96fc12d400b49b13.js +0 -1
  850. package/.next/static/chunks/app/api/worktrees/[id]/slash-commands/route-96fc12d400b49b13.js +0 -1
  851. package/.next/static/chunks/app/api/worktrees/[id]/special-keys/route-96fc12d400b49b13.js +0 -1
  852. package/.next/static/chunks/app/api/worktrees/[id]/tasks/route-96fc12d400b49b13.js +0 -1
  853. package/.next/static/chunks/app/api/worktrees/[id]/terminal/route-96fc12d400b49b13.js +0 -1
  854. package/.next/static/chunks/app/api/worktrees/[id]/timers/history/route-96fc12d400b49b13.js +0 -1
  855. package/.next/static/chunks/app/api/worktrees/[id]/timers/route-96fc12d400b49b13.js +0 -1
  856. package/.next/static/chunks/app/api/worktrees/[id]/todos/[todoId]/route-96fc12d400b49b13.js +0 -1
  857. package/.next/static/chunks/app/api/worktrees/[id]/todos/route-96fc12d400b49b13.js +0 -1
  858. package/.next/static/chunks/app/api/worktrees/[id]/tree/[...path]/route-96fc12d400b49b13.js +0 -1
  859. package/.next/static/chunks/app/api/worktrees/[id]/tree/route-96fc12d400b49b13.js +0 -1
  860. package/.next/static/chunks/app/api/worktrees/[id]/upload/[...path]/route-96fc12d400b49b13.js +0 -1
  861. package/.next/static/chunks/app/api/worktrees/[id]/verify/config/route-96fc12d400b49b13.js +0 -1
  862. package/.next/static/chunks/app/api/worktrees/[id]/verify/route-96fc12d400b49b13.js +0 -1
  863. package/.next/static/chunks/app/api/worktrees/[id]/verify/runs/[runId]/cancel/route-96fc12d400b49b13.js +0 -1
  864. package/.next/static/chunks/app/api/worktrees/[id]/verify/runs/[runId]/route-96fc12d400b49b13.js +0 -1
  865. package/.next/static/chunks/app/api/worktrees/[id]/verify/runs/route-96fc12d400b49b13.js +0 -1
  866. package/.next/static/chunks/app/api/worktrees/[id]/viewed/route-96fc12d400b49b13.js +0 -1
  867. package/.next/static/chunks/app/api/worktrees/apply-default-agents/route-96fc12d400b49b13.js +0 -1
  868. package/.next/static/chunks/app/api/worktrees/route-96fc12d400b49b13.js +0 -1
  869. package/.next/static/chunks/app/layout-b9d8aef70e4f17b2.js +0 -1
  870. package/.next/static/chunks/app/manifest.webmanifest/route-96fc12d400b49b13.js +0 -1
  871. package/.next/static/chunks/app/proxy/[...path]/route-96fc12d400b49b13.js +0 -1
  872. package/.next/static/chunks/app/repositories/page-71f5a5ac29b0370d.js +0 -1
  873. package/.next/static/chunks/app/review/page-ff3efb96fdf9bb4b.js +0 -1
  874. package/.next/static/chunks/app/worktrees/[id]/layout-96fc12d400b49b13.js +0 -1
  875. package/.next/static/chunks/app/worktrees/[id]/page-f6a151304860b549.js +0 -1
  876. package/.next/static/css/c1e307d05daf93b6.css +0 -1
  877. /package/.next/static/{LNfVZiq6FZwKsV7L9Mi6M → z4d8-5MaLkoD-4EhueZwk}/_ssgManifest.js +0 -0
@@ -1,4 +1,4 @@
1
- "use strict";exports.id=1656,exports.ids=[1656],exports.modules={60:(a,b,c)=>{c.d(b,{QM:()=>h,V0:()=>e,ZX:()=>f,bE:()=>g});var d=c(54490);function e(a){let b=(0,d.x7)(a),c=(0,d.M4)(a,b);return{chromeStart:b,echoEnd:c,start:c+1,end:b>=0?b:a.length,headTruncated:c<0}}function f(a){let b=a.split("\n"),c=e(b.map(d.aJ));return c.start>=c.end?"":b.slice(c.start,c.end).join("\n")}function g(a){let b=a.split("\n"),c=e(b),f=c.start>=c.end?"":b.slice(c.start,c.end).join("\n");return d.$t.test(f)&&!d.kD.test(a)&&!d.Ty.test(a)}function h(a,b,c,d,e,f=!1){if(a=Math.max(0,a),"opencode"===d||"copilot"===d||f){let a=e(b);return a>=0?a+1:0}if("antigravity"===d||"command-code"===d){let c=e(b);return c>=0?c+1:Math.max(0,a)}if(a>=b||c){let a=e(40);return a>=0?a+1:0}if("codex"===d)return Math.max(0,a);if(a>=b-5){let a=e(50);return a>=0?a+1:Math.max(0,b-40)}return Math.max(0,a)}},8988:(a,b,c)=>{c.d(b,{R:()=>g});let d=/📄 Session log: (.+?\/([^\/\s]+\.jsonl))/,e=/Request ID: ([^\s\n]+)/,f=/Summary: (.+?)(?:\n─|$)/s;function g(a){let b={content:a},c=d.exec(a);c&&(b.logFileName=c[2],b.logFilePath=c[1]);let g=e.exec(a);g&&(b.requestId=g[1]);let h=f.exec(a);return h&&(b.summary=h[1].trim()),b}},9131:(a,b,c)=>{c.d(b,{BN:()=>j,G4:()=>l,Hv:()=>n,It:()=>h,Pw:()=>e,WG:()=>i,cC:()=>o,if:()=>g,q5:()=>r});let d="answer_mode_keys";class e extends Error{constructor(a,b,c){super(`Refused to send "${b}" to ${a}: its ${c.kind} dialog takes '${c.answerMode}' input, not a typed number (${d}). The digit would be swallowed and the Enter after it would confirm whatever is highlighted. Nothing was sent.`),this.name="PromptAnswerRejectedError",this.reason=d,this.dialogKind=c.kind,this.answerMode=c.answerMode}}let f="unresolvable_answer";class g extends Error{constructor(a,b,c){super(function(a,b,c){let d=b.join(", ");return void 0===c?`Refused to type free text at ${a}'s prompt: option ${d} reads as taking your own words, but on this screen it is a menu row, not a text field. The text would be ignored and the Enter after it would confirm whatever is highlighted. Nothing was sent. Answer with the option number, then send the instructions as a message.`:`Refused to type free text at ${a}'s prompt: option ${d} is the text field on this screen, but the cursor is on option ${c.cursorOptionNumber}. The text would be ignored and the Enter after it would confirm option ${c.cursorOptionNumber}. Nothing was sent. Move the cursor onto the text field in the terminal and send the text again — sending its option number does not move the cursor, it selects nothing.`}(a,b,c)),this.name="FreeTextAnswerRejectedError",this.reason=f,this.optionNumbers=b,this.kind=c?.kind??"menu_row",this.cursorOptionNumber=c?.cursorOptionNumber??null}}class h extends Error{constructor(a,b){super(`Refused to type free text at ${a}'s prompt: none of its ${b} options is a text field on this screen, so the text would be ignored and the Enter after it would confirm whatever is highlighted. Nothing was sent. Answer with the option number instead, then send your instructions as a separate message.`),this.name="FreeTextAtChoiceOnlyPromptError",this.reason=f,this.optionCount=b}}class i extends Error{constructor(a,b,c){super(`The question was not submitted (${a}). `+(b?"Some boxes may have been ticked, but the confirm row was not pressed, so the question is still on screen exactly as the pane shows it. ":"No key was sent. ")+`Requested selection: ${c.join(", ")}. Check the terminal and answer it there, or `+"retry once the screen has settled."),this.name="MultiSelectAnswerRejectedError",this.reason="multi_select_not_committed",this.stage=a,this.keysSent=b,this.wanted=c}}let j="answer_not_delivered",k={"target-changed":"the prompt it was for was no longer on screen once the input in progress had finished","answer-withheld":"the answer was no longer allowed once the input in progress had finished","recheck-failed":"the screen could not be read again once the input in progress had finished","input-lock-timeout":"another input held the session past the wait","session-replaced":"the session was replaced while the answer waited","input-lock-lost":"the session's input was handed to another writer"};class l extends Error{constructor(a,b){super(`The answer was not sent to ${b}: ${k[a]} (${a}). Nothing was typed.`),this.skip=a,this.reason=j,this.keysSent=!1,this.name="PromptAnswerNotDeliveredError"}}let m="answer_input_lost";class n extends Error{constructor(a){super(`The answer to ${a} was stopped part-way: the session was replaced while the answer held its input. Some keys were sent; the rest were not (${m}, Issue #3952).`),this.reason=m,this.keysSent=!0,this.name="PromptAnswerInputLostError"}}class o extends Error{constructor(a){super(`Prompt answer stopped by its caller (${a?"some keys were sent":"no key was sent"})`),this.keysSent=a,this.name="PromptAnswerAbortedError"}}function p(a,b,c){return[a,{facts:b,status:c}]}let q=new Map([p(e,a=>({reason:a.reason,keysSent:!1}),{"prompt-response":200,respond:500}),p(g,a=>({reason:a.reason,keysSent:!1}),{"prompt-response":200,respond:500}),p(h,a=>({reason:a.reason,keysSent:!1}),{"prompt-response":200,respond:500}),p(i,a=>({reason:a.reason,keysSent:a.keysSent}),{"prompt-response":200,respond:500}),p(l,a=>({reason:a.reason,keysSent:a.keysSent}),{"prompt-response":200,respond:409}),p(n,a=>({reason:a.reason,keysSent:a.keysSent}),{"prompt-response":500,respond:500}),p(o,a=>({reason:"answer_aborted",keysSent:a.keysSent}),{"prompt-response":500,respond:500})]);function r(a,b){let c=function(a){if(!(a instanceof Error))return null;for(let[b,c]of q)if(a instanceof b)return c;return null}(a);if(null===c)return null;let{reason:d,keysSent:e}=c.facts(a),f=c.status[b];return 200===f?{status:f,body:{success:!1,reason:d,message:a.message,keysSent:e}}:f>=500?{status:f,body:{error:`Failed to send answer to tmux: ${a.message}`,reason:d,keysSent:e}}:{status:f,body:{error:a.message,reason:d,keysSent:e}}}},9516:(a,b,c)=>{c.d(b,{Hu:()=>i,Ll:()=>j});let d=["type something","chat about this"],e=/^\s*\[[ xX]\]\s*/,f=/(?:…|\.\.\.)\s*$/,g=new Set(["yes","y","no","n"]);function h(a){return a.replace(e,"").replace(f,"").replace(/\s+/g," ").trim().toLowerCase()}function i(a,b){if("multiple_choice"!==a.type)return null;let c=function(a,b){let c=h(b);if(""===c)return null;let d=a.questions.map((a,b)=>({entry:a,index:b})).filter(({entry:a})=>(function(a,b){let[c,d]=a.length<=b.length?[a,b]:[b,a];return c.length<8?c===d:d.includes(c)})(h(a.question),c));return 1===d.length?d[0]:null}(b,a.question);if(null===c)return null;let{entry:f,index:g}=c,i=new Map(a.options.map(a=>[a.number,a])),j=[];for(let[a,b]of f.choices.entries()){var k;let c=a+1,d=i.get(c);if(!d||!function(a,b){if(""===a||""===b)return!1;if(a===b)return!0;let[c,d]=a.length<=b.length?[a,b]:[b,a];return!(c.length<8)&&d.startsWith(c)}(h(d.label),h(b.label)))return null;j.push({...d,label:`${(k=d.label,e.exec(k)?.[0]??"")}${b.label}`,...b.description?{description:b.description}:{}})}let l=[];for(let b of a.options)!(b.number<=f.choices.length)&&function(a){let b=h(a);return d.some(a=>b===a||b.startsWith(a))}(b.label)&&(j.push(b),l.push(b.number));return j.sort((a,b)=>a.number-b.number),{...a,question:f.question,options:j,isAskUserQuestion:!0,askUserQuestion:{...f.header?{header:f.header}:{},multiSelect:f.multiSelect,questionIndex:g,questionCount:b.questions.length,metaOptionNumbers:l}}}function j(a,b){let c=b.trim();if(/^\d+$/.test(c)){let b=Number.parseInt(c,10);return a.options.some(a=>a.number===b)?{ok:!0,input:String(b)}:{ok:!1,reason:"answer_out_of_range",message:"The option number is outside the range this prompt offers. Use `commandmate capture <worktree-id> --json` to list the current options."}}let d=function(a,b){let c=h(b);if(""===c)return[];let d=a.filter(a=>h(a.label)===c);return d.length>0?d:c.length<2?[]:a.filter(a=>h(a.label).startsWith(c))}(a.options,c);if(1===d.length){let[a]=d;return{ok:!0,input:String(a.number),resolved:{via:"semantic",optionNumber:a.number,optionLabel:a.label}}}return d.length>1?{ok:!1,reason:"unresolvable_answer",message:"The answer matches more than one option label. Answer with an option number."}:a.options.some(a=>!0===a.requiresTextInput)&&!g.has(c.toLowerCase())?{ok:!0,input:b}:{ok:!1,reason:"unresolvable_answer",message:"No option label matches the answer. Answer with an option number (yes/no is not resolved on a numbered picker — Issue #1681)."}}},11456:(a,b,c)=>{c.d(b,{p:()=>f,z:()=>e});let d=null;function e(a,b){let c=d;d=a;try{return b()}finally{d=c}}function f(a,b){return a??d??b}},18778:(a,b,c)=>{c.d(b,{T:()=>i});var d=c(56791),e=c(41364),f=c(72626),g=c(85038);let h=(0,f.h)("conversation-logger");async function i(a,b,c,f="claude",j={}){let{pollerKey:k}=j,l=void 0===k?void 0:()=>(0,g._B)(k);if(l&&!l())return void h.info("conversation:log-refused",{worktreeId:b,cliToolId:f});let m=(0,d.getLastUserMessage)(a,b);if(m)try{let a=await (0,e.hM)(b,m.content,c,f,{mayWrite:l});null===a&&h.info("conversation:log-refused",{worktreeId:b,cliToolId:f})}catch(a){h.error("conversation:log-failed",{error:a instanceof Error?a.message:String(a)})}}},21684:(a,b,c)=>{c.d(b,{U:()=>h});var d=c(33873),e=c.n(d),f=c(87447),g=c(8004);function h(){let a=e().join(process.cwd(),"data","logs");return(0,g.T)((0,f._p)("CM_LOG_DIR"),a,"CM_LOG_DIR")}},21894:(a,b,c)=>{c.d(b,{Ip:()=>l,RF:()=>p,dD:()=>m,oD:()=>n,u2:()=>q,x_:()=>o});var d=c(24455),e=c(75760),f=c(36925),g=c(27675),h=c(77466),i=c(55511);let j=(0,f.v)("__autoYesDecisions",()=>new Map);function k(a){return(0,i.createHash)("sha256").update(JSON.stringify([(0,g.GR)(a.promptData),function(a){let b=(0,h.lP)(a);return null===b?null:b.split("\n")}(a.promptData),a.callId??null])).digest("hex").slice(0,32)}function l(a,b,c=Date.now()){j.set(a,{state:b.state,reason:"withheld"===b.state?b.reason:null,confirmation:k(b),grant:b.grant,epoch:b.epoch,at:c})}function m(a,b,c=Date.now()){let d=j.get(a);return void 0===d||"answering"!==d.state||d.grant!==b.grant||d.epoch!==b.epoch||d.confirmation!==k(b)?(j.delete(a),!1):(j.set(a,{...d,at:c}),!0)}function n(a){j.delete(a)}function o(a){for(let b of(0,d._9)([...j.keys()],a))j.delete(b)}function p(){j.clear()}function q(a){let b=a.now??Date.now(),{compositeKey:c,grant:d,promptData:f}=a,h=null==f?null:k({promptData:f,callId:a.callId}),i={state:"none",reason:null,observedAt:b,confirmation:h};if(null==f||!d?.enabled)return i;if(!a.pollerActive)return{state:"withheld",reason:e.ZJ,observedAt:b,confirmation:h};let l=j.get(c);return void 0===l||l.grant!==d||l.epoch!==(0,g.cr)(c)||l.confirmation!==h||b-l.at>3e4?i:{state:l.state,reason:l.reason,observedAt:b,confirmation:h}}},28480:(a,b,c)=>{c.d(b,{B9:()=>w,Bm:()=>q,TS:()=>y,Tq:()=>t,hB:()=>x,mQ:()=>o,r4:()=>r,t1:()=>s,vb:()=>v});var d=c(88807),e=c(56791),f=c(43015),g=c(18778),h=c(72626),i=c(71080),j=c(28918),k=c(31517),l=c(36925),m=c(85038);let n=(0,h.h)("response-poller"),o=k.sD.reduce((a,b)=>a+b,0),p=(0,l.v)("__pendingScrapedResponses",()=>new Map);function q(a){return p.has(a)}function r(a,b){if(!(0,m._B)(a)){let a=(0,m.Bh)();return n.info("pending-scrape-hold-refused",{worktreeId:b.worktreeId,cliToolId:b.cliToolId,instanceId:b.instanceId,generation:a?.generation}),!1}let c=p.get(a);return c?c.content=b.content:p.set(a,b),!0}function s(a){(0,m._B)(a)&&p.delete(a)}function t(a,b){if(!(0,m._B)(a))return!1;let c=p.get(a);return!!c&&(p.delete(a),u(c,b))}function u(a,b){try{let c=(0,d.getDbInstance)(),h=(0,e.createMessage)(c,{worktreeId:a.worktreeId,role:"assistant",content:a.content,messageType:"normal",timestamp:a.timestamp,cliToolId:a.cliToolId,instanceId:a.instanceId,summary:a.summary,logFileName:a.logFileName,requestId:a.requestId});return(0,f.broadcastMessage)("message",{worktreeId:a.worktreeId,message:h}),n.info("pending-scrape-flushed",{worktreeId:a.worktreeId,cliToolId:a.cliToolId,instanceId:a.instanceId,reason:b,scrapedLength:a.content.length,heldForMs:Date.now()-a.timestamp.getTime()}),(0,g.T)(c,a.worktreeId,a.content,a.cliToolId).catch(()=>{}),!0}catch(c){return n.warn("pending-scrape-flush-failed",{worktreeId:a.worktreeId,cliToolId:a.cliToolId,instanceId:a.instanceId,reason:b,error:c instanceof Error?c.message:String(c)}),!1}}async function v(a){if(!(0,m._B)(a))return;let b=p.get(a);if(!b||Date.now()<b.expiresAt)return;let c=await (0,j.captureStructuredHistoryTurn)(b.worktreeId,b.cliToolId,b.instanceId,{worktreePath:b.worktreePath,transcriptPathHint:b.transcriptPathHint});if(!(0,m._B)(a)||p.get(a)!==b)return void n.info("pending-scrape-settle-abandoned",{worktreeId:b.worktreeId,cliToolId:b.cliToolId,instanceId:b.instanceId,captured:c});if(c){p.delete(a),(0,i.oE)(a),n.info("pending-scrape-superseded",{worktreeId:b.worktreeId,cliToolId:b.cliToolId,instanceId:b.instanceId,heldForMs:Date.now()-b.timestamp.getTime()});return}p.delete(a),u(b,"hold-expired")}function w(){return Array.from(p.keys())}function x(a,b){let c=p.get(a);return!!c&&(p.set(a,{...c,worktreeId:b}),!0)}function y(a){let b=[];for(let{oldKey:c,newKey:d,newWorktreeId:e}of a){if(c===d)continue;let a=p.get(c);a&&(p.delete(c),b.push({newKey:d,pending:{...a,worktreeId:e}}))}for(let{newKey:a,pending:c}of b){let b=p.get(a);b&&(p.delete(a),u(b,"migration-displaced")),p.set(a,c)}}},34331:(a,b,c)=>{c.d(b,{L:()=>g});var d=c(88807),e=c(73753),f=c(96463);async function g(a,b,c=(0,d.getDbInstance)()){let h=(0,e.getWorktreeById)(c,a);return h?(0,f.s_)(b,h.path):null}},34990:(a,b,c)=>{c.d(b,{A0:()=>n,Bf:()=>function a(b,c,e){let i=e??Date.now(),j=k((0,d.v7)(b,"antigravity",c));if(!j.tracking){let a=void 0===e?(0,f.FD)(b,"antigravity",c):(0,f.FD)(b,"antigravity",c,void 0,e);return{ok:a,cause:a?null:"never",lastReceiptAt:null,firstSeenAt:i,ageMs:null}}let l=(0,f.nh)(b,"antigravity",c),m=j.candidateSeen;j.candidateSeen=!0,null===j.firstSeenAt&&(j.firstSeenAt=i);let n=j.firstSeenAt,o=null===l?null:n-l,p=(a,b=o)=>{let c={ok:null===a,cause:a,lastReceiptAt:l,firstSeenAt:n,ageMs:b};return j.verdict=c,c};if(null===l)return p("never");if(null!==j.acceptedReceiptAt&&l>j.acceptedReceiptAt)return j.firstSeenAt=i,j.clearAt=j.prevReadAt,j.acceptedReceiptAt=null,j.acceptedCallId=null,j.answerSentAt=null,j.answerInterrupted=!1,a(b,c,i);if(j.acceptedReceiptAt===l){if(m||i-l<=f.Wo)return p(null);if(null!==j.answerSentAt&&!(i-j.answerSentAt<=h)){let a=p("outlived");return!0===j.answerInterrupted&&(a.answerInterrupted=!0),a}return p("answered")}if(j.usedReceiptAt===l)return p("used");if(l>n)return p("predates");if(!(Math.max(null!==j.clearAt&&n-j.clearAt<=g?j.clearAt:n,l)-l<=f.Wo)||!(n-l<=f.Wo+5e3))return p(null===o?"never":o>6e4?"lapsed":"late");return j.acceptedReceiptAt=l,j.acceptedCallId=(0,f.nB)(b,"antigravity",c),j.usedReceiptAt=l,p(null)},Bl:()=>p,O3:()=>h,T1:()=>m,jm:()=>o,ls:()=>l,mH:()=>q});var d=c(24455),e=c(36925),f=c(77244);let g=7e3,h=18e3,i=(0,e.v)("__antigravityReceiptObservations",()=>new Map);function j(a){let b=i.get(a);if(void 0!==b){if("object"==typeof b&&null!==b&&"boolean"==typeof b.tracking&&"boolean"==typeof b.candidateSeen&&["firstSeenAt","clearAt","prevReadAt","lastReadAt","acceptedReceiptAt","answerSentAt","usedReceiptAt"].every(a=>{let c;return null===(c=b[a])||"number"==typeof c&&Number.isFinite(c)})&&(null===b.verdict||"object"==typeof b.verdict)&&(void 0===b.answerInterrupted||"boolean"==typeof b.answerInterrupted)&&(void 0===b.acceptedCallId||null===b.acceptedCallId||"string"==typeof b.acceptedCallId))return b;i.delete(a)}}function k(a){let b=j(a);return b||(b={tracking:!1,candidateSeen:!1,firstSeenAt:null,clearAt:null,prevReadAt:null,lastReadAt:null,acceptedReceiptAt:null,acceptedCallId:null,answerSentAt:null,answerInterrupted:!1,usedReceiptAt:null,verdict:null},i.set(a,b)),b}function l(a,b,c=Date.now()){let e=k((0,d.v7)(a,"antigravity",b));null===e.lastReadAt||c-e.lastReadAt<=g||(e.firstSeenAt=null,e.clearAt=null,e.acceptedReceiptAt=null,e.acceptedCallId=null,e.answerSentAt=null,e.answerInterrupted=!1,e.verdict=null),e.tracking=!0,e.candidateSeen=!1,e.prevReadAt=e.lastReadAt,e.lastReadAt=c}function m(a,b,c=Date.now()){let e=j((0,d.v7)(a,"antigravity",b));e&&e.tracking&&!e.candidateSeen&&(e.firstSeenAt=null,e.acceptedReceiptAt=null,e.acceptedCallId=null,e.answerSentAt=null,e.answerInterrupted=!1,e.verdict=null,e.clearAt=c)}function n(a,b,c=Date.now(),e={}){let f=j((0,d.v7)(a,"antigravity",b));f&&null!==f.acceptedReceiptAt&&(void 0===e.forReceiptAt||e.forReceiptAt===f.acceptedReceiptAt)&&(f.answerSentAt=c,f.answerInterrupted=!0===e.interrupted)}function o(a,b){return j((0,d.v7)(a,"antigravity",b))?.acceptedReceiptAt??null}function p(a,b){let c=j((0,d.v7)(a,"antigravity",b));return c&&null!==c.acceptedReceiptAt?c.acceptedCallId??null:null}function q(a,b){return j((0,d.v7)(a,"antigravity",b))?.verdict??null}},35524:(a,b,c)=>{c.d(b,{v7:()=>d.v7,DR:()=>d.DR,LP:()=>d.LP,XK:()=>d.XK,pL:()=>d.pL,GE:()=>d.GE,Ue:()=>d.Ue,aq:()=>d.aq,hN:()=>d.hN,kC:()=>d.kC,xU:()=>Z,bZ:()=>$,W8:()=>d.W8,W5:()=>aL,BS:()=>aN,_i:()=>aM,_C:()=>aO});var d=c(24455),e=c(41733),f=c(91318);c(91536),c(11472),c(94154);var g=c(54490),h=c(16402),i=c(27675),j=c(21894),k=c(51993),l=c(75760),m=c(52767),n=c(88807),o=c(52660),p=c(34331),q=c(63869),r=c(49973),s=c(1363),t=c(12693),u=c(85726),v=c(77093),w=c(93997),x=c(93373),y=c(95595),z=c(30008),A=c(70096),B=c(15044),C=c(36261),D=c(2232),E=c(11456),F=c(72626),G=c(66007),H=c(36925),I=c(77466),J=c(32236),K=c(69082),L=c(71188),M=c(83406),N=c(76877),O=c(48217),P=c(40964),Q=c(27354),R=c(44296),S=c(52277),T=c(40255);function U(a,b,c,d,e){let{worktreeId:f,cliToolId:g,instanceId:h}=a;(0,S.ZS)(f,g,h,b),(0,T.kV)(a,b.reason),(0,I.Cy)(a.pollerState,c,d,{worktreeId:f,cliToolId:g,instanceId:h,...e})}function V(a){return a.length>500?`${a.slice(0,500)}…`:a}function W(a,b){let c;try{c=(0,P.mf)(a,b.worktreeId,b.instanceId)}catch{return!1}return(0,O.mN)(c)||(0,O.to)(c)}let X=(0,H.v)("__autoYesPollerStates",()=>new Map);function Y(a){return X.get(a)}function Z(a){let b=Y(a);return b?.lastServerResponseTimestamp??null}function $(a){return X.has(a)}function _(a,b){let c=aa(a,b);c&&(c.consecutiveErrors=0,c.currentInterval=d.ps)}function aa(a,b){let c=Y(a);if(void 0===b||c===b)return c}function ab(a){return Y(a.compositeKey)===a.pollerState}function ac(a){if(!ab(a))return!1;let b=(0,d.aq)(a.worktreeId,a.cliToolId,a.instanceId);return b===a.grant&&!!b.enabled&&(a.manualAnswerSeq??0)===(0,k.el)(a.compositeKey)&&ad(a)}function ad(a){return(0,i.cr)(a.compositeKey)===a.sessionEpoch}function ae(a){a.duplicateRetryReservation=null}var af=c(34990),ag=c(77244),ah=c(48736),ai=c(91227);let aj=(0,F.h)("auto-yes-poller"),ak=(0,H.v)("__autoYesWithheldNoReceiptLoggedAt",()=>new Map);function al(a,b,c,d=!1,e){"antigravity"===a&&(0,af.A0)(b,c,Date.now(),{interrupted:d,...void 0!==e?{forReceiptAt:e}:{}})}var am=c(84297),an=c(31990);async function ao(a,b,c,d){let e=c??D.FW,f={},h=await (0,H.v)("__captureHeadCutSink",()=>new am.AsyncLocalStorage).run(a=>{f.headCut=a},()=>(0,an.Wh)(a,b,e,d));return{raw:h,clean:(0,g._A)((0,g.aJ)(h)),...void 0!==f.headCut?{headCut:f.headCut}:{}}}var ap=c(53300),aq=c(61878),ar=c(28861);function as(a,b,c,d){let e=at(c,d,b);return void 0===e?a:(0,ap.k7)(a,e)}function at(a,b,c){return void 0===b?void 0:(0,ap.dO)(a,b.windowLines,c,b.headCut)}function au(a){let{worktreeId:b,cliToolId:c,instanceId:e,compositeKey:f,promptData:g,epoch:h,generation:i,startedAt:k}=a,l=()=>i?.grant??(0,d.aq)(b,c,e),m=av(c,b,e).callId??null,n=(a,b)=>{(void 0===i||ac(i))&&(0,j.Ip)(f,{state:a,reason:b,promptData:g,callId:m,grant:l(),epoch:h})};return{answering:()=>n("answering",null),reaffirmAnswering:()=>{if(void 0!==i&&!ac(i))return void(0,j.oD)(f);(0,j.dD)(f,{promptData:g,callId:m,grant:l(),epoch:h})},withheld:a=>{let d=(0,S.gb)(b,c,e);n("withheld",null!==d&&d.at>=k?d.reason:a)}}}function av(a,b,c){if("antigravity"!==a)return{};try{let a=(0,af.Bl)(b,c);return null===a?{}:{callId:a}}catch{return{}}}async function aw(a,b,c){try{return await (0,an.Qj)(a,b,c)==="absent"}catch{return!1}}var ax=c(90166);function ay(a,b){let c=(0,h.j4)(a.promptData,a.dialogGate,a.cliToolId);if("recommended-choice"===(0,h.Xc)(c,b))return{optionRecommendations:a.optionRecommendations}}function az(a,b,c,d){let{promptData:e,frameKey:f,dialogGate:g}=a;U(a,{reason:Q.eS,mode:null,promptType:e.type},`${f}\u0000question`,"poller:auto-yes-skipped-question",{reason:Q.eS,promptType:e.type,dialogKind:g?.dialog?.kind??null,questionKind:d,question:V(e.question),answerMode:b,...c?{atSend:!0}:{}})}function aA(a,b){let{worktreeId:c,cliToolId:e,instanceId:g,pollerState:i,promptData:j,frameKey:k}=a,l=a.answerMode??ax.Rb;if(b){let b;try{b=(0,d.aq)(c,e,g)}catch{var m=a;let{promptData:b,frameKey:c}=m;return U(m,{reason:Q.dr,mode:null,promptType:b.type},`${c}\u0000${Q.dr}\u0000at-send`,"poller:auto-yes-suppressed-by-policy",{reason:Q.dr,mode:null,promptType:b.type,atSend:!0}),!0}if(!b?.enabled)return(0,I.Cy)(i,`${k}\u0000at-send-disabled`,"poller:auto-yes-withheld-at-send",{worktreeId:c,cliToolId:e,instanceId:g,reason:b?.stopReason==="expired"?"expired":"auto-yes-disabled",promptType:j.type}),!0;l=(0,d.Xz)(b);let f=(0,h.j4)(j,a.dialogGate,e);if("careful"===l&&null!==f&&"left-to-human"===(0,h.Xc)(f,l))return az(a,l,!0,f),!0}let n=(0,f.n)(c,e,g,{fresh:!0}),o=(0,ah.sD)(j,n,e,ay(a,l));if(o.suppressedBy){let b=(0,ah._1)(n);return U(a,{reason:o.suppressedBy,mode:b,promptType:j.type,pattern:o.pattern},`${k}\u0000${o.suppressedBy}\u0000${b??""}\u0000${o.pattern??""}`,"poller:auto-yes-suppressed-by-policy",{reason:o.suppressedBy,mode:b,pattern:o.pattern,promptType:j.type,atSend:!0}),!0}return!1}let aB=(0,F.h)("auto-yes-poller");function aC(a,b){let c=aa(a,b);if(c&&(c.consecutiveErrors++,c.currentInterval=(0,d.G)(c.consecutiveErrors),ae(c),c.consecutiveErrors>=D.ul)){let b=(0,d.Ue)(a),c=(0,d.pL)(a);c&&(0,d.XK)(b,c,"consecutive_errors",(0,d.GE)(a)??void 0),aM(a,"consecutive-errors")}}function aD(a){aB.debug("poller:auto-yes-tick-superseded",{worktreeId:a.worktreeId,cliToolId:a.cliToolId,instanceId:a.instanceId,pollerCurrent:ab(a)}),ab(a)&&aI(a)}async function aE(a,b,d,e,f){let{worktreeId:g,cliToolId:h,instanceId:i,compositeKey:j,pollerState:k,promptData:l,promptKey:p}=a,q=void 0===e||ad(e);q&&(!function(a,b,c){let d=aa(a,c);d&&(d.lastServerResponseTimestamp=b)}(j,Date.now(),e?.pollerState),_(j,e?.pollerState),k.lastAnsweredPromptKey=p,k.lastAnsweredAt=Date.now(),k.lastSkipWarnKey=null),aB.info("poller:response-sent",{worktreeId:g,cliToolId:h,instanceId:i,sameSession:q,promptType:l.type,question:V(l.question),answer:d}),q&&(0,m.r)((0,n.getDbInstance)(),g,h,i??h,"prompt_answered_auto",{promptType:l.type});let r=null;try{var s,t,u,w;r=(0,o.recordAnsweredPrompt)((0,n.getDbInstance)(),{worktreeId:g,cliToolId:h,instanceId:i??h,promptData:(s=h,t=b,u=l,w=f,(0,ap.R1)(s,w?.frame??null,{...t,promptData:u},w?.captureTop)??u),answer:d,answeredBy:"auto",content:b.rawContent||b.cleanContent,...q?{}:{pendingSavedAtOrBefore:e.startedAt}})}catch(a){aB.warn("poller:prompt-audit-record-failed",{worktreeId:g,cliToolId:h,instanceId:i,error:(0,v.u1)(a)})}if(r){let a=r;Promise.resolve().then(c.bind(c,43015)).then(({broadcastMessage:b})=>{b(a.created?"message":"message_updated",{worktreeId:g,message:a.message})}).catch(()=>{})}let[{startPolling:x},{broadcastTerminalSnapshotAfterInteraction:y}]=await Promise.all([c.e(2839).then(c.bind(c,95220)),Promise.resolve().then(c.bind(c,99508))]);q&&(void 0===e||ad(e))&&(x(g,h,i),y(g,h,i))}async function aF(a,b,c,m,n,o,s,y,z,A,D,E){let F=(0,d.v7)(a,c,o),G=E??(0,r.TO)(),H=void 0===A?void 0:{windowLines:A,headCut:D},O=z??{start:(0,B.ic)(a,c,o),frameTime:{frameCapturedAt:0,frameFetchedAfterStart:!1}},P=null,X=!1,Y=null,Z=function(a,b,c,e){if(void 0!==e)return(0,d.Xz)(e);try{let e=(0,d.aq)(a,b,c);return e?.enabled?(0,d.Xz)(e):ax.Rb}catch{return"careful"}}(a,c,o,y?.grant),$={compositeKey:F,worktreeId:a,cliToolId:c,instanceId:o,answerMode:Z},_=(0,T.QS)($),aa=Date.now(),ab=!1;try{let r=function(a,b){let c=(0,i.cr)(a);return(b.enterFallbackEpoch??0)!==c&&(b.enterFallbackSentKey=null,b.enterFallbackCandidateKey=null,b.enterFallbackEpoch=c),c}(F,b),{frame:z,promptDetection:A}=function(a,b,c,d,e,f,g,h){let i=(0,aq.zJ)(f??c,b);"antigravity"===b&&(0,af.ls)(a,e);let j=h(c,b,d,f,{worktreeId:a,instanceId:e},i);return"antigravity"===b&&(0,af.T1)(a,e),{frame:i,promptDetection:as(j,b,f??c,g)}}(a,c,m,n,o,s,H,e.$M);if(!A.isPrompt||!A.promptData){(0,j.oD)(F);let d=function(a){let b,{worktreeId:c,cliToolId:d,instanceId:e,compositeKey:g,epoch:h,pollerState:i,frame:j,promptDetection:k,cleanOutput:l,precomputedLines:m,rawOutput:n,captureExtent:o,detectPromptOnCleanFrame:p}=a,q="antigravity"===d?(0,I.C9)(g,h):null,r=()=>b??=as(p(l,d,m,n),d,n??l,o),s="antigravity"===d?(0,I.Y2)(g,h):[],u=s.length>0?r():null,v=u?.isPrompt&&u.promptData?(0,I.pP)(u.promptData):null;if((0,I.ZB)(g,void 0,new Set(null===v?[]:s.filter(a=>(0,I.gD)(a.screenKey,v)))),i.lastAnsweredPromptKey=null,i.lastAnsweredAt=null,"antigravity"===d&&function(a,b,c,d,e){if(!(0,K.VI)(d.lastLines))return!1;if((0,M.Ug)(e)&&!(0,M.Dc)(e))return!0;(0,S.ZS)(a,"antigravity",b,{reason:Q.m0,mode:null,promptType:"multiple_choice"});let f={worktreeId:a,cliToolId:"antigravity",instanceId:b};return(0,T.ss)(f,"antigravity-startup-trust","multiple_choice"),(0,T.kV)(f,Q.m0),(0,I.Cy)(c,"antigravity-startup-trust","poller:auto-yes-skipped-startup-trust",{worktreeId:a,cliToolId:"antigravity",instanceId:b,reason:Q.m0}),!0}(c,e,i,j,t.CLIToolManager.getInstance().getTool(d).getSessionName(c,e)))return null;if(i.lastSkipWarnKey=null,"antigravity"===d&&!k.isPrompt){let a=function(a,b,c,d,e=null){let g=(0,af.mH)(a,b);if(g?.ok)return null;let h=Date.now(),i=d();if(!i.isPrompt||!i.promptData)return null;let j=i.promptData;if((g??=(0,af.Bf)(a,b,h)).ok)return null;if(null!==e&&(0,I.gD)(e,(0,ai.c)(j)))return(0,S.ZS)(a,"antigravity",b,{reason:Q.uZ,mode:null,promptType:j.type}),{promptData:j,reason:Q.uZ,keptPersonHold:!0};let{policy:k,taskId:l}=(0,f.JJ)(a,"antigravity",b),m=(0,ah._1)(k),n=(0,ah.sD)(i.promptData,k,"antigravity"),o=function(a,b,c,d){if("answered"!==c.cause&&"outlived"!==c.cause)return!1;let e=(0,S.gb)(a,"antigravity",b);if(null===e||e.reason===Q.S6||!(e.at>=c.firstSeenAt))return!1;if(e.reason===Q.uZ){let{at:c,...d}=e;return(0,S.ZS)(a,"antigravity",b,d),!0}return Q.PF.has(e.reason)&&!d.suppressedBy&&(0,S.FA)(a,"antigravity",b),!1}(a,b,g,n);n.suppressedBy&&!o&&(0,S.ZS)(a,"antigravity",b,{reason:n.suppressedBy,mode:m,promptType:i.promptData.type,...void 0!==n.pattern?{pattern:n.pattern}:{}});let p=a=>({promptData:j,reason:a}),q=o?Q.uZ:n.suppressedBy;if(!n.suppressedBy&&("answered"===g.cause||o))return p(o?Q.uZ:null);let r=function(a,b){let c=ak.get(a),d=void 0===c||b-c>=6e4;if(d){for(let[a,c]of ak)b-c>=6e4&&ak.delete(a);ak.set(a,b)}return d}(c,h);if(n.suppressedBy){var s;return r&&aj.info("antigravity-autoyes-withheld-by-policy",{worktreeId:a,instanceId:b??"antigravity",reason:n.suppressedBy,mode:m,taskId:l,hint:(s=n.suppressedBy)===Q.dr?"契約の照会に失敗したので答えていない。サーバーログの policy-lookup-failed を確認":s===Q.UT?"質問の推奨の選択肢を 1 つに特定できないので答えていない(基本の判定。契約の判定ではない)。画面で答える":(0,Q.PP)(s)?"今回だけ許可の選択肢を 1 つに特定できないので答えていない(基本の判定。契約の判定ではない)。画面で答える":"契約の autoYes が答えを止めている。契約の autoYes を確認"}),p(q??null)}return(0,S.ZS)(a,"antigravity",b,{reason:Q.S6,mode:null,promptType:i.promptData.type}),r&&aj.info("antigravity-autoyes-withheld-no-hook-receipt",{worktreeId:a,instanceId:b??"antigravity",windowMs:ag.Wo,hint:function(a,b=Date.now()){let c=null===a.ageMs?null:Math.round(a.ageMs/1e3),d=null===a.lastReceiptAt?null:Math.round((b-a.lastReceiptAt)/1e3);switch(a.cause){case"never":return"hook の受信が一度も無いため Auto-Yes は答えなかった。~/.gemini/config/hooks.json の向き先(#2622)を確認";case"late":return`最後の受信から ${c} 秒後に確認が出た(窓 ${ag.Wo/1e3} 秒の外)ため答えなかった。人が答える(auto-yes --disable → prompt --json → respond --expect-screen)。続くなら ~/.gemini/config/hooks.json の向き先(#2622)も確認`;case"lapsed":return`最後の受信は ${d} 秒前で途絶えている(hook が届かなくなった)。hooks.json の向き先(#2622)と agy の再起動を確認`;case"predates":return"確認は最後の受信より前から画面に出ていた(引用か別の確認)ため答えなかった。人が答える";case"used":return"最後の受信は直前の確認に使い済み。この確認に対する受信は無いため答えなかった。人が答える";case"outlived":if(!0===a.answerInterrupted)return`Auto-Yes が最後の受信の確認へ答えを送る途中で送信が止まり(キーの一部が入力に残っている可能性がある)、${af.O3/1e3} 秒を過ぎても確認が画面に残っている。未使用の受信が無いため、もう一度は答えない。人が答える(auto-yes --disable → prompt --json → respond --expect-screen)`;return`Auto-Yes が最後の受信の確認へキーを送ってから ${af.O3/1e3} 秒を過ぎても、確認が画面に残っている。キーで確認が閉じなかったか、新しい受信の無い別の確認と入れ替わった(画面からは区別できない)。未使用の受信が無いため、もう一度は答えない。人が答える(auto-yes --disable → prompt --json → respond --expect-screen)`;default:return"hook の受信記録が直近に無いため Auto-Yes は答えなかった。~/.gemini/config/hooks.json の向き先(#2622)を確認"}}(g,h)}),p(Q.S6)}(c,e,g,r,q?.byPerson?q.screenKey:null);if(q?.byPerson&&a?.keptPersonHold&&(0,I.H8)(g,q,(0,I.pP)(a.promptData)),null!==a){let b={compositeKey:g,worktreeId:c,cliToolId:d,instanceId:e};(0,T.ss)(b,(0,I.VH)(a.promptData),a.promptData.type,av(d,c,e)),null!==a.reason&&(0,T.kV)(b,a.reason)}return a}return null}({worktreeId:a,cliToolId:c,instanceId:o,compositeKey:F,epoch:r,pollerState:b,frame:z,promptDetection:A,cleanOutput:m,precomputedLines:n,rawOutput:s,captureExtent:H,detectPromptOnCleanFrame:e.$M});return null!==d&&null!==d.reason&&au({worktreeId:a,cliToolId:c,instanceId:o,compositeKey:F,promptData:d.promptData,epoch:r,generation:y,startedAt:aa}).withheld(d.reason),"no_prompt"}let D=(0,I.pP)(A.promptData);(0,T.ss)($,(0,I.VH)(A.promptData),A.promptData.type,av(c,a,o));let E=au({worktreeId:a,cliToolId:c,instanceId:o,compositeKey:F,promptData:A.promptData,epoch:r,generation:y,startedAt:aa});if((0,k.yK)(F))return E.withheld(k.gl),"no_answer";let _=(0,u.J)(A.promptData),am=(0,I.hr)(A.promptData);if(b.lastAnsweredPromptKey===_&&null!==b.lastAnsweredAt&&Date.now()-b.lastAnsweredAt<d.UL)return null!==b.lastAnsweredAt&&(b.duplicateRetryReservation={promptKey:_,answeredAt:b.lastAnsweredAt,observedAt:aa}),ab=!0,(0,T.kV)($,"answered-recently"),E.reaffirmAnswering(),"duplicate";!function(a,b){let c=a.duplicateRetryReservation;return null!=c&&c.promptKey===b&&c.answeredAt===a.lastAnsweredAt}(b,_)&&ae(b);let an={worktreeId:a,cliToolId:c,instanceId:o,compositeKey:F,pollerState:b,promptData:A.promptData,promptKey:_,frameKey:am,...void 0!==A.optionRecommendations?{optionRecommendations:A.optionRecommendations}:{},answerMode:Z};if(function(a,b,c){let{worktreeId:d,cliToolId:e,instanceId:f,compositeKey:g,pollerState:h,promptData:i,frameKey:j}=a,k=(0,I.C9)(g,c);if(null!==k){if((0,I.gD)(k.screenKey,b))return(0,I.od)(g,b),U(a,{reason:Q.uZ,mode:null,promptType:i.type},`${j}\u0000partial-answer`,"poller:auto-yes-skipped-partial-answer",{promptType:i.type,stoppedAt:k.at}),!0;(0,I.ZB)(g,k.screenKey)}return!!(0,I.BA)(g,c,b)&&((0,T.kV)(a,"moved-send-in-flight"),(0,I.Cy)(h,`${j}\u0000moved-send-in-flight`,"poller:auto-yes-skipped-moved-send-in-flight",{worktreeId:d,cliToolId:e,instanceId:f,promptType:i.type}),!0)}(an,D,r))return E.withheld("moved-send-in-flight"),"no_answer";let ao=function(a,b){let{cliToolId:c,promptData:d,frameKey:e}=a,f="codex"===c?(0,g.E6)(b):"gemini"===c&&function(a,b){let{promptData:c}=a;if("multiple_choice"!==c.type||!function(a){if("multiple_choice"!==a.type)return!1;let{optionRow:b,minOptionRows:c}=N.g1;return a.options.filter(a=>b.test(`${a.number}. ${a.label}`)).length>=c}(c))return!1;if(W("gemini",a))return!0;let d=c.options.find(a=>a.isDefault);return!(void 0!==d&&N.g1.safeRow.test(`${d.number}. ${d.label}`))||!!(0,N.O5)(N.g1,b.clean)&&(!(0,N.yN)(N.g1,b.clean)||"press"!==(0,N.CZ)(N.g1,b.clean).action)}(a,b)?N.g1.id:"copilot"===c&&function(a,b){let{promptData:c}=a;if("multiple_choice"!==c.type||!L.Ki.every(a=>b.clean.includes(a))||c.options.filter(a=>L.rc.test(a.label)).length<2)return!1;if(W("copilot",a))return!0;let d=c.options.find(a=>a.isDefault);return!(d?.number===1&&"Yes"===d.label&&(0,L.Rx)(b.clean))}(a,b)?"copilot-folder-trust":null;if(f)return U(a,{reason:"agent-launch-dialog",mode:null,promptType:d.type},`${e}\u0000${f}`,"poller:auto-yes-skipped-launch-dialog",{dialog:f,promptType:d.type}),{kind:"left-alone"};if("codex"===c&&(0,J.AD)(b))return U(a,{reason:"unclassified-frame",mode:null,promptType:d.type},`${e}\u0000codex-model-picker`,"poller:auto-yes-skipped-model-picker",{promptType:d.type}),{kind:"left-alone"};if((0,R.A)(c,b))return U(a,{reason:Q.lO,mode:null,promptType:d.type},`${e}\u0000question-confirm-page`,"poller:auto-yes-skipped-question-confirm",{reason:Q.lO,promptType:d.type,question:V(d.question),options:"multiple_choice"===d.type?d.options.map(a=>`${a.number}. ${a.label}`):[...d.options]}),{kind:"left-alone"};let i=(0,h.r_)(c,d.type,b);return i.allowed?(a.dialogGate=i,{kind:"ours"}):{kind:"dialog-gate-refused",dialogGate:i}}(an,z);if("left-alone"===ao.kind)return E.withheld("unclassified-frame"),"no_answer";if("dialog-gate-refused"===ao.kind){var ad=ao.dialogGate;let{promptData:a,frameKey:b}=an;return U(an,{reason:"unclassified-frame",mode:null,promptType:a.type},`${b}\u0000${ad.dialog?.kind??""}\u0000${ad.mode}`,"poller:auto-yes-skipped-unclassified-frame",{promptType:a.type,dialogKind:ad.dialog?.kind??null,answerMode:ad.dialog?.answerMode??null,gateMode:ad.mode}),E.withheld("unclassified-frame"),"no_answer"}if(function(a){let{promptData:b,dialogGate:c,cliToolId:d}=a,e=(0,h.j4)(b,c,d);if(null===e)return!1;let f=a.answerMode??ax.Rb;return"left-to-human"===(0,h.Xc)(e,f)&&(az(a,f,!1,e),!0)}(an))return E.withheld("question-left-to-human"),"no_answer";let ap=function(a){let{worktreeId:b,cliToolId:c,instanceId:d,promptData:e,frameKey:g}=a,h=(0,f.n)(b,c,d),i=(0,ah.sD)(e,h,c,ay(a,a.answerMode??ax.Rb));if(i.suppressedBy){let b=(0,ah._1)(h);U(a,{reason:i.suppressedBy,mode:b,promptType:e.type,pattern:i.pattern},`${g}\u0000${i.suppressedBy}\u0000${b??""}\u0000${i.pattern??""}`,"poller:auto-yes-suppressed-by-policy",{reason:i.suppressedBy,mode:b,pattern:i.pattern,promptType:e.type})}return i.answer}(an);if(null===ap)return E.withheld(l.zW),"no_answer";let aw=t.CLIToolManager.getInstance().getTool(c).getSessionName(a,o),aC=await (0,p.L)(a,aw);if(void 0!==y&&!ac(y))return"no_answer";if(function(a,b,c){let{worktreeId:d,cliToolId:e,instanceId:f,pollerState:g,frameKey:h}=a;return(null===c||"foreign"===c.verdict)&&((0,T.kV)(a,"foreign-session"),(0,I.Cy)(g,`${h}\u0000${b}\u0000${c?"foreign":"worktree_not_found"}`,"poller:auto-yes-skipped-foreign-session",{worktreeId:d,cliToolId:e,instanceId:f,sessionName:b,sessionPath:c?.sessionPath??null,reason:c?"foreign":"worktree_not_found"}),!0)}(an,aw,aC))return E.withheld("foreign-session"),"no_answer";if(aA(an,void 0!==y))return E.withheld(l.zW),"no_answer";E.answering(),P=(0,I.xy)(F,D,y?.sessionEpoch??r,(0,T.mW)($,function(a,b){if("antigravity"===a.cliToolId)return null!==(0,ar.g8)(b)?"L3":"L4";let c=a.dialogGate;return void 0!==c&&c.gated&&c.allowed&&null!==c.dialog?"L3":"L4"}(an,m),{receiptAccepted:"antigravity"===c})),Y="antigravity"===c?(0,af.jm)(a,o):null;let aD={episodeId:(0,C._v)(a,c,o)?.episodeId??null,version:(0,C.cx)(a,c,o)};X=!0;let aF={sessionName:aw,answer:ap,cliToolId:c,promptData:A.promptData,...void 0!==y?{stillCurrent:()=>ac(y)}:{},readMark:G};Object.defineProperty(aF,"stillAllowedAtSend",{value:()=>!aA(an,void 0!==y),enumerable:!1});try{await (0,q.tV)(aF)}finally{(0,w.gm)(aw)}return X=!1,(0,T._M)(P.ledger,"ok",{expired:"expired"===P.state}),(0,I.pE)(P,!1),al(c,a,o,!1,Y),(void 0===y||ac(y))&&function(a,b,c,d){let{worktreeId:e,cliToolId:f,instanceId:g,pollerState:h,promptData:i}=a;try{if(!function(a,b,c,d){if(null===a.episodeId)return(0,C.cx)(b,c,d)===a.version;let e=(0,C._v)(b,c,d);return e?.episodeId===a.episodeId&&((0,C.cx)(b,c,d)===a.version||"screen"!==e.binding.kind)}(d,e,f,g))return void aB.debug("poller:answer-target-moved",{worktreeId:e,cliToolId:f,instanceId:g,target:d.episodeId});let a=(0,B.cY)({worktreeId:e,cliToolId:f,instanceId:g,observer:"auto-yes-poller",start:c.start,reading:(0,x.Yc)(i),...c.frameTime,freshPrompt:!0,lastAnswer:h.lastAnswer??null}),j="ignored"===a.action?null:(0,C._v)(e,f,g);h.lastAnswer=null===j?null:{episodeId:j.episodeId,screenKey:b,at:a.at}}catch(a){h.lastAnswer=null,aB.debug("poller:waiting-observation-failed",{worktreeId:e,cliToolId:f,instanceId:g,error:(0,v.u1)(a)})}}(an,D,O,aD),await aE(an,A,ap,y,{frame:z,captureTop:at(s??m,H,c)}),"responded"}catch(b){return(void 0===y||ac(y))&&(0,j.oD)(F),function(a,b){let{worktreeId:c,cliToolId:d,instanceId:e,compositeKey:f,generation:g,attempt:h,sendInFlight:i,receiptEpisode:j}=b,k=a instanceof Error&&"keysSent"in a?!!a.keysSent:null,l=a instanceof Error&&"answerDelivery"in a?a.answerDelivery:null,m=!0===k||"indeterminate"===l;return(null!==h&&i&&(0,T._M)(h.ledger,!0===k?"partial":!1===k?"no-keys-sent":"failed",{expired:"expired"===h.state}),void 0===g||ac(g))?a instanceof Error&&"PromptAnswerNotDeliveredError"===a.name?(null!==h&&(0,I.pE)(h,!1),i&&al(d,c,e,!0,j),aB.info("poller:auto-yes-answer-not-delivered",{worktreeId:c,cliToolId:d,instanceId:e,skip:a.skip}),"no_answer"):(null!==h&&(0,I.pE)(h,m),i&&al(d,c,e,!0,j),aC(f,g?.pollerState),aB.warn("poller:detect-respond-error",{worktreeId:c,cliToolId:d,instanceId:e,delivery:l}),"error"):(null!==h&&(0,I.pE)(h,m),i&&al(d,c,e,!0,j),aB.info("poller:auto-yes-answer-abandoned",{worktreeId:c,cliToolId:d,instanceId:e,keysSent:k,delivery:l}),"no_answer")}(b,{worktreeId:a,cliToolId:c,instanceId:o,compositeKey:F,generation:y,attempt:P,sendInFlight:X,receiptEpisode:Y})}finally{(0,T.g)($,_),ab||ae(b)}}async function aG(a,b,c,e){let f=(0,d.v7)(a,b,c),h=Y(f);if(void 0!==e&&h!==e||"valid"!==function(a,b){if(!b)return"stopped";let c=(0,d.Ue)(a),e=(0,d.pL)(a);if(!e)return aM(a,"invalid-key"),"expired";let f=(0,d.GE)(a)??void 0,g=(0,d.aq)(c,e,f);return g?.enabled?"valid":(aM(a,g?.stopReason==="expired"?"expired":"not-enabled"),"expired")}(f,h))return;let j=(0,d.aq)(a,b,c);if(!j?.enabled)return;let l={compositeKey:f,worktreeId:a,cliToolId:b,instanceId:c,pollerState:h,grant:j,sessionEpoch:(0,i.cr)(f),startedAt:Date.now(),manualAnswerSeq:(0,k.el)(f)};void 0!==h.sessionWaitTickAt&&(h.sessionWaitTickRanAt=l.startedAt);let m=(0,B.ic)(a,b,c);try{let e=(0,r.TO)(),i=j.stopPattern?D.FW:D.Ke,{frame:{raw:k,clean:n,headCut:o},frameTime:p}=await (0,B.IW)(()=>ao(a,b,i,c));if(!ac(l))return void aD(l);h.waitingForSession&&(h.waitingForSession=!1,h.sessionAppearedAt=l.startedAt,aB.info("poller:session-appeared",{worktreeId:a,cliToolId:b,instanceId:c}));let q=n.split("\n");if(function(a,b,c){if(b.stopCheckBaselineLength<0)return b.stopCheckBaselineLength=c.length,!1;let e=b.stopCheckBaselineLength;if(c.length>e){let f=c.substring(e);return b.stopCheckBaselineLength=c.length,(0,d.Cs)(a,f,a=>aM(a,"stop-pattern"))}return c.length<e&&(b.stopCheckBaselineLength=c.length),!1}(f,h,n))return;let s=await aF(a,h,b,n,q,c,k,l,{start:m,frameTime:p},i,o,e);if(!ac(l))return void aD(l);if("error"!==s&&_(f,l.pollerState),"responded"===s)return void aI(l,d.ZO);if("no_prompt"===s){aH({worktreeId:a,cliToolId:b,instanceId:c,start:m,frameTime:p,pollerState:l.pollerState,rawOutput:k});let e=q.slice(-d.Re).join("\n");if((0,g.ut)(b,e))return void aI(l,D.QN)}}catch(g){let e=await aw(a,b,c);if(!ac(l))return void aD(l);if(e){ae(l.pollerState),aH({worktreeId:a,cliToolId:b,instanceId:c,start:m,frameTime:{frameCapturedAt:0,frameFetchedAfterStart:!1},pollerState:l.pollerState,rawOutput:null}),h.waitingForSession||(h.waitingForSession=!0,aB.info("poller:waiting-for-session",{worktreeId:a,cliToolId:b,instanceId:c})),aI(l,d.BT,{sessionWait:!0});return}aC(f,l.pollerState),aB.warn("poller:poll-error",{worktreeId:a,cliToolId:b,instanceId:c,error:(0,v.u1)(g)})}aI(l)}function aH(a){let{worktreeId:b,cliToolId:c,instanceId:d}=a;try{let e={kind:"gone"};if(null!==a.rawOutput){let f=a.pollerState.lastServerResponseTimestamp,g=f?new Date(f):void 0,h=(0,y.WC)(a.rawOutput,c,g),{structured:i}=(0,z.xF)({worktreeId:b,cliToolId:c,instanceId:d,scraper:h});e=(0,x.ik)({cliToolId:c,output:a.rawOutput,lastOutputTimestamp:g,structuredWaiting:null!==i,structuredSince:i?.at??null,apiAnswerable:(0,z.$G)(i,(0,A.VM)(c).capabilities.eventIdentity),verdict:h})}(0,B.cY)({worktreeId:b,cliToolId:c,instanceId:d,observer:"auto-yes-poller",start:a.start,reading:e,...a.frameTime,lastAnswer:a.pollerState.lastAnswer??null})}catch(a){aB.debug("poller:waiting-observation-failed",{worktreeId:b,cliToolId:c,instanceId:d,error:(0,v.u1)(a)})}}function aI(a,b,c={}){if(!ab(a))return;let{worktreeId:e,cliToolId:f,instanceId:g,pollerState:h}=a,i=Math.max(b??h.currentInterval,d.ps);h.sessionWaitTickAt=!0===c.sessionWait?Date.now()+i:void 0,aK(a.compositeKey);let j=setTimeout(()=>{aK(a.compositeKey,j),aG(e,f,g,h)},i);h.timerId=j,!0===c.sessionWait&&function(a,b){let{compositeKey:c,worktreeId:e,cliToolId:f,instanceId:g,pollerState:h}=a,i=t.CLIToolManager.getInstance().getTool(f).getSessionName(e,g),j=(0,s.GJ)(i,()=>{let i=aJ.get(c);void 0!==i&&i.timerId===b&&(aJ.delete(c),ab(a)&&h.timerId===b&&(clearTimeout(b),aB.info("poller:session-created-wake",{worktreeId:e,cliToolId:f,instanceId:g}),aI(a,d.ps,{sessionWait:!0})))});aJ.set(c,{timerId:b,unsubscribe:j})}(a,j)}let aJ=(0,H.v)("__autoYesSessionWaitWakes",()=>new Map);function aK(a,b){let c=aJ.get(a);void 0!==c&&(void 0===b||c.timerId===b)&&(aJ.delete(a),c.unsubscribe())}function aL(a,b,c){if(!(0,G.h6)(a))return{started:!1,reason:"invalid worktree ID"};let e=c??b;if((0,d.eK)())return{started:!1,reason:"server shutting down"};let g=(0,d.aq)(a,b,e);if(!g?.enabled)return{started:!1,reason:"auto-yes not enabled"};let h=(0,d.v7)(a,b,e),i=Y(h);if(!i&&X.size>=d.fC)return{started:!1,reason:"max concurrent pollers reached"};if(i&&i.cliToolId===b)return{started:!0,reason:"already_running"};i&&aM(h,"replaced");let j={timerId:null,cliToolId:b,instanceId:e,consecutiveErrors:0,currentInterval:d.ps,lastServerResponseTimestamp:null,lastAnsweredPromptKey:null,lastAnsweredAt:null,stopCheckBaselineLength:-1,lastSkipWarnKey:null};return X.set(h,j),(0,f.ie)(h),j.timerId=setTimeout(()=>{aG(a,b,e,j)},d.ps),aB.info("poller:started",{worktreeId:a,cliToolId:b,instanceId:e}),{started:!0}}function aM(a,b){(0,i.MR)(a),(0,j.oD)(a),(0,T.Xk)(a,(0,E.p)(b,"unspecified"));let c=Y(a);c&&(c.timerId&&clearTimeout(c.timerId),aK(a),X.delete(a),(0,f.ie)(a),aB.info("poller:stopped",{compositeKey:a,reason:(0,E.p)(b,"unspecified")}))}function aN(){let a=(0,E.p)(void 0,"shutdown");for(let[b,c]of X.entries())c.timerId&&clearTimeout(c.timerId),aK(b),(0,f.ie)(b),(0,T.Xk)(b,a),aB.info("poller:stopped",{compositeKey:b,reason:a});X.clear(),(0,i.NR)(),(0,j.RF)(),(0,I.k6)()}function aO(a,b){(0,d._9)(Array.from(X.keys()),a).forEach(a=>aM(a,b?.reason)),(0,i.vR)(a),(0,j.x_)(a),(0,T._F)(a,(0,E.p)(b?.reason,"unspecified")),b?.keepPartialAnswers||(0,I.SG)(a)}},40043:(a,b,c)=>{c.d(b,{AD:()=>l,Q4:()=>h,ox:()=>k,xG:()=>m});var d=c(37717),e=c(95375),f=c(36925);let g=new Set([d.g.NO_RECENT_OUTPUT,d.g.UNKNOWN_FRAME,d.g.DEFAULT]);function h(a,b){return"running"===a&&g.has(b)}let i=e.STRUCTURED_STATE_MAX_AGE_MS,j=(0,f.v)("__lastKnownStatusByKey",()=>new Map);function k(a,b,c=Date.now()){for(let[a,b]of j)c-b.at>=i&&j.delete(a);for(;j.size>512;){let a=j.keys().next();if(a.done)break;j.delete(a.value)}"positive"===b.evidence&&(j.delete(a),j.set(a,{status:b.status,reason:b.reason,at:c}))}function l(a,b=Date.now()){let c=j.get(a);return void 0===c?null:b-c.at>=i?(j.delete(a),null):c}function m(a){j.delete(a)}},41364:(a,b,c)=>{c.d(b,{Gv:()=>o,hM:()=>n});var d=c(79748),e=c.n(d),f=c(33873),g=c.n(f),h=c(1634),i=c(21684),j=c(72626),k=c(15194);function l(a="claude"){return g().join((0,i.U)(),a)}async function m(a="claude"){let b=l(a);try{await e().access(b)}catch{await e().mkdir(b,{recursive:!0})}}async function n(a,b,c,d="claude",f={}){await m(d);let i=function(a,b="claude"){let c=(0,h.GP)(new Date,"yyyy-MM-dd"),d=`${a}-${c}.md`,e=l(b);return g().join(e,d)}(a,d),j=(0,h.GP)(new Date,"yyyy-MM-dd HH:mm:ss"),o="";try{o=await e().readFile(i,"utf-8")}catch{let b=(0,k.hR)(d)?k.ef[d]:d;o=`# ${b} Conversation Log: ${a}
1
+ "use strict";exports.id=1656,exports.ids=[1656],exports.modules={60:(a,b,c)=>{c.d(b,{QM:()=>h,V0:()=>e,bE:()=>g,qG:()=>f});var d=c(30741);function e(a){let b=(0,d.x7)(a),c=(0,d.M4)(a,b);return{chromeStart:b,echoEnd:c,start:c+1,end:b>=0?b:a.length,headTruncated:c<0}}function f(a){let b=a.split("\n"),c=e(b.map(d.aJ)),f=c.chromeStart>=0?d.zs:d.sx;return c.start>=c.end?{turn:"",skipPatterns:f}:{turn:b.slice(c.start,c.end).join("\n"),skipPatterns:f}}function g(a){let b=a.split("\n"),c=e(b),f=c.start>=c.end?"":b.slice(c.start,c.end).join("\n");return d.$t.test(f)&&!(0,d.cP)(a)&&!d.Ty.test(a)}function h(a,b,c,d,e,f=!1){if(a=Math.max(0,a),"opencode"===d||"copilot"===d||f){let a=e(b);return a>=0?a+1:0}if("antigravity"===d||"command-code"===d){let c=e(b);return c>=0?c+1:Math.max(0,a)}if(a>=b||c){let a=e(40);return a>=0?a+1:0}if("codex"===d)return Math.max(0,a);if(a>=b-5){let a=e(50);return a>=0?a+1:Math.max(0,b-40)}return Math.max(0,a)}},4803:(a,b,c)=>{c.d(b,{H2:()=>i,eM:()=>f,kN:()=>e,tP:()=>l});let d=/^\[[ xX\u2714]\] /;function e(a){return a.some(a=>d.test(a.label))}function f(a){return!0===a.multiSelect||e(a.options)}let g=/^yes\b/i,h=[/^no\b/i,/\bdeny\b/i];class i extends Error{constructor(a){super(a),this.name="PromptAnswerResolutionError"}}function j(a){return h.some(b=>b.test(a))}function k(a){return g.test(a)&&!j(a)}function l(a){let{answer:b,useDefault:c,promptData:d,fallbackPromptType:e}=a;if(c){if(d?.type==="multiple_choice"){if(f(d))throw new i('Multi-select (checkbox) prompts have no default answer: the cursor marks the row a key would toggle, not a choice. Answer with the option numbers you want ticked, comma-separated (for example "1,3").');let a=function(a){let b=a.find(a=>a.isDefault)??a.find(a=>1===a.number)??a[0];if(!b)throw new i("The prompt has no options to select a default from.");return b}(d.options);return{input:String(a.number),resolved:{via:"default",optionNumber:a.number,optionLabel:a.label}}}if(d?.type==="yes_no"){if(d.defaultOption)return{input:d.defaultOption,resolved:{via:"default",optionLabel:d.defaultOption}};throw new i("The yes/no prompt declares no default option.")}throw new i("Cannot select the default option: no active prompt was detected.")}let g=b??"",h=function(a){let b=a.trim().toLowerCase();return"yes"===b||"y"===b?"yes":"no"===b||"n"===b?"no":null}(g);if(null===h)return{input:g};if(d?.type==="multiple_choice"){let a=function(a,b){let c=a.options;if(f(a))throw new i('Multi-select (checkbox) prompts cannot be answered with yes/no. Answer with the option numbers you want ticked, comma-separated (for example "1,3").');let d="yes"===b?k:j,e=c.filter(a=>d(a.label));if(0===e.length)throw new i(`No option label matches "${b}". Answer with an option number.`);return e.reduce((a,b)=>a.number<=b.number?a:b)}(d,h);return{input:String(a.number),resolved:{via:"semantic",optionNumber:a.number,optionLabel:a.label}}}if(!d&&"multiple_choice"===e)throw new i("Cannot resolve yes/no: the prompt is multiple choice but its options could not be read.");return{input:g}}},8988:(a,b,c)=>{c.d(b,{R:()=>g});let d=/📄 Session log: (.+?\/([^\/\s]+\.jsonl))/,e=/Request ID: ([^\s\n]+)/,f=/Summary: (.+?)(?:\n─|$)/s;function g(a){let b={content:a},c=d.exec(a);c&&(b.logFileName=c[2],b.logFilePath=c[1]);let g=e.exec(a);g&&(b.requestId=g[1]);let h=f.exec(a);return h&&(b.summary=h[1].trim()),b}},9131:(a,b,c)=>{c.d(b,{BN:()=>j,G4:()=>l,Hv:()=>n,It:()=>h,Pw:()=>e,WG:()=>i,cC:()=>o,if:()=>g,q5:()=>r});let d="answer_mode_keys";class e extends Error{constructor(a,b,c){super(`Refused to send "${b}" to ${a}: its ${c.kind} dialog takes '${c.answerMode}' input, not a typed number (${d}). The digit would be swallowed and the Enter after it would confirm whatever is highlighted. Nothing was sent.`),this.name="PromptAnswerRejectedError",this.reason=d,this.dialogKind=c.kind,this.answerMode=c.answerMode}}let f="unresolvable_answer";class g extends Error{constructor(a,b,c){super(function(a,b,c){let d=b.join(", ");return void 0===c?`Refused to type free text at ${a}'s prompt: option ${d} reads as taking your own words, but on this screen it is a menu row, not a text field. The text would be ignored and the Enter after it would confirm whatever is highlighted. Nothing was sent. Answer with the option number, then send the instructions as a message.`:`Refused to type free text at ${a}'s prompt: option ${d} is the text field on this screen, but the cursor is on option ${c.cursorOptionNumber}. The text would be ignored and the Enter after it would confirm option ${c.cursorOptionNumber}. Nothing was sent. Move the cursor onto the text field in the terminal and send the text again — sending its option number does not move the cursor, it selects nothing.`}(a,b,c)),this.name="FreeTextAnswerRejectedError",this.reason=f,this.optionNumbers=b,this.kind=c?.kind??"menu_row",this.cursorOptionNumber=c?.cursorOptionNumber??null}}class h extends Error{constructor(a,b){super(`Refused to type free text at ${a}'s prompt: none of its ${b} options is a text field on this screen, so the text would be ignored and the Enter after it would confirm whatever is highlighted. Nothing was sent. Answer with the option number instead, then send your instructions as a separate message.`),this.name="FreeTextAtChoiceOnlyPromptError",this.reason=f,this.optionCount=b}}class i extends Error{constructor(a,b,c){super(`The question was not submitted (${a}). `+(b?"Some boxes may have been ticked, but the confirm row was not pressed, so the question is still on screen exactly as the pane shows it. ":"No key was sent. ")+`Requested selection: ${c.join(", ")}. Check the terminal and answer it there, or `+"retry once the screen has settled."),this.name="MultiSelectAnswerRejectedError",this.reason="multi_select_not_committed",this.stage=a,this.keysSent=b,this.wanted=c}}let j="answer_not_delivered",k={"target-changed":"the prompt it was for was no longer on screen once the input in progress had finished","answer-withheld":"the answer was no longer allowed once the input in progress had finished","recheck-failed":"the screen could not be read again once the input in progress had finished","input-lock-timeout":"another input held the session past the wait","session-replaced":"the session was replaced while the answer waited","input-lock-lost":"the session's input was handed to another writer"};class l extends Error{constructor(a,b){super(`The answer was not sent to ${b}: ${k[a]} (${a}). Nothing was typed.`),this.skip=a,this.reason=j,this.keysSent=!1,this.name="PromptAnswerNotDeliveredError"}}let m="answer_input_lost";class n extends Error{constructor(a){super(`The answer to ${a} was stopped part-way: the session was replaced while the answer held its input. Some keys were sent; the rest were not (${m}, Issue #3952).`),this.reason=m,this.keysSent=!0,this.name="PromptAnswerInputLostError"}}class o extends Error{constructor(a){super(`Prompt answer stopped by its caller (${a?"some keys were sent":"no key was sent"})`),this.keysSent=a,this.name="PromptAnswerAbortedError"}}function p(a,b,c){return[a,{facts:b,status:c}]}let q=new Map([p(e,a=>({reason:a.reason,keysSent:!1}),{"prompt-response":200,respond:500}),p(g,a=>({reason:a.reason,keysSent:!1}),{"prompt-response":200,respond:500}),p(h,a=>({reason:a.reason,keysSent:!1}),{"prompt-response":200,respond:500}),p(i,a=>({reason:a.reason,keysSent:a.keysSent}),{"prompt-response":200,respond:500}),p(l,a=>({reason:a.reason,keysSent:a.keysSent}),{"prompt-response":200,respond:409}),p(n,a=>({reason:a.reason,keysSent:a.keysSent}),{"prompt-response":500,respond:500}),p(o,a=>({reason:"answer_aborted",keysSent:a.keysSent}),{"prompt-response":500,respond:500})]);function r(a,b){let c=function(a){if(!(a instanceof Error))return null;for(let[b,c]of q)if(a instanceof b)return c;return null}(a);if(null===c)return null;let{reason:d,keysSent:e}=c.facts(a),f=c.status[b];return 200===f?{status:f,body:{success:!1,reason:d,message:a.message,keysSent:e}}:f>=500?{status:f,body:{error:`Failed to send answer to tmux: ${a.message}`,reason:d,keysSent:e}}:{status:f,body:{error:a.message,reason:d,keysSent:e}}}},9516:(a,b,c)=>{c.d(b,{Hu:()=>i,Ll:()=>j});let d=["type something","chat about this"],e=/^\s*\[[ xX]\]\s*/,f=/(?:…|\.\.\.)\s*$/,g=new Set(["yes","y","no","n"]);function h(a){return a.replace(e,"").replace(f,"").replace(/\s+/g," ").trim().toLowerCase()}function i(a,b){if("multiple_choice"!==a.type)return null;let c=function(a,b){let c=h(b);if(""===c)return null;let d=a.questions.map((a,b)=>({entry:a,index:b})).filter(({entry:a})=>(function(a,b){let[c,d]=a.length<=b.length?[a,b]:[b,a];return c.length<8?c===d:d.includes(c)})(h(a.question),c));return 1===d.length?d[0]:null}(b,a.question);if(null===c)return null;let{entry:f,index:g}=c,i=new Map(a.options.map(a=>[a.number,a])),j=[];for(let[a,b]of f.choices.entries()){var k;let c=a+1,d=i.get(c);if(!d||!function(a,b){if(""===a||""===b)return!1;if(a===b)return!0;let[c,d]=a.length<=b.length?[a,b]:[b,a];return!(c.length<8)&&d.startsWith(c)}(h(d.label),h(b.label)))return null;j.push({...d,label:`${(k=d.label,e.exec(k)?.[0]??"")}${b.label}`,...b.description?{description:b.description}:{}})}let l=[];for(let b of a.options)!(b.number<=f.choices.length)&&function(a){let b=h(a);return d.some(a=>b===a||b.startsWith(a))}(b.label)&&(j.push(b),l.push(b.number));return j.sort((a,b)=>a.number-b.number),{...a,question:f.question,options:j,isAskUserQuestion:!0,askUserQuestion:{...f.header?{header:f.header}:{},multiSelect:f.multiSelect,questionIndex:g,questionCount:b.questions.length,metaOptionNumbers:l}}}function j(a,b){let c=b.trim();if(/^\d+$/.test(c)){let b=Number.parseInt(c,10);return a.options.some(a=>a.number===b)?{ok:!0,input:String(b)}:{ok:!1,reason:"answer_out_of_range",message:"The option number is outside the range this prompt offers. Use `commandmate capture <worktree-id> --json` to list the current options."}}let d=function(a,b){let c=h(b);if(""===c)return[];let d=a.filter(a=>h(a.label)===c);return d.length>0?d:c.length<2?[]:a.filter(a=>h(a.label).startsWith(c))}(a.options,c);if(1===d.length){let[a]=d;return{ok:!0,input:String(a.number),resolved:{via:"semantic",optionNumber:a.number,optionLabel:a.label}}}return d.length>1?{ok:!1,reason:"unresolvable_answer",message:"The answer matches more than one option label. Answer with an option number."}:a.options.some(a=>!0===a.requiresTextInput)&&!g.has(c.toLowerCase())?{ok:!0,input:b}:{ok:!1,reason:"unresolvable_answer",message:"No option label matches the answer. Answer with an option number (yes/no is not resolved on a numbered picker — Issue #1681)."}}},11456:(a,b,c)=>{c.d(b,{p:()=>f,z:()=>e});let d=null;function e(a,b){let c=d;d=a;try{return b()}finally{d=c}}function f(a,b){return a??d??b}},15388:(a,b,c)=>{c.d(b,{RJ:()=>f,SQ:()=>g});var d=c(24455);let e=(0,c(36925).v)("__toolInputNormalizations",()=>new Map);function f(a,b,c,g,h,i=Date.now()){e.set((0,d.v7)(a,b,c),{...g,toolName:h,at:i})}function g(a,b,c){return e.get((0,d.v7)(a,b,c))??null}},18778:(a,b,c)=>{c.d(b,{T:()=>i});var d=c(56791),e=c(41364),f=c(72626),g=c(85038);let h=(0,f.h)("conversation-logger");async function i(a,b,c,f="claude",j={}){let{pollerKey:k}=j,l=void 0===k?void 0:()=>(0,g._B)(k);if(l&&!l())return void h.info("conversation:log-refused",{worktreeId:b,cliToolId:f});let m=(0,d.getLastUserMessage)(a,b);if(m)try{let a=await (0,e.hM)(b,m.content,c,f,{mayWrite:l});null===a&&h.info("conversation:log-refused",{worktreeId:b,cliToolId:f})}catch(a){h.error("conversation:log-failed",{error:a instanceof Error?a.message:String(a)})}}},21684:(a,b,c)=>{c.d(b,{U:()=>h});var d=c(33873),e=c.n(d),f=c(87447),g=c(8004);function h(){let a=e().join(process.cwd(),"data","logs");return(0,g.TR)((0,f._p)("CM_LOG_DIR"),a,"CM_LOG_DIR")}},21894:(a,b,c)=>{c.d(b,{Ip:()=>l,RF:()=>p,dD:()=>m,oD:()=>n,u2:()=>q,x_:()=>o});var d=c(24455),e=c(75760),f=c(36925),g=c(27675),h=c(77466),i=c(55511);let j=(0,f.v)("__autoYesDecisions",()=>new Map);function k(a){return(0,i.createHash)("sha256").update(JSON.stringify([(0,g.GR)(a.promptData),function(a){let b=(0,h.lP)(a);return null===b?null:b.split("\n")}(a.promptData),a.callId??null])).digest("hex").slice(0,32)}function l(a,b,c=Date.now()){j.set(a,{state:b.state,reason:"withheld"===b.state?b.reason:null,confirmation:k(b),grant:b.grant,epoch:b.epoch,at:c})}function m(a,b,c=Date.now()){let d=j.get(a);return void 0===d||"answering"!==d.state||d.grant!==b.grant||d.epoch!==b.epoch||d.confirmation!==k(b)?(j.delete(a),!1):(j.set(a,{...d,at:c}),!0)}function n(a){j.delete(a)}function o(a){for(let b of(0,d._9)([...j.keys()],a))j.delete(b)}function p(){j.clear()}function q(a){let b=a.now??Date.now(),{compositeKey:c,grant:d,promptData:f}=a,h=null==f?null:k({promptData:f,callId:a.callId}),i={state:"none",reason:null,observedAt:b,confirmation:h};if(null==f||!d?.enabled)return i;if(!a.pollerActive)return{state:"withheld",reason:e.ZJ,observedAt:b,confirmation:h};let l=j.get(c);return void 0===l||l.grant!==d||l.epoch!==(0,g.cr)(c)||l.confirmation!==h||b-l.at>3e4?i:{state:l.state,reason:l.reason,observedAt:b,confirmation:h}}},27354:(a,b,c)=>{c.d(b,{PF:()=>d,PP:()=>k,S6:()=>n,UT:()=>m,Yy:()=>l,dr:()=>e,eS:()=>i,lO:()=>h,m0:()=>g,uZ:()=>f});let d=new Set(["mode-off","deny-pattern","deny-pattern-unusable","type-not-allowed","policy-lookup-failed","allow-once-unidentified","recommended-option-unidentified"]),e="policy-lookup-failed",f="partial-answer",g="startup-trust-unhandled",h="question-confirm-page",i="question-left-to-human",j=new Set(["allow-once-unidentified","recommended-option-unidentified"]);function k(a){return j.has(a)}let l="allow-once-unidentified",m="recommended-option-unidentified",n="no-hook-receipt"},28480:(a,b,c)=>{c.d(b,{B9:()=>w,Bm:()=>q,TS:()=>y,Tq:()=>t,hB:()=>x,mQ:()=>o,r4:()=>r,t1:()=>s,vb:()=>v});var d=c(88807),e=c(56791),f=c(43015),g=c(18778),h=c(72626),i=c(71080),j=c(28918),k=c(31517),l=c(36925),m=c(85038);let n=(0,h.h)("response-poller"),o=k.sD.reduce((a,b)=>a+b,0),p=(0,l.v)("__pendingScrapedResponses",()=>new Map);function q(a){return p.has(a)}function r(a,b){if(!(0,m._B)(a)){let a=(0,m.Bh)();return n.info("pending-scrape-hold-refused",{worktreeId:b.worktreeId,cliToolId:b.cliToolId,instanceId:b.instanceId,generation:a?.generation}),!1}let c=p.get(a);return c?c.content=b.content:p.set(a,b),!0}function s(a){(0,m._B)(a)&&p.delete(a)}function t(a,b){if(!(0,m._B)(a))return!1;let c=p.get(a);return!!c&&(p.delete(a),u(c,b))}function u(a,b){try{let c=(0,d.getDbInstance)(),h=(0,e.createMessage)(c,{worktreeId:a.worktreeId,role:"assistant",content:a.content,messageType:"normal",timestamp:a.timestamp,cliToolId:a.cliToolId,instanceId:a.instanceId,summary:a.summary,logFileName:a.logFileName,requestId:a.requestId});return(0,f.broadcastMessage)("message",{worktreeId:a.worktreeId,message:h}),n.info("pending-scrape-flushed",{worktreeId:a.worktreeId,cliToolId:a.cliToolId,instanceId:a.instanceId,reason:b,scrapedLength:a.content.length,heldForMs:Date.now()-a.timestamp.getTime()}),(0,g.T)(c,a.worktreeId,a.content,a.cliToolId).catch(()=>{}),!0}catch(c){return n.warn("pending-scrape-flush-failed",{worktreeId:a.worktreeId,cliToolId:a.cliToolId,instanceId:a.instanceId,reason:b,error:c instanceof Error?c.message:String(c)}),!1}}async function v(a){if(!(0,m._B)(a))return;let b=p.get(a);if(!b||Date.now()<b.expiresAt)return;let c=await (0,j.captureStructuredHistoryTurn)(b.worktreeId,b.cliToolId,b.instanceId,{worktreePath:b.worktreePath,transcriptPathHint:b.transcriptPathHint});if(!(0,m._B)(a)||p.get(a)!==b)return void n.info("pending-scrape-settle-abandoned",{worktreeId:b.worktreeId,cliToolId:b.cliToolId,instanceId:b.instanceId,captured:c});if(c){p.delete(a),(0,i.oE)(a),n.info("pending-scrape-superseded",{worktreeId:b.worktreeId,cliToolId:b.cliToolId,instanceId:b.instanceId,heldForMs:Date.now()-b.timestamp.getTime()});return}p.delete(a),u(b,"hold-expired")}function w(){return Array.from(p.keys())}function x(a,b){let c=p.get(a);return!!c&&(p.set(a,{...c,worktreeId:b}),!0)}function y(a){let b=[];for(let{oldKey:c,newKey:d,newWorktreeId:e}of a){if(c===d)continue;let a=p.get(c);a&&(p.delete(c),b.push({newKey:d,pending:{...a,worktreeId:e}}))}for(let{newKey:a,pending:c}of b){let b=p.get(a);b&&(p.delete(a),u(b,"migration-displaced")),p.set(a,c)}}},34331:(a,b,c)=>{c.d(b,{L:()=>g});var d=c(88807),e=c(73753),f=c(96463);async function g(a,b,c=(0,d.getDbInstance)()){let h=(0,e.getWorktreeById)(c,a);return h?(0,f.s_)(b,h.path):null}},34990:(a,b,c)=>{c.d(b,{A0:()=>n,Bf:()=>function a(b,c,e){let i=e??Date.now(),j=k((0,d.v7)(b,"antigravity",c));if(!j.tracking){let a=void 0===e?(0,f.FD)(b,"antigravity",c):(0,f.FD)(b,"antigravity",c,void 0,e);return{ok:a,cause:a?null:"never",lastReceiptAt:null,firstSeenAt:i,ageMs:null}}let l=(0,f.nh)(b,"antigravity",c),m=j.candidateSeen;j.candidateSeen=!0,null===j.firstSeenAt&&(j.firstSeenAt=i);let n=j.firstSeenAt,o=null===l?null:n-l,p=(a,b=o)=>{let c={ok:null===a,cause:a,lastReceiptAt:l,firstSeenAt:n,ageMs:b};return j.verdict=c,c};if(null===l)return p("never");if(null!==j.acceptedReceiptAt&&l>j.acceptedReceiptAt)return j.firstSeenAt=i,j.clearAt=j.prevReadAt,j.acceptedReceiptAt=null,j.acceptedCallId=null,j.answerSentAt=null,j.answerInterrupted=!1,a(b,c,i);if(j.acceptedReceiptAt===l){if(m||i-l<=f.Wo)return p(null);if(null!==j.answerSentAt&&!(i-j.answerSentAt<=h)){let a=p("outlived");return!0===j.answerInterrupted&&(a.answerInterrupted=!0),a}return p("answered")}if(j.usedReceiptAt===l)return p("used");if(l>n)return p("predates");if(!(Math.max(null!==j.clearAt&&n-j.clearAt<=g?j.clearAt:n,l)-l<=f.Wo)||!(n-l<=f.Wo+5e3))return p(null===o?"never":o>6e4?"lapsed":"late");return j.acceptedReceiptAt=l,j.acceptedCallId=(0,f.nB)(b,"antigravity",c),j.usedReceiptAt=l,p(null)},Bl:()=>p,O3:()=>h,T1:()=>m,jm:()=>o,ls:()=>l,mH:()=>q});var d=c(24455),e=c(36925),f=c(77244);let g=7e3,h=18e3,i=(0,e.v)("__antigravityReceiptObservations",()=>new Map);function j(a){let b=i.get(a);if(void 0!==b){if("object"==typeof b&&null!==b&&"boolean"==typeof b.tracking&&"boolean"==typeof b.candidateSeen&&["firstSeenAt","clearAt","prevReadAt","lastReadAt","acceptedReceiptAt","answerSentAt","usedReceiptAt"].every(a=>{let c;return null===(c=b[a])||"number"==typeof c&&Number.isFinite(c)})&&(null===b.verdict||"object"==typeof b.verdict)&&(void 0===b.answerInterrupted||"boolean"==typeof b.answerInterrupted)&&(void 0===b.acceptedCallId||null===b.acceptedCallId||"string"==typeof b.acceptedCallId))return b;i.delete(a)}}function k(a){let b=j(a);return b||(b={tracking:!1,candidateSeen:!1,firstSeenAt:null,clearAt:null,prevReadAt:null,lastReadAt:null,acceptedReceiptAt:null,acceptedCallId:null,answerSentAt:null,answerInterrupted:!1,usedReceiptAt:null,verdict:null},i.set(a,b)),b}function l(a,b,c=Date.now()){let e=k((0,d.v7)(a,"antigravity",b));null===e.lastReadAt||c-e.lastReadAt<=g||(e.firstSeenAt=null,e.clearAt=null,e.acceptedReceiptAt=null,e.acceptedCallId=null,e.answerSentAt=null,e.answerInterrupted=!1,e.verdict=null),e.tracking=!0,e.candidateSeen=!1,e.prevReadAt=e.lastReadAt,e.lastReadAt=c}function m(a,b,c=Date.now()){let e=j((0,d.v7)(a,"antigravity",b));e&&e.tracking&&!e.candidateSeen&&(e.firstSeenAt=null,e.acceptedReceiptAt=null,e.acceptedCallId=null,e.answerSentAt=null,e.answerInterrupted=!1,e.verdict=null,e.clearAt=c)}function n(a,b,c=Date.now(),e={}){let f=j((0,d.v7)(a,"antigravity",b));f&&null!==f.acceptedReceiptAt&&(void 0===e.forReceiptAt||e.forReceiptAt===f.acceptedReceiptAt)&&(f.answerSentAt=c,f.answerInterrupted=!0===e.interrupted)}function o(a,b){return j((0,d.v7)(a,"antigravity",b))?.acceptedReceiptAt??null}function p(a,b){let c=j((0,d.v7)(a,"antigravity",b));return c&&null!==c.acceptedReceiptAt?c.acceptedCallId??null:null}function q(a,b){return j((0,d.v7)(a,"antigravity",b))?.verdict??null}},35524:(a,b,c)=>{c.d(b,{v7:()=>d.v7,DR:()=>d.DR,LP:()=>d.LP,XK:()=>d.XK,pL:()=>d.pL,GE:()=>d.GE,Ue:()=>d.Ue,aq:()=>d.aq,hN:()=>d.hN,kC:()=>d.kC,xU:()=>Z,bZ:()=>$,W8:()=>d.W8,W5:()=>aL,BS:()=>aN,_i:()=>aM,_C:()=>aO});var d=c(24455),e=c(41733),f=c(91318);c(91536),c(11472),c(94154);var g=c(30741),h=c(16402),i=c(27675),j=c(21894),k=c(51993),l=c(75760),m=c(52767),n=c(88807),o=c(52660),p=c(34331),q=c(63869),r=c(49973),s=c(1363),t=c(12693),u=c(85726),v=c(77093),w=c(93997),x=c(93373),y=c(95595),z=c(30008),A=c(70096),B=c(15044),C=c(36261),D=c(2232),E=c(11456),F=c(72626),G=c(66007),H=c(36925),I=c(77466),J=c(32236),K=c(69082),L=c(71188),M=c(83406),N=c(76877),O=c(48217),P=c(40964),Q=c(27354),R=c(44296),S=c(52277),T=c(40255);function U(a,b,c,d,e){let{worktreeId:f,cliToolId:g,instanceId:h}=a;(0,S.ZS)(f,g,h,b),(0,T.kV)(a,b.reason),(0,I.Cy)(a.pollerState,c,d,{worktreeId:f,cliToolId:g,instanceId:h,...e})}function V(a){return a.length>500?`${a.slice(0,500)}…`:a}function W(a,b){let c;try{c=(0,P.mf)(a,b.worktreeId,b.instanceId)}catch{return!1}return(0,O.mN)(c)||(0,O.to)(c)}let X=(0,H.v)("__autoYesPollerStates",()=>new Map);function Y(a){return X.get(a)}function Z(a){let b=Y(a);return b?.lastServerResponseTimestamp??null}function $(a){return X.has(a)}function _(a,b){let c=aa(a,b);c&&(c.consecutiveErrors=0,c.currentInterval=d.ps)}function aa(a,b){let c=Y(a);if(void 0===b||c===b)return c}function ab(a){return Y(a.compositeKey)===a.pollerState}function ac(a){if(!ab(a))return!1;let b=(0,d.aq)(a.worktreeId,a.cliToolId,a.instanceId);return b===a.grant&&!!b.enabled&&(a.manualAnswerSeq??0)===(0,k.el)(a.compositeKey)&&ad(a)}function ad(a){return(0,i.cr)(a.compositeKey)===a.sessionEpoch}function ae(a){a.duplicateRetryReservation=null}var af=c(34990),ag=c(77244),ah=c(48736),ai=c(91227);let aj=(0,F.h)("auto-yes-poller"),ak=(0,H.v)("__autoYesWithheldNoReceiptLoggedAt",()=>new Map);function al(a,b,c,d=!1,e){"antigravity"===a&&(0,af.A0)(b,c,Date.now(),{interrupted:d,...void 0!==e?{forReceiptAt:e}:{}})}var am=c(84297),an=c(31990);async function ao(a,b,c,d){let e=c??D.FW,f={},h=await (0,H.v)("__captureHeadCutSink",()=>new am.AsyncLocalStorage).run(a=>{f.headCut=a},()=>(0,an.Wh)(a,b,e,d));return{raw:h,clean:(0,g._A)((0,g.aJ)(h)),...void 0!==f.headCut?{headCut:f.headCut}:{}}}var ap=c(53300),aq=c(61878),ar=c(28861);function as(a,b,c,d){let e=at(c,d,b);return void 0===e?a:(0,ap.k7)(a,e)}function at(a,b,c){return void 0===b?void 0:(0,ap.dO)(a,b.windowLines,c,b.headCut)}function au(a){let{worktreeId:b,cliToolId:c,instanceId:e,compositeKey:f,promptData:g,epoch:h,generation:i,startedAt:k}=a,l=()=>i?.grant??(0,d.aq)(b,c,e),m=av(c,b,e).callId??null,n=(a,b)=>{(void 0===i||ac(i))&&(0,j.Ip)(f,{state:a,reason:b,promptData:g,callId:m,grant:l(),epoch:h})};return{answering:()=>n("answering",null),reaffirmAnswering:()=>{if(void 0!==i&&!ac(i))return void(0,j.oD)(f);(0,j.dD)(f,{promptData:g,callId:m,grant:l(),epoch:h})},withheld:a=>{let d=(0,S.gb)(b,c,e);n("withheld",null!==d&&d.at>=k?d.reason:a)}}}function av(a,b,c){if("antigravity"!==a)return{};try{let a=(0,af.Bl)(b,c);return null===a?{}:{callId:a}}catch{return{}}}async function aw(a,b,c){try{return await (0,an.Qj)(a,b,c)==="absent"}catch{return!1}}var ax=c(90166);function ay(a,b){let c=(0,h.j4)(a.promptData,a.dialogGate,a.cliToolId);if("recommended-choice"===(0,h.Xc)(c,b))return{optionRecommendations:a.optionRecommendations}}function az(a,b,c,d){let{promptData:e,frameKey:f,dialogGate:g}=a;U(a,{reason:Q.eS,mode:null,promptType:e.type},`${f}\u0000question`,"poller:auto-yes-skipped-question",{reason:Q.eS,promptType:e.type,dialogKind:g?.dialog?.kind??null,questionKind:d,question:V(e.question),answerMode:b,...c?{atSend:!0}:{}})}function aA(a,b){let{worktreeId:c,cliToolId:e,instanceId:g,pollerState:i,promptData:j,frameKey:k}=a,l=a.answerMode??ax.Rb;if(b){let b;try{b=(0,d.aq)(c,e,g)}catch{var m=a;let{promptData:b,frameKey:c}=m;return U(m,{reason:Q.dr,mode:null,promptType:b.type},`${c}\u0000${Q.dr}\u0000at-send`,"poller:auto-yes-suppressed-by-policy",{reason:Q.dr,mode:null,promptType:b.type,atSend:!0}),!0}if(!b?.enabled)return(0,I.Cy)(i,`${k}\u0000at-send-disabled`,"poller:auto-yes-withheld-at-send",{worktreeId:c,cliToolId:e,instanceId:g,reason:b?.stopReason==="expired"?"expired":"auto-yes-disabled",promptType:j.type}),!0;l=(0,d.Xz)(b);let f=(0,h.j4)(j,a.dialogGate,e);if("careful"===l&&null!==f&&"left-to-human"===(0,h.Xc)(f,l))return az(a,l,!0,f),!0}let n=(0,f.n)(c,e,g,{fresh:!0}),o=(0,ah.sD)(j,n,e,ay(a,l));if(o.suppressedBy){let b=(0,ah._1)(n);return U(a,{reason:o.suppressedBy,mode:b,promptType:j.type,pattern:o.pattern},`${k}\u0000${o.suppressedBy}\u0000${b??""}\u0000${o.pattern??""}`,"poller:auto-yes-suppressed-by-policy",{reason:o.suppressedBy,mode:b,pattern:o.pattern,promptType:j.type,atSend:!0}),!0}return!1}let aB=(0,F.h)("auto-yes-poller");function aC(a,b){let c=aa(a,b);if(c&&(c.consecutiveErrors++,c.currentInterval=(0,d.G)(c.consecutiveErrors),ae(c),c.consecutiveErrors>=D.ul)){let b=(0,d.Ue)(a),c=(0,d.pL)(a);c&&(0,d.XK)(b,c,"consecutive_errors",(0,d.GE)(a)??void 0),aM(a,"consecutive-errors")}}function aD(a){aB.debug("poller:auto-yes-tick-superseded",{worktreeId:a.worktreeId,cliToolId:a.cliToolId,instanceId:a.instanceId,pollerCurrent:ab(a)}),ab(a)&&aI(a)}async function aE(a,b,d,e,f){let{worktreeId:g,cliToolId:h,instanceId:i,compositeKey:j,pollerState:k,promptData:l,promptKey:p}=a,q=void 0===e||ad(e);q&&(!function(a,b,c){let d=aa(a,c);d&&(d.lastServerResponseTimestamp=b)}(j,Date.now(),e?.pollerState),_(j,e?.pollerState),k.lastAnsweredPromptKey=p,k.lastAnsweredAt=Date.now(),k.lastSkipWarnKey=null),aB.info("poller:response-sent",{worktreeId:g,cliToolId:h,instanceId:i,sameSession:q,promptType:l.type,question:V(l.question),answer:d}),q&&(0,m.r)((0,n.getDbInstance)(),g,h,i??h,"prompt_answered_auto",{promptType:l.type});let r=null;try{var s,t,u,w;r=(0,o.recordAnsweredPrompt)((0,n.getDbInstance)(),{worktreeId:g,cliToolId:h,instanceId:i??h,promptData:(s=h,t=b,u=l,w=f,(0,ap.R1)(s,w?.frame??null,{...t,promptData:u},w?.captureTop)??u),answer:d,answeredBy:"auto",content:b.rawContent||b.cleanContent,...q?{}:{pendingSavedAtOrBefore:e.startedAt}})}catch(a){aB.warn("poller:prompt-audit-record-failed",{worktreeId:g,cliToolId:h,instanceId:i,error:(0,v.u1)(a)})}if(r){let a=r;Promise.resolve().then(c.bind(c,43015)).then(({broadcastMessage:b})=>{b(a.created?"message":"message_updated",{worktreeId:g,message:a.message})}).catch(()=>{})}let[{startPolling:x},{broadcastTerminalSnapshotAfterInteraction:y}]=await Promise.all([c.e(2839).then(c.bind(c,95220)),Promise.resolve().then(c.bind(c,99508))]);q&&(void 0===e||ad(e))&&(x(g,h,i),y(g,h,i))}async function aF(a,b,c,m,n,o,s,y,z,A,D,E){let F=(0,d.v7)(a,c,o),G=E??(0,r.TO)(),H=void 0===A?void 0:{windowLines:A,headCut:D},O=z??{start:(0,B.ic)(a,c,o),frameTime:{frameCapturedAt:0,frameFetchedAfterStart:!1}},P=null,X=!1,Y=null,Z=function(a,b,c,e){if(void 0!==e)return(0,d.Xz)(e);try{let e=(0,d.aq)(a,b,c);return e?.enabled?(0,d.Xz)(e):ax.Rb}catch{return"careful"}}(a,c,o,y?.grant),$={compositeKey:F,worktreeId:a,cliToolId:c,instanceId:o,answerMode:Z},_=(0,T.QS)($),aa=Date.now(),ab=!1;try{let r=function(a,b){let c=(0,i.cr)(a);return(b.enterFallbackEpoch??0)!==c&&(b.enterFallbackSentKey=null,b.enterFallbackCandidateKey=null,b.enterFallbackEpoch=c),c}(F,b),{frame:z,promptDetection:A}=function(a,b,c,d,e,f,g,h){let i=(0,aq.zJ)(f??c,b);"antigravity"===b&&(0,af.ls)(a,e);let j=h(c,b,d,f,{worktreeId:a,instanceId:e},i);return"antigravity"===b&&(0,af.T1)(a,e),{frame:i,promptDetection:as(j,b,f??c,g)}}(a,c,m,n,o,s,H,e.$M);if(!A.isPrompt||!A.promptData){(0,j.oD)(F);let d=function(a){let b,{worktreeId:c,cliToolId:d,instanceId:e,compositeKey:g,epoch:h,pollerState:i,frame:j,promptDetection:k,cleanOutput:l,precomputedLines:m,rawOutput:n,captureExtent:o,detectPromptOnCleanFrame:p}=a,q="antigravity"===d?(0,I.C9)(g,h):null,r=()=>b??=as(p(l,d,m,n),d,n??l,o),s="antigravity"===d?(0,I.Y2)(g,h):[],u=s.length>0?r():null,v=u?.isPrompt&&u.promptData?(0,I.pP)(u.promptData):null;if((0,I.ZB)(g,void 0,new Set(null===v?[]:s.filter(a=>(0,I.gD)(a.screenKey,v)))),i.lastAnsweredPromptKey=null,i.lastAnsweredAt=null,"antigravity"===d&&function(a,b,c,d,e){if(!(0,K.VI)(d.lastLines))return!1;if((0,M.Ug)(e)&&!(0,M.Dc)(e))return!0;(0,S.ZS)(a,"antigravity",b,{reason:Q.m0,mode:null,promptType:"multiple_choice"});let f={worktreeId:a,cliToolId:"antigravity",instanceId:b};return(0,T.ss)(f,"antigravity-startup-trust","multiple_choice"),(0,T.kV)(f,Q.m0),(0,I.Cy)(c,"antigravity-startup-trust","poller:auto-yes-skipped-startup-trust",{worktreeId:a,cliToolId:"antigravity",instanceId:b,reason:Q.m0}),!0}(c,e,i,j,t.CLIToolManager.getInstance().getTool(d).getSessionName(c,e)))return null;if(i.lastSkipWarnKey=null,"antigravity"===d&&!k.isPrompt){let a=function(a,b,c,d,e=null){let g=(0,af.mH)(a,b);if(g?.ok)return null;let h=Date.now(),i=d();if(!i.isPrompt||!i.promptData)return null;let j=i.promptData;if((g??=(0,af.Bf)(a,b,h)).ok)return null;if(null!==e&&(0,I.gD)(e,(0,ai.c)(j)))return(0,S.ZS)(a,"antigravity",b,{reason:Q.uZ,mode:null,promptType:j.type}),{promptData:j,reason:Q.uZ,keptPersonHold:!0};let{policy:k,taskId:l}=(0,f.JJ)(a,"antigravity",b),m=(0,ah._1)(k),n=(0,ah.sD)(i.promptData,k,"antigravity"),o=function(a,b,c,d){if("answered"!==c.cause&&"outlived"!==c.cause)return!1;let e=(0,S.gb)(a,"antigravity",b);if(null===e||e.reason===Q.S6||!(e.at>=c.firstSeenAt))return!1;if(e.reason===Q.uZ){let{at:c,...d}=e;return(0,S.ZS)(a,"antigravity",b,d),!0}return Q.PF.has(e.reason)&&!d.suppressedBy&&(0,S.FA)(a,"antigravity",b),!1}(a,b,g,n);n.suppressedBy&&!o&&(0,S.ZS)(a,"antigravity",b,{reason:n.suppressedBy,mode:m,promptType:i.promptData.type,...void 0!==n.pattern?{pattern:n.pattern}:{}});let p=a=>({promptData:j,reason:a}),q=o?Q.uZ:n.suppressedBy;if(!n.suppressedBy&&("answered"===g.cause||o))return p(o?Q.uZ:null);let r=function(a,b){let c=ak.get(a),d=void 0===c||b-c>=6e4;if(d){for(let[a,c]of ak)b-c>=6e4&&ak.delete(a);ak.set(a,b)}return d}(c,h);if(n.suppressedBy){var s;return r&&aj.info("antigravity-autoyes-withheld-by-policy",{worktreeId:a,instanceId:b??"antigravity",reason:n.suppressedBy,mode:m,taskId:l,hint:(s=n.suppressedBy)===Q.dr?"契約の照会に失敗したので答えていない。サーバーログの policy-lookup-failed を確認":s===Q.UT?"質問の推奨の選択肢を 1 つに特定できないので答えていない(基本の判定。契約の判定ではない)。画面で答える":(0,Q.PP)(s)?"今回だけ許可の選択肢を 1 つに特定できないので答えていない(基本の判定。契約の判定ではない)。画面で答える":"契約の autoYes が答えを止めている。契約の autoYes を確認"}),p(q??null)}return(0,S.ZS)(a,"antigravity",b,{reason:Q.S6,mode:null,promptType:i.promptData.type}),r&&aj.info("antigravity-autoyes-withheld-no-hook-receipt",{worktreeId:a,instanceId:b??"antigravity",windowMs:ag.Wo,hint:function(a,b=Date.now()){let c=null===a.ageMs?null:Math.round(a.ageMs/1e3),d=null===a.lastReceiptAt?null:Math.round((b-a.lastReceiptAt)/1e3);switch(a.cause){case"never":return"hook の受信が一度も無いため Auto-Yes は答えなかった。~/.gemini/config/hooks.json の向き先(#2622)を確認";case"late":return`最後の受信から ${c} 秒後に確認が出た(窓 ${ag.Wo/1e3} 秒の外)ため答えなかった。人が答える(auto-yes --disable → prompt --json → respond --expect-screen)。続くなら ~/.gemini/config/hooks.json の向き先(#2622)も確認`;case"lapsed":return`最後の受信は ${d} 秒前で途絶えている(hook が届かなくなった)。hooks.json の向き先(#2622)と agy の再起動を確認`;case"predates":return"確認は最後の受信より前から画面に出ていた(引用か別の確認)ため答えなかった。人が答える";case"used":return"最後の受信は直前の確認に使い済み。この確認に対する受信は無いため答えなかった。人が答える";case"outlived":if(!0===a.answerInterrupted)return`Auto-Yes が最後の受信の確認へ答えを送る途中で送信が止まり(キーの一部が入力に残っている可能性がある)、${af.O3/1e3} 秒を過ぎても確認が画面に残っている。未使用の受信が無いため、もう一度は答えない。人が答える(auto-yes --disable → prompt --json → respond --expect-screen)`;return`Auto-Yes が最後の受信の確認へキーを送ってから ${af.O3/1e3} 秒を過ぎても、確認が画面に残っている。キーで確認が閉じなかったか、新しい受信の無い別の確認と入れ替わった(画面からは区別できない)。未使用の受信が無いため、もう一度は答えない。人が答える(auto-yes --disable → prompt --json → respond --expect-screen)`;default:return"hook の受信記録が直近に無いため Auto-Yes は答えなかった。~/.gemini/config/hooks.json の向き先(#2622)を確認"}}(g,h)}),p(Q.S6)}(c,e,g,r,q?.byPerson?q.screenKey:null);if(q?.byPerson&&a?.keptPersonHold&&(0,I.H8)(g,q,(0,I.pP)(a.promptData)),null!==a){let b={compositeKey:g,worktreeId:c,cliToolId:d,instanceId:e};(0,T.ss)(b,(0,I.VH)(a.promptData),a.promptData.type,av(d,c,e)),null!==a.reason&&(0,T.kV)(b,a.reason)}return a}return null}({worktreeId:a,cliToolId:c,instanceId:o,compositeKey:F,epoch:r,pollerState:b,frame:z,promptDetection:A,cleanOutput:m,precomputedLines:n,rawOutput:s,captureExtent:H,detectPromptOnCleanFrame:e.$M});return null!==d&&null!==d.reason&&au({worktreeId:a,cliToolId:c,instanceId:o,compositeKey:F,promptData:d.promptData,epoch:r,generation:y,startedAt:aa}).withheld(d.reason),"no_prompt"}let D=(0,I.pP)(A.promptData);(0,T.ss)($,(0,I.VH)(A.promptData),A.promptData.type,av(c,a,o));let E=au({worktreeId:a,cliToolId:c,instanceId:o,compositeKey:F,promptData:A.promptData,epoch:r,generation:y,startedAt:aa});if((0,k.yK)(F))return E.withheld(k.gl),"no_answer";let _=(0,u.J)(A.promptData),am=(0,I.hr)(A.promptData);if(b.lastAnsweredPromptKey===_&&null!==b.lastAnsweredAt&&Date.now()-b.lastAnsweredAt<d.UL)return null!==b.lastAnsweredAt&&(b.duplicateRetryReservation={promptKey:_,answeredAt:b.lastAnsweredAt,observedAt:aa}),ab=!0,(0,T.kV)($,"answered-recently"),E.reaffirmAnswering(),"duplicate";!function(a,b){let c=a.duplicateRetryReservation;return null!=c&&c.promptKey===b&&c.answeredAt===a.lastAnsweredAt}(b,_)&&ae(b);let an={worktreeId:a,cliToolId:c,instanceId:o,compositeKey:F,pollerState:b,promptData:A.promptData,promptKey:_,frameKey:am,...void 0!==A.optionRecommendations?{optionRecommendations:A.optionRecommendations}:{},answerMode:Z};if(function(a,b,c){let{worktreeId:d,cliToolId:e,instanceId:f,compositeKey:g,pollerState:h,promptData:i,frameKey:j}=a,k=(0,I.C9)(g,c);if(null!==k){if((0,I.gD)(k.screenKey,b))return(0,I.od)(g,b),U(a,{reason:Q.uZ,mode:null,promptType:i.type},`${j}\u0000partial-answer`,"poller:auto-yes-skipped-partial-answer",{promptType:i.type,stoppedAt:k.at}),!0;(0,I.ZB)(g,k.screenKey)}return!!(0,I.BA)(g,c,b)&&((0,T.kV)(a,"moved-send-in-flight"),(0,I.Cy)(h,`${j}\u0000moved-send-in-flight`,"poller:auto-yes-skipped-moved-send-in-flight",{worktreeId:d,cliToolId:e,instanceId:f,promptType:i.type}),!0)}(an,D,r))return E.withheld("moved-send-in-flight"),"no_answer";let ao=function(a,b){let{cliToolId:c,promptData:d,frameKey:e}=a,f="codex"===c?(0,g.E6)(b):"gemini"===c&&function(a,b){let{promptData:c}=a;if("multiple_choice"!==c.type||!function(a){if("multiple_choice"!==a.type)return!1;let{optionRow:b,minOptionRows:c}=N.g1;return a.options.filter(a=>b.test(`${a.number}. ${a.label}`)).length>=c}(c))return!1;if(W("gemini",a))return!0;let d=c.options.find(a=>a.isDefault);return!(void 0!==d&&N.g1.safeRow.test(`${d.number}. ${d.label}`))||!!(0,N.O5)(N.g1,b.clean)&&(!(0,N.yN)(N.g1,b.clean)||"press"!==(0,N.CZ)(N.g1,b.clean).action)}(a,b)?N.g1.id:"copilot"===c&&function(a,b){let{promptData:c}=a;if("multiple_choice"!==c.type||!L.Ki.every(a=>b.clean.includes(a))||c.options.filter(a=>L.rc.test(a.label)).length<2)return!1;if(W("copilot",a))return!0;let d=c.options.find(a=>a.isDefault);return!(d?.number===1&&"Yes"===d.label&&(0,L.Rx)(b.clean))}(a,b)?"copilot-folder-trust":null;if(f)return U(a,{reason:"agent-launch-dialog",mode:null,promptType:d.type},`${e}\u0000${f}`,"poller:auto-yes-skipped-launch-dialog",{dialog:f,promptType:d.type}),{kind:"left-alone"};if("codex"===c&&(0,J.AD)(b))return U(a,{reason:"unclassified-frame",mode:null,promptType:d.type},`${e}\u0000codex-model-picker`,"poller:auto-yes-skipped-model-picker",{promptType:d.type}),{kind:"left-alone"};if((0,R.A)(c,b))return U(a,{reason:Q.lO,mode:null,promptType:d.type},`${e}\u0000question-confirm-page`,"poller:auto-yes-skipped-question-confirm",{reason:Q.lO,promptType:d.type,question:V(d.question),options:"multiple_choice"===d.type?d.options.map(a=>`${a.number}. ${a.label}`):[...d.options]}),{kind:"left-alone"};let i=(0,h.r_)(c,d.type,b);return i.allowed?(a.dialogGate=i,{kind:"ours"}):{kind:"dialog-gate-refused",dialogGate:i}}(an,z);if("left-alone"===ao.kind)return E.withheld("unclassified-frame"),"no_answer";if("dialog-gate-refused"===ao.kind){var ad=ao.dialogGate;let{promptData:a,frameKey:b}=an;return U(an,{reason:"unclassified-frame",mode:null,promptType:a.type},`${b}\u0000${ad.dialog?.kind??""}\u0000${ad.mode}`,"poller:auto-yes-skipped-unclassified-frame",{promptType:a.type,dialogKind:ad.dialog?.kind??null,answerMode:ad.dialog?.answerMode??null,gateMode:ad.mode}),E.withheld("unclassified-frame"),"no_answer"}if(function(a){let{promptData:b,dialogGate:c,cliToolId:d}=a,e=(0,h.j4)(b,c,d);if(null===e)return!1;let f=a.answerMode??ax.Rb;return"left-to-human"===(0,h.Xc)(e,f)&&(az(a,f,!1,e),!0)}(an))return E.withheld("question-left-to-human"),"no_answer";let ap=function(a){let{worktreeId:b,cliToolId:c,instanceId:d,promptData:e,frameKey:g}=a,h=(0,f.n)(b,c,d),i=(0,ah.sD)(e,h,c,ay(a,a.answerMode??ax.Rb));if(i.suppressedBy){let b=(0,ah._1)(h);U(a,{reason:i.suppressedBy,mode:b,promptType:e.type,pattern:i.pattern},`${g}\u0000${i.suppressedBy}\u0000${b??""}\u0000${i.pattern??""}`,"poller:auto-yes-suppressed-by-policy",{reason:i.suppressedBy,mode:b,pattern:i.pattern,promptType:e.type})}return i.answer}(an);if(null===ap)return E.withheld(l.zW),"no_answer";let aw=t.CLIToolManager.getInstance().getTool(c).getSessionName(a,o),aC=await (0,p.L)(a,aw);if(void 0!==y&&!ac(y))return"no_answer";if(function(a,b,c){let{worktreeId:d,cliToolId:e,instanceId:f,pollerState:g,frameKey:h}=a;return(null===c||"foreign"===c.verdict)&&((0,T.kV)(a,"foreign-session"),(0,I.Cy)(g,`${h}\u0000${b}\u0000${c?"foreign":"worktree_not_found"}`,"poller:auto-yes-skipped-foreign-session",{worktreeId:d,cliToolId:e,instanceId:f,sessionName:b,sessionPath:c?.sessionPath??null,reason:c?"foreign":"worktree_not_found"}),!0)}(an,aw,aC))return E.withheld("foreign-session"),"no_answer";if(aA(an,void 0!==y))return E.withheld(l.zW),"no_answer";E.answering(),P=(0,I.xy)(F,D,y?.sessionEpoch??r,(0,T.mW)($,function(a,b){if("antigravity"===a.cliToolId)return null!==(0,ar.g8)(b)?"L3":"L4";let c=a.dialogGate;return void 0!==c&&c.gated&&c.allowed&&null!==c.dialog?"L3":"L4"}(an,m),{receiptAccepted:"antigravity"===c})),Y="antigravity"===c?(0,af.jm)(a,o):null;let aD={episodeId:(0,C._v)(a,c,o)?.episodeId??null,version:(0,C.cx)(a,c,o)};X=!0;let aF={sessionName:aw,answer:ap,cliToolId:c,promptData:A.promptData,...void 0!==y?{stillCurrent:()=>ac(y)}:{},readMark:G};Object.defineProperty(aF,"stillAllowedAtSend",{value:()=>!aA(an,void 0!==y),enumerable:!1});try{await (0,q.tV)(aF)}finally{(0,w.gm)(aw)}return X=!1,(0,T._M)(P.ledger,"ok",{expired:"expired"===P.state}),(0,I.pE)(P,!1),al(c,a,o,!1,Y),(void 0===y||ac(y))&&function(a,b,c,d){let{worktreeId:e,cliToolId:f,instanceId:g,pollerState:h,promptData:i}=a;try{if(!function(a,b,c,d){if(null===a.episodeId)return(0,C.cx)(b,c,d)===a.version;let e=(0,C._v)(b,c,d);return e?.episodeId===a.episodeId&&((0,C.cx)(b,c,d)===a.version||"screen"!==e.binding.kind)}(d,e,f,g))return void aB.debug("poller:answer-target-moved",{worktreeId:e,cliToolId:f,instanceId:g,target:d.episodeId});let a=(0,B.cY)({worktreeId:e,cliToolId:f,instanceId:g,observer:"auto-yes-poller",start:c.start,reading:(0,x.Yc)(i),...c.frameTime,freshPrompt:!0,lastAnswer:h.lastAnswer??null}),j="ignored"===a.action?null:(0,C._v)(e,f,g);h.lastAnswer=null===j?null:{episodeId:j.episodeId,screenKey:b,at:a.at}}catch(a){h.lastAnswer=null,aB.debug("poller:waiting-observation-failed",{worktreeId:e,cliToolId:f,instanceId:g,error:(0,v.u1)(a)})}}(an,D,O,aD),await aE(an,A,ap,y,{frame:z,captureTop:at(s??m,H,c)}),"responded"}catch(b){return(void 0===y||ac(y))&&(0,j.oD)(F),function(a,b){let{worktreeId:c,cliToolId:d,instanceId:e,compositeKey:f,generation:g,attempt:h,sendInFlight:i,receiptEpisode:j}=b,k=a instanceof Error&&"keysSent"in a?!!a.keysSent:null,l=a instanceof Error&&"answerDelivery"in a?a.answerDelivery:null,m=!0===k||"indeterminate"===l;return(null!==h&&i&&(0,T._M)(h.ledger,!0===k?"partial":!1===k?"no-keys-sent":"failed",{expired:"expired"===h.state}),void 0===g||ac(g))?a instanceof Error&&"PromptAnswerNotDeliveredError"===a.name?(null!==h&&(0,I.pE)(h,!1),i&&al(d,c,e,!0,j),aB.info("poller:auto-yes-answer-not-delivered",{worktreeId:c,cliToolId:d,instanceId:e,skip:a.skip}),"no_answer"):(null!==h&&(0,I.pE)(h,m),i&&al(d,c,e,!0,j),aC(f,g?.pollerState),aB.warn("poller:detect-respond-error",{worktreeId:c,cliToolId:d,instanceId:e,delivery:l}),"error"):(null!==h&&(0,I.pE)(h,m),i&&al(d,c,e,!0,j),aB.info("poller:auto-yes-answer-abandoned",{worktreeId:c,cliToolId:d,instanceId:e,keysSent:k,delivery:l}),"no_answer")}(b,{worktreeId:a,cliToolId:c,instanceId:o,compositeKey:F,generation:y,attempt:P,sendInFlight:X,receiptEpisode:Y})}finally{(0,T.g)($,_),ab||ae(b)}}async function aG(a,b,c,e){let f=(0,d.v7)(a,b,c),h=Y(f);if(void 0!==e&&h!==e||"valid"!==function(a,b){if(!b)return"stopped";let c=(0,d.Ue)(a),e=(0,d.pL)(a);if(!e)return aM(a,"invalid-key"),"expired";let f=(0,d.GE)(a)??void 0,g=(0,d.aq)(c,e,f);return g?.enabled?"valid":(aM(a,g?.stopReason==="expired"?"expired":"not-enabled"),"expired")}(f,h))return;let j=(0,d.aq)(a,b,c);if(!j?.enabled)return;let l={compositeKey:f,worktreeId:a,cliToolId:b,instanceId:c,pollerState:h,grant:j,sessionEpoch:(0,i.cr)(f),startedAt:Date.now(),manualAnswerSeq:(0,k.el)(f)};void 0!==h.sessionWaitTickAt&&(h.sessionWaitTickRanAt=l.startedAt);let m=(0,B.ic)(a,b,c);try{let e=(0,r.TO)(),i=j.stopPattern?D.FW:D.Ke,{frame:{raw:k,clean:n,headCut:o},frameTime:p}=await (0,B.IW)(()=>ao(a,b,i,c));if(!ac(l))return void aD(l);h.waitingForSession&&(h.waitingForSession=!1,h.sessionAppearedAt=l.startedAt,aB.info("poller:session-appeared",{worktreeId:a,cliToolId:b,instanceId:c}));let q=n.split("\n");if(function(a,b,c){if(b.stopCheckBaselineLength<0)return b.stopCheckBaselineLength=c.length,!1;let e=b.stopCheckBaselineLength;if(c.length>e){let f=c.substring(e);return b.stopCheckBaselineLength=c.length,(0,d.Cs)(a,f,a=>aM(a,"stop-pattern"))}return c.length<e&&(b.stopCheckBaselineLength=c.length),!1}(f,h,n))return;let s=await aF(a,h,b,n,q,c,k,l,{start:m,frameTime:p},i,o,e);if(!ac(l))return void aD(l);if("error"!==s&&_(f,l.pollerState),"responded"===s)return void aI(l,d.ZO);if("no_prompt"===s){aH({worktreeId:a,cliToolId:b,instanceId:c,start:m,frameTime:p,pollerState:l.pollerState,rawOutput:k});let e=q.slice(-d.Re).join("\n");if((0,g.ut)(b,e))return void aI(l,D.QN)}}catch(g){let e=await aw(a,b,c);if(!ac(l))return void aD(l);if(e){ae(l.pollerState),aH({worktreeId:a,cliToolId:b,instanceId:c,start:m,frameTime:{frameCapturedAt:0,frameFetchedAfterStart:!1},pollerState:l.pollerState,rawOutput:null}),h.waitingForSession||(h.waitingForSession=!0,aB.info("poller:waiting-for-session",{worktreeId:a,cliToolId:b,instanceId:c})),aI(l,d.BT,{sessionWait:!0});return}aC(f,l.pollerState),aB.warn("poller:poll-error",{worktreeId:a,cliToolId:b,instanceId:c,error:(0,v.u1)(g)})}aI(l)}function aH(a){let{worktreeId:b,cliToolId:c,instanceId:d}=a;try{let e={kind:"gone"};if(null!==a.rawOutput){let f=a.pollerState.lastServerResponseTimestamp,g=f?new Date(f):void 0,h=(0,y.WC)(a.rawOutput,c,g),{structured:i}=(0,z.xF)({worktreeId:b,cliToolId:c,instanceId:d,scraper:h});e=(0,x.ik)({cliToolId:c,output:a.rawOutput,lastOutputTimestamp:g,structuredWaiting:null!==i,structuredSince:i?.at??null,apiAnswerable:(0,z.$G)(i,(0,A.VM)(c).capabilities.eventIdentity),verdict:h})}(0,B.cY)({worktreeId:b,cliToolId:c,instanceId:d,observer:"auto-yes-poller",start:a.start,reading:e,...a.frameTime,lastAnswer:a.pollerState.lastAnswer??null})}catch(a){aB.debug("poller:waiting-observation-failed",{worktreeId:b,cliToolId:c,instanceId:d,error:(0,v.u1)(a)})}}function aI(a,b,c={}){if(!ab(a))return;let{worktreeId:e,cliToolId:f,instanceId:g,pollerState:h}=a,i=Math.max(b??h.currentInterval,d.ps);h.sessionWaitTickAt=!0===c.sessionWait?Date.now()+i:void 0,aK(a.compositeKey);let j=setTimeout(()=>{aK(a.compositeKey,j),aG(e,f,g,h)},i);h.timerId=j,!0===c.sessionWait&&function(a,b){let{compositeKey:c,worktreeId:e,cliToolId:f,instanceId:g,pollerState:h}=a,i=t.CLIToolManager.getInstance().getTool(f).getSessionName(e,g),j=(0,s.GJ)(i,()=>{let i=aJ.get(c);void 0!==i&&i.timerId===b&&(aJ.delete(c),ab(a)&&h.timerId===b&&(clearTimeout(b),aB.info("poller:session-created-wake",{worktreeId:e,cliToolId:f,instanceId:g}),aI(a,d.ps,{sessionWait:!0})))});aJ.set(c,{timerId:b,unsubscribe:j})}(a,j)}let aJ=(0,H.v)("__autoYesSessionWaitWakes",()=>new Map);function aK(a,b){let c=aJ.get(a);void 0!==c&&(void 0===b||c.timerId===b)&&(aJ.delete(a),c.unsubscribe())}function aL(a,b,c){if(!(0,G.h6)(a))return{started:!1,reason:"invalid worktree ID"};let e=c??b;if((0,d.eK)())return{started:!1,reason:"server shutting down"};let g=(0,d.aq)(a,b,e);if(!g?.enabled)return{started:!1,reason:"auto-yes not enabled"};let h=(0,d.v7)(a,b,e),i=Y(h);if(!i&&X.size>=d.fC)return{started:!1,reason:"max concurrent pollers reached"};if(i&&i.cliToolId===b)return{started:!0,reason:"already_running"};i&&aM(h,"replaced");let j={timerId:null,cliToolId:b,instanceId:e,consecutiveErrors:0,currentInterval:d.ps,lastServerResponseTimestamp:null,lastAnsweredPromptKey:null,lastAnsweredAt:null,stopCheckBaselineLength:-1,lastSkipWarnKey:null};return X.set(h,j),(0,f.ie)(h),j.timerId=setTimeout(()=>{aG(a,b,e,j)},d.ps),aB.info("poller:started",{worktreeId:a,cliToolId:b,instanceId:e}),{started:!0}}function aM(a,b){(0,i.MR)(a),(0,j.oD)(a),(0,T.Xk)(a,(0,E.p)(b,"unspecified"));let c=Y(a);c&&(c.timerId&&clearTimeout(c.timerId),aK(a),X.delete(a),(0,f.ie)(a),aB.info("poller:stopped",{compositeKey:a,reason:(0,E.p)(b,"unspecified")}))}function aN(){let a=(0,E.p)(void 0,"shutdown");for(let[b,c]of X.entries())c.timerId&&clearTimeout(c.timerId),aK(b),(0,f.ie)(b),(0,T.Xk)(b,a),aB.info("poller:stopped",{compositeKey:b,reason:a});X.clear(),(0,i.NR)(),(0,j.RF)(),(0,I.k6)()}function aO(a,b){(0,d._9)(Array.from(X.keys()),a).forEach(a=>aM(a,b?.reason)),(0,i.vR)(a),(0,j.x_)(a),(0,T._F)(a,(0,E.p)(b?.reason,"unspecified")),b?.keepPartialAnswers||(0,I.SG)(a)}},40043:(a,b,c)=>{c.d(b,{AD:()=>l,Q4:()=>h,ox:()=>k,xG:()=>m});var d=c(37717),e=c(95375),f=c(36925);let g=new Set([d.g.NO_RECENT_OUTPUT,d.g.UNKNOWN_FRAME,d.g.DEFAULT]);function h(a,b){return"running"===a&&g.has(b)}let i=e.STRUCTURED_STATE_MAX_AGE_MS,j=(0,f.v)("__lastKnownStatusByKey",()=>new Map);function k(a,b,c=Date.now()){for(let[a,b]of j)c-b.at>=i&&j.delete(a);for(;j.size>512;){let a=j.keys().next();if(a.done)break;j.delete(a.value)}"positive"===b.evidence&&(j.delete(a),j.set(a,{status:b.status,reason:b.reason,at:c}))}function l(a,b=Date.now()){let c=j.get(a);return void 0===c?null:b-c.at>=i?(j.delete(a),null):c}function m(a){j.delete(a)}},41364:(a,b,c)=>{c.d(b,{Gv:()=>o,hM:()=>n});var d=c(79748),e=c.n(d),f=c(33873),g=c.n(f),h=c(1634),i=c(21684),j=c(72626),k=c(15194);function l(a="claude"){return g().join((0,i.U)(),a)}async function m(a="claude"){let b=l(a);try{await e().access(b)}catch{await e().mkdir(b,{recursive:!0})}}async function n(a,b,c,d="claude",f={}){await m(d);let i=function(a,b="claude"){let c=(0,h.GP)(new Date,"yyyy-MM-dd"),d=`${a}-${c}.md`,e=l(b);return g().join(e,d)}(a,d),j=(0,h.GP)(new Date,"yyyy-MM-dd HH:mm:ss"),o="";try{o=await e().readFile(i,"utf-8")}catch{let b=(0,k.hR)(d)?k.ef[d]:d;o=`# ${b} Conversation Log: ${a}
2
2
 
3
3
  Created: ${j}
4
4
 
@@ -16,4 +16,4 @@ Created: ${j}
16
16
 
17
17
  `,o+=`---
18
18
 
19
- `,f.mayWrite&&!f.mayWrite())?null:(await e().writeFile(i,o,"utf-8"),i)}async function o(a,b="all"){let c="all"===b?[...k.XH]:[b],d=[];for(let b of c){await m(b);let c=l(b);try{let b=(await e().readdir(c)).filter(b=>b.startsWith(`${a}-`)&&b.endsWith(".md")).map(a=>g().join(c,a));d.push(...b)}catch{}}return d.sort().reverse()}(0,j.h)("log-manager")},41733:(a,b,c)=>{c.d(b,{zX:()=>ao,$M:()=>ah,Tq:()=>B.Tq});var d=c(31990),e=c(88807),f=c(56791),g=c(43015),h=c(26895),i=c(28861),j=c(61878),k=c(70605),l=c(96742),m=c(18778),n=c(15194),o=c(8988),p=c(54490),q=c(72626),r=c(46423),s=c(93997),t=c(60),u=c(82450),v=c(56263),w=c(13033),x=c(72457),y=c(44321),z=c(71080),A=c(28918),B=c(28480),C=c(43925),D=c(40964),E=c(83598),F=c(31442),G=c(45146),H=c(85038),I=c(91601),J=c(92010),K=c(81099),L=c(87415),M=c(73478),N=c(15044),O=c(36261),P=c(93373),Q=c(24455),R=c(77466),S=c(52767);function T(a,b,c,d,e,g,h){h&&((0,z.fS)(e),(0,f.updateSessionState)(a,b,c,g,d))}function U(a){return{response:"",isComplete:!1,lineCount:a}}function V(a,b,c,d,e,f,g,h=!1){let i=(0,t.QM)(b,c,d,e,f,h),j=a.slice(i);return{response:(0,p.aJ)(j.join("\n")),isComplete:!0,lineCount:c,promptDetection:g,bufferReset:d,captureWindowSaturated:h}}var W=c(53300),X=c(34990),Y=c(73495),Z=c(16402);let $=(0,q.h)("response-poller");function _(a){return void 0!==a&&!(0,X.Bf)(a.worktreeId,a.instanceId).ok&&($.debug("antigravity-dialog-no-recent-receipt",{worktreeId:a.worktreeId,instanceId:a.instanceId??"antigravity"}),!0)}function aa(a,b,c){let d=(0,Z.vm)(a,b.promptData?.type,c);return!!d.present||($.debug("prompt-candidate-not-vouched",{cliToolId:a,promptType:b.promptData?.type,gateMode:d.mode}),!1)}var ab=c(96486);let ac=["Waiting for auth","⠋","⠙","⠹","⠸","⠼","⠴","⠦","⠧","⠇","⠏"],ad=(0,q.h)("response-poller");function ae(a,b,c,d){let{cliToolId:e,lines:f,lastCapturedLine:g,bufferReset:h,captureWindowSaturated:i}=b;return e===a&&c&&!i&&(0,ab.K)(e,f)?((h||d>g)&&ad.info(`${a} startup screen suppressed, response not saved`,{responseLength:c.length,lineCount:d}),{response:"",isComplete:!0,lineCount:d,bufferReset:h,captureWindowSaturated:i}):null}let af=(0,q.h)("response-poller");function ag(a){return b=>{try{(0,g.broadcastMessage)("message_updated",{worktreeId:a,message:b})}catch(b){af.warn("prompt-sweep-broadcast-failed",{worktreeId:a,error:b instanceof Error?b.message:String(b)})}}}function ah(a,b,c,d,e,f){if("antigravity"===b){let b=(0,i.g8)(a);if(null!==b)return _(e)?{isPrompt:!1,cleanContent:a.trim()}:b;if((0,i.bf)(a))return{isPrompt:!1,cleanContent:a.trim()}}if("command-code"===b&&void 0!==d){let b=(0,l.nK)(d);if("prompt"===b.kind)return b.prompt;if("unsupported"===b.kind)return{isPrompt:!1,cleanContent:a.trim()}}let g=(0,p.KO)(b),m=(0,h.gF)(a,c?{...g,precomputedLines:c}:g);if(m.isPrompt){let c=void 0!==f?(0,j.Yc)(f,b):(0,j.zJ)(d??a,b).liveRegion;if((0,k.z8)(c,m))return{isPrompt:!1,cleanContent:a.trim()}}return"antigravity"===b&&m.isPrompt&&_(e)||"antigravity"===b&&m.isPrompt&&void 0!==e&&!function(a,b){let c=b.promptData;return!!(c?.type!=="multiple_choice"||(0,i.FI)(a))||"not-a-permission-dialog"!==(0,Y.Me)(c.options,"antigravity").kind}(a,m)?{isPrompt:!1,cleanContent:a.trim()}:m}function ai(a,b){return ah((0,p._A)((0,p.aJ)(a)),b,void 0,a)}function aj(a,b){if((0,H._B)(a.pollerKey))return!0;let c=(0,H.Bh)();return void 0!==c&&ak.has(c)||(c&&ak.add(c),af.info("retired-tick-refused",{worktreeId:a.worktreeId,cliToolId:a.cliToolId,instanceId:a.resolvedInstanceId,generation:c?.generation,after:b})),!1}(0,M.I7)();let ak=new WeakSet;async function al(a,b,c){let{db:d,worktree:e,worktreeId:g,cliToolId:h,instanceId:i,resolvedInstanceId:j,pollerKey:k}=a;if(!aj(a,"capture"))return!1;let l=(0,z.o_)(k);if(l.log&&af.info("duplicate-response-skipped",{worktreeId:g,cliToolId:h,instanceId:j,...l.consecutive>1?{consecutive:l.consecutive,suppressed:l.suppressed}:{}}),(0,f.updateSessionState)(d,g,h,b.lineCount,j),(0,z.pN)(k)){let b=await (0,A.captureStructuredHistoryTurn)(g,h,i,{worktreePath:e.path,transcriptPathHint:c?.logFilePath??null});if(!aj(a,"recheck-reader"))return b;if(b)return(0,z.oE)(k),(0,B.t1)(k),af.info("structured-history-recheck-captured",{worktreeId:g,cliToolId:h,instanceId:j}),!0}return!1}function am(a,b,c,d){let{db:e,worktree:h,worktreeId:i,cliToolId:j,resolvedInstanceId:k,pollerKey:l}=a,{structuredHistoryLive:m,suppressScrapedHistory:n,holdScrapedHistory:o}=d;if(o)(0,B.r4)(l,{worktreeId:i,cliToolId:j,instanceId:k,content:b,timestamp:new Date,summary:c?.summary,logFileName:c?.logFileName,requestId:c?.requestId,worktreePath:h.path,transcriptPathHint:c?.logFilePath??null,expiresAt:Date.now()+B.mQ})&&(af.info("structured-history-scrape-held",{worktreeId:i,cliToolId:j,instanceId:k,scrapedLength:b.length,holdMs:B.mQ}),(0,C.vQ)(i,j,k,!1));else if(n||(0,H._B)(l))if(n)m&&(0,B.t1)(l),af.info("structured-history-scrape-suppressed",{worktreeId:i,cliToolId:j,instanceId:k,scrapedLength:b.length,reason:m?"structured-history":"geometry-delegated"});else{let a=(0,f.createMessage)(e,{worktreeId:i,role:"assistant",content:b,messageType:"normal",timestamp:new Date,cliToolId:j,instanceId:k,summary:c?.summary,logFileName:c?.logFileName,requestId:c?.requestId});(0,g.broadcastMessage)("message",{worktreeId:i,message:a}),(0,C.vQ)(i,j,k,!1)}else af.info("scraped-response-save-refused",{worktreeId:i,cliToolId:j,instanceId:k,generation:(0,H.Bh)()?.generation})}async function an(a,b,c,d,e){let{db:g,worktree:h,worktreeId:i,cliToolId:j,instanceId:k,resolvedInstanceId:l,pollerKey:n}=a,{result:o,isFullScreenTui:p,lineCountIsCursor:q}=b,r={},s=(0,A.isStructuredHistoryWriterLive)(i,j,k)||await (0,A.captureStructuredHistoryTurn)(i,j,k,{worktreePath:h.path,transcriptPathHint:c?.logFilePath??null},r);aj(a,"reader")&&(s?(0,z.oE)(n):(0,z.Pe)(n));let t=s||e.delegated,u=!t&&"not_yet_closed"===r.outcome;if(!d||t||u||await (0,m.T)(g,i,d,j,{pollerKey:n}),!aj(a,"conversation-log"))return am(a,d,c,{structuredHistoryLive:s,suppressScrapedHistory:t,holdScrapedHistory:u}),!1;(0,f.markPendingPromptsAsAnswered)(g,i,j,l,ag(i))>0&&af.info("marked-answeredcount-pending");let v=(0,f.getSessionState)(g,i,l);return q&&v&&o.lineCount<=v.lastCapturedLine?(af.info("race-condition-detected-skipping-save-re"),!1):(am(a,d,c,{structuredHistoryLive:s,suppressScrapedHistory:t,holdScrapedHistory:u}),(0,N.cY)({worktreeId:i,cliToolId:j,instanceId:k,observer:"response-checker",start:a.observationStart,reading:{kind:"not-waiting"},frameCapturedAt:0}),(0,I.J$)({worktreeId:i,worktreeName:h.name,kind:"completion",agentName:l,excerpt:d}).catch(()=>{}),(0,f.updateSessionState)(g,i,j,o.lineCount,l),p&&(0,G.Et)(i,j,k),!0)}async function ao(a,b,c){let h=(0,e.getDbInstance)(),i=c??b;try{var j;let e=(0,f.getWorktreeById)(h,a);if(!e)return af.error("worktree-not-found"),(0,G.Et)(a,b,c),!1;let k=(0,G.MN)(a,b,c),l={db:h,worktree:e,worktreeId:a,cliToolId:b,instanceId:c,resolvedInstanceId:i,pollerKey:k,observationStart:(0,N.ic)(a,b,c)},m=await (0,d.K1)(a,b,c);if(!aj(l,"session-check"))return!1;if(!m)return af.info("session-not-running"),(0,G.Et)(a,b,c),!1;if(await (0,B.vb)(k),!aj(l,"pending-scrape-settle"))return!1;let q=(0,D.mf)(b,a,c),A=(0,F.n9)(q)?await (0,E.zQ)(q):{delegated:!1,released:!1};if(!aj(l,"geometry-probe"))return!1;A.released&&((0,f.updateSessionState)(h,a,b,0,i),af.info("geometry-delegation-released",{worktreeId:a,cliToolId:b,instanceId:i}));let C=(0,f.getSessionState)(h,a,i),X=C?.lastCapturedLine||0,{frame:Y,frameTime:Z}=await (0,N.IW)(()=>(0,d.Wh)(a,b,s.xE,c)),$=aj(l,"capture"),_=function(a,b,c,d){let{db:e,worktreeId:g,cliToolId:h,instanceId:i,resolvedInstanceId:j,pollerKey:k}=a;if(d&&function(a,b,c,d){let e=(0,L.ZR)(d.split("\n"),b);(0,K.notifyUpstreamFaultPush)({worktreeId:a,cliToolId:b,instanceId:c,faultId:e?.fault.id??null,matchedText:e?.matchedText}).catch(()=>{})}(g,h,i,b),d&&("opencode"===h||"copilot"===h)){let a="opencode"===h?(0,t.ZX)(b):b;(0,w.IZ)(k,a,h)}let l=function(a,b,c,d=s.xE){let e=a.split("\n"),f=e.length;for(;f>0&&""===e[f-1].trim();)f--;let g=e.slice(0,f),h=g.length,i=(0,s.sl)(e.length,d),j="opencode"===c?g.map(p.aJ):null,k="claude"===c?(0,p.GT)(g):"copilot"===c?(0,p.wv)(g):"command-code"===c?(0,p.I$)(g):"codex"===c?(0,p.Zu)(g):j?(0,p.x7)(j):-1,l=k>=0?k:h,m=h>0&&b>25&&h+25<b,n=h>0&&b>50&&h<50,o=m||n;if(!o&&h<b-5)return null;let q=Math.max(0,h-20),u=g.slice(q),v=j?j.join("\n"):u.join("\n"),{promptPattern:w,separatorPattern:x,thinkingPattern:y,skipPatterns:z}=(0,p._X)(c),A=(a=60)=>(function(a,b,c,d,e,f){let g;if("codex"===a)return(0,p.Nc)(b,e,f,d>=0);if(c)return(0,t.V0)(c).echoEnd;if("copilot"===a){for(let a=e-1;a>=Math.max(0,e-f);a--){if(!p.y.test((0,p.aJ)(b[a])))continue;let c=a;for(;c+1<e&&p.Fg.test((0,p.aJ)(b[c+1]));)c++;return c}return -1}g=/^[>❯]\s+\S/;for(let a=e-1;a>=Math.max(0,e-f);a--){let c=(0,p.aJ)(b[a]);if(g.test(c))return a}return -1})(c,g,j,k,l,a);if("claude"===c||"codex"===c||"copilot"===c||"command-code"===c){let a=g.join("\n"),d=ai(a,c);if(d.isPrompt&&aa(c,d,a))return V(g,b,h,o,c,A,d,i)}let B={cliToolId:c,lines:g,totalLines:h,openCodeCleanLines:j,chromeStart:k,contentEnd:l,lastCapturedLine:b,bufferReset:o,captureWindowSaturated:i,checkLineCount:20,cleanOutputToCheck:(0,p.aJ)(v),promptPattern:w,separatorPattern:x,thinkingPattern:y,skipPatterns:z,findRecentUserPromptIndex:A};if(function(a){let{cliToolId:b,lines:c,totalLines:d,checkLineCount:e,cleanOutputToCheck:f,promptPattern:g,separatorPattern:h,thinkingPattern:i}=a,j=g.test(f),k=h.test(f),l="codex"===b?(0,p.DR)(c,e):i.test(f),m="copilot"===b?(0,p.Wn)(c.slice(Math.max(0,d-8)).map(p.aJ)):null,n="copilot"===b?"idle"===m:("codex"===b||"gemini"===b||"vibe-local"===b||"antigravity"===b)&&j&&!l,o="opencode"===b&&(0,t.bE)(f);return n||"claude"===b&&j&&k&&!l||"command-code"===b&&j&&k&&!l||o}(B))return function(a){let{cliToolId:b,totalLines:c,openCodeCleanLines:d,bufferReset:e,captureWindowSaturated:f,thinkingPattern:g,skipPatterns:h,findRecentUserPromptIndex:i}=a,{response:j,endIndex:k}=function(a){let{cliToolId:b,lines:c,totalLines:d,chromeStart:e,contentEnd:f,lastCapturedLine:g,bufferReset:h,captureWindowSaturated:i,skipPatterns:j,findRecentUserPromptIndex:k}=a,l=[],m=(0,t.QM)(g,d,h,b,k,i),n="codex"===b?f:d;for(let a=m;a<f;a++){let d=c[a],f=(0,p.aJ)(d);if("codex"===b&&/^›\s+/.test(f)||"gemini"===b&&/^(%|\$|.*@.*[%$#])\s*$/.test(f)||"antigravity"===b&&/^>\s*$/.test(f)||"opencode"===b&&e<0&&(p.sy.test(f)||p.uA.test(f))){n=a;break}j.some(a=>a.test(f))||l.push(d)}return{response:l.join("\n").trim(),endIndex:n}}(a),l=j.split("\n").slice(-r.$).join("\n");if("copilot"!==b&&g.test(l))return U(c);let m=function(a,b,c,d,e){if("claude"===a){let a=(0,p.aJ)(b),f=/[╭╮╰╯]/.test(a)||/░{3,}/.test(a)||/▓{3,}/.test(a),g=/Claude Code v\d+\.\d+|claude\//.test(a),h=/Tip:|for shortcuts|\?\s*for help/.test(a),i=/^\s*\/Users\/.*$/m.test(a)&&a.split("\n").length<30,j=e(c)>=0,k=a.match(/^[>❯]\s+(\S.*)$/m);if(k){let b=a.indexOf(k[0]);if(0===a.substring(b+k[0].length).trim().split("\n").filter(a=>{let b=a.trim();return b&&!d.some(a=>a.test(b))&&!/^─+$/.test(b)}).length)return U(c)}else if(!j&&(f||g||h||i)&&b.length<2e3)return ad.info("Claude startup banner suppressed, response not saved",{responseLength:b.length,hasBannerArt:f,hasVersionInfo:g,hasStartupTips:h,hasProjectInit:i}),U(c)}return null}(b,j,c,h,i)??function(a,b,c){if("copilot"===a){let a=(0,p.aJ)(b);if(!a.split("\n").some(a=>p.y.test(a))&&p.E0.some(b=>b.test(a)))return U(c)}return null}(b,j,c)??("command-code"===b&&0>i(c)?(ad.info("Command Code launch screen suppressed, response not saved",{responseLength:j.length}),U(c)):null)??function(a,b,c){if("gemini"===a&&((b.match(/[░█]/g)||[]).length>.3*b.length||ac.some(a=>b.includes(a))||!b.includes("✦")&&b.length<10))return U(c);return null}(b,j,c)??ae("codex",a,j,k)??ae("vibe-local",a,j,k);return m||{response:j,isComplete:!0,lineCount:k,bufferReset:e,captureWindowSaturated:f,turnHeadTruncated:d?(0,t.V0)(d).headTruncated:void 0}}(B);if("opencode"!==c){let a=g.join("\n"),d=ai(a,c);if(d.isPrompt&&aa(c,d,a))return V(g,b,h,o,c,A,d,i)}return function(a){let{lines:b,totalLines:c,contentEnd:d,lastCapturedLine:e,bufferReset:f,captureWindowSaturated:g,skipPatterns:h,findRecentUserPromptIndex:i}=a,j=[],k=f||g||e>=c-5,l=k?i(80):-1,m=k?l>=0?l+1:Math.max(0,c-80):Math.max(0,e);for(let a=m;a<Math.min(c,d);a++){let c=b[a],d=(0,p.aJ)(c);h.some(a=>a.test(d))||j.push(c)}let n=j.join("\n").trim();return n?{response:n,isComplete:!1,lineCount:c}:U(c)}(B)}(b,c,h,s.xE);if(!l||!l.isComplete){d&&l&&((0,x.WR)(k),(0,z.fS)(k));let{thinkingPattern:a}=(0,p._X)(h),c=(0,p.aJ)(b).split("\n").slice(-r.$).join("\n");return d&&a.test(c)&&(0,f.markPendingPromptsAsAnswered)(e,g,h,j,ag(g))>0&&af.info("marked-answeredcount-pending"),!1}let m="opencode"===h||"copilot"===h,o=!(0,n.VA)(h)&&!l.captureWindowSaturated;return(!o||!!l.bufferReset||l.lineCount!==c)&&(o&&!l.bufferReset&&l.lineCount<=c?(af.debug("already-saved-up-to-last-captured-line",{worktreeId:g,cliToolId:h,instanceId:j,lineCount:l.lineCount,lastCapturedLine:c}),!1):{result:l,isFullScreenTui:m,lineCountIsCursor:o})}(l,Y,X,$);if(!_)return!1;let{result:ab,isFullScreenTui:ah,lineCountIsCursor:ak}=_,am=ab.promptDetection??ai(ab.response,b);if(am.isPrompt&&aa(b,am,Y))return $&&(0,z.fS)(k),function(a,b,c,d,e,h){let{db:i,worktree:j,worktreeId:k,cliToolId:l,instanceId:m,resolvedInstanceId:n,pollerKey:o}=a;if(!(0,H._B)(o))return af.info("prompt-save-refused",{worktreeId:k,cliToolId:l,instanceId:n,generation:(0,H.Bh)()?.generation}),!1;let p=(0,N.nP)({worktreeId:k,cliToolId:l,instanceId:m,observer:"response-checker",start:a.observationStart,reading:(0,P.Yc)(b.promptData??null),...e,freshPrompt:!0,lastAnswer:(0,R.Xp)((0,Q.v7)(k,l,m))});if("ignored"===p.action)return af.info("prompt-observation-stale",{worktreeId:k,cliToolId:l,instanceId:n,because:p.ignoredBecause}),!1;let q=b.rawContent||b.cleanContent,r=(0,x.zm)(q,l);if((0,x.gv)(o,r)){(0,y.LN)(k,l,m);let a=(0,x.p6)(o);return a.log&&af.info("duplicate-prompt-skipped",{worktreeId:k,cliToolId:l,...a.consecutive>1?{consecutive:a.consecutive,suppressed:a.suppressed}:{}}),!1}let t=(0,W.dO)(h,s.xE,l),w=q;"copilot"===l&&(w=(0,u.LH)(q),w=(0,u.Sj)(w,v.Rf,v.ky)),(0,f.clearInProgressMessageId)(i,k,l,n);let z=(0,f.createMessage)(i,{worktreeId:k,role:"assistant",content:w,messageType:"prompt",promptData:(0,W.R1)(l,h,(0,W.k7)(b,t),t),timestamp:new Date,cliToolId:l,instanceId:n});(0,f.updateSessionState)(i,k,l,c.lineCount,n),(0,g.broadcastMessage)("message",{worktreeId:k,message:z}),(0,S.r)(i,k,l,n,"prompt_detected",{promptType:b.promptData?.type});let A=p.since??p.at;return(0,M.Zu)({worktreeId:k,cliToolId:l,instanceId:m},()=>(0,N.r0)(p),a=>{let c=function(a,b){let c=a.observation;switch(b){case"kept":case"rebound":return a.episodeId;case"opened":case"replaced":return(0,O._v)(c.worktreeId,c.cliToolId,c.instanceId)?.episodeId??null;default:return null}}(p,a);(0,J.R4)({worktreeId:k,cliToolId:l,instanceId:m,waitingSince:A,waitingEpisodeId:c})||(0,I.J$)({worktreeId:k,worktreeName:j.name,kind:"prompt",agentName:n,instanceId:n,waitingKind:"prompt",waitingSince:A,waitingEpisodeId:c,excerpt:b.promptData?.question??w}).catch(()=>{})}),d||(0,G.Et)(k,l,m),!0}(l,am,ab,ah,Z,Y);if($&&(0,x.WR)(k),!(j=ab.response)||""===j.trim())return T(h,a,b,i,k,ab.lineCount,$),!1;let ao="claude"===b?(0,o.R)(ab.response):void 0,ap=function(a,b,c,d){let e=b.response;if("gemini"===a)e=(0,u.IS)(b.response);else if("claude"===a)e=(0,u.NN)(b.response);else if("copilot"===a){let a=(0,w.Uz)(c)||b.response;e=(0,u.LH)(a),e=(0,u.Sj)(e,v.Rf,v.ky),d&&(0,w.q1)(c)}else if("opencode"===a){let a=(0,w.Uz)(c),f=b.turnHeadTruncated&&a?a:b.response;e=(0,u.aW)(f),d&&(0,w.q1)(c)}return e}(b,ab,k,$);if(!ap||""===ap.trim()||"[No content]"===ap)return T(h,a,b,i,k,ab.lineCount,$),(0,f.clearInProgressMessageId)(h,a,b,i),!1;if(!ak&&(0,z.j7)(k,ap))return await al(l,ab,ao);return await an(l,_,ao,ap,A)}catch(a){return af.error("response:check-failed",{error:a instanceof Error?a.message:String(a)}),!1}}},44296:(a,b,c)=>{c.d(b,{A:()=>g,K:()=>h});var d=c(61878),e=c(90706),f=c(93923);function g(a,b){return!!b.raw&&("command-code"===a?(0,e.Iu)(b.raw):"claude"===a&&(0,f.mB)(b))}function h(a,b){return!!b&&("command-code"===a||"claude"===a)&&g(a,(0,d.zJ)(b,a))}},44321:(a,b,c)=>{c.d(b,{DS:()=>h,LN:()=>f,XH:()=>g});var d=c(24455);let e=(0,c(36925).v)("__promptDedupSkips",()=>new Map);function f(a,b,c,g=Date.now()){let h=(0,d.v7)(a,b,c),i=e.get(h);e.set(h,{skippedCount:(i?.skippedCount??0)+1,lastSkippedAt:g})}function g(a,b,c){return e.get((0,d.v7)(a,b,c))??{skippedCount:0,lastSkippedAt:null}}function h(a){let b=[];for(let{oldWorktreeId:c,newWorktreeId:f,cliToolId:g,instanceId:h}of a){if(c===f)continue;let a=(0,d.v7)(c,g,h);b.push({newKey:(0,d.v7)(f,g,h),record:e.get(a)}),e.delete(a)}for(let{newKey:a,record:c}of b)void 0!==c&&e.set(a,c)}},45146:(a,b,c)=>{c.d(b,{Et:()=>B,KQ:()=>D,MN:()=>t,fq:()=>C,g8:()=>v,sR:()=>F});var d=c(72626),e=c(13033),f=c(72457),g=c(71080),h=c(44321),i=c(41733),j=c(28480),k=c(85038),l=c(99508),m=c(56455),n=c(40964),o=c(36925);let p=(0,d.h)("response-poller"),q=(0,o.v)("__responsePollerCoordinator",()=>({activePollers:new Map,pollingStartTimes:new Map,owners:new Map,running:new Map,pendingRestart:new Map,latestOwners:new Map,generationCounter:0,pausedOnPrompt:new Set}));q.pausedOnPrompt??=new Set,q.latestOwners??=new Map;let r=q.activePollers,s=q.pollingStartTimes;function t(a,b,c){return(0,k.pP)(a,b,c)}function u(a){return"opencode"===a||"copilot"===a}function v(a,b,c){let d=t(a,b,c),e={worktreeId:a,cliToolId:b,instanceId:c},f=q.running.get(d);if(f){if(f.owner.superseded=!0,Date.now()-f.since<6e4)return void q.pendingRestart.set(d,{target:e,behind:f.owner});p.warn("poller:restart-past-stalled-tick",{pollerKey:d,generation:f.owner.generation,runningForMs:Date.now()-f.since}),q.running.delete(d)}w(d,e)}function w(a,b){let c=q.pausedOnPrompt.has(a);A(a,{resume:c}),c&&p.info("poller:resumed-after-prompt",{pollerKey:a}),function(a){let b=t(a.worktreeId,a.cliToolId,a.instanceId);q.pollingStartTimes.set(b,Date.now()),u(a.cliToolId)&&(0,e.tb)(b),x(a.worktreeId,a.cliToolId,a.instanceId)}(b)}function x(a,b,c){let d=t(a,b,c);y({worktreeId:a,cliToolId:b,instanceId:c},function(a){let b=q.owners.get(a)??q.latestOwners.get(a);b&&(b.superseded=!0);let c={pollerKey:a,generation:++q.generationCounter,superseded:!1,stopped:!1,selfStopped:!1};return q.owners.set(a,c),q.latestOwners.set(a,c),c}(d))}function y(a,b){let c=setTimeout(()=>{z(a,b)},2e3);q.activePollers.set(b.pollerKey,c)}async function z(a,b){let c=b.pollerKey;if(!b.superseded&&!b.stopped){q.running.set(c,{owner:b,since:Date.now()});try{let d,e=q.pollingStartTimes.get(c);if(e&&Date.now()-e>18e5)return void A(c);try{d=await (0,m.y)(a.worktreeId,(0,n.mf)(a.cliToolId,a.worktreeId,a.instanceId))}catch(d){p.error("poller:ownership-check-failed",{pollerKey:c,error:d instanceof Error?d.message:String(d)}),b.superseded||b.stopped||y(a,b);return}if(null!==d){p.warn("poller:session-refused",{pollerKey:c,generation:b.generation,refusal:d}),b.superseded||b.stopped||A(c);return}let f=!1;try{f=await k.tV.run(b,()=>(0,i.zX)(a.worktreeId,a.cliToolId,a.instanceId))}catch(a){p.error("error:",{error:a instanceof Error?a.message:String(a)})}b.selfStopped&&function(a,b,c){if(c&&!u(b.cliToolId)){q.pausedOnPrompt.add(a.pollerKey),p.info("poller:paused-on-prompt",{pollerKey:a.pollerKey,generation:a.generation});return}(0,g.L1)(a.pollerKey)}(b,a,f),b.superseded||k.LF.run(b,()=>(0,l.broadcastTerminalSnapshot)(a.worktreeId,a.cliToolId,a.instanceId)),b.superseded||b.stopped||y(a,b)}finally{q.running.get(c)?.owner===b&&q.running.delete(c);let a=q.pendingRestart.get(c);a&&a.behind===b&&(q.pendingRestart.delete(c),w(c,a.target))}}}function A(a,b={}){let c=k.tV.getStore();if(c&&c.pollerKey===a&&(c.superseded||c.stopped))return void p.info("poller:stale-stop-ignored",{pollerKey:a,generation:c.generation});b.resume||(0,i.Tq)(a,"poller-stopped");let d=q.owners.get(a),h=void 0!==d&&c===d;d&&(d.stopped=!0,d.selfStopped=h,q.owners.delete(a)),q.pendingRestart.delete(a),q.pausedOnPrompt.delete(a);let j=q.activePollers.get(a);j&&(clearTimeout(j),q.activePollers.delete(a),q.pollingStartTimes.delete(a)),(0,e.q1)(a),(0,f.iX)(a),h||b.resume||(0,g.L1)(a)}function B(a,b,c){A(t(a,b,c))}function C(){for(let a of new Set([...Array.from(q.activePollers.keys()),...Array.from(q.owners.keys()),...Array.from(q.pausedOnPrompt)]))A(a);q.pendingRestart.clear(),q.pausedOnPrompt.clear()}function D(){return Array.from(q.activePollers.keys())}function E(a){let b=a.indexOf(":");return b<=0||b===a.length-1?null:{worktreeId:a.slice(0,b),instanceId:a.slice(b+1)}}function F(a,b){let c=function(a){let b=new Map;for(let{oldId:c,newId:d}of a)c&&d&&c!==d&&b.set(c,d);return b}(a);if(0===c.size)return[];let{moves:d,abandoned:i}=function(a,b){let c=[],d=[];for(let e of Array.from(r.keys())){let f=E(e);if(!f)continue;let g=a.get(f.worktreeId);if(!g)continue;let h=b(f.worktreeId,f.instanceId);if(!h){d.push({pollerKey:e,newWorktreeId:g});continue}c.push({oldKey:e,newKey:t(g,h,f.instanceId),newWorktreeId:g,cliToolId:h,instanceId:f.instanceId})}return{moves:c,abandoned:d}}(c,b),k=new Map,l=d.filter(a=>{let b=q.running.get(a.oldKey);return void 0!==b&&b.owner===q.owners.get(a.oldKey)});for(let a of d){let b=r.get(a.oldKey);b&&clearTimeout(b),r.delete(a.oldKey);let c=q.owners.get(a.oldKey);c&&(c.superseded=!0,c.stopped=!0,q.owners.delete(a.oldKey)),q.pendingRestart.delete(a.oldKey),k.set(a.newKey,{startedAt:s.get(a.oldKey)}),s.delete(a.oldKey),(0,e.q1)(a.oldKey)}for(let{pollerKey:a,newWorktreeId:b}of i)(0,j.hB)(a,b),A(a),p.warn("poller:migrate-abandoned",{pollerKey:a});let m=new Set(i.map(({pollerKey:a})=>a)),n=function(a){let b=[];for(let c of Array.from(q.pausedOnPrompt)){let d=E(c);if(!d)continue;let e=a.get(d.worktreeId);e&&b.push({oldKey:c,newKey:`${e}:${d.instanceId}`})}return b}(c),o=function(a,b){let c=[];for(let d of(0,j.B9)()){if(b.has(d))continue;let e=E(d);if(!e)continue;let f=a.get(e.worktreeId);f&&c.push({oldKey:d,newKey:`${f}:${e.instanceId}`,newWorktreeId:f})}return c}(c,m),v=new Set([...d.map(a=>a.oldKey),...n.map(a=>a.oldKey),...o.map(a=>a.oldKey)]);for(let a of new Set([...d.map(a=>a.newKey),...n.map(a=>a.newKey),...o.map(a=>a.newKey)]))!(v.has(a)||m.has(a))&&(q.owners.has(a)||r.has(a)||q.pausedOnPrompt.has(a)||(0,j.Bm)(a))&&(A(a),p.warn("poller:migrate-displaced",{pollerKey:a}));for(let a of l)(0,g.L1)(a.oldKey);(0,f.nZ)(d),(0,g.qt)([...d,...n]),(0,j.TS)(o),(0,h.DS)(d.flatMap(a=>{let b=E(a.oldKey);return b?[{oldWorktreeId:b.worktreeId,newWorktreeId:a.newWorktreeId,cliToolId:a.cliToolId,instanceId:a.instanceId}]:[]}));for(let a of d){let b=k.get(a.newKey)?.startedAt;s.set(a.newKey,b??Date.now()),u(a.cliToolId)&&(0,e.tb)(a.newKey),x(a.newWorktreeId,a.cliToolId,a.instanceId)}for(let a of n)q.pausedOnPrompt.delete(a.oldKey);for(let a of n)q.pausedOnPrompt.add(a.newKey);return d}},49891:(a,b,c)=>{c.d(b,{t:()=>e});var d=c(95595);function e(a){return a.waiting?a.hasActivePrompt||!0===a.apiAnswerable?"prompt":"waiting"===a.scraperStatus&&d.ug.has(a.scraperReason)?"menu":"unclassified":null}},51993:(a,b,c)=>{c.d(b,{IG:()=>n,R0:()=>l,el:()=>o,gl:()=>i,pj:()=>k,yK:()=>p,yZ:()=>m});var d=c(24455),e=c(36925),f=c(21894),g=c(77466);let h=d.UL,i="answered-by-human",j=(0,e.v)("__autoYesManualAnswers",()=>new Map);function k(a,b=Date.now()){return j.set(a,{seq:(j.get(a)?.seq??0)+1,at:b}),(0,f.oD)(a),{compositeKey:a,order:(0,g.eP)(),attempt:null}}function l(a,b){if(null!==a.attempt)return;let c=b?(0,g.pP)(b):g.EN;a.attempt=(0,g.TU)(a.compositeKey,c)}function m(a,b,c=Date.now()){let{compositeKey:d,attempt:e}=a;if("may-be-on-pane"!==b){null!==e&&(0,g.pE)(e,!1,c),(0,g.hM)(d,a.order);return}null!==e&&(0,g.pE)(e,!0,c);let f=j.get(d);void 0!==f&&j.set(d,{...f,seq:f.seq+1})}function n(a){null!==a.attempt&&(0,g.pE)(a.attempt,!1)}function o(a){return j.get(a)?.seq??0}function p(a,b=Date.now()){let c=j.get(a);return void 0!==c&&b-c.at<h}},53300:(a,b,c)=>{c.d(b,{dO:()=>i,R1:()=>l,k7:()=>k});var d=c(15194),e=c(16983),f=c(54490),g=c(44296),h=c(73495);function i(a,b,c,g){if(!0===g)return"clipped";let h=j(a).length,i=b>0&&h>=b;return void 0===c||!(0,d.VA)(c)||h>e.sO?i&&void 0===g?"clipped":"history-start":void 0===g&&i?"clipped":function(a){let b=j(a),c=a=>void 0===a||""===(0,f.aJ)(a).trim();return b.length>1&&c(b[0])&&c(b[b.length-1])?"screen-start":"screen-full"}(a)}function j(a){return(a.endsWith("\n")?a.slice(0,-1):a).split("\n")}function k(a,b){var c;let d=a.promptData;return d&&void 0!==d.approvalTarget&&void 0===d.approvalTargetCompleteness&&a.approvalContext?.completeness==="top-unknown"&&("clipped"===(c=b)||"screen-full"===c)?{...a,promptData:{...d,approvalTargetCompleteness:"top-unknown"}}:a}function l(a,b,c,d){let e=function(a,b,c,d){let e=c.promptData;if(!e)return null;let f=c.approvalContext,i={version:1,...f?{liveRange:{startRow:f.startRow,endRow:f.endRow}}:{},approvalTarget:f?.completeness??"not-measured",...void 0!==d?{captureTop:d}:{}};if("object"==typeof b&&null!==b?(0,g.A)(a,b):(0,g.K)(a,b))return{...i,kind:"confirmation",phase:"confirmation",evidence:["confirm-page-reader"]};if("multiple_choice"===e.type&&!0===e.isAskUserQuestion){let a=["question-picker-chrome"];return void 0!==e.askUserQuestion&&a.push("ask-user-question-payload"),{...i,kind:"question",phase:"question",evidence:a}}return"multiple_choice"===e.type?"not-a-permission-dialog"===(0,h.Me)(e.options,a).kind?{...i,kind:"unknown",evidence:[]}:{...i,kind:"permission",evidence:["permission-option-effect"]}:{...i,kind:"permission",evidence:["yes-no-pattern"]}}(a,b,c,d);return c.promptData&&null!==e?{...c.promptData,reading:e}:c.promptData}},55283:(a,b,c)=>{c.d(b,{$v:()=>ao,emitChatTurnProgress:()=>ag});var d=c(56791),e=c(36925);let f=(0,e.v)("__unclassifiedFrameRuns",()=>new Map);var g=c(56588),h=c(94154),i=c(51297),j=c(76777),k=c(50524);let l=/^([^\S\n]*)╹(▀{4,})/,m=/^([^\S\n]*)[│┃]/;var n=c(72626),o=c(12693),p=c(15194),q=c(70096),r=c(64501),s=c(66101),t=c(33198),u=c(17287),v=c(15388),w=c(3161),x=c(49154),y=c(62171),z=c(97751),A=c(31990),B=c(95595),C=c(35524),D=c(52277),E=c(77466),F=c(36261),G=c(24455),H=c(21894),I=c(34990),J=c(44321),K=c(34405),L=c(93997),M=c(87415),N=c(95375),O=c(30008),P=c(24581),Q=c(40043),R=c(9516),S=c(31239),T=c(16402),U=c(53300),V=c(54490),W=c(62887);let X=(0,n.h)("layer-disagreement"),Y=(0,e.v)("__layerDisagreementReported",()=>new Set);var Z=c(27870),$=c(54325),_=c(85038);let aa=(0,n.h)("current-output-builder");function ab(){return{version:0,askedAt:-1/0,turnKey:null,body:null,loggedOutcome:null,loggedTurnKey:null}}let ac=(0,e.v)("__chatTurnProgressState",()=>new Map);function ad(a){return`${a.worktreeId}:${a.cliToolId}:${a.instanceId??a.cliToolId}`}function ae(a,b,c,d={}){let e=ad(a),f=ac.get(e)??ab();ac.set(e,f),(f.loggedOutcome!==b||f.loggedTurnKey!==c)&&(f.loggedOutcome=b,f.loggedTurnKey=c,aa.info("published"===b?"chat-turn-progress-published":"no-subscribers"===b?"chat-turn-progress-no-subscribers":"chat-turn-progress-failed",{worktreeId:a.worktreeId,cliToolId:a.cliToolId,instanceId:a.instanceId??a.cliToolId,turnKey:c,...d}))}async function af(a,b,c){let d,e=ad(a),f=ac.get(e)??ab();if(c-f.askedAt<$.r9)return null;f.askedAt=c,ac.set(e,f);try{d=await b()}catch{return null}if(!d||0===d.body.length||!(0,_.Z)())return null;let g=(0,$.rx)(d.body);return d.turnKey===f.turnKey&&g.body===f.body?null:{turnKey:d.turnKey,body:g.body,partial:g.truncated||!0===d.partial}}async function ag(a,b,d=Date.now()){try{let{broadcast:e,hasRoomSubscribers:f}=await Promise.resolve().then(c.bind(c,43015));if(!f(a.worktreeId))return ae(a,"no-subscribers",null),!1;let g=await af(a,b,d);if(!g||!(0,_.Z)())return!1;let h=function(a,b){let c=ad(a),d=ac.get(c)??ab();return b.turnKey===d.turnKey&&b.body===d.body?null:(d.turnKey=b.turnKey,d.body=b.body,d.version+=1,ac.set(c,d),{type:$.rz,worktreeId:a.worktreeId,cliToolId:a.cliToolId,instanceId:a.instanceId??a.cliToolId,turnKey:b.turnKey,body:b.body,partial:b.partial,version:d.version,done:!1})}(a,g);if(!h)return!1;return e(a.worktreeId,h),ae(a,"published",h.turnKey,{version:h.version,bodyLength:h.body.length,partial:h.partial}),!0}catch(b){return ae(a,"failed",null,{error:b instanceof Error?b.message:String(b)}),!1}}async function ah(a,b,d,e){if("claude"!==d)return;let f={worktreeId:b,cliToolId:d,instanceId:e};try{let{getWorktreeById:g}=await Promise.resolve().then(c.bind(c,73753)),h=g(a,b)?.path;if(!h)return;let{hasRoomSubscribers:i}=await Promise.resolve().then(c.bind(c,43015));if(!(0,_.Z)())return;if(!i(b))return void ae(f,"no-subscribers",null);ag(f,async()=>{let{readClaudeTurnProgress:a}=await Promise.resolve().then(c.bind(c,71133));return a({worktreeId:b,cliToolId:d,instanceId:e??d},{worktreePath:h})})}catch(a){ae(f,"failed",null,{error:a instanceof Error?a.message:String(a)})}}var ai=c(70594),aj=c(81254);let ak=(0,n.h)("current-output-builder");function al(a,b){Promise.resolve().then(c.bind(c,43015)).then(({broadcastMessage:c})=>{c("message",{worktreeId:a,message:b})}).catch(b=>{ak.warn("history-row-broadcast-failed",{worktreeId:a,error:b instanceof Error?b.message:String(b)})})}let am=(0,e.v)("__detectionDivergenceEpisodes",()=>new Map),an=(0,n.h)("current-output-builder");async function ao(a,b,c,d,e,f){f?.freshCapture&&(0,L.gm)(o.CLIToolManager.getInstance().getTool(c).getSessionName(b,d));let g=await ap(a,b,c,d);if(!(0,_.Z)())throw new _.SC;return(g.isRunning&&"running"===g.sessionStatus&&null==g.startingSince&&await ah(a,b,c,d),e)?{...g,resolvedBy:e.resolvedBy,conflict:e.conflict??null}:g}async function ap(a,b,c,e){let n=e??c,$=o.CLIToolManager.getInstance().getTool(c),aa=$.getSessionName(b,e),{stopEventAt:ab,eventSource:ac,askUserQuestion:ad,structuredEvents:ae}=function(a,b,c,d){let e=(0,N.getLastStopEventAt)(a,b,c),f=(0,N.getLastAgentEvent)(a,b,c),g=(0,q.VM)(b),h=Date.now(),i=(0,N.getPendingDecisions)(a,b,c,h),j=(0,N.getAskUserQuestion)(a,b,c,h),k=(0,w.Jl)(a,b,c),l={lastEventType:f?.event??null,lastEventAt:f?.at??null,lastEventDetail:f?.detail??null,...(0,N.getPublishedAgentTurn)(a,b,c,h),pendingDecisions:i.map(a=>{let b=(0,x.Wk)(a.toolName);return{id:a.decisionId,at:a.at,source:a.source,toolName:a.toolName,confirmedAt:a.confirmedAt,scraperCorroborated:a.scraperCorroborated,deliveryExpired:(0,P.qX)(a,g.capabilities.decisionTimeoutSeconds,h),kind:b,questionOptions:"question"===b&&j?(0,z.dZ)(j.spec).map(a=>({number:a.number,label:a.label})):null}}),dedupDropped:(0,N.getAgentEventDropCounts)(a,b,c),dialogPendingMaxMs:{...P.h_},promptWaitingSince:null,promptWaitingSource:null,toolInputNormalization:(0,v.SQ)(a,b,c),permissionDecision:(0,u.CD)(a,b,c),source:{cliToolId:g.cliToolId,capabilities:g.capabilities,...(0,s.Kf)(g,g.liveness({worktreeId:a,cliToolId:b,instanceId:d}),h),probedActivity:(0,t.hS)({worktreeId:a,cliToolId:b,instanceId:d})},session:k,sessionContext:(0,w.sc)({worktreeId:a,cliToolId:b,instanceId:c},k),sessionDiff:(0,y.rn)({worktreeId:a,cliToolId:b,instanceId:c})};return{stopEventAt:e,eventSource:g,askUserQuestion:j,structuredEvents:l}}(b,c,e,n),af=await $.isRunning(b,e);if(!(0,_.Z)())throw new _.SC;if(!af)return(0,Q.xG)((0,C.v7)(b,c,e)),{isRunning:!1,startingSince:(0,g.Bk)(b,c,e),sessionName:aa,content:"",lineCount:0,cliToolId:c,sessionStatus:"idle",sessionStatusReason:"session_not_running",statusEvidence:"positive",lastKnownStatus:null,lastKnownStatusAt:null,lastStopEventAt:ab,structuredEvents:ae,model:null,reasoningEffort:null,promptDedup:(0,J.XH)(b,c,e),upstreamFault:null,paneObstruction:null,composerText:null,composerState:"no_composer"};let ag=(0,d.getSessionState)(a,b,n),ah=ag?.lastCapturedLine||0,ao=await (0,A.Wh)(b,c,K._,e);if(!(0,_.Z)())throw new _.SC;let ap=ao.split("\n"),aq=ap.length,ar=Math.min(K._,L.xE),as=(0,L.sl)(aq,ar),at=((0,p.qR)(c,as)?ap.slice(Math.max(0,ah)):ap).join("\n"),{compositeKey:au,lastServerResponseTimestamp:av,statusResult:aw,startingSince:ax,thinking:ay,scraperPromptWaiting:az,isSelectionListActive:aA,isPagerActive:aB,isDismissablePanelActive:aC,evidence:aD,isUnclassifiedActive:aE}=function(a,b,c,d){let e=(0,C.v7)(a,b,c),f=(0,C.xU)(e),h=f?new Date(f):void 0,i=(0,B.WC)(d,b,h),j=(0,g.a3)(a,b,c,"waiting"===i.status||i.hasActivePrompt),k=null===j?i:(0,g.Gz)(i),l=(0,B.f8)(k),m=k.hasActivePrompt,n="waiting"===k.status&&B.ug.has(k.reason),o=k.reason===B.gv.CODEX_PAGER,p="waiting"===k.status&&k.reason===B.gv.COMMAND_CODE_DISMISSABLE_PANEL,q=k.evidence,r=(0,Q.Q4)(k.status,k.reason);return{compositeKey:e,lastServerResponseTimestamp:f,statusResult:k,startingSince:j,thinking:l,scraperPromptWaiting:m,isSelectionListActive:n,isPagerActive:o,isDismissablePanelActive:p,evidence:q,isUnclassifiedActive:r}}(b,c,e,ao);(0,N.observeScraperCompletionEvidence)(b,c,e,"ready"===aw.status&&"positive"===aD,void 0,(0,r.KO)(ae.source.kind,c,ao));let aF=(0,r.$K)(b,c,e,ae.source.kind,ao),aG=(0,O._G)({worktreeId:b,cliToolId:c,instanceId:e,scraper:{status:aw.status,reason:aw.reason,hasActivePrompt:az}}),aH=aG.structured;null!==aH&&(ae.promptWaitingSince=aH.at,ae.promptWaitingSource=aH.source);let aI={status:aw.status,reason:aw.reason,thinking:ay,evidence:aD,isUnclassifiedActive:aE},aJ=(0,ai.wG)(aI,aF,ae)?(0,ai.mi)(a,b,c,n):null,aK=(0,ai.aT)(aI,aF,aH,ae,aJ),aL=null===ax&&aG.waiting,{structuredFacts:aM,promptData:aN,promptAnswerable:aO}=function({worktreeId:a,cliToolId:b,respondInstanceId:c,output:d,captureWindowLines:e,statusResult:f,startingSince:g,promptWaiting:h,askUserQuestion:i,eventSource:j}){let k=f.hasActivePrompt,l=(0,U.k7)(f.promptDetection,(0,U.dO)(d,e,b)).promptData,m=l&&i?(0,R.Hu)(l,i.spec):null,n=null!==h&&(0,O.$G)(h,j.capabilities.eventIdentity)?h.decisionId:null,o=null!==h&&"question"===(0,x.Wk)(h.toolName),p=null===n||o?null:(0,Z.T5)(b),q=null===h?null:{...h,askUserQuestion:(0,ai.EV)(i),decisionOptions:p,decisionId:n,patterns:null!==p?h.patterns:null},r=null!==g?null:k?m??l??(q?(0,Z.Yo)(a,q,c):null):q?(0,Z.Yo)(a,q,c):null;return{structuredFacts:q,promptData:r,promptAnswerable:k&&(m??l)?null===(0,T.dd)(b,d).refusal:void 0}}({worktreeId:b,cliToolId:c,respondInstanceId:n,output:ao,captureWindowLines:ar,statusResult:aw,startingSince:ax,promptWaiting:aH,askUserQuestion:ad,eventSource:ac}),aP=null!==aF&&aF.status!==aw.status;aP&&an.info("detection-divergence",{worktreeId:b,cliToolId:c,instanceId:n,scraperStatus:aw.status,scraperReason:aw.reason,structuredStatus:aF.status,structuredReason:aF.reason,structuredEvent:aF.event,structuredEventAt:aF.at,applied:aK.structuredApplied});let aQ=function(a,b,c,d,e=Date.now()){let f=`${a}\u0000${b}\u0000${c}`,g=am.get(f);return d?(g?g.polls++:am.set(f,{startedAt:e,polls:1}),null):g?(am.delete(f),{durationMs:Math.max(0,e-g.startedAt),polls:g.polls}):null}(b,c,n,aP);null!==aQ&&an.info("detection-divergence-resolved",{worktreeId:b,cliToolId:c,instanceId:n,durationMs:aQ.durationMs,polls:aQ.polls});let aR=(0,M.ei)(ap).join("\n"),aS="opencode"===c?function(a){let b=(0,i.aJ)(a).split("\n"),c=-1,d=-1,e=-1;for(let a=0;a<b.length;a++){let f=l.exec(b[a]);f&&(c=a,e=(d=f[1].length)+1+f[2].length)}if(-1===c)return null;let f=0,g="";for(let a=0;a<b.length;a++){let h=b[a];if(a!==c){let a=m.exec(h);if(!a||a[1].length!==d)continue}let i=h.slice((0,k.sh)(h,e)).trim();""!==i&&(f+=1,""===g&&(g=(0,j.D)(i,200,"…[truncated]")))}return f<2?null:{id:"opencode_sidebar",matchedText:g,boxRight:e,rows:f}}(aR):null,aT=(0,Z.LF)(ac.capabilities.eventIdentity,ae.pendingDecisions??[]),aU=function(a,b,c=Date.now()){for(let[a,b]of f)c-b.lastSeen>36e5&&f.delete(a);if(!b)return f.delete(a),{dwellMs:0,shouldRecord:!1};let d=f.get(a);if(!d)return f.set(a,{since:c,lastSeen:c,recorded:!1}),{dwellMs:0,shouldRecord:!1};d.lastSeen=c;let e=Math.max(0,c-d.since);return d.recorded||e<6e4?{dwellMs:e,shouldRecord:!1}:(d.recorded=!0,{dwellMs:e,shouldRecord:!0})}(au,aK.isUnclassifiedActive&&!aT&&null===ax);aU.shouldRecord&&function(a,b){var c;let e=Math.round(b.dwellMs/1e3),f=`${b.sessionStatus}/${b.sessionStatusReason}`,g=`Unclassified interactive frame (${f}) held for ${e}s. The detection layer could not parse it, so no prompt was published and nothing could answer it. Inspect the raw pane with \`commandmate capture ${b.worktreeId} --pane\`.`+((c=b.obstruction)?` Cause: opencode's sidebar is sharing rows with the transcript (paneObstruction=${c.id}, second column reads ${JSON.stringify(c.matchedText)}), which covers the marker that ends a turn. Press \`ctrl+x b\` in the pane to close it.`:""),h={type:aj.LT,status:"unclassified",question:g,options:[],dwellSeconds:e,sessionStatusReason:f};try{let c=(0,d.createMessage)(a,{worktreeId:b.worktreeId,role:"assistant",content:g,messageType:"prompt",promptData:h,timestamp:new Date,cliToolId:b.cliToolId,instanceId:b.instanceId});ak.info("unclassified-frame-recorded",{worktreeId:b.worktreeId,cliToolId:b.cliToolId,dwellSeconds:e,statusReason:f}),al(b.worktreeId,c)}catch(a){ak.warn("unclassified-frame-record-failed",{worktreeId:b.worktreeId,error:a instanceof Error?a.message:String(a)})}}(a,{worktreeId:b,cliToolId:c,instanceId:n,dwellMs:aU.dwellMs,sessionStatus:aK.status,sessionStatusReason:aK.reason,obstruction:aS});let aV=(aW={supportedEvents:ac.capabilities.supportedEvents,scraperStatus:aw.status,scraperReason:aw.reason,hasActivePrompt:az,lastEventType:ae.lastEventType,lastEventDetail:ae.lastEventDetail}).supportedEvents.includes("user_prompt_submit")&&aW.supportedEvents.includes("stop")&&"waiting"===aW.scraperStatus&&"stop"===aW.lastEventType&&aW.lastEventDetail!==W.HV?aW.hasActivePrompt?"approval-after-stop":B.ug.has(aW.scraperReason)?"menu-after-stop":null:null;if(null!==aV&&function(a){let b=`${a.compositeKey}|${a.turnId??"-"}|${a.kind}`;if(Y.has(b))return;Y.size>=512&&Y.clear(),Y.add(b);let c=(0,V.aJ)(a.frame).split("\n").filter(a=>""!==a.trim());X.warn("layerDisagreement",{kind:a.kind,worktreeId:a.worktreeId,cliToolId:a.cliToolId,instanceId:a.instanceId,turnId:a.turnId,scraperReason:a.scraperReason,frameTail:c.slice(-40).join("\n")})}({compositeKey:au,worktreeId:b,cliToolId:c,instanceId:n,turnId:ae.turnId,kind:aV,scraperReason:aw.reason,frame:ao}),null!==aH&&null!==aM&&!az&&!aH.recorded&&!aT){(0,N.markStructuredPromptRecorded)(b,c,e);var aW,aX=b,aY=c,aZ=n,a$=n,a_=aH,a0=aM;let f=(0,Z.fO)(aX,a0,a$);try{let b=(0,d.createMessage)(a,{worktreeId:aX,role:"assistant",content:f.question,summary:`structured prompt \xb7 source=${a_.source}${a_.toolName?` \xb7 tool=${a_.toolName}`:""}`,messageType:"prompt",promptData:f,timestamp:new Date,cliToolId:aY,instanceId:aZ});ak.info("structured-prompt-recorded",{worktreeId:aX,cliToolId:aY,instanceId:aZ,source:a_.source,toolName:a_.toolName}),al(aX,b)}catch(a){ak.warn("structured-prompt-record-failed",{worktreeId:aX,error:a instanceof Error?a.message:String(a)})}}let a1=(0,h.Zs)(ao,c),a2=(0,M.ZR)(ap,c),a3=(0,C.aq)(b,c,e),{model:a4,effort:a5}=(0,N.getResolvedAgentModelInfo)(b,c,e),a6=null===ax?aK:{...aK,status:"running",reason:B.gv.STARTING,thinking:!1};(0,Q.ox)(au,{status:a6.status,reason:a6.reason,evidence:a6.evidence});let a7=(0,Q.AD)(au);return function({worktreeId:a,cliToolId:b,instanceId:c,sessionName:d,published:e,merged:f,newContent:g,output:h,realtimeSnippet:i,totalLines:j,lastCapturedLine:k,isPromptWaiting:l,promptData:m,promptAnswerable:n,autoYesState:o,lastEnterFallback:p,autoYesDecision:q,isSelectionListActive:r,isPagerActive:s,isDismissablePanelActive:t,startingSince:u,lastKnown:v,lastServerResponseTimestamp:w,compositeKey:x,stopEventAt:y,structuredEvents:z,model:A,effort:B,upstreamFaultMatch:H,paneObstruction:I,composer:K}){let L=(0,D.gb)(a,b,c),M=(0,F._v)(a,b,c)?.episodeId??null;return{isRunning:!0,sessionName:d,cliToolId:b,sessionStatus:e.status,sessionStatusReason:e.reason,content:g,fullOutput:h,realtimeSnippet:i,lineCount:j,lastCapturedLine:k,thinking:e.thinking,isPromptWaiting:l,promptData:m,...void 0!==n?{promptAnswerable:n}:{},promptView:(0,S.ds)(m),autoYes:{enabled:o?.enabled??!1,expiresAt:o?.enabled?o.expiresAt:null,stopReason:o?.stopReason,lastSuppression:L,waitingEpisodeId:M,stopMatchedText:o?.stopMatchedText,lastEnterFallback:p,lastSuppressionAnswered:null!==L&&(0,D.WM)(L,M,(0,E.Xp)(x))},autoYesDecision:q,...o?.enabled?{autoYesAnswerMode:(0,G.Xz)(o)}:{},isSelectionListActive:r,isPagerActive:s,isDismissablePanelActive:t,isUnclassifiedActive:null===u&&f.isUnclassifiedActive,startingSince:u,statusEvidence:e.evidence,lastKnownStatus:v?.status??null,lastKnownStatusAt:v?.at??null,lastServerResponseTimestamp:w,serverPollerActive:(0,C.bZ)(x),lastStopEventAt:y,structuredEvents:z,model:A,reasoningEffort:B,promptDedup:(0,J.XH)(a,b,c),upstreamFault:H?{id:H.fault.id,matchedText:H.matchedText,at:Date.now()}:null,paneObstruction:I?{id:I.id,matchedText:I.matchedText,at:Date.now()}:null,composerText:"content"===K.state?K.text:null,composerState:K.state}}({worktreeId:b,cliToolId:c,instanceId:e,sessionName:aa,published:a6,merged:aK,newContent:at,output:ao,realtimeSnippet:aR,totalLines:aq,lastCapturedLine:ah,isPromptWaiting:aL,promptData:aN,promptAnswerable:aO,autoYesState:a3,lastEnterFallback:null,autoYesDecision:(0,H.u2)({compositeKey:au,grant:a3,promptData:null!==aN&&void 0!==aO?aw.promptDetection.promptData:null,callId:"antigravity"===c?function(a,b){try{return(0,I.Bl)(a,b)}catch{return null}}(b,e):null,pollerActive:(0,C.bZ)(au)}),isSelectionListActive:aA,isPagerActive:aB,isDismissablePanelActive:aC,startingSince:ax,lastKnown:a7,lastServerResponseTimestamp:av,compositeKey:au,stopEventAt:ab,structuredEvents:ae,model:a4,effort:a5,upstreamFaultMatch:a2,paneObstruction:aS,composer:a1})}},63869:(a,b,c)=>{c.d(b,{BN:()=>p.BN,G4:()=>p.G4,It:()=>p.It,Pw:()=>p.Pw,WG:()=>p.WG,if:()=>p.if,tV:()=>I});var d=c(79892),e=c(61878),f=c(905),g=c(90304),h=c(96742),i=c(91478),j=c(81254),k=c(93997),l=c(4803),m=c(20610),n=c(16402),o=c(49973),p=c(9131);let q=/^\d+(?:,\d+)*$/;async function r(a){if(void 0!==a.frame)return a.frame;try{return await (0,d.Xg)(a.sessionName,200)}catch{return null}}async function s(a){if(!/^\d+$/.test(a.answer))return null;let b=(0,f.bN)(a.cliToolId);if(!b.hasDialogRules)return null;let c=await r(a);if(null===c)return null;let d=b.detectDialog((0,e.zJ)(c,a.cliToolId));if(null===d)return null;if("numbered"===d.answerMode)return d;throw new p.Pw(a.cliToolId,a.answer,d)}function t(a){if(0===a)return[];let b=a>0?"Down":"Up";return Array.from({length:Math.abs(a)},()=>b)}function u(a){if(/^\d+$/.test(a.answer))return;let{promptData:b}=a;if(b?.type!=="multiple_choice"||0===b.options.length)return;let c=b.options.filter(a=>!0===a.requiresTextInput);if(0===c.length)throw new p.It(a.cliToolId,b.options.length);if(!c.some(g.J0))throw new p.if(a.cliToolId,c.map(a=>a.number))}function v(a){if(/^\d+$/.test(a.answer))return;let{promptData:b}=a;if(b?.type!=="multiple_choice")return;let c=b.options.filter(g.J0);if(0===c.length)return;let d=b.options.find(a=>!0===a.isDefault);if(void 0!==d&&!(0,g.J0)(d))throw new p.if(a.cliToolId,c.map(a=>a.number),{kind:"cursor_elsewhere",cursorOptionNumber:d.number})}function w(a){return a.options.filter(a=>!0===a.checked).map(a=>a.number)}async function x(a){await new Promise(a=>setTimeout(a,m.x9));try{return await (0,d.Xg)(a,200)}catch{return null}}async function y(a,b,c,d,e,f=()=>{}){var g,j;if(void 0===b.options.find(a=>!0===a.isDefault))throw new p.WG("cursor-unknown",!1,c);let k=w(b),l=[...c.filter(a=>!k.includes(a)),...k.filter(a=>!c.includes(a))].sort((a,b)=>a-b);l.length>0&&(f(!1),await G(a,l.map(String),d,e));let m=l.length>0,n=await x(a);if(F(d,m),null===n)throw new p.WG("recapture-failed",m,c);let o=(0,h.nK)(n);if("prompt"!==o.kind||o.prompt.promptData?.type!=="multiple_choice"||!0!==o.prompt.promptData.multiSelect||o.prompt.promptData.question!==b.question||o.prompt.promptData.options.length!==b.options.length)throw new p.WG("screen-changed",m,c);let q=o.prompt.promptData;if(g=w(q),j=[...c],!(g.length===j.length&&g.every((a,b)=>a===j[b])))throw new p.WG("toggle-mismatch",m,c);let r=q.options.find(a=>!0===a.isDefault);if(void 0===r)throw new p.WG("cursor-unknown",m,c);f(m),await G(a,[...Array.from({length:Math.max(0,q.options.length-r.number+1)},()=>"Down"),"Enter"],d,e);let s=await x(a);if(F(d,!0),null===s)throw new p.WG("recapture-failed",!0,c);let t=(0,i.uG)(s);if(null!==t){if(t.hasUnansweredWarning)throw new p.WG("review-unanswered",!0,c);f(!0),await G(a,["Enter"],d,e);return}let u=(0,h.nK)(s);if("prompt"!==u.kind||u.prompt.promptData?.type!=="multiple_choice"||u.prompt.promptData.question===b.question)throw new p.WG("not-committed",!0,c)}function z(a,b){let{promptCheck:c,refusal:d}=(0,n.dd)(a,b);return d||!c?.isPrompt?null:c.promptData??null}function A(a){return(a??"").replace(/[❯›▶]/g," ").replace(/\s+/g," ").trim()}function B(a,b){return A(a)===A(b)}async function C(a){var b,c;if(a.stillCurrent&&!a.stillCurrent())return null;let e=z(a.cliToolId,await (0,d.Xg)(a.sessionName,200));if(null===e)return null;let f=(void 0!==a.frame?z(a.cliToolId,a.frame):null)??a.promptData??null;return null===f||(b=f,c=e,b.type===c.type&&B(b.question,c.question)&&(void 0===b.approvalTarget||void 0===c.approvalTarget||B(b.approvalTarget,c.approvalTarget))&&("multiple_choice"!==b.type||"multiple_choice"!==c.type||b.options.length===c.options.length&&b.options.every((a,b)=>B(a.label,c.options[b].label))))?e:null}function D(a){return void 0===a.stillAllowedAtSend||a.stillAllowedAtSend()}async function E(a,b,c){let d=null,e=await (0,o.x7)(a.sessionName,b,async()=>null!==(d=await C(a)),async b=>{if(!D(a))return"answer-withheld";let e=!1,f=()=>!!b.isCurrent()||(e=!0,!1),g=a.stillCurrent;try{return await c(d,{stillCurrent:()=>f()&&(void 0===g||g()),assertOwned:b=>{if(!f()){if(b)throw new p.Hv(a.sessionName);throw new p.G4("input-lock-lost",a.sessionName)}}})}catch(b){if(e&&b instanceof p.cC){if(b.keysSent)throw new p.Hv(a.sessionName);throw new p.G4("input-lock-lost",a.sessionName)}throw b}});if(!e.answered)throw new p.G4(e.reason,a.sessionName);if(void 0!==e.value)throw new p.G4(e.value,a.sessionName)}function F(a,b){if(a&&!a())throw new p.cC(b)}async function G(a,b,c,e){if(!c){try{await (0,d.KB)(a,b)}catch(a){throw e&&H(a)>0&&(e.touched=!0),a}e&&b.length>0&&(e.touched=!0);return}let f=0;try{await (0,d.KB)(a,b,{shouldContinue:()=>(f++,c())})}catch(a){if(a instanceof Error&&"SpecialKeysAbortedError"===a.name)throw new p.cC(!0);throw e&&Math.max(f,H(a))>0&&(e.touched=!0),a}e&&b.length>0&&(e.touched=!0)}function H(a){if(!(a instanceof Error)||"TmuxSendError"!==a.name)return 0;let b=a.keysDelivered;return"number"==typeof b&&Number.isFinite(b)&&b>0?b:0}async function I(a){let b={touched:!1};try{await J(a,b)}catch(a){throw function(a,b){if(!(a instanceof Error))return a;let c=function(a){if(!(a instanceof Error)||"TmuxSendError"!==a.name)return null;let b=a.delivery;return"not-started"===b||"indeterminate"===b?b:null}(a);return null!==c&&Object.assign(a,{answerDelivery:"indeterminate"===c?"indeterminate":b.touched?"delivered":"not-started"}),"keysSent"in a||(b.touched?Object.assign(a,{keysSent:!0}):"not-started"===c&&Object.assign(a,{keysSent:!1})),a}(a,b)}}async function J(a,b){let{sessionName:c,answer:e,cliToolId:f,promptData:g,fallbackPromptType:h,fallbackDefaultOptionNumber:i,stillCurrent:n}=a,r=a.readMark??(0,o.TO)(),w=function(a){if("command-code"!==a.cliToolId)return null;let{promptData:b}=a;return b?.type==="multiple_choice"&&!0===b.multiSelect&&q.test(a.answer)?{promptData:b,wanted:[...new Set(a.answer.split(",").map(Number))].sort((a,b)=>a-b)}:null}(a);if(null!==w){await E(a,r,async(a,d)=>{let e=null===a?w.promptData:a;if("multiple_choice"!==e.type||!0!==e.multiSelect)return"target-changed";await y(c,e,w.wanted,d.stillCurrent,b,d.assertOwned)}),(0,k.gm)(c);return}let x=await s(a);if(u(a),v(a),F(n,!1),("claude"===f||"antigravity"===f)&&(g?.type==="multiple_choice"||"multiple_choice"===h)&&/^\d+$/.test(e)){let d=parseInt(e,10);await E(a,r,async(a,e)=>{if(null!==a&&"multiple_choice"!==a.type)return"target-changed";let f=(a=>{let b,c=null;if(a?.type==="multiple_choice"){let d=(c=a.options).find(a=>a.isDefault);b=d?.number??1}else b=i??1;let e=d-b;if(null!==c&&(0,l.kN)(c)&&null!==c){let a=c.filter(a=>(0,l.kN)([a])).length,b=[...t(e),"Space"];return b.push(...t(a-d+1)),b.push("Enter"),b}let f=t(e);return a?.type==="multiple_choice"&&!0===a.isAskUserQuestion&&0===e?["Down","Up","Enter"]:[...f,"Enter"]})(a??g);e.assertOwned(!1),await G(c,f,e.stillCurrent,b)})}else{let f=function(a,b){let c=a.promptData?.type==="multiple_choice"?a.promptData.submitMode:void 0,d=b?.submitMode??c??a.fallbackSubmitMode??"answer_then_enter";return(0,j.MI)(d)?d:"answer_then_enter"}(a,x),g=async()=>{await (0,d.V1)(c,e,!1),""!==e&&(b.touched=!0)};if("answer_only"===f&&(null!==x||a.promptData?.type==="multiple_choice"||"multiple_choice"===a.fallbackPromptType)&&/^\d+$/.test(a.answer)){if(!D(a))throw new p.G4("answer-withheld",c);await g()}else await E(a,r,async(b,f)=>{if(null!==b){let c={...a,promptData:b};u(c),v(c)}f.assertOwned(!1),await g(),await new Promise(a=>setTimeout(a,m.pL)),F(n,!0),f.assertOwned(""!==e),await (0,d.V1)(c,"",!0)})}(0,k.gm)(c)}},64501:(a,b,c)=>{c.d(b,{$x:()=>j,NV:()=>k,KO:()=>i,$K:()=>l});var d=c(51297);let e={codex:{showsAbandonedTurn:c(27789).Y7}};var f=c(66101),g=c(70096),h=c(95375);function i(a,b,c){return"hooks"!==a||function(a,b){let c=e[a];return!c||c.showsAbandonedTurn((0,d.aJ)(b).split("\n"))}(b,c)}function j(a,b,c,d=Date.now()){let e=(0,g.VM)(b);return(0,f.Kf)(e,e.liveness({worktreeId:a,cliToolId:b,instanceId:c??b}),d).kind}function k(a,b,c,d,e=Date.now()){return!i(j(a,b,c,e),b,d)&&(0,h.getStructuredSessionState)(a,b,c,e)?.status==="running"}function l(a,b,c,f,g,i=Date.now()){let j=(0,h.getStructuredSessionState)(a,b,c,i);return j?.status==="running"&&"hooks"===f&&function(a,b){let c=e[a];return!!c&&c.showsAbandonedTurn((0,d.aJ)(b).split("\n"))}(b,g)?null:j}},70594:(a,b,c)=>{c.d(b,{EV:()=>h,aT:()=>i,mi:()=>k,wG:()=>j});var d=c(52660),e=c(72626),f=c(30008);let g=(0,e.h)("current-output-builder");function h(a){let b=a?.spec.questions[0];return b?{question:b.question,labels:b.choices.map(a=>a.label),questionCount:a.spec.questions.length,...b.custom?{custom:!0}:{}}:null}function i(a,b,c=null,d=null,e=null){if("waiting"===a.status)return{...a,structuredApplied:!1};if(null!==c)return{status:"waiting",reason:(0,f.rB)(c),thinking:!1,evidence:a.evidence,isUnclassifiedActive:a.isUnclassifiedActive,structuredApplied:!0};if(null===b||"waiting"===b.status||function(a,b,c,d){if(null===d||!j(a,b,c))return!1;let e=c?.closedAt??null;return null!==e&&e<d}(a,b,d,e))return{...a,structuredApplied:!1};let g="running"===b.status,h="ready"===b.status&&function(a){if(null===a)return!1;let{closedBy:b,closedAt:c,openedAt:d}=a;return"stop"===b&&null!==c&&null!==d&&c>d}(d)?"positive":a.evidence;return{status:b.status,reason:b.reason,thinking:g,evidence:h,isUnclassifiedActive:a.isUnclassifiedActive,structuredApplied:!0}}function j(a,b,c){return!!a.thinking&&null!==b&&"ready"===b.status&&null!==c&&"stop"===c.closedBy&&null!==c.closedAt}function k(a,b,c,e){try{let f=(0,d.getLastUserMessageForInstance)(a,b,c,e);if(!f)return null;let g=f.timestamp instanceof Date?f.timestamp.getTime():NaN;return Number.isFinite(g)?g:null}catch(a){return g.debug("newest-prompt-read-failed",{worktreeId:b,cliToolId:c,instanceId:e,error:a instanceof Error?a.message:String(a)}),null}}},71080:(a,b,c)=>{c.d(b,{H:()=>j,L1:()=>q,Pe:()=>n,fS:()=>m,j7:()=>k,oE:()=>o,o_:()=>l,pN:()=>p,qt:()=>r});var d=c(55511),e=c(36925),f=c(85038);let g=(0,e.v)("__responseHashCache",()=>new Map),h=(0,e.v)("__structuredHistoryRecheckCache",()=>new Map),i=(0,e.v)("__duplicateResponseSkipStreak",()=>new Map),j=30;function k(a,b){let c=(0,d.createHash)("sha256").update(b).digest("hex");return g.get(a)===c||!!(0,f._B)(a)&&(g.set(a,c),i.delete(a),!1)}function l(a){let b=(i.get(a)??0)+1;i.set(a,b);let c=(b-1)%j==0,d=1===b?0:j-1;return{log:c,consecutive:b,suppressed:d}}function m(a){i.delete(a)}function n(a){h.has(a)||h.set(a,0)}function o(a){h.delete(a)}function p(a){let b=h.get(a);return void 0!==b&&(b>0?(h.set(a,b-1),!1):(h.set(a,2),!0))}function q(a){g.delete(a),h.delete(a),i.delete(a)}function r(a){let b=[];for(let{oldKey:c,newKey:d}of a)c!==d&&b.push({newKey:d,state:function(a){let b={hash:g.get(a),recheck:h.get(a),streak:i.get(a)};return g.delete(a),h.delete(a),i.delete(a),b}(c)});for(let{newKey:a,state:c}of b)void 0!==c.hash&&g.set(a,c.hash),void 0!==c.recheck?h.set(a,c.recheck):void 0!==c.hash&&h.delete(a),void 0!==c.hash&&(void 0!==c.streak?i.set(a,c.streak):i.delete(a))}},72457:(a,b,c)=>{c.d(b,{WR:()=>l,gv:()=>j,i2:()=>n,iX:()=>m,nZ:()=>o,p6:()=>k,zm:()=>p});var d=c(55511),e=c(36925),f=c(71080);let g=(0,e.v)("__promptHashCache",()=>new Map),h=(0,e.v)("__duplicatePromptSkipStreak",()=>new Map),i=f.H;function j(a,b){let c=(0,d.createHash)("sha256").update(b).digest("hex");return g.get(a)===c||(g.set(a,c),h.delete(a),!1)}function k(a){let b=(h.get(a)??0)+1;h.set(a,b);let c=(b-1)%i==0,d=1===b?0:i-1;return{log:c,consecutive:b,suppressed:d}}function l(a){h.delete(a)}function m(a){g.delete(a),h.delete(a)}function n(a,b){o([{oldKey:a,newKey:b}])}function o(a){let b=[];for(let{oldKey:c,newKey:d}of a)c!==d&&(b.push({newKey:d,hash:g.get(c),streak:h.get(c)}),g.delete(c),h.delete(c));for(let{newKey:a,hash:c,streak:d}of b)void 0!==c&&(g.set(a,c),void 0!==d?h.set(a,d):h.delete(a))}function p(a,b){return"copilot"!==b?a:a.replace(/^[❯>]\s/gm," ")}},75760:(a,b,c)=>{c.d(b,{ZJ:()=>d,zW:()=>e});let d="server-poller-inactive",e="no-auto-answer"},77466:(a,b,c)=>{c.d(b,{BA:()=>N,C9:()=>x,Cy:()=>n,EN:()=>o,H8:()=>E,SG:()=>B,TU:()=>K,VH:()=>q,Xp:()=>l,Y2:()=>A,ZB:()=>z,eP:()=>F,gD:()=>p,hM:()=>C,hr:()=>m,k6:()=>G,lP:()=>r,od:()=>D,pE:()=>L,pP:()=>j.c,xy:()=>J});var d=c(85726),e=c(72626),f=c(24455),g=c(36925),h=c(27675),i=c(39532),j=c(91227);let k=(0,e.h)("auto-yes-poller");function l(a){return globalThis.__autoYesPollerStates?.get(a)?.lastAnswer??null}function m(a){let b="multiple_choice"===a.type?a.options.map(a=>`${a.isDefault?">":""}${a.number}.${a.label}`).join("\n"):"";return[(0,d.J)(a),b,a.approvalTarget??""].join("\0")}function n(a,b,c,d){let e=`${c}\u0000${b}`;if(a.lastSkipWarnKey===e)return void k.debug(c,{...d,repeated:!0});a.lastSkipWarnKey=e,k.warn(c,d)}let o="\0unidentified-screen";function p(a,b){return a===b||a===o}function q(a){if("multiple_choice"!==a.type)return(0,j.c)(a);let b=a.approvalTarget??"";if(null!==(0,i.Vi)(b,a.options.map(a=>a.label),(a,b)=>a.startsWith(b)))return(0,j.c)(a);let c=a.options.map(a=>`${a.number}.${a.label}`).join("\n");return[(0,d.J)(a),c,v(b,a.options)].join("\0")}function r(a){let b=a.approvalTarget;return"string"!=typeof b?null:"multiple_choice"!==a.type?b:(0,i.Vi)(b,a.options.map(a=>a.label),(a,b)=>a.startsWith(b))??v(b,a.options)}let s=/^[\s\u276F\u203A>\u25B6\u25BA\u25CF\u25CB\u25C9\u2192]+/u,t=/^(\d+)(?:[.)]\s*|\s+)(.*)$/u,u=a=>a.replace(/\s+/gu," ").trim();function v(a,b){return a.split("\n").map(a=>{let c=t.exec(a.replace(s,""));if(null===c)return a;let d=u(c[2]);return b.some(a=>{let b=u(a.label);return a.number===Number(c[1])&&""!==b&&d.startsWith(b)})?a.replace(s,""):a}).join("\n")}let w=(0,g.v)("__autoYesPartialAnswers",()=>new Map);function x(a,b){let c=w.get(a);return c?c.epoch!==b?(w.delete(a),null):c:null}let y=new Set;function z(a,b,c=y){for(let d of(w.delete(a),[...H]))d.recordKey===a&&(void 0===b||d.screenKey===b)&&(c.has(d)||M(d))}function A(a,b){return[...H].filter(c=>!0===c.byPerson&&c.recordKey===a&&c.recordEpoch===b)}function B(a){for(let b of(0,f._9)([...w.keys()],a))w.delete(b);let b=new Set((0,f._9)([...H].map(a=>a.recordKey),a));for(let a of[...H])b.has(a.recordKey)&&M(a)}function C(a,b){let c=w.get(a);void 0!==c&&c.seq<b&&w.delete(a)}function D(a,b){let c=w.get(a);c?.screenKey===o&&w.set(a,{...c,screenKey:b})}function E(a,b,c){if((0,h.cr)(a)!==b.epoch)return;let d=w.get(a);void 0!==d&&d.seq>b.seq||w.set(a,{...b,screenKey:c})}function F(){return++I.last}function G(){for(let a of(w.clear(),[...H]))M(a)}let H=(0,g.v)("__autoYesSendAttempts",()=>new Set),I=(0,g.v)("__autoYesSendAttemptSeq",()=>({last:0}));function J(a,b,c,d=null){let e={seq:++I.last,screenKey:b,recordKey:a,recordEpoch:c,moved:!1,state:"pending",ledger:d};return H.add(e),e}function K(a,b){let c={seq:++I.last,screenKey:b,recordKey:a,recordEpoch:(0,h.cr)(a),moved:!1,state:"pending",byPerson:!0,ledger:null};return H.add(c),c}function L(a,b,c=Date.now()){if("pending"!==a.state||(a.state="settled",H.delete(a),!b||(0,h.cr)(a.recordKey)!==a.recordEpoch))return;let d=w.get(a.recordKey);void 0!==d&&d.epoch===a.recordEpoch&&d.seq>a.seq||w.set(a.recordKey,{screenKey:a.screenKey,epoch:a.recordEpoch,at:c,seq:a.seq,...a.byPerson?{byPerson:!0}:{}})}function M(a){"pending"===a.state&&(a.state="expired"),H.delete(a)}function N(a,b,c){for(let d of H)if(d.moved&&d.recordKey===a&&d.recordEpoch===b&&p(d.screenKey,c))return!0;return!1}},87415:(a,b,c)=>{c.d(b,{ZR:()=>k,ei:()=>j});var d=c(51297),e=c(76777);let f=[{id:"overloaded",pattern:/\b5\d{2}\s+Overloaded\b/i,selfRetrying:!0},{id:"retrying",pattern:/Retrying in \d+s\s*[·•]\s*attempt \d+\/\d+/i,selfRetrying:!0},{id:"context-limit",pattern:/\bmaximum context length is \d+ tokens\b/i,selfRetrying:!1},{id:"model-capacity",pattern:/^■ Selected model is at capacity\b/im,selfRetrying:!1},{id:"limit-reached",pattern:/\blimit reached\b/i,selfRetrying:!1},{id:"api-error",pattern:/^(?:⏺ )?API Error(?::|\s+\d{3})/im,selfRetrying:!1}],g=["model-capacity"];function h(a,b){let c=(0,d.aJ)(a);for(let a of b){var f;let b=a.pattern.exec(c);if(!b)continue;let d=c.lastIndexOf("\n",b.index)+1,g=c.indexOf("\n",b.index);return{fault:a,matchedText:(f=c.slice(d,-1===g?void 0:g).trim()||b[0],(0,e.D)(f,200,"…[truncated]"))}}return null}function i(a){return""===(0,d.aJ)(a).trim()}function j(a){let b=a.slice(-100);if(b.some(a=>!i(a)))return b;let c=a.length-1;for(;c>=0&&i(a[c]);)c-=1;return c<0?b:a.slice(Math.max(0,c+1-100),c+1)}function k(a,b){let c=h(j(a).join("\n"),f);if(c||"codex"!==b)return c;let d=function(a){let b=a.length-100;if(b<=0||a.slice(b).every(i)||!i(a[b]))return null;let c=b-1;for(;c>=0&&i(a[c]);)c-=1;return c>=0?a[c]:null}(a);return null===d?null:h(d,f.filter(a=>g.includes(a.id)))}},93373:(a,b,c)=>{c.d(b,{Xn:()=>h,Yc:()=>i,ik:()=>j});var d=c(95595),e=c(37717),f=c(49891);let g=new Set([e.g.NO_RECENT_OUTPUT,e.g.UNKNOWN_FRAME,e.g.DEFAULT]);function h(a){if(!a.waiting)return{kind:"not-waiting"};let{verdict:b}=a;return{kind:"waiting",waitingKind:a.waitingKind,humanHeld:"waiting"===b.status&&!1===b.promptDetection.isPrompt&&!a.structuredWaiting,promptData:b.promptDetection.promptData??null,structuredSince:a.structuredSince}}function i(a){return{kind:"waiting",waitingKind:"prompt",humanHeld:!1,promptData:a,structuredSince:null}}function j(a){let b=a.verdict??(0,d.WC)(a.output,a.cliToolId,a.lastOutputTimestamp);if("running"===b.status&&g.has(b.reason))return{kind:"unknown"};let c="waiting"===b.status||b.hasActivePrompt||a.structuredWaiting;return h({verdict:b,waiting:c,waitingKind:(0,f.t)({waiting:c,hasActivePrompt:b.hasActivePrompt,scraperStatus:b.status,scraperReason:b.reason,apiAnswerable:!0===a.apiAnswerable}),structuredWaiting:a.structuredWaiting,structuredSince:a.structuredSince})}},97751:(a,b,c)=>{c.d(b,{M4:()=>p,W7:()=>r,aK:()=>q,dV:()=>l,dZ:()=>m,yQ:()=>j});var d=c(72626),e=c(27870),f=c(25071),g=c(70096),h=c(62887);let i=(0,d.h)("lib/hooks/structured-decision-response"),j="Rejected by the operator via `commandmate respond`.",k={1:["once","allow once","allow","yes","y"],2:["always","allow always","allow-always"],3:["reject","deny","no","n"]};function l(a,b){let c=a.trim().toLowerCase();if(""===c)return null;for(let a of void 0===b?e.QB:(0,e.T5)(b))if(c===String(a.number)||c===a.label.toLowerCase()||c===a.reply||(k[a.number]??[]).includes(c))return a;return null}function m(a){let b=a.questions[0];return b?b.choices.map((a,b)=>({number:b+1,label:a.label,reply:a.label})):[]}let n=/^\d+(?:\s*[,\s]\s*\d+)*$/;function o(a){return a.map(a=>`${a.number} = ${a.label}`).join(", ")}function p(a,b){let c=b.trim();if(""===c)return{ok:!1,reason:"unresolvable_answer",message:"An empty answer names no choice."};if(1!==a.questions.length)return{ok:!1,reason:"multi_question_unsupported",message:`This call asks ${a.questions.length} questions and \`answers\` carries one array per question; a single answer cannot say what the others are. Answer it in the terminal.`};let d=a.questions[0],e=m(a);if(n.test(c)){let a=[];for(let b of c.split(/[,\s]+/)){let d=e.find(a=>a.number===Number(b));if(!d)return{ok:!1,reason:"answer_out_of_range",message:`'${c}' names no choice this question offers. ${o(e)}.`};a.some(a=>a.number===d.number)||a.push(d)}return a.length>1&&!d.multiSelect?{ok:!1,reason:"multi_select_not_offered",message:`This question accepts one choice. Send a single number: ${o(e)}.`}:{ok:!0,resolved:{answers:[a.map(a=>a.reply)],selected:a,freeText:!1}}}let f=e.find(a=>a.label.toLowerCase()===c.toLowerCase());return f?{ok:!0,resolved:{answers:[[f.reply]],selected:[f],freeText:!1}}:c.length>1e3?{ok:!1,reason:"unresolvable_answer",message:"A free-text answer is limited to 1000 characters; this one is longer and is refused rather than cut short."}:{ok:!0,resolved:{answers:[[c]],selected:[],freeText:!0}}}function q(a){return{kind:"answer",answers:a.answers}}async function r({worktreeId:a,cliToolId:b,instanceId:d,answer:k,useDefault:m=!1}){let n,o=(0,g.VM)(b);if(null===o.capabilities.eventIdentity)return{kind:"not-applicable",reason:"no-decision-identity"};let p={worktreeId:a,cliToolId:b,instanceId:d};try{n=await o.listPending(p)}catch(c){return i.warn("structured-decision-unreachable",{worktreeId:a,cliToolId:b,instanceId:d??b,error:c instanceof Error?c.message:String(c)}),{kind:"not-applicable",reason:"source-unreachable"}}let q=n.filter(a=>"permission"===a.kind);if(0===q.length)return{kind:"not-applicable",reason:"no-pending-decision"};let r=q[0];if(q.length>1&&i.info("structured-decision-multiple-pending",{worktreeId:a,cliToolId:b,instanceId:d??b,pending:q.length,answering:r.id}),m)return{kind:"refused",reason:"unresolvable_answer",message:`--default cannot answer a structured approval: the agent publishes no default verdict. Send a number instead — ${(0,e.T5)(b).map(a=>`${a.number} = ${a.label}`).join(", ")}.`};let s=void 0===k?null:l(k,b);if(!s)return{kind:"refused",reason:"answer_out_of_range",message:`'${k??""}' is not one of the verdicts this approval accepts. `+(0,e.T5)(b).map(a=>`${a.number} = ${a.label} (${a.reply})`).join(", ")+"."};let t=function(a){switch(a){case 1:return{kind:"allowOnce"};case 2:return{kind:"allowAlways"};case 3:return{kind:"deny",message:j};default:return null}}(s.number);if(!t)return{kind:"refused",reason:"unresolvable_answer",message:`Option ${s.number} has no verdict on this server.`};let{delivery:u}=await (0,f.GW)(o,p,r,t),v=u?.delivered===!0;if(v&&o.capabilities.permissionReplyReleasesPrompt){let{recordAgentEvent:e}=await Promise.resolve().then(c.bind(c,95375));e(a,b,d,{event:"notification",at:Date.now(),detail:h.KC,sessionId:r.conversationId,decisionId:r.id,promptSettled:!0})}return i.info("structured-decision-answered",{worktreeId:a,cliToolId:b,instanceId:d??b,decisionId:r.id,optionNumber:s.number,reply:s.reply,delivered:v}),{kind:"answered",decisionId:r.id,option:s,delivered:v,receipt:u}}},99508:(a,b,c)=>{c.r(b),c.d(b,{INTERACTION_SNAPSHOT_RETRY_DELAYS_MS:()=>n,__resetTerminalBroadcastState:()=>v,broadcastSessionStatus:()=>u,broadcastTerminalSnapshot:()=>o,broadcastTerminalSnapshotAfterInteraction:()=>t});var d=c(43015),e=c(88807),f=c(55283),g=c(72626),h=c(12693),i=c(36925),j=c(56455),k=c(85038);let l=(0,g.h)("terminal-broadcast"),m=(0,i.v)("__terminalSnapshotVersions",()=>new Map),n=[100,250,500,750];async function o(a,b,c){if((0,d.hasRoomSubscribers)(a))try{if(!await q(a,b,c))return;if(!(0,k.Z)())throw new k.SC;let d=(0,e.getDbInstance)(),g=await (0,f.$v)(d,a,b,c);if(!(0,k.Z)())throw new k.SC;s(a,b,g,c)}catch(d){if(d instanceof k.SC)return void l.info("terminal-snapshot:retired",{worktreeId:a,cliToolId:b,instanceId:c});l.error("terminal-snapshot:failed",{worktreeId:a,error:d instanceof Error?d.message:String(d)})}}function p(a){return JSON.stringify([a.fullOutput??"",a.isRunning,a.sessionStatus,a.thinking??!1,a.isPromptWaiting??!1,a.promptAnswerable??null,a.autoYes?.lastEnterFallback??null,a.autoYesDecision?.state??null,a.autoYesDecision?.reason??null,a.autoYesDecision?.confirmation??null,a.autoYesAnswerMode??null,a.isSelectionListActive??!1,a.isPagerActive??!1,a.isDismissablePanelActive??!1,a.isUnclassifiedActive??!1,a.startingSince??null])}async function q(a,b,c){let d=h.CLIToolManager.getInstance().getTool(b).getSessionName(a,c),e=await (0,j.y)(a,d);return null===e||(l.info("terminal-snapshot:refused",{worktreeId:a,cliToolId:b,instanceId:c,refusal:e}),!1)}async function r(a,b,c){return await q(a,b,c)?(0,f.$v)((0,e.getDbInstance)(),a,b,c,void 0,{freshCapture:!0}):null}function s(a,b,c,e){let f=e??b,g=`${a}:${b}:${f}`;(0,d.broadcast)(a,{type:"terminal_snapshot",worktreeId:a,cliToolId:b,instanceId:f,output:c.fullOutput??"",isRunning:c.isRunning,sessionStatus:c.sessionStatus,thinking:c.thinking??!1,isPromptWaiting:c.isPromptWaiting??!1,promptData:c.promptData??null,promptAnswerable:c.promptAnswerable,autoYesEnterFallback:c.autoYes?.lastEnterFallback,autoYesDecision:c.autoYesDecision,...void 0!==c.autoYesAnswerMode?{autoYesAnswerMode:c.autoYesAnswerMode}:{},isSelectionListActive:c.isSelectionListActive??!1,isPagerActive:c.isPagerActive??!1,isDismissablePanelActive:c.isDismissablePanelActive??!1,isUnclassifiedActive:c.isUnclassifiedActive??!1,startingSince:c.startingSince??null,version:function(a){let b=(m.get(a)??0)+1;return m.set(a,b),b}(g)})}async function t(a,b,c,e=n){if((0,d.hasRoomSubscribers)(a))try{let d=await r(a,b,c);if(null===d)return;let f=p(d);for(let g of(s(a,b,d,c),e)){await new Promise(a=>setTimeout(a,g));let d=await r(a,b,c);if(null===d)return;if(p(d)!==f)return void s(a,b,d,c)}}catch(d){l.error("terminal-snapshot:interaction-refresh-failed",{worktreeId:a,cliToolId:b,instanceId:c,error:d instanceof Error?d.message:String(d)})}}function u(a,b,c){(0,d.broadcast)(a,{type:"session_status_changed",worktreeId:a,isRunning:b,cliTool:c?.cliTool??null,instance:c?.instance??null})}function v(){m.clear()}}};
19
+ `,f.mayWrite&&!f.mayWrite())?null:(await e().writeFile(i,o,"utf-8"),i)}async function o(a,b="all"){let c="all"===b?[...k.XH]:[b],d=[];for(let b of c){await m(b);let c=l(b);try{let b=(await e().readdir(c)).filter(b=>b.startsWith(`${a}-`)&&b.endsWith(".md")).map(a=>g().join(c,a));d.push(...b)}catch{}}return d.sort().reverse()}(0,j.h)("log-manager")},41733:(a,b,c)=>{c.d(b,{zX:()=>ap,$M:()=>ai,Tq:()=>B.Tq});var d=c(31990),e=c(88807),f=c(56791),g=c(43015),h=c(26895),i=c(28861),j=c(61878),k=c(70605),l=c(96742),m=c(18778),n=c(15194),o=c(8988),p=c(30741),q=c(72626),r=c(46423),s=c(93997),t=c(60),u=c(82450),v=c(56263),w=c(13033),x=c(72457),y=c(44321),z=c(71080),A=c(28918),B=c(28480),C=c(43925),D=c(40964),E=c(83598),F=c(31442),G=c(45146),H=c(85038),I=c(91601),J=c(92010),K=c(81099),L=c(87415),M=c(73478),N=c(15044),O=c(36261),P=c(93373),Q=c(24455),R=c(77466),S=c(52767);function T(a,b,c,d,e,g,h){h&&((0,z.fS)(e),(0,f.updateSessionState)(a,b,c,g,d))}function U(a){return{response:"",isComplete:!1,lineCount:a}}function V(a,b,c,d,e,f,g,h=!1){let i=(0,t.QM)(b,c,d,e,f,h),j=a.slice(i);return{response:(0,p.aJ)(j.join("\n")),isComplete:!0,lineCount:c,promptDetection:g,bufferReset:d,captureWindowSaturated:h}}var W=c(53300),X=c(34990),Y=c(73495),Z=c(16402);let $=(0,q.h)("response-poller");function _(a){return void 0!==a&&!(0,X.Bf)(a.worktreeId,a.instanceId).ok&&($.debug("antigravity-dialog-no-recent-receipt",{worktreeId:a.worktreeId,instanceId:a.instanceId??"antigravity"}),!0)}function aa(a,b,c){let d=(0,Z.vm)(a,b.promptData?.type,c);return!!d.present||($.debug("prompt-candidate-not-vouched",{cliToolId:a,promptType:b.promptData?.type,gateMode:d.mode}),!1)}var ab=c(31616),ac=c(96486);let ad=["Waiting for auth","⠋","⠙","⠹","⠸","⠼","⠴","⠦","⠧","⠇","⠏"],ae=(0,q.h)("response-poller");function af(a,b,c,d){let{cliToolId:e,lines:f,lastCapturedLine:g,bufferReset:h,captureWindowSaturated:i}=b;return e===a&&c&&!i&&(0,ac.K)(e,f)?((h||d>g)&&ae.info(`${a} startup screen suppressed, response not saved`,{responseLength:c.length,lineCount:d}),{response:"",isComplete:!0,lineCount:d,bufferReset:h,captureWindowSaturated:i}):null}let ag=(0,q.h)("response-poller");function ah(a){return b=>{try{(0,g.broadcastMessage)("message_updated",{worktreeId:a,message:b})}catch(b){ag.warn("prompt-sweep-broadcast-failed",{worktreeId:a,error:b instanceof Error?b.message:String(b)})}}}function ai(a,b,c,d,e,f){if("antigravity"===b){let b=(0,i.g8)(a);if(null!==b)return _(e)?{isPrompt:!1,cleanContent:a.trim()}:b;if((0,i.bf)(a))return{isPrompt:!1,cleanContent:a.trim()}}if("command-code"===b&&void 0!==d){let b=(0,l.nK)(d);if("prompt"===b.kind)return b.prompt;if("unsupported"===b.kind)return{isPrompt:!1,cleanContent:a.trim()}}let g=(0,p.KO)(b),m=(0,h.gF)(a,c?{...g,precomputedLines:c}:g);if(m.isPrompt){let c=void 0!==f?(0,j.Yc)(f,b):(0,j.zJ)(d??a,b).liveRegion;if((0,k.z8)(c,m))return{isPrompt:!1,cleanContent:a.trim()}}return"antigravity"===b&&m.isPrompt&&_(e)||"antigravity"===b&&m.isPrompt&&void 0!==e&&!function(a,b){let c=b.promptData;return!!(c?.type!=="multiple_choice"||(0,i.FI)(a))||"not-a-permission-dialog"!==(0,Y.Me)(c.options,"antigravity").kind}(a,m)?{isPrompt:!1,cleanContent:a.trim()}:m}function aj(a,b){return ai((0,p._A)((0,p.aJ)(a)),b,void 0,a)}function ak(a,b){if((0,H._B)(a.pollerKey))return!0;let c=(0,H.Bh)();return void 0!==c&&al.has(c)||(c&&al.add(c),ag.info("retired-tick-refused",{worktreeId:a.worktreeId,cliToolId:a.cliToolId,instanceId:a.resolvedInstanceId,generation:c?.generation,after:b})),!1}(0,M.I7)();let al=new WeakSet;async function am(a,b,c){let{db:d,worktree:e,worktreeId:g,cliToolId:h,instanceId:i,resolvedInstanceId:j,pollerKey:k}=a;if(!ak(a,"capture"))return!1;let l=(0,z.o_)(k);if(l.log&&ag.info("duplicate-response-skipped",{worktreeId:g,cliToolId:h,instanceId:j,...l.consecutive>1?{consecutive:l.consecutive,suppressed:l.suppressed}:{}}),(0,f.updateSessionState)(d,g,h,b.lineCount,j),(0,z.pN)(k)){let b=await (0,A.captureStructuredHistoryTurn)(g,h,i,{worktreePath:e.path,transcriptPathHint:c?.logFilePath??null});if(!ak(a,"recheck-reader"))return b;if(b)return(0,z.oE)(k),(0,B.t1)(k),ag.info("structured-history-recheck-captured",{worktreeId:g,cliToolId:h,instanceId:j}),!0}return!1}function an(a,b,c,d){let{db:e,worktree:h,worktreeId:i,cliToolId:j,resolvedInstanceId:k,pollerKey:l}=a,{structuredHistoryLive:m,suppressScrapedHistory:n,holdScrapedHistory:o}=d;if(o)(0,B.r4)(l,{worktreeId:i,cliToolId:j,instanceId:k,content:b,timestamp:new Date,summary:c?.summary,logFileName:c?.logFileName,requestId:c?.requestId,worktreePath:h.path,transcriptPathHint:c?.logFilePath??null,expiresAt:Date.now()+B.mQ})&&(ag.info("structured-history-scrape-held",{worktreeId:i,cliToolId:j,instanceId:k,scrapedLength:b.length,holdMs:B.mQ}),(0,C.vQ)(i,j,k,!1));else if(n||(0,H._B)(l))if(n)m&&(0,B.t1)(l),ag.info("structured-history-scrape-suppressed",{worktreeId:i,cliToolId:j,instanceId:k,scrapedLength:b.length,reason:m?"structured-history":"geometry-delegated"});else{let a=(0,f.createMessage)(e,{worktreeId:i,role:"assistant",content:b,messageType:"normal",timestamp:new Date,cliToolId:j,instanceId:k,summary:c?.summary,logFileName:c?.logFileName,requestId:c?.requestId});(0,g.broadcastMessage)("message",{worktreeId:i,message:a}),(0,C.vQ)(i,j,k,!1)}else ag.info("scraped-response-save-refused",{worktreeId:i,cliToolId:j,instanceId:k,generation:(0,H.Bh)()?.generation})}async function ao(a,b,c,d,e){let{db:g,worktree:h,worktreeId:i,cliToolId:j,instanceId:k,resolvedInstanceId:l,pollerKey:n}=a,{result:o,isFullScreenTui:p,lineCountIsCursor:q}=b,r={},s=(0,A.isStructuredHistoryWriterLive)(i,j,k)||await (0,A.captureStructuredHistoryTurn)(i,j,k,{worktreePath:h.path,transcriptPathHint:c?.logFilePath??null},r);ak(a,"reader")&&(s?(0,z.oE)(n):(0,z.Pe)(n));let t=s||e.delegated,u=!t&&"not_yet_closed"===r.outcome;if(!d||t||u||await (0,m.T)(g,i,d,j,{pollerKey:n}),!ak(a,"conversation-log"))return an(a,d,c,{structuredHistoryLive:s,suppressScrapedHistory:t,holdScrapedHistory:u}),!1;(0,f.markPendingPromptsAsAnswered)(g,i,j,l,ah(i))>0&&ag.info("marked-answeredcount-pending");let v=(0,f.getSessionState)(g,i,l);return q&&v&&o.lineCount<=v.lastCapturedLine?(ag.info("race-condition-detected-skipping-save-re"),!1):(an(a,d,c,{structuredHistoryLive:s,suppressScrapedHistory:t,holdScrapedHistory:u}),(0,N.cY)({worktreeId:i,cliToolId:j,instanceId:k,observer:"response-checker",start:a.observationStart,reading:{kind:"not-waiting"},frameCapturedAt:0}),(0,I.J$)({worktreeId:i,worktreeName:h.name,kind:"completion",agentName:l,excerpt:d}).catch(()=>{}),(0,f.updateSessionState)(g,i,j,o.lineCount,l),p&&(0,G.Et)(i,j,k),!0)}async function ap(a,b,c){let h=(0,e.getDbInstance)(),i=c??b;try{var j;let e=(0,f.getWorktreeById)(h,a);if(!e)return ag.error("worktree-not-found"),(0,G.Et)(a,b,c),!1;let k=(0,G.MN)(a,b,c),l={db:h,worktree:e,worktreeId:a,cliToolId:b,instanceId:c,resolvedInstanceId:i,pollerKey:k,observationStart:(0,N.ic)(a,b,c)},m=await (0,d.K1)(a,b,c);if(!ak(l,"session-check"))return!1;if(!m)return ag.info("session-not-running"),(0,G.Et)(a,b,c),!1;if(await (0,B.vb)(k),!ak(l,"pending-scrape-settle"))return!1;let q=(0,D.mf)(b,a,c),A=(0,F.n9)(q)?await (0,E.zQ)(q):{delegated:!1,released:!1};if(!ak(l,"geometry-probe"))return!1;A.released&&((0,f.updateSessionState)(h,a,b,0,i),ag.info("geometry-delegation-released",{worktreeId:a,cliToolId:b,instanceId:i}));let C=(0,f.getSessionState)(h,a,i),X=C?.lastCapturedLine||0,{frame:Y,frameTime:Z}=await (0,N.IW)(()=>(0,d.Wh)(a,b,s.xE,c)),$=ak(l,"capture"),_=function(a,b,c,d){let{db:e,worktreeId:g,cliToolId:h,instanceId:i,resolvedInstanceId:j,pollerKey:k}=a;if(d&&function(a,b,c,d){let e=(0,L.ZR)(d.split("\n"),b);(0,K.notifyUpstreamFaultPush)({worktreeId:a,cliToolId:b,instanceId:c,faultId:e?.fault.id??null,matchedText:e?.matchedText}).catch(()=>{})}(g,h,i,b),d&&("opencode"===h||"copilot"===h))if("opencode"===h){let{turn:a,skipPatterns:c}=(0,t.qG)(b);(0,w.IZ)(k,a,h,c)}else(0,w.IZ)(k,b,h);let l=function(a,b,c,d=s.xE){let e=a.split("\n"),f=e.length;for(;f>0&&""===e[f-1].trim();)f--;let g=e.slice(0,f),h=g.length,i=(0,s.sl)(e.length,d),j="opencode"===c?g.map(p.aJ):null,k="opencode-v2"===c?(0,ab.RZ)(g.map(p.aJ)):"claude"===c?(0,p.GT)(g):"copilot"===c?(0,p.wv)(g):"command-code"===c?(0,p.I$)(g):"codex"===c?(0,p.Zu)(g):j?(0,p.x7)(j):-1,l=k>=0?k:h,m=h>0&&b>25&&h+25<b,n=h>0&&b>50&&h<50,o=m||n;if(!o&&h<b-5)return null;let q=Math.max(0,h-20),u=g.slice(q),v=j?j.join("\n"):u.join("\n"),{promptPattern:w,separatorPattern:x,thinkingPattern:y,skipPatterns:z}=(0,p._X)(c),A="opencode"===c&&k>=0?[...p.zs]:z,B=(a=60)=>(function(a,b,c,d,e,f){let g;if("codex"===a)return(0,p.Nc)(b,e,f,d>=0);if(c)return(0,t.V0)(c).echoEnd;if("copilot"===a){for(let a=e-1;a>=Math.max(0,e-f);a--){if(!p.y.test((0,p.aJ)(b[a])))continue;let c=a;for(;c+1<e&&p.Fg.test((0,p.aJ)(b[c+1]));)c++;return c}return -1}g=/^[>❯]\s+\S/;for(let a=e-1;a>=Math.max(0,e-f);a--){let c=(0,p.aJ)(b[a]);if(g.test(c))return a}return -1})(c,g,j,k,l,a);if("claude"===c||"codex"===c||"copilot"===c||"command-code"===c){let a=g.join("\n"),d=aj(a,c);if(d.isPrompt&&aa(c,d,a))return V(g,b,h,o,c,B,d,i)}let C={cliToolId:c,lines:g,totalLines:h,openCodeCleanLines:j,chromeStart:k,contentEnd:l,lastCapturedLine:b,bufferReset:o,captureWindowSaturated:i,checkLineCount:20,cleanOutputToCheck:(0,p.aJ)(v),promptPattern:w,separatorPattern:x,thinkingPattern:y,skipPatterns:A,findRecentUserPromptIndex:B};if(function(a){let{cliToolId:b,lines:c,totalLines:d,checkLineCount:e,cleanOutputToCheck:f,promptPattern:g,separatorPattern:h,thinkingPattern:i}=a,j=g.test(f),k=h.test(f),l="codex"===b?(0,p.DR)(c,e):i.test(f),m="copilot"===b?(0,p.Wn)(c.slice(Math.max(0,d-8)).map(p.aJ)):null,n="copilot"===b?"idle"===m:("codex"===b||"gemini"===b||"vibe-local"===b||"antigravity"===b)&&j&&!l,o="opencode"===b&&(0,t.bE)(f);return n||"claude"===b&&j&&k&&!l||"command-code"===b&&j&&k&&!l||o}(C))return function(a){let{cliToolId:b,lines:c,totalLines:d,chromeStart:e,openCodeCleanLines:f,bufferReset:g,captureWindowSaturated:h,thinkingPattern:i,skipPatterns:j,findRecentUserPromptIndex:k}=a,{response:l,endIndex:m}=function(a){let{cliToolId:b,lines:c,totalLines:d,chromeStart:e,contentEnd:f,lastCapturedLine:g,bufferReset:h,captureWindowSaturated:i,skipPatterns:j,findRecentUserPromptIndex:k}=a,l=[],m=(0,t.QM)(g,d,h,b,k,i),n="codex"===b?f:d,o="opencode"===b&&e<0?function(a,b,c){for(let d=c-1;d>=b;d--)if(p.$t.test((0,p.aJ)(a[d])))return d;return -1}(c,m,f):-1;for(let a=m;a<f;a++){let d=c[a],f=(0,p.aJ)(d);if("codex"===b&&/^›\s+/.test(f)||"gemini"===b&&/^(%|\$|.*@.*[%$#])\s*$/.test(f)||"antigravity"===b&&/^>\s*$/.test(f)||"opencode"===b&&e<0&&a>o&&(p.sy.test(f)||p.uA.test(f))){n=a;break}j.some(a=>a.test(f))||l.push(d)}return{response:l.join("\n").trim(),endIndex:n}}(a);if("opencode"===b&&e>=0?(0,p.et)(c.slice(e).map(p.aJ)):"copilot"!==b&&i.test(l.split("\n").slice(-r.$).join("\n")))return U(d);let n=function(a,b,c,d,e){if("claude"===a){let a=(0,p.aJ)(b),f=/[╭╮╰╯]/.test(a)||/░{3,}/.test(a)||/▓{3,}/.test(a),g=/Claude Code v\d+\.\d+|claude\//.test(a),h=/Tip:|for shortcuts|\?\s*for help/.test(a),i=/^\s*\/Users\/.*$/m.test(a)&&a.split("\n").length<30,j=e(c)>=0,k=a.match(/^[>❯]\s+(\S.*)$/m);if(k){let b=a.indexOf(k[0]);if(0===a.substring(b+k[0].length).trim().split("\n").filter(a=>{let b=a.trim();return b&&!d.some(a=>a.test(b))&&!/^─+$/.test(b)}).length)return U(c)}else if(!j&&(f||g||h||i)&&b.length<2e3)return ae.info("Claude startup banner suppressed, response not saved",{responseLength:b.length,hasBannerArt:f,hasVersionInfo:g,hasStartupTips:h,hasProjectInit:i}),U(c)}return null}(b,l,d,j,k)??function(a,b,c){if("copilot"===a){let a=(0,p.aJ)(b);if(!a.split("\n").some(a=>p.y.test(a))&&p.E0.some(b=>b.test(a)))return U(c)}return null}(b,l,d)??("command-code"===b&&0>k(d)?(ae.info("Command Code launch screen suppressed, response not saved",{responseLength:l.length}),U(d)):null)??function(a,b,c){if("gemini"===a&&((b.match(/[░█]/g)||[]).length>.3*b.length||ad.some(a=>b.includes(a))||!b.includes("✦")&&b.length<10))return U(c);return null}(b,l,d)??af("codex",a,l,m)??af("vibe-local",a,l,m);return n||{response:l,isComplete:!0,lineCount:m,bufferReset:g,captureWindowSaturated:h,turnHeadTruncated:f?(0,t.V0)(f).headTruncated:void 0}}(C);if("opencode"!==c){let a=g.join("\n"),d=aj(a,c);if(d.isPrompt&&aa(c,d,a))return V(g,b,h,o,c,B,d,i)}return function(a){let{lines:b,totalLines:c,contentEnd:d,lastCapturedLine:e,bufferReset:f,captureWindowSaturated:g,skipPatterns:h,findRecentUserPromptIndex:i}=a,j=[],k=f||g||e>=c-5,l=k?i(80):-1,m=k?l>=0?l+1:Math.max(0,c-80):Math.max(0,e);for(let a=m;a<Math.min(c,d);a++){let c=b[a],d=(0,p.aJ)(c);h.some(a=>a.test(d))||j.push(c)}let n=j.join("\n").trim();return n?{response:n,isComplete:!1,lineCount:c}:U(c)}(C)}(b,c,h,s.xE);if(!l||!l.isComplete){d&&l&&((0,x.WR)(k),(0,z.fS)(k));let{thinkingPattern:a}=(0,p._X)(h),c=(0,p.aJ)(b).split("\n").slice(-r.$).join("\n");return d&&a.test(c)&&(0,f.markPendingPromptsAsAnswered)(e,g,h,j,ah(g))>0&&ag.info("marked-answeredcount-pending"),!1}let m="opencode"===h||"copilot"===h,o=!(0,n.VA)(h)&&!l.captureWindowSaturated;return(!o||!!l.bufferReset||l.lineCount!==c)&&(o&&!l.bufferReset&&l.lineCount<=c?(ag.debug("already-saved-up-to-last-captured-line",{worktreeId:g,cliToolId:h,instanceId:j,lineCount:l.lineCount,lastCapturedLine:c}),!1):{result:l,isFullScreenTui:m,lineCountIsCursor:o})}(l,Y,X,$);if(!_)return!1;let{result:ac,isFullScreenTui:ai,lineCountIsCursor:al}=_,an=ac.promptDetection??aj(ac.response,b);if(an.isPrompt&&aa(b,an,Y))return $&&(0,z.fS)(k),function(a,b,c,d,e,h){let{db:i,worktree:j,worktreeId:k,cliToolId:l,instanceId:m,resolvedInstanceId:n,pollerKey:o}=a;if(!(0,H._B)(o))return ag.info("prompt-save-refused",{worktreeId:k,cliToolId:l,instanceId:n,generation:(0,H.Bh)()?.generation}),!1;let p=(0,N.nP)({worktreeId:k,cliToolId:l,instanceId:m,observer:"response-checker",start:a.observationStart,reading:(0,P.Yc)(b.promptData??null),...e,freshPrompt:!0,lastAnswer:(0,R.Xp)((0,Q.v7)(k,l,m))});if("ignored"===p.action)return ag.info("prompt-observation-stale",{worktreeId:k,cliToolId:l,instanceId:n,because:p.ignoredBecause}),!1;let q=b.rawContent||b.cleanContent,r=(0,x.zm)(q,l);if((0,x.gv)(o,r)){(0,y.LN)(k,l,m);let a=(0,x.p6)(o);return a.log&&ag.info("duplicate-prompt-skipped",{worktreeId:k,cliToolId:l,...a.consecutive>1?{consecutive:a.consecutive,suppressed:a.suppressed}:{}}),!1}let t=(0,W.dO)(h,s.xE,l),w=q;"copilot"===l&&(w=(0,u.LH)(q),w=(0,u.Sj)(w,v.Rf,v.ky)),(0,f.clearInProgressMessageId)(i,k,l,n);let z=(0,f.createMessage)(i,{worktreeId:k,role:"assistant",content:w,messageType:"prompt",promptData:(0,W.R1)(l,h,(0,W.k7)(b,t),t),timestamp:new Date,cliToolId:l,instanceId:n});(0,f.updateSessionState)(i,k,l,c.lineCount,n),(0,g.broadcastMessage)("message",{worktreeId:k,message:z}),(0,S.r)(i,k,l,n,"prompt_detected",{promptType:b.promptData?.type});let A=p.since??p.at;return(0,M.Zu)({worktreeId:k,cliToolId:l,instanceId:m},()=>(0,N.r0)(p),a=>{let c=function(a,b){let c=a.observation;switch(b){case"kept":case"rebound":return a.episodeId;case"opened":case"replaced":return(0,O._v)(c.worktreeId,c.cliToolId,c.instanceId)?.episodeId??null;default:return null}}(p,a);(0,J.R4)({worktreeId:k,cliToolId:l,instanceId:m,waitingSince:A,waitingEpisodeId:c})||(0,I.J$)({worktreeId:k,worktreeName:j.name,kind:"prompt",agentName:n,instanceId:n,waitingKind:"prompt",waitingSince:A,waitingEpisodeId:c,excerpt:b.promptData?.question??w}).catch(()=>{})}),d||(0,G.Et)(k,l,m),!0}(l,an,ac,ai,Z,Y);if($&&(0,x.WR)(k),!(j=ac.response)||""===j.trim())return T(h,a,b,i,k,ac.lineCount,$),!1;let ap="claude"===b?(0,o.R)(ac.response):void 0,aq=function(a,b,c,d){let e=b.response;if("gemini"===a)e=(0,u.IS)(b.response);else if("claude"===a)e=(0,u.NN)(b.response);else if("copilot"===a){let a=(0,w.Uz)(c)||b.response;e=(0,u.LH)(a),e=(0,u.Sj)(e,v.Rf,v.ky),d&&(0,w.q1)(c)}else if("opencode"===a){let a=(0,w.Uz)(c);e=(0,u.aW)(b.turnHeadTruncated&&a?a:b.response,p.zs),d&&(0,w.q1)(c)}return e}(b,ac,k,$);if(!aq||""===aq.trim()||"[No content]"===aq)return T(h,a,b,i,k,ac.lineCount,$),(0,f.clearInProgressMessageId)(h,a,b,i),!1;if(!al&&(0,z.j7)(k,aq))return await am(l,ac,ap);return await ao(l,_,ap,aq,A)}catch(a){return ag.error("response:check-failed",{error:a instanceof Error?a.message:String(a)}),!1}}},44296:(a,b,c)=>{c.d(b,{A:()=>g,K:()=>h});var d=c(61878),e=c(90706),f=c(93923);function g(a,b){return!!b.raw&&("command-code"===a?(0,e.Iu)(b.raw):"claude"===a&&(0,f.mB)(b))}function h(a,b){return!!b&&("command-code"===a||"claude"===a)&&g(a,(0,d.zJ)(b,a))}},44321:(a,b,c)=>{c.d(b,{DS:()=>h,LN:()=>f,XH:()=>g});var d=c(24455);let e=(0,c(36925).v)("__promptDedupSkips",()=>new Map);function f(a,b,c,g=Date.now()){let h=(0,d.v7)(a,b,c),i=e.get(h);e.set(h,{skippedCount:(i?.skippedCount??0)+1,lastSkippedAt:g})}function g(a,b,c){return e.get((0,d.v7)(a,b,c))??{skippedCount:0,lastSkippedAt:null}}function h(a){let b=[];for(let{oldWorktreeId:c,newWorktreeId:f,cliToolId:g,instanceId:h}of a){if(c===f)continue;let a=(0,d.v7)(c,g,h);b.push({newKey:(0,d.v7)(f,g,h),record:e.get(a)}),e.delete(a)}for(let{newKey:a,record:c}of b)void 0!==c&&e.set(a,c)}},45146:(a,b,c)=>{c.d(b,{Et:()=>B,KQ:()=>D,MN:()=>t,fq:()=>C,g8:()=>v,sR:()=>F});var d=c(72626),e=c(13033),f=c(72457),g=c(71080),h=c(44321),i=c(41733),j=c(28480),k=c(85038),l=c(99508),m=c(56455),n=c(40964),o=c(36925);let p=(0,d.h)("response-poller"),q=(0,o.v)("__responsePollerCoordinator",()=>({activePollers:new Map,pollingStartTimes:new Map,owners:new Map,running:new Map,pendingRestart:new Map,latestOwners:new Map,generationCounter:0,pausedOnPrompt:new Set}));q.pausedOnPrompt??=new Set,q.latestOwners??=new Map;let r=q.activePollers,s=q.pollingStartTimes;function t(a,b,c){return(0,k.pP)(a,b,c)}function u(a){return"opencode"===a||"copilot"===a}function v(a,b,c){let d=t(a,b,c),e={worktreeId:a,cliToolId:b,instanceId:c},f=q.running.get(d);if(f){if(f.owner.superseded=!0,Date.now()-f.since<6e4)return void q.pendingRestart.set(d,{target:e,behind:f.owner});p.warn("poller:restart-past-stalled-tick",{pollerKey:d,generation:f.owner.generation,runningForMs:Date.now()-f.since}),q.running.delete(d)}w(d,e)}function w(a,b){let c=q.pausedOnPrompt.has(a);A(a,{resume:c}),c&&p.info("poller:resumed-after-prompt",{pollerKey:a}),function(a){let b=t(a.worktreeId,a.cliToolId,a.instanceId);q.pollingStartTimes.set(b,Date.now()),u(a.cliToolId)&&(0,e.tb)(b),x(a.worktreeId,a.cliToolId,a.instanceId)}(b)}function x(a,b,c){let d=t(a,b,c);y({worktreeId:a,cliToolId:b,instanceId:c},function(a){let b=q.owners.get(a)??q.latestOwners.get(a);b&&(b.superseded=!0);let c={pollerKey:a,generation:++q.generationCounter,superseded:!1,stopped:!1,selfStopped:!1};return q.owners.set(a,c),q.latestOwners.set(a,c),c}(d))}function y(a,b){let c=setTimeout(()=>{z(a,b)},2e3);q.activePollers.set(b.pollerKey,c)}async function z(a,b){let c=b.pollerKey;if(!b.superseded&&!b.stopped){q.running.set(c,{owner:b,since:Date.now()});try{let d,e=q.pollingStartTimes.get(c);if(e&&Date.now()-e>18e5)return void A(c);try{d=await (0,m.y)(a.worktreeId,(0,n.mf)(a.cliToolId,a.worktreeId,a.instanceId))}catch(d){p.error("poller:ownership-check-failed",{pollerKey:c,error:d instanceof Error?d.message:String(d)}),b.superseded||b.stopped||y(a,b);return}if(null!==d){p.warn("poller:session-refused",{pollerKey:c,generation:b.generation,refusal:d}),b.superseded||b.stopped||A(c);return}let f=!1;try{f=await k.tV.run(b,()=>(0,i.zX)(a.worktreeId,a.cliToolId,a.instanceId))}catch(a){p.error("error:",{error:a instanceof Error?a.message:String(a)})}b.selfStopped&&function(a,b,c){if(c&&!u(b.cliToolId)){q.pausedOnPrompt.add(a.pollerKey),p.info("poller:paused-on-prompt",{pollerKey:a.pollerKey,generation:a.generation});return}(0,g.L1)(a.pollerKey)}(b,a,f),b.superseded||k.LF.run(b,()=>(0,l.broadcastTerminalSnapshot)(a.worktreeId,a.cliToolId,a.instanceId)),b.superseded||b.stopped||y(a,b)}finally{q.running.get(c)?.owner===b&&q.running.delete(c);let a=q.pendingRestart.get(c);a&&a.behind===b&&(q.pendingRestart.delete(c),w(c,a.target))}}}function A(a,b={}){let c=k.tV.getStore();if(c&&c.pollerKey===a&&(c.superseded||c.stopped))return void p.info("poller:stale-stop-ignored",{pollerKey:a,generation:c.generation});b.resume||(0,i.Tq)(a,"poller-stopped");let d=q.owners.get(a),h=void 0!==d&&c===d;d&&(d.stopped=!0,d.selfStopped=h,q.owners.delete(a)),q.pendingRestart.delete(a),q.pausedOnPrompt.delete(a);let j=q.activePollers.get(a);j&&(clearTimeout(j),q.activePollers.delete(a),q.pollingStartTimes.delete(a)),(0,e.q1)(a),(0,f.iX)(a),h||b.resume||(0,g.L1)(a)}function B(a,b,c){A(t(a,b,c))}function C(){for(let a of new Set([...Array.from(q.activePollers.keys()),...Array.from(q.owners.keys()),...Array.from(q.pausedOnPrompt)]))A(a);q.pendingRestart.clear(),q.pausedOnPrompt.clear()}function D(){return Array.from(q.activePollers.keys())}function E(a){let b=a.indexOf(":");return b<=0||b===a.length-1?null:{worktreeId:a.slice(0,b),instanceId:a.slice(b+1)}}function F(a,b){let c=function(a){let b=new Map;for(let{oldId:c,newId:d}of a)c&&d&&c!==d&&b.set(c,d);return b}(a);if(0===c.size)return[];let{moves:d,abandoned:i}=function(a,b){let c=[],d=[];for(let e of Array.from(r.keys())){let f=E(e);if(!f)continue;let g=a.get(f.worktreeId);if(!g)continue;let h=b(f.worktreeId,f.instanceId);if(!h){d.push({pollerKey:e,newWorktreeId:g});continue}c.push({oldKey:e,newKey:t(g,h,f.instanceId),newWorktreeId:g,cliToolId:h,instanceId:f.instanceId})}return{moves:c,abandoned:d}}(c,b),k=new Map,l=d.filter(a=>{let b=q.running.get(a.oldKey);return void 0!==b&&b.owner===q.owners.get(a.oldKey)});for(let a of d){let b=r.get(a.oldKey);b&&clearTimeout(b),r.delete(a.oldKey);let c=q.owners.get(a.oldKey);c&&(c.superseded=!0,c.stopped=!0,q.owners.delete(a.oldKey)),q.pendingRestart.delete(a.oldKey),k.set(a.newKey,{startedAt:s.get(a.oldKey)}),s.delete(a.oldKey),(0,e.q1)(a.oldKey)}for(let{pollerKey:a,newWorktreeId:b}of i)(0,j.hB)(a,b),A(a),p.warn("poller:migrate-abandoned",{pollerKey:a});let m=new Set(i.map(({pollerKey:a})=>a)),n=function(a){let b=[];for(let c of Array.from(q.pausedOnPrompt)){let d=E(c);if(!d)continue;let e=a.get(d.worktreeId);e&&b.push({oldKey:c,newKey:`${e}:${d.instanceId}`})}return b}(c),o=function(a,b){let c=[];for(let d of(0,j.B9)()){if(b.has(d))continue;let e=E(d);if(!e)continue;let f=a.get(e.worktreeId);f&&c.push({oldKey:d,newKey:`${f}:${e.instanceId}`,newWorktreeId:f})}return c}(c,m),v=new Set([...d.map(a=>a.oldKey),...n.map(a=>a.oldKey),...o.map(a=>a.oldKey)]);for(let a of new Set([...d.map(a=>a.newKey),...n.map(a=>a.newKey),...o.map(a=>a.newKey)]))!(v.has(a)||m.has(a))&&(q.owners.has(a)||r.has(a)||q.pausedOnPrompt.has(a)||(0,j.Bm)(a))&&(A(a),p.warn("poller:migrate-displaced",{pollerKey:a}));for(let a of l)(0,g.L1)(a.oldKey);(0,f.nZ)(d),(0,g.qt)([...d,...n]),(0,j.TS)(o),(0,h.DS)(d.flatMap(a=>{let b=E(a.oldKey);return b?[{oldWorktreeId:b.worktreeId,newWorktreeId:a.newWorktreeId,cliToolId:a.cliToolId,instanceId:a.instanceId}]:[]}));for(let a of d){let b=k.get(a.newKey)?.startedAt;s.set(a.newKey,b??Date.now()),u(a.cliToolId)&&(0,e.tb)(a.newKey),x(a.newWorktreeId,a.cliToolId,a.instanceId)}for(let a of n)q.pausedOnPrompt.delete(a.oldKey);for(let a of n)q.pausedOnPrompt.add(a.newKey);return d}},48736:(a,b,c)=>{c.d(b,{cV:()=>h,Tb:()=>k,Lj:()=>l,Bz:()=>i,_1:()=>j,sD:()=>m});var d=c(2232),e=c(27354),f=c(4803),g=c(73495);let h=Object.freeze({lookupFailed:!0});function i(a){return null!=a&&"lookupFailed"in a&&!0===a.lookupFailed}function j(a){return a&&!i(a)?a.mode:null}let k=2e4;function l(a,b,c,f=!1){if(!c)return null;if(i(c))return{reason:e.dr};if("off"===c.mode)return{reason:"mode-off"};let g=function(a,b){if(0===b.length)return{outcome:"no-match"};let c=a.some(a=>a.length>k),e=a.map(a=>a.length>k?a.slice(0,k):a);for(let a of b){if(a.length>200||!(0,d.P0)(a).valid)return{outcome:"unusable",pattern:a};let b=new RegExp(a);for(let c of e){let e=(0,d.eJ)(b,c);if(null===e)return{outcome:"unusable",pattern:a};if(e)return{outcome:"match",pattern:a}}}return c?{outcome:"unusable"}:{outcome:"no-match"}}(b,c.denyPatterns);return"match"===g.outcome?{reason:"deny-pattern",pattern:g.pattern}:"unusable"===g.outcome?{reason:"deny-pattern-unusable",pattern:g.pattern}:f&&c.denyPatterns.length>0?{reason:"deny-pattern-unusable"}:"safe"===c.mode?"yes_no"===a?null:{reason:"type-not-allowed"}:"allow-listed"===c.mode?c.allowPromptTypes.includes(a)?null:{reason:"type-not-allowed"}:null}function m(a,b,c,d){let{answer:h,withheldBy:i}=function(a,b,c){if("yes_no"===a.type)return{answer:"y"};if("multiple_choice"===a.type){if(void 0!==c&&"not-a-permission-dialog"===(0,g.Me)(a.options,b).kind){let b=function(a,b,c){if(c)return{kind:"unidentified",cause:"multi-select"};if(0===a.length)return{kind:"unidentified",cause:"no-options"};if(void 0===b||b.length!==a.length||b.some(a=>"unknown"===a))return{kind:"unidentified",cause:"unknown-title"};let d=a.filter((a,c)=>!0===b[c]);if(d.length>1)return{kind:"unidentified",cause:"several-recommended"};let[e,f]=1===d.length?[d[0],"recommended"]:[a.find(a=>a.isDefault)??a[0],"default"];return e.requiresTextInput?{kind:"unidentified",cause:"typed-text"}:{kind:"chosen",option:e,basis:f}}(a.options,c.optionRecommendations,(0,f.eM)(a));return"chosen"===b.kind?{answer:b.option.number.toString()}:{answer:null,withheldBy:e.UT}}if((0,f.eM)(a))return{answer:null};let d=(0,g.Me)(a.options,b);if("unidentified"===d.kind)return{answer:null,withheldBy:e.Yy};let h="allow-once"===d.kind?d.option:a.options.find(a=>a.isDefault)??a.options[0];return!h||h.requiresTextInput?{answer:null}:{answer:h.number.toString()}}return{answer:null}}(a,c,d);if(i)return{answer:null,suppressedBy:i};if(null===h)return{answer:null,suppressedBy:null};let j=l(a.type,function(a){let b=[a.question];if(a.approvalTarget&&b.push(a.approvalTarget),"multiple_choice"===a.type)for(let c of a.options)b.push(c.label);else b.push(...a.options);return b}(a),b,void 0!==a.approvalTargetCompleteness);return j?{answer:null,suppressedBy:j.reason,pattern:j.pattern}:{answer:h,suppressedBy:null}}},49891:(a,b,c)=>{c.d(b,{t:()=>e});var d=c(95595);function e(a){return a.waiting?a.hasActivePrompt||!0===a.apiAnswerable?"prompt":"waiting"===a.scraperStatus&&d.ug.has(a.scraperReason)?"menu":"unclassified":null}},51993:(a,b,c)=>{c.d(b,{IG:()=>n,R0:()=>l,el:()=>o,gl:()=>i,pj:()=>k,yK:()=>p,yZ:()=>m});var d=c(24455),e=c(36925),f=c(21894),g=c(77466);let h=d.UL,i="answered-by-human",j=(0,e.v)("__autoYesManualAnswers",()=>new Map);function k(a,b=Date.now()){return j.set(a,{seq:(j.get(a)?.seq??0)+1,at:b}),(0,f.oD)(a),{compositeKey:a,order:(0,g.eP)(),attempt:null}}function l(a,b){if(null!==a.attempt)return;let c=b?(0,g.pP)(b):g.EN;a.attempt=(0,g.TU)(a.compositeKey,c)}function m(a,b,c=Date.now()){let{compositeKey:d,attempt:e}=a;if("may-be-on-pane"!==b){null!==e&&(0,g.pE)(e,!1,c),(0,g.hM)(d,a.order);return}null!==e&&(0,g.pE)(e,!0,c);let f=j.get(d);void 0!==f&&j.set(d,{...f,seq:f.seq+1})}function n(a){null!==a.attempt&&(0,g.pE)(a.attempt,!1)}function o(a){return j.get(a)?.seq??0}function p(a,b=Date.now()){let c=j.get(a);return void 0!==c&&b-c.at<h}},53300:(a,b,c)=>{c.d(b,{dO:()=>i,R1:()=>l,k7:()=>k});var d=c(15194),e=c(16983),f=c(30741),g=c(44296),h=c(73495);function i(a,b,c,g){if(!0===g)return"clipped";let h=j(a).length,i=b>0&&h>=b;return void 0===c||!(0,d.VA)(c)||h>e.sO?i&&void 0===g?"clipped":"history-start":void 0===g&&i?"clipped":function(a){let b=j(a),c=a=>void 0===a||""===(0,f.aJ)(a).trim();return b.length>1&&c(b[0])&&c(b[b.length-1])?"screen-start":"screen-full"}(a)}function j(a){return(a.endsWith("\n")?a.slice(0,-1):a).split("\n")}function k(a,b){var c;let d=a.promptData;return d&&void 0!==d.approvalTarget&&void 0===d.approvalTargetCompleteness&&a.approvalContext?.completeness==="top-unknown"&&("clipped"===(c=b)||"screen-full"===c)?{...a,promptData:{...d,approvalTargetCompleteness:"top-unknown"}}:a}function l(a,b,c,d){let e=function(a,b,c,d){let e=c.promptData;if(!e)return null;let f=c.approvalContext,i={version:1,...f?{liveRange:{startRow:f.startRow,endRow:f.endRow}}:{},approvalTarget:f?.completeness??"not-measured",...void 0!==d?{captureTop:d}:{}};if("object"==typeof b&&null!==b?(0,g.A)(a,b):(0,g.K)(a,b))return{...i,kind:"confirmation",phase:"confirmation",evidence:["confirm-page-reader"]};if("multiple_choice"===e.type&&!0===e.isAskUserQuestion){let a=["question-picker-chrome"];return void 0!==e.askUserQuestion&&a.push("ask-user-question-payload"),{...i,kind:"question",phase:"question",evidence:a}}return"multiple_choice"===e.type?"not-a-permission-dialog"===(0,h.Me)(e.options,a).kind?{...i,kind:"unknown",evidence:[]}:{...i,kind:"permission",evidence:["permission-option-effect"]}:{...i,kind:"permission",evidence:["yes-no-pattern"]}}(a,b,c,d);return c.promptData&&null!==e?{...c.promptData,reading:e}:c.promptData}},55283:(a,b,c)=>{c.d(b,{$v:()=>ao,emitChatTurnProgress:()=>ag});var d=c(56791),e=c(36925);let f=(0,e.v)("__unclassifiedFrameRuns",()=>new Map);var g=c(56588),h=c(94154),i=c(51297),j=c(76777),k=c(50524);let l=/^([^\S\n]*)╹(▀{4,})/,m=/^([^\S\n]*)[│┃]/;var n=c(72626),o=c(12693),p=c(15194),q=c(70096),r=c(64501),s=c(66101),t=c(33198),u=c(17287),v=c(15388),w=c(3161),x=c(49154),y=c(62171),z=c(97751),A=c(31990),B=c(95595),C=c(35524),D=c(52277),E=c(77466),F=c(36261),G=c(24455),H=c(21894),I=c(34990),J=c(44321),K=c(34405),L=c(93997),M=c(87415),N=c(95375),O=c(30008),P=c(24581),Q=c(40043),R=c(9516),S=c(31239),T=c(16402),U=c(53300),V=c(30741),W=c(62887);let X=(0,n.h)("layer-disagreement"),Y=(0,e.v)("__layerDisagreementReported",()=>new Set);var Z=c(27870),$=c(54325),_=c(85038);let aa=(0,n.h)("current-output-builder");function ab(){return{version:0,askedAt:-1/0,turnKey:null,body:null,loggedOutcome:null,loggedTurnKey:null}}let ac=(0,e.v)("__chatTurnProgressState",()=>new Map);function ad(a){return`${a.worktreeId}:${a.cliToolId}:${a.instanceId??a.cliToolId}`}function ae(a,b,c,d={}){let e=ad(a),f=ac.get(e)??ab();ac.set(e,f),(f.loggedOutcome!==b||f.loggedTurnKey!==c)&&(f.loggedOutcome=b,f.loggedTurnKey=c,aa.info("published"===b?"chat-turn-progress-published":"no-subscribers"===b?"chat-turn-progress-no-subscribers":"chat-turn-progress-failed",{worktreeId:a.worktreeId,cliToolId:a.cliToolId,instanceId:a.instanceId??a.cliToolId,turnKey:c,...d}))}async function af(a,b,c){let d,e=ad(a),f=ac.get(e)??ab();if(c-f.askedAt<$.r9)return null;f.askedAt=c,ac.set(e,f);try{d=await b()}catch{return null}if(!d||0===d.body.length||!(0,_.Z)())return null;let g=(0,$.rx)(d.body);return d.turnKey===f.turnKey&&g.body===f.body?null:{turnKey:d.turnKey,body:g.body,partial:g.truncated||!0===d.partial}}async function ag(a,b,d=Date.now()){try{let{broadcast:e,hasRoomSubscribers:f}=await Promise.resolve().then(c.bind(c,43015));if(!f(a.worktreeId))return ae(a,"no-subscribers",null),!1;let g=await af(a,b,d);if(!g||!(0,_.Z)())return!1;let h=function(a,b){let c=ad(a),d=ac.get(c)??ab();return b.turnKey===d.turnKey&&b.body===d.body?null:(d.turnKey=b.turnKey,d.body=b.body,d.version+=1,ac.set(c,d),{type:$.rz,worktreeId:a.worktreeId,cliToolId:a.cliToolId,instanceId:a.instanceId??a.cliToolId,turnKey:b.turnKey,body:b.body,partial:b.partial,version:d.version,done:!1})}(a,g);if(!h)return!1;return e(a.worktreeId,h),ae(a,"published",h.turnKey,{version:h.version,bodyLength:h.body.length,partial:h.partial}),!0}catch(b){return ae(a,"failed",null,{error:b instanceof Error?b.message:String(b)}),!1}}async function ah(a,b,d,e){if("claude"!==d)return;let f={worktreeId:b,cliToolId:d,instanceId:e};try{let{getWorktreeById:g}=await Promise.resolve().then(c.bind(c,73753)),h=g(a,b)?.path;if(!h)return;let{hasRoomSubscribers:i}=await Promise.resolve().then(c.bind(c,43015));if(!(0,_.Z)())return;if(!i(b))return void ae(f,"no-subscribers",null);ag(f,async()=>{let{readClaudeTurnProgress:a}=await Promise.resolve().then(c.bind(c,71133));return a({worktreeId:b,cliToolId:d,instanceId:e??d},{worktreePath:h})})}catch(a){ae(f,"failed",null,{error:a instanceof Error?a.message:String(a)})}}var ai=c(70594),aj=c(81254);let ak=(0,n.h)("current-output-builder");function al(a,b){Promise.resolve().then(c.bind(c,43015)).then(({broadcastMessage:c})=>{c("message",{worktreeId:a,message:b})}).catch(b=>{ak.warn("history-row-broadcast-failed",{worktreeId:a,error:b instanceof Error?b.message:String(b)})})}let am=(0,e.v)("__detectionDivergenceEpisodes",()=>new Map),an=(0,n.h)("current-output-builder");async function ao(a,b,c,d,e,f){f?.freshCapture&&(0,L.gm)(o.CLIToolManager.getInstance().getTool(c).getSessionName(b,d));let g=await ap(a,b,c,d);if(!(0,_.Z)())throw new _.SC;return(g.isRunning&&"running"===g.sessionStatus&&null==g.startingSince&&await ah(a,b,c,d),e)?{...g,resolvedBy:e.resolvedBy,conflict:e.conflict??null}:g}async function ap(a,b,c,e){let n=e??c,$=o.CLIToolManager.getInstance().getTool(c),aa=$.getSessionName(b,e),{stopEventAt:ab,eventSource:ac,askUserQuestion:ad,structuredEvents:ae}=function(a,b,c,d){let e=(0,N.getLastStopEventAt)(a,b,c),f=(0,N.getLastAgentEvent)(a,b,c),g=(0,q.VM)(b),h=Date.now(),i=(0,N.getPendingDecisions)(a,b,c,h),j=(0,N.getAskUserQuestion)(a,b,c,h),k=(0,w.Jl)(a,b,c),l={lastEventType:f?.event??null,lastEventAt:f?.at??null,lastEventDetail:f?.detail??null,...(0,N.getPublishedAgentTurn)(a,b,c,h),pendingDecisions:i.map(a=>{let b=(0,x.Wk)(a.toolName);return{id:a.decisionId,at:a.at,source:a.source,toolName:a.toolName,confirmedAt:a.confirmedAt,scraperCorroborated:a.scraperCorroborated,deliveryExpired:(0,P.qX)(a,g.capabilities.decisionTimeoutSeconds,h),kind:b,questionOptions:"question"===b&&j?(0,z.dZ)(j.spec).map(a=>({number:a.number,label:a.label})):null}}),dedupDropped:(0,N.getAgentEventDropCounts)(a,b,c),dialogPendingMaxMs:{...P.h_},promptWaitingSince:null,promptWaitingSource:null,toolInputNormalization:(0,v.SQ)(a,b,c),permissionDecision:(0,u.CD)(a,b,c),source:{cliToolId:g.cliToolId,capabilities:g.capabilities,...(0,s.Kf)(g,g.liveness({worktreeId:a,cliToolId:b,instanceId:d}),h),probedActivity:(0,t.hS)({worktreeId:a,cliToolId:b,instanceId:d})},session:k,sessionContext:(0,w.sc)({worktreeId:a,cliToolId:b,instanceId:c},k),sessionDiff:(0,y.rn)({worktreeId:a,cliToolId:b,instanceId:c})};return{stopEventAt:e,eventSource:g,askUserQuestion:j,structuredEvents:l}}(b,c,e,n),af=await $.isRunning(b,e);if(!(0,_.Z)())throw new _.SC;if(!af)return(0,Q.xG)((0,C.v7)(b,c,e)),{isRunning:!1,startingSince:(0,g.Bk)(b,c,e),sessionName:aa,content:"",lineCount:0,cliToolId:c,sessionStatus:"idle",sessionStatusReason:"session_not_running",statusEvidence:"positive",lastKnownStatus:null,lastKnownStatusAt:null,lastStopEventAt:ab,structuredEvents:ae,model:null,reasoningEffort:null,promptDedup:(0,J.XH)(b,c,e),upstreamFault:null,paneObstruction:null,composerText:null,composerState:"no_composer"};let ag=(0,d.getSessionState)(a,b,n),ah=ag?.lastCapturedLine||0,ao=await (0,A.Wh)(b,c,K._,e);if(!(0,_.Z)())throw new _.SC;let ap=ao.split("\n"),aq=ap.length,ar=Math.min(K._,L.xE),as=(0,L.sl)(aq,ar),at=((0,p.qR)(c,as)?ap.slice(Math.max(0,ah)):ap).join("\n"),{compositeKey:au,lastServerResponseTimestamp:av,statusResult:aw,startingSince:ax,thinking:ay,scraperPromptWaiting:az,isSelectionListActive:aA,isPagerActive:aB,isDismissablePanelActive:aC,evidence:aD,isUnclassifiedActive:aE}=function(a,b,c,d){let e=(0,C.v7)(a,b,c),f=(0,C.xU)(e),h=f?new Date(f):void 0,i=(0,B.WC)(d,b,h),j=(0,g.a3)(a,b,c,"waiting"===i.status||i.hasActivePrompt),k=null===j?i:(0,g.Gz)(i),l=(0,B.f8)(k),m=k.hasActivePrompt,n="waiting"===k.status&&B.ug.has(k.reason),o=k.reason===B.gv.CODEX_PAGER,p="waiting"===k.status&&k.reason===B.gv.COMMAND_CODE_DISMISSABLE_PANEL,q=k.evidence,r=(0,Q.Q4)(k.status,k.reason);return{compositeKey:e,lastServerResponseTimestamp:f,statusResult:k,startingSince:j,thinking:l,scraperPromptWaiting:m,isSelectionListActive:n,isPagerActive:o,isDismissablePanelActive:p,evidence:q,isUnclassifiedActive:r}}(b,c,e,ao);(0,N.observeScraperCompletionEvidence)(b,c,e,"ready"===aw.status&&"positive"===aD,void 0,(0,r.KO)(ae.source.kind,c,ao));let aF=(0,r.$K)(b,c,e,ae.source.kind,ao),aG=(0,O._G)({worktreeId:b,cliToolId:c,instanceId:e,scraper:{status:aw.status,reason:aw.reason,hasActivePrompt:az}}),aH=aG.structured;null!==aH&&(ae.promptWaitingSince=aH.at,ae.promptWaitingSource=aH.source);let aI={status:aw.status,reason:aw.reason,thinking:ay,evidence:aD,isUnclassifiedActive:aE},aJ=(0,ai.wG)(aI,aF,ae)?(0,ai.mi)(a,b,c,n):null,aK=(0,ai.aT)(aI,aF,aH,ae,aJ),aL=null===ax&&aG.waiting,{structuredFacts:aM,promptData:aN,promptAnswerable:aO}=function({worktreeId:a,cliToolId:b,respondInstanceId:c,output:d,captureWindowLines:e,statusResult:f,startingSince:g,promptWaiting:h,askUserQuestion:i,eventSource:j}){let k=f.hasActivePrompt,l=(0,U.k7)(f.promptDetection,(0,U.dO)(d,e,b)).promptData,m=l&&i?(0,R.Hu)(l,i.spec):null,n=null!==h&&(0,O.$G)(h,j.capabilities.eventIdentity)?h.decisionId:null,o=null!==h&&"question"===(0,x.Wk)(h.toolName),p=null===n||o?null:(0,Z.T5)(b),q=null===h?null:{...h,askUserQuestion:(0,ai.EV)(i),decisionOptions:p,decisionId:n,patterns:null!==p?h.patterns:null},r=null!==g?null:k?m??l??(q?(0,Z.Yo)(a,q,c):null):q?(0,Z.Yo)(a,q,c):null;return{structuredFacts:q,promptData:r,promptAnswerable:k&&(m??l)?null===(0,T.dd)(b,d).refusal:void 0}}({worktreeId:b,cliToolId:c,respondInstanceId:n,output:ao,captureWindowLines:ar,statusResult:aw,startingSince:ax,promptWaiting:aH,askUserQuestion:ad,eventSource:ac}),aP=null!==aF&&aF.status!==aw.status;aP&&an.info("detection-divergence",{worktreeId:b,cliToolId:c,instanceId:n,scraperStatus:aw.status,scraperReason:aw.reason,structuredStatus:aF.status,structuredReason:aF.reason,structuredEvent:aF.event,structuredEventAt:aF.at,applied:aK.structuredApplied});let aQ=function(a,b,c,d,e=Date.now()){let f=`${a}\u0000${b}\u0000${c}`,g=am.get(f);return d?(g?g.polls++:am.set(f,{startedAt:e,polls:1}),null):g?(am.delete(f),{durationMs:Math.max(0,e-g.startedAt),polls:g.polls}):null}(b,c,n,aP);null!==aQ&&an.info("detection-divergence-resolved",{worktreeId:b,cliToolId:c,instanceId:n,durationMs:aQ.durationMs,polls:aQ.polls});let aR=(0,M.ei)(ap).join("\n"),aS="opencode"===c?function(a){let b=(0,i.aJ)(a).split("\n"),c=-1,d=-1,e=-1;for(let a=0;a<b.length;a++){let f=l.exec(b[a]);f&&(c=a,e=(d=f[1].length)+1+f[2].length)}if(-1===c)return null;let f=0,g="";for(let a=0;a<b.length;a++){let h=b[a];if(a!==c){let a=m.exec(h);if(!a||a[1].length!==d)continue}let i=h.slice((0,k.sh)(h,e)).trim();""!==i&&(f+=1,""===g&&(g=(0,j.D)(i,200,"…[truncated]")))}return f<2?null:{id:"opencode_sidebar",matchedText:g,boxRight:e,rows:f}}(aR):null,aT=(0,Z.LF)(ac.capabilities.eventIdentity,ae.pendingDecisions??[]),aU=function(a,b,c=Date.now()){for(let[a,b]of f)c-b.lastSeen>36e5&&f.delete(a);if(!b)return f.delete(a),{dwellMs:0,shouldRecord:!1};let d=f.get(a);if(!d)return f.set(a,{since:c,lastSeen:c,recorded:!1}),{dwellMs:0,shouldRecord:!1};d.lastSeen=c;let e=Math.max(0,c-d.since);return d.recorded||e<6e4?{dwellMs:e,shouldRecord:!1}:(d.recorded=!0,{dwellMs:e,shouldRecord:!0})}(au,aK.isUnclassifiedActive&&!aT&&null===ax);aU.shouldRecord&&function(a,b){var c;let e=Math.round(b.dwellMs/1e3),f=`${b.sessionStatus}/${b.sessionStatusReason}`,g=`Unclassified interactive frame (${f}) held for ${e}s. The detection layer could not parse it, so no prompt was published and nothing could answer it. Inspect the raw pane with \`commandmate capture ${b.worktreeId} --pane\`.`+((c=b.obstruction)?` Cause: opencode's sidebar is sharing rows with the transcript (paneObstruction=${c.id}, second column reads ${JSON.stringify(c.matchedText)}), which covers the marker that ends a turn. Press \`ctrl+x b\` in the pane to close it.`:""),h={type:aj.LT,status:"unclassified",question:g,options:[],dwellSeconds:e,sessionStatusReason:f};try{let c=(0,d.createMessage)(a,{worktreeId:b.worktreeId,role:"assistant",content:g,messageType:"prompt",promptData:h,timestamp:new Date,cliToolId:b.cliToolId,instanceId:b.instanceId});ak.info("unclassified-frame-recorded",{worktreeId:b.worktreeId,cliToolId:b.cliToolId,dwellSeconds:e,statusReason:f}),al(b.worktreeId,c)}catch(a){ak.warn("unclassified-frame-record-failed",{worktreeId:b.worktreeId,error:a instanceof Error?a.message:String(a)})}}(a,{worktreeId:b,cliToolId:c,instanceId:n,dwellMs:aU.dwellMs,sessionStatus:aK.status,sessionStatusReason:aK.reason,obstruction:aS});let aV=(aW={supportedEvents:ac.capabilities.supportedEvents,scraperStatus:aw.status,scraperReason:aw.reason,hasActivePrompt:az,lastEventType:ae.lastEventType,lastEventDetail:ae.lastEventDetail}).supportedEvents.includes("user_prompt_submit")&&aW.supportedEvents.includes("stop")&&"waiting"===aW.scraperStatus&&"stop"===aW.lastEventType&&aW.lastEventDetail!==W.HV?aW.hasActivePrompt?"approval-after-stop":B.ug.has(aW.scraperReason)?"menu-after-stop":null:null;if(null!==aV&&function(a){let b=`${a.compositeKey}|${a.turnId??"-"}|${a.kind}`;if(Y.has(b))return;Y.size>=512&&Y.clear(),Y.add(b);let c=(0,V.aJ)(a.frame).split("\n").filter(a=>""!==a.trim());X.warn("layerDisagreement",{kind:a.kind,worktreeId:a.worktreeId,cliToolId:a.cliToolId,instanceId:a.instanceId,turnId:a.turnId,scraperReason:a.scraperReason,frameTail:c.slice(-40).join("\n")})}({compositeKey:au,worktreeId:b,cliToolId:c,instanceId:n,turnId:ae.turnId,kind:aV,scraperReason:aw.reason,frame:ao}),null!==aH&&null!==aM&&!az&&!aH.recorded&&!aT){(0,N.markStructuredPromptRecorded)(b,c,e);var aW,aX=b,aY=c,aZ=n,a$=n,a_=aH,a0=aM;let f=(0,Z.fO)(aX,a0,a$);try{let b=(0,d.createMessage)(a,{worktreeId:aX,role:"assistant",content:f.question,summary:`structured prompt \xb7 source=${a_.source}${a_.toolName?` \xb7 tool=${a_.toolName}`:""}`,messageType:"prompt",promptData:f,timestamp:new Date,cliToolId:aY,instanceId:aZ});ak.info("structured-prompt-recorded",{worktreeId:aX,cliToolId:aY,instanceId:aZ,source:a_.source,toolName:a_.toolName}),al(aX,b)}catch(a){ak.warn("structured-prompt-record-failed",{worktreeId:aX,error:a instanceof Error?a.message:String(a)})}}let a1=(0,h.Zs)(ao,c),a2=(0,M.ZR)(ap,c),a3=(0,C.aq)(b,c,e),{model:a4,effort:a5}=(0,N.getResolvedAgentModelInfo)(b,c,e),a6=null===ax?aK:{...aK,status:"running",reason:B.gv.STARTING,thinking:!1};(0,Q.ox)(au,{status:a6.status,reason:a6.reason,evidence:a6.evidence});let a7=(0,Q.AD)(au);return function({worktreeId:a,cliToolId:b,instanceId:c,sessionName:d,published:e,merged:f,newContent:g,output:h,realtimeSnippet:i,totalLines:j,lastCapturedLine:k,isPromptWaiting:l,promptData:m,promptAnswerable:n,autoYesState:o,lastEnterFallback:p,autoYesDecision:q,isSelectionListActive:r,isPagerActive:s,isDismissablePanelActive:t,startingSince:u,lastKnown:v,lastServerResponseTimestamp:w,compositeKey:x,stopEventAt:y,structuredEvents:z,model:A,effort:B,upstreamFaultMatch:H,paneObstruction:I,composer:K}){let L=(0,D.gb)(a,b,c),M=(0,F._v)(a,b,c)?.episodeId??null;return{isRunning:!0,sessionName:d,cliToolId:b,sessionStatus:e.status,sessionStatusReason:e.reason,content:g,fullOutput:h,realtimeSnippet:i,lineCount:j,lastCapturedLine:k,thinking:e.thinking,isPromptWaiting:l,promptData:m,...void 0!==n?{promptAnswerable:n}:{},promptView:(0,S.ds)(m),autoYes:{enabled:o?.enabled??!1,expiresAt:o?.enabled?o.expiresAt:null,stopReason:o?.stopReason,lastSuppression:L,waitingEpisodeId:M,stopMatchedText:o?.stopMatchedText,lastEnterFallback:p,lastSuppressionAnswered:null!==L&&(0,D.WM)(L,M,(0,E.Xp)(x))},autoYesDecision:q,...o?.enabled?{autoYesAnswerMode:(0,G.Xz)(o)}:{},isSelectionListActive:r,isPagerActive:s,isDismissablePanelActive:t,isUnclassifiedActive:null===u&&f.isUnclassifiedActive,startingSince:u,statusEvidence:e.evidence,lastKnownStatus:v?.status??null,lastKnownStatusAt:v?.at??null,lastServerResponseTimestamp:w,serverPollerActive:(0,C.bZ)(x),lastStopEventAt:y,structuredEvents:z,model:A,reasoningEffort:B,promptDedup:(0,J.XH)(a,b,c),upstreamFault:H?{id:H.fault.id,matchedText:H.matchedText,at:Date.now()}:null,paneObstruction:I?{id:I.id,matchedText:I.matchedText,at:Date.now()}:null,composerText:"content"===K.state?K.text:null,composerState:K.state}}({worktreeId:b,cliToolId:c,instanceId:e,sessionName:aa,published:a6,merged:aK,newContent:at,output:ao,realtimeSnippet:aR,totalLines:aq,lastCapturedLine:ah,isPromptWaiting:aL,promptData:aN,promptAnswerable:aO,autoYesState:a3,lastEnterFallback:null,autoYesDecision:(0,H.u2)({compositeKey:au,grant:a3,promptData:null!==aN&&void 0!==aO?aw.promptDetection.promptData:null,callId:"antigravity"===c?function(a,b){try{return(0,I.Bl)(a,b)}catch{return null}}(b,e):null,pollerActive:(0,C.bZ)(au)}),isSelectionListActive:aA,isPagerActive:aB,isDismissablePanelActive:aC,startingSince:ax,lastKnown:a7,lastServerResponseTimestamp:av,compositeKey:au,stopEventAt:ab,structuredEvents:ae,model:a4,effort:a5,upstreamFaultMatch:a2,paneObstruction:aS,composer:a1})}},63869:(a,b,c)=>{c.d(b,{BN:()=>p.BN,G4:()=>p.G4,It:()=>p.It,Pw:()=>p.Pw,WG:()=>p.WG,if:()=>p.if,tV:()=>I});var d=c(79892),e=c(61878),f=c(42742),g=c(90304),h=c(96742),i=c(91478),j=c(81254),k=c(93997),l=c(4803),m=c(20610),n=c(16402),o=c(49973),p=c(9131);let q=/^\d+(?:,\d+)*$/;async function r(a){if(void 0!==a.frame)return a.frame;try{return await (0,d.Xg)(a.sessionName,200)}catch{return null}}async function s(a){if(!/^\d+$/.test(a.answer))return null;let b=(0,f.bN)(a.cliToolId);if(!b.hasDialogRules)return null;let c=await r(a);if(null===c)return null;let d=b.detectDialog((0,e.zJ)(c,a.cliToolId));if(null===d)return null;if("numbered"===d.answerMode)return d;throw new p.Pw(a.cliToolId,a.answer,d)}function t(a){if(0===a)return[];let b=a>0?"Down":"Up";return Array.from({length:Math.abs(a)},()=>b)}function u(a){if(/^\d+$/.test(a.answer))return;let{promptData:b}=a;if(b?.type!=="multiple_choice"||0===b.options.length)return;let c=b.options.filter(a=>!0===a.requiresTextInput);if(0===c.length)throw new p.It(a.cliToolId,b.options.length);if(!c.some(g.J0))throw new p.if(a.cliToolId,c.map(a=>a.number))}function v(a){if(/^\d+$/.test(a.answer))return;let{promptData:b}=a;if(b?.type!=="multiple_choice")return;let c=b.options.filter(g.J0);if(0===c.length)return;let d=b.options.find(a=>!0===a.isDefault);if(void 0!==d&&!(0,g.J0)(d))throw new p.if(a.cliToolId,c.map(a=>a.number),{kind:"cursor_elsewhere",cursorOptionNumber:d.number})}function w(a){return a.options.filter(a=>!0===a.checked).map(a=>a.number)}async function x(a){await new Promise(a=>setTimeout(a,m.x9));try{return await (0,d.Xg)(a,200)}catch{return null}}async function y(a,b,c,d,e,f=()=>{}){var g,j;if(void 0===b.options.find(a=>!0===a.isDefault))throw new p.WG("cursor-unknown",!1,c);let k=w(b),l=[...c.filter(a=>!k.includes(a)),...k.filter(a=>!c.includes(a))].sort((a,b)=>a-b);l.length>0&&(f(!1),await G(a,l.map(String),d,e));let m=l.length>0,n=await x(a);if(F(d,m),null===n)throw new p.WG("recapture-failed",m,c);let o=(0,h.nK)(n);if("prompt"!==o.kind||o.prompt.promptData?.type!=="multiple_choice"||!0!==o.prompt.promptData.multiSelect||o.prompt.promptData.question!==b.question||o.prompt.promptData.options.length!==b.options.length)throw new p.WG("screen-changed",m,c);let q=o.prompt.promptData;if(g=w(q),j=[...c],!(g.length===j.length&&g.every((a,b)=>a===j[b])))throw new p.WG("toggle-mismatch",m,c);let r=q.options.find(a=>!0===a.isDefault);if(void 0===r)throw new p.WG("cursor-unknown",m,c);f(m),await G(a,[...Array.from({length:Math.max(0,q.options.length-r.number+1)},()=>"Down"),"Enter"],d,e);let s=await x(a);if(F(d,!0),null===s)throw new p.WG("recapture-failed",!0,c);let t=(0,i.uG)(s);if(null!==t){if(t.hasUnansweredWarning)throw new p.WG("review-unanswered",!0,c);f(!0),await G(a,["Enter"],d,e);return}let u=(0,h.nK)(s);if("prompt"!==u.kind||u.prompt.promptData?.type!=="multiple_choice"||u.prompt.promptData.question===b.question)throw new p.WG("not-committed",!0,c)}function z(a,b){let{promptCheck:c,refusal:d}=(0,n.dd)(a,b);return d||!c?.isPrompt?null:c.promptData??null}function A(a){return(a??"").replace(/[❯›▶]/g," ").replace(/\s+/g," ").trim()}function B(a,b){return A(a)===A(b)}async function C(a){var b,c;if(a.stillCurrent&&!a.stillCurrent())return null;let e=z(a.cliToolId,await (0,d.Xg)(a.sessionName,200));if(null===e)return null;let f=(void 0!==a.frame?z(a.cliToolId,a.frame):null)??a.promptData??null;return null===f||(b=f,c=e,b.type===c.type&&B(b.question,c.question)&&(void 0===b.approvalTarget||void 0===c.approvalTarget||B(b.approvalTarget,c.approvalTarget))&&("multiple_choice"!==b.type||"multiple_choice"!==c.type||b.options.length===c.options.length&&b.options.every((a,b)=>B(a.label,c.options[b].label))))?e:null}function D(a){return void 0===a.stillAllowedAtSend||a.stillAllowedAtSend()}async function E(a,b,c){let d=null,e=await (0,o.x7)(a.sessionName,b,async()=>null!==(d=await C(a)),async b=>{if(!D(a))return"answer-withheld";let e=!1,f=()=>!!b.isCurrent()||(e=!0,!1),g=a.stillCurrent;try{return await c(d,{stillCurrent:()=>f()&&(void 0===g||g()),assertOwned:b=>{if(!f()){if(b)throw new p.Hv(a.sessionName);throw new p.G4("input-lock-lost",a.sessionName)}}})}catch(b){if(e&&b instanceof p.cC){if(b.keysSent)throw new p.Hv(a.sessionName);throw new p.G4("input-lock-lost",a.sessionName)}throw b}});if(!e.answered)throw new p.G4(e.reason,a.sessionName);if(void 0!==e.value)throw new p.G4(e.value,a.sessionName)}function F(a,b){if(a&&!a())throw new p.cC(b)}async function G(a,b,c,e){if(!c){try{await (0,d.KB)(a,b)}catch(a){throw e&&H(a)>0&&(e.touched=!0),a}e&&b.length>0&&(e.touched=!0);return}let f=0;try{await (0,d.KB)(a,b,{shouldContinue:()=>(f++,c())})}catch(a){if(a instanceof Error&&"SpecialKeysAbortedError"===a.name)throw new p.cC(!0);throw e&&Math.max(f,H(a))>0&&(e.touched=!0),a}e&&b.length>0&&(e.touched=!0)}function H(a){if(!(a instanceof Error)||"TmuxSendError"!==a.name)return 0;let b=a.keysDelivered;return"number"==typeof b&&Number.isFinite(b)&&b>0?b:0}async function I(a){let b={touched:!1};try{await J(a,b)}catch(a){throw function(a,b){if(!(a instanceof Error))return a;let c=function(a){if(!(a instanceof Error)||"TmuxSendError"!==a.name)return null;let b=a.delivery;return"not-started"===b||"indeterminate"===b?b:null}(a);return null!==c&&Object.assign(a,{answerDelivery:"indeterminate"===c?"indeterminate":b.touched?"delivered":"not-started"}),"keysSent"in a||(b.touched?Object.assign(a,{keysSent:!0}):"not-started"===c&&Object.assign(a,{keysSent:!1})),a}(a,b)}}async function J(a,b){let{sessionName:c,answer:e,cliToolId:f,promptData:g,fallbackPromptType:h,fallbackDefaultOptionNumber:i,stillCurrent:n}=a,r=a.readMark??(0,o.TO)(),w=function(a){if("command-code"!==a.cliToolId)return null;let{promptData:b}=a;return b?.type==="multiple_choice"&&!0===b.multiSelect&&q.test(a.answer)?{promptData:b,wanted:[...new Set(a.answer.split(",").map(Number))].sort((a,b)=>a-b)}:null}(a);if(null!==w){await E(a,r,async(a,d)=>{let e=null===a?w.promptData:a;if("multiple_choice"!==e.type||!0!==e.multiSelect)return"target-changed";await y(c,e,w.wanted,d.stillCurrent,b,d.assertOwned)}),(0,k.gm)(c);return}let x=await s(a);if(u(a),v(a),F(n,!1),("claude"===f||"antigravity"===f)&&(g?.type==="multiple_choice"||"multiple_choice"===h)&&/^\d+$/.test(e)){let d=parseInt(e,10);await E(a,r,async(a,e)=>{if(null!==a&&"multiple_choice"!==a.type)return"target-changed";let f=(a=>{let b,c=null;if(a?.type==="multiple_choice"){let d=(c=a.options).find(a=>a.isDefault);b=d?.number??1}else b=i??1;let e=d-b;if(null!==c&&(0,l.kN)(c)&&null!==c){let a=c.filter(a=>(0,l.kN)([a])).length,b=[...t(e),"Space"];return b.push(...t(a-d+1)),b.push("Enter"),b}let f=t(e);return a?.type==="multiple_choice"&&!0===a.isAskUserQuestion&&0===e?["Down","Up","Enter"]:[...f,"Enter"]})(a??g);e.assertOwned(!1),await G(c,f,e.stillCurrent,b)})}else{let f=function(a,b){let c=a.promptData?.type==="multiple_choice"?a.promptData.submitMode:void 0,d=b?.submitMode??c??a.fallbackSubmitMode??"answer_then_enter";return(0,j.MI)(d)?d:"answer_then_enter"}(a,x),g=async()=>{await (0,d.V1)(c,e,!1),""!==e&&(b.touched=!0)};if("answer_only"===f&&(null!==x||a.promptData?.type==="multiple_choice"||"multiple_choice"===a.fallbackPromptType)&&/^\d+$/.test(a.answer)){if(!D(a))throw new p.G4("answer-withheld",c);await g()}else await E(a,r,async(b,f)=>{if(null!==b){let c={...a,promptData:b};u(c),v(c)}f.assertOwned(!1),await g(),await new Promise(a=>setTimeout(a,m.pL)),F(n,!0),f.assertOwned(""!==e),await (0,d.V1)(c,"",!0)})}(0,k.gm)(c)}},64501:(a,b,c)=>{c.d(b,{$x:()=>j,NV:()=>k,KO:()=>i,$K:()=>l});var d=c(51297);let e={codex:{showsAbandonedTurn:c(27789).Y7}};var f=c(66101),g=c(70096),h=c(95375);function i(a,b,c){return"hooks"!==a||function(a,b){let c=e[a];return!c||c.showsAbandonedTurn((0,d.aJ)(b).split("\n"))}(b,c)}function j(a,b,c,d=Date.now()){let e=(0,g.VM)(b);return(0,f.Kf)(e,e.liveness({worktreeId:a,cliToolId:b,instanceId:c??b}),d).kind}function k(a,b,c,d,e=Date.now()){return!i(j(a,b,c,e),b,d)&&(0,h.getStructuredSessionState)(a,b,c,e)?.status==="running"}function l(a,b,c,f,g,i=Date.now()){let j=(0,h.getStructuredSessionState)(a,b,c,i);return j?.status==="running"&&"hooks"===f&&function(a,b){let c=e[a];return!!c&&c.showsAbandonedTurn((0,d.aJ)(b).split("\n"))}(b,g)?null:j}},70594:(a,b,c)=>{c.d(b,{EV:()=>h,aT:()=>i,mi:()=>k,wG:()=>j});var d=c(52660),e=c(72626),f=c(30008);let g=(0,e.h)("current-output-builder");function h(a){let b=a?.spec.questions[0];return b?{question:b.question,labels:b.choices.map(a=>a.label),questionCount:a.spec.questions.length,...b.custom?{custom:!0}:{}}:null}function i(a,b,c=null,d=null,e=null){if("waiting"===a.status)return{...a,structuredApplied:!1};if(null!==c)return{status:"waiting",reason:(0,f.rB)(c),thinking:!1,evidence:a.evidence,isUnclassifiedActive:a.isUnclassifiedActive,structuredApplied:!0};if(null===b||"waiting"===b.status||function(a,b,c,d){if(null===d||!j(a,b,c))return!1;let e=c?.closedAt??null;return null!==e&&e<d}(a,b,d,e))return{...a,structuredApplied:!1};let g="running"===b.status,h="ready"===b.status&&function(a){if(null===a)return!1;let{closedBy:b,closedAt:c,openedAt:d}=a;return"stop"===b&&null!==c&&null!==d&&c>d}(d)?"positive":a.evidence;return{status:b.status,reason:b.reason,thinking:g,evidence:h,isUnclassifiedActive:a.isUnclassifiedActive,structuredApplied:!0}}function j(a,b,c){return!!a.thinking&&null!==b&&"ready"===b.status&&null!==c&&"stop"===c.closedBy&&null!==c.closedAt}function k(a,b,c,e){try{let f=(0,d.getLastUserMessageForInstance)(a,b,c,e);if(!f)return null;let g=f.timestamp instanceof Date?f.timestamp.getTime():NaN;return Number.isFinite(g)?g:null}catch(a){return g.debug("newest-prompt-read-failed",{worktreeId:b,cliToolId:c,instanceId:e,error:a instanceof Error?a.message:String(a)}),null}}},71080:(a,b,c)=>{c.d(b,{H:()=>j,L1:()=>q,Pe:()=>n,fS:()=>m,j7:()=>k,oE:()=>o,o_:()=>l,pN:()=>p,qt:()=>r});var d=c(55511),e=c(36925),f=c(85038);let g=(0,e.v)("__responseHashCache",()=>new Map),h=(0,e.v)("__structuredHistoryRecheckCache",()=>new Map),i=(0,e.v)("__duplicateResponseSkipStreak",()=>new Map),j=30;function k(a,b){let c=(0,d.createHash)("sha256").update(b).digest("hex");return g.get(a)===c||!!(0,f._B)(a)&&(g.set(a,c),i.delete(a),!1)}function l(a){let b=(i.get(a)??0)+1;i.set(a,b);let c=(b-1)%j==0,d=1===b?0:j-1;return{log:c,consecutive:b,suppressed:d}}function m(a){i.delete(a)}function n(a){h.has(a)||h.set(a,0)}function o(a){h.delete(a)}function p(a){let b=h.get(a);return void 0!==b&&(b>0?(h.set(a,b-1),!1):(h.set(a,2),!0))}function q(a){g.delete(a),h.delete(a),i.delete(a)}function r(a){let b=[];for(let{oldKey:c,newKey:d}of a)c!==d&&b.push({newKey:d,state:function(a){let b={hash:g.get(a),recheck:h.get(a),streak:i.get(a)};return g.delete(a),h.delete(a),i.delete(a),b}(c)});for(let{newKey:a,state:c}of b)void 0!==c.hash&&g.set(a,c.hash),void 0!==c.recheck?h.set(a,c.recheck):void 0!==c.hash&&h.delete(a),void 0!==c.hash&&(void 0!==c.streak?i.set(a,c.streak):i.delete(a))}},72457:(a,b,c)=>{c.d(b,{WR:()=>l,gv:()=>j,i2:()=>n,iX:()=>m,nZ:()=>o,p6:()=>k,zm:()=>p});var d=c(55511),e=c(36925),f=c(71080);let g=(0,e.v)("__promptHashCache",()=>new Map),h=(0,e.v)("__duplicatePromptSkipStreak",()=>new Map),i=f.H;function j(a,b){let c=(0,d.createHash)("sha256").update(b).digest("hex");return g.get(a)===c||(g.set(a,c),h.delete(a),!1)}function k(a){let b=(h.get(a)??0)+1;h.set(a,b);let c=(b-1)%i==0,d=1===b?0:i-1;return{log:c,consecutive:b,suppressed:d}}function l(a){h.delete(a)}function m(a){g.delete(a),h.delete(a)}function n(a,b){o([{oldKey:a,newKey:b}])}function o(a){let b=[];for(let{oldKey:c,newKey:d}of a)c!==d&&(b.push({newKey:d,hash:g.get(c),streak:h.get(c)}),g.delete(c),h.delete(c));for(let{newKey:a,hash:c,streak:d}of b)void 0!==c&&(g.set(a,c),void 0!==d?h.set(a,d):h.delete(a))}function p(a,b){return"copilot"!==b?a:a.replace(/^[❯>]\s/gm," ")}},75760:(a,b,c)=>{c.d(b,{ZJ:()=>d,zW:()=>e});let d="server-poller-inactive",e="no-auto-answer"},77244:(a,b,c)=>{c.d(b,{FD:()=>i,Wo:()=>f,fA:()=>h,nB:()=>k,nh:()=>j});var d=c(24455),e=c(36925);let f=8e3,g=(0,e.v)("__antigravityPermissionReceipts",()=>new Map);function h(a,b,c,e,f=Date.now(),i=null){if(null!==e){for(let[a,b]of g)f-b.at>36e5&&g.delete(a);g.set((0,d.v7)(a,b,c),{toolName:e,at:f,callId:i})}}function i(a,b,c,e,h=Date.now()){let j=g.get((0,d.v7)(a,b,c));return!!j&&(void 0===e||j.toolName===e)&&h-j.at<=f}function j(a,b,c){return g.get((0,d.v7)(a,b,c))?.at??null}function k(a,b,c){return g.get((0,d.v7)(a,b,c))?.callId??null}(0,e.v)("__antigravityReceiptObservations",()=>new Map)},77466:(a,b,c)=>{c.d(b,{BA:()=>N,C9:()=>x,Cy:()=>n,EN:()=>o,H8:()=>E,SG:()=>B,TU:()=>K,VH:()=>q,Xp:()=>l,Y2:()=>A,ZB:()=>z,eP:()=>F,gD:()=>p,hM:()=>C,hr:()=>m,k6:()=>G,lP:()=>r,od:()=>D,pE:()=>L,pP:()=>j.c,xy:()=>J});var d=c(85726),e=c(72626),f=c(24455),g=c(36925),h=c(27675),i=c(39532),j=c(91227);let k=(0,e.h)("auto-yes-poller");function l(a){return globalThis.__autoYesPollerStates?.get(a)?.lastAnswer??null}function m(a){let b="multiple_choice"===a.type?a.options.map(a=>`${a.isDefault?">":""}${a.number}.${a.label}`).join("\n"):"";return[(0,d.J)(a),b,a.approvalTarget??""].join("\0")}function n(a,b,c,d){let e=`${c}\u0000${b}`;if(a.lastSkipWarnKey===e)return void k.debug(c,{...d,repeated:!0});a.lastSkipWarnKey=e,k.warn(c,d)}let o="\0unidentified-screen";function p(a,b){return a===b||a===o}function q(a){if("multiple_choice"!==a.type)return(0,j.c)(a);let b=a.approvalTarget??"";if(null!==(0,i.Vi)(b,a.options.map(a=>a.label),(a,b)=>a.startsWith(b)))return(0,j.c)(a);let c=a.options.map(a=>`${a.number}.${a.label}`).join("\n");return[(0,d.J)(a),c,v(b,a.options)].join("\0")}function r(a){let b=a.approvalTarget;return"string"!=typeof b?null:"multiple_choice"!==a.type?b:(0,i.Vi)(b,a.options.map(a=>a.label),(a,b)=>a.startsWith(b))??v(b,a.options)}let s=/^[\s\u276F\u203A>\u25B6\u25BA\u25CF\u25CB\u25C9\u2192]+/u,t=/^(\d+)(?:[.)]\s*|\s+)(.*)$/u,u=a=>a.replace(/\s+/gu," ").trim();function v(a,b){return a.split("\n").map(a=>{let c=t.exec(a.replace(s,""));if(null===c)return a;let d=u(c[2]);return b.some(a=>{let b=u(a.label);return a.number===Number(c[1])&&""!==b&&d.startsWith(b)})?a.replace(s,""):a}).join("\n")}let w=(0,g.v)("__autoYesPartialAnswers",()=>new Map);function x(a,b){let c=w.get(a);return c?c.epoch!==b?(w.delete(a),null):c:null}let y=new Set;function z(a,b,c=y){for(let d of(w.delete(a),[...H]))d.recordKey===a&&(void 0===b||d.screenKey===b)&&(c.has(d)||M(d))}function A(a,b){return[...H].filter(c=>!0===c.byPerson&&c.recordKey===a&&c.recordEpoch===b)}function B(a){for(let b of(0,f._9)([...w.keys()],a))w.delete(b);let b=new Set((0,f._9)([...H].map(a=>a.recordKey),a));for(let a of[...H])b.has(a.recordKey)&&M(a)}function C(a,b){let c=w.get(a);void 0!==c&&c.seq<b&&w.delete(a)}function D(a,b){let c=w.get(a);c?.screenKey===o&&w.set(a,{...c,screenKey:b})}function E(a,b,c){if((0,h.cr)(a)!==b.epoch)return;let d=w.get(a);void 0!==d&&d.seq>b.seq||w.set(a,{...b,screenKey:c})}function F(){return++I.last}function G(){for(let a of(w.clear(),[...H]))M(a)}let H=(0,g.v)("__autoYesSendAttempts",()=>new Set),I=(0,g.v)("__autoYesSendAttemptSeq",()=>({last:0}));function J(a,b,c,d=null){let e={seq:++I.last,screenKey:b,recordKey:a,recordEpoch:c,moved:!1,state:"pending",ledger:d};return H.add(e),e}function K(a,b){let c={seq:++I.last,screenKey:b,recordKey:a,recordEpoch:(0,h.cr)(a),moved:!1,state:"pending",byPerson:!0,ledger:null};return H.add(c),c}function L(a,b,c=Date.now()){if("pending"!==a.state||(a.state="settled",H.delete(a),!b||(0,h.cr)(a.recordKey)!==a.recordEpoch))return;let d=w.get(a.recordKey);void 0!==d&&d.epoch===a.recordEpoch&&d.seq>a.seq||w.set(a.recordKey,{screenKey:a.screenKey,epoch:a.recordEpoch,at:c,seq:a.seq,...a.byPerson?{byPerson:!0}:{}})}function M(a){"pending"===a.state&&(a.state="expired"),H.delete(a)}function N(a,b,c){for(let d of H)if(d.moved&&d.recordKey===a&&d.recordEpoch===b&&p(d.screenKey,c))return!0;return!1}},87415:(a,b,c)=>{c.d(b,{ZR:()=>k,ei:()=>j});var d=c(51297),e=c(76777);let f=[{id:"overloaded",pattern:/\b5\d{2}\s+Overloaded\b/i,selfRetrying:!0},{id:"retrying",pattern:/Retrying in \d+s\s*[·•]\s*attempt \d+\/\d+/i,selfRetrying:!0},{id:"context-limit",pattern:/\bmaximum context length is \d+ tokens\b/i,selfRetrying:!1},{id:"model-capacity",pattern:/^■ Selected model is at capacity\b/im,selfRetrying:!1},{id:"limit-reached",pattern:/\blimit reached\b/i,selfRetrying:!1},{id:"api-error",pattern:/^(?:⏺ )?API Error(?::|\s+\d{3})/im,selfRetrying:!1}],g=["model-capacity"];function h(a,b){let c=(0,d.aJ)(a);for(let a of b){var f;let b=a.pattern.exec(c);if(!b)continue;let d=c.lastIndexOf("\n",b.index)+1,g=c.indexOf("\n",b.index);return{fault:a,matchedText:(f=c.slice(d,-1===g?void 0:g).trim()||b[0],(0,e.D)(f,200,"…[truncated]"))}}return null}function i(a){return""===(0,d.aJ)(a).trim()}function j(a){let b=a.slice(-100);if(b.some(a=>!i(a)))return b;let c=a.length-1;for(;c>=0&&i(a[c]);)c-=1;return c<0?b:a.slice(Math.max(0,c+1-100),c+1)}function k(a,b){let c=h(j(a).join("\n"),f);if(c||"codex"!==b)return c;let d=function(a){let b=a.length-100;if(b<=0||a.slice(b).every(i)||!i(a[b]))return null;let c=b-1;for(;c>=0&&i(a[c]);)c-=1;return c>=0?a[c]:null}(a);return null===d?null:h(d,f.filter(a=>g.includes(a.id)))}},91318:(a,b,c)=>{c.d(b,{Fv:()=>o,JJ:()=>m,d8:()=>l,ie:()=>q,n:()=>k,wO:()=>n});var d=c(56791),e=c(88807),f=c(24455),g=c(72626),h=c(48736);let i=(0,g.h)("auto-yes-policy"),j=new Map;function k(a,b,c,d){return p(a,b,c,d?.fresh===!0).policy}function l(a,b,c){let{policy:d,taskId:e}=p(a,b,c);return(0,h.Bz)(d)?{policy:null,taskId:null}:{policy:d,taskId:e}}function m(a,b,c){let{policy:d,taskId:e}=p(a,b,c);return{policy:d,taskId:e}}function n(a,b,c){var d;return d=l(a,b,c).policy,d?.mode==="off"}function o(a,b,c){let{policy:d,taskId:e}=l(a,b,c);return d?{taskId:e,mode:d.mode,allowPromptTypes:d.allowPromptTypes,denyPatternCount:d.denyPatterns.length}:null}function p(a,b,c,g=!1){let k=c??b,l=(0,f.v7)(a,b,k),m=Date.now(),n=j.get(l);if(!g&&n&&n.expiresAt>m)return n;let{policy:o,taskId:q}=function(a,b,c){try{let f=(0,d.getActiveTaskForInstance)((0,e.getDbInstance)(),a,b,c);if(!f)return{policy:null,taskId:null};return{policy:f.contract.autoYes,taskId:f.id}}catch(d){return i.warn("policy-lookup-failed",{worktreeId:a,cliToolId:b,instanceId:c,error:d instanceof Error?d.message:String(d)}),{policy:h.cV,taskId:null}}}(a,b,k);if((0,h.Bz)(o))return g&&j.delete(l),{policy:o,taskId:q,expiresAt:m};j.size>=200&&function(a){for(let[b,c]of j.entries())c.expiresAt<=a&&j.delete(b)}(m);let r={policy:o,taskId:q,expiresAt:m+5e3};return j.set(l,r),r}function q(a){j.delete(a)}},93373:(a,b,c)=>{c.d(b,{Xn:()=>h,Yc:()=>i,ik:()=>j});var d=c(95595),e=c(37717),f=c(49891);let g=new Set([e.g.NO_RECENT_OUTPUT,e.g.UNKNOWN_FRAME,e.g.DEFAULT]);function h(a){if(!a.waiting)return{kind:"not-waiting"};let{verdict:b}=a;return{kind:"waiting",waitingKind:a.waitingKind,humanHeld:"waiting"===b.status&&!1===b.promptDetection.isPrompt&&!a.structuredWaiting,promptData:b.promptDetection.promptData??null,structuredSince:a.structuredSince}}function i(a){return{kind:"waiting",waitingKind:"prompt",humanHeld:!1,promptData:a,structuredSince:null}}function j(a){let b=a.verdict??(0,d.WC)(a.output,a.cliToolId,a.lastOutputTimestamp);if("running"===b.status&&g.has(b.reason))return{kind:"unknown"};let c="waiting"===b.status||b.hasActivePrompt||a.structuredWaiting;return h({verdict:b,waiting:c,waitingKind:(0,f.t)({waiting:c,hasActivePrompt:b.hasActivePrompt,scraperStatus:b.status,scraperReason:b.reason,apiAnswerable:!0===a.apiAnswerable}),structuredWaiting:a.structuredWaiting,structuredSince:a.structuredSince})}},97751:(a,b,c)=>{c.d(b,{M4:()=>p,W7:()=>r,aK:()=>q,dV:()=>l,dZ:()=>m,yQ:()=>j});var d=c(72626),e=c(27870),f=c(25071),g=c(70096),h=c(62887);let i=(0,d.h)("lib/hooks/structured-decision-response"),j="Rejected by the operator via `commandmate respond`.",k={1:["once","allow once","allow","yes","y"],2:["always","allow always","allow-always"],3:["reject","deny","no","n"]};function l(a,b){let c=a.trim().toLowerCase();if(""===c)return null;for(let a of void 0===b?e.QB:(0,e.T5)(b))if(c===String(a.number)||c===a.label.toLowerCase()||c===a.reply||(k[a.number]??[]).includes(c))return a;return null}function m(a){let b=a.questions[0];return b?b.choices.map((a,b)=>({number:b+1,label:a.label,reply:a.label})):[]}let n=/^\d+(?:\s*[,\s]\s*\d+)*$/;function o(a){return a.map(a=>`${a.number} = ${a.label}`).join(", ")}function p(a,b){let c=b.trim();if(""===c)return{ok:!1,reason:"unresolvable_answer",message:"An empty answer names no choice."};if(1!==a.questions.length)return{ok:!1,reason:"multi_question_unsupported",message:`This call asks ${a.questions.length} questions and \`answers\` carries one array per question; a single answer cannot say what the others are. Answer it in the terminal.`};let d=a.questions[0],e=m(a);if(n.test(c)){let a=[];for(let b of c.split(/[,\s]+/)){let d=e.find(a=>a.number===Number(b));if(!d)return{ok:!1,reason:"answer_out_of_range",message:`'${c}' names no choice this question offers. ${o(e)}.`};a.some(a=>a.number===d.number)||a.push(d)}return a.length>1&&!d.multiSelect?{ok:!1,reason:"multi_select_not_offered",message:`This question accepts one choice. Send a single number: ${o(e)}.`}:{ok:!0,resolved:{answers:[a.map(a=>a.reply)],selected:a,freeText:!1}}}let f=e.find(a=>a.label.toLowerCase()===c.toLowerCase());return f?{ok:!0,resolved:{answers:[[f.reply]],selected:[f],freeText:!1}}:c.length>1e3?{ok:!1,reason:"unresolvable_answer",message:"A free-text answer is limited to 1000 characters; this one is longer and is refused rather than cut short."}:{ok:!0,resolved:{answers:[[c]],selected:[],freeText:!0}}}function q(a){return{kind:"answer",answers:a.answers}}async function r({worktreeId:a,cliToolId:b,instanceId:d,answer:k,useDefault:m=!1}){let n,o=(0,g.VM)(b);if(null===o.capabilities.eventIdentity)return{kind:"not-applicable",reason:"no-decision-identity"};let p={worktreeId:a,cliToolId:b,instanceId:d};try{n=await o.listPending(p)}catch(c){return i.warn("structured-decision-unreachable",{worktreeId:a,cliToolId:b,instanceId:d??b,error:c instanceof Error?c.message:String(c)}),{kind:"not-applicable",reason:"source-unreachable"}}let q=n.filter(a=>"permission"===a.kind);if(0===q.length)return{kind:"not-applicable",reason:"no-pending-decision"};let r=q[0];if(q.length>1&&i.info("structured-decision-multiple-pending",{worktreeId:a,cliToolId:b,instanceId:d??b,pending:q.length,answering:r.id}),m)return{kind:"refused",reason:"unresolvable_answer",message:`--default cannot answer a structured approval: the agent publishes no default verdict. Send a number instead — ${(0,e.T5)(b).map(a=>`${a.number} = ${a.label}`).join(", ")}.`};let s=void 0===k?null:l(k,b);if(!s)return{kind:"refused",reason:"answer_out_of_range",message:`'${k??""}' is not one of the verdicts this approval accepts. `+(0,e.T5)(b).map(a=>`${a.number} = ${a.label} (${a.reply})`).join(", ")+"."};let t=function(a){switch(a){case 1:return{kind:"allowOnce"};case 2:return{kind:"allowAlways"};case 3:return{kind:"deny",message:j};default:return null}}(s.number);if(!t)return{kind:"refused",reason:"unresolvable_answer",message:`Option ${s.number} has no verdict on this server.`};let{delivery:u}=await (0,f.GW)(o,p,r,t),v=u?.delivered===!0;if(v&&o.capabilities.permissionReplyReleasesPrompt){let{recordAgentEvent:e}=await Promise.resolve().then(c.bind(c,95375));e(a,b,d,{event:"notification",at:Date.now(),detail:h.KC,sessionId:r.conversationId,decisionId:r.id,promptSettled:!0})}return i.info("structured-decision-answered",{worktreeId:a,cliToolId:b,instanceId:d??b,decisionId:r.id,optionNumber:s.number,reply:s.reply,delivered:v}),{kind:"answered",decisionId:r.id,option:s,delivered:v,receipt:u}}},99508:(a,b,c)=>{c.r(b),c.d(b,{INTERACTION_SNAPSHOT_RETRY_DELAYS_MS:()=>n,__resetTerminalBroadcastState:()=>v,broadcastSessionStatus:()=>u,broadcastTerminalSnapshot:()=>o,broadcastTerminalSnapshotAfterInteraction:()=>t});var d=c(43015),e=c(88807),f=c(55283),g=c(72626),h=c(12693),i=c(36925),j=c(56455),k=c(85038);let l=(0,g.h)("terminal-broadcast"),m=(0,i.v)("__terminalSnapshotVersions",()=>new Map),n=[100,250,500,750];async function o(a,b,c){if((0,d.hasRoomSubscribers)(a))try{if(!await q(a,b,c))return;if(!(0,k.Z)())throw new k.SC;let d=(0,e.getDbInstance)(),g=await (0,f.$v)(d,a,b,c);if(!(0,k.Z)())throw new k.SC;s(a,b,g,c)}catch(d){if(d instanceof k.SC)return void l.info("terminal-snapshot:retired",{worktreeId:a,cliToolId:b,instanceId:c});l.error("terminal-snapshot:failed",{worktreeId:a,error:d instanceof Error?d.message:String(d)})}}function p(a){return JSON.stringify([a.fullOutput??"",a.isRunning,a.sessionStatus,a.thinking??!1,a.isPromptWaiting??!1,a.promptAnswerable??null,a.autoYes?.lastEnterFallback??null,a.autoYesDecision?.state??null,a.autoYesDecision?.reason??null,a.autoYesDecision?.confirmation??null,a.autoYesAnswerMode??null,a.isSelectionListActive??!1,a.isPagerActive??!1,a.isDismissablePanelActive??!1,a.isUnclassifiedActive??!1,a.startingSince??null])}async function q(a,b,c){let d=h.CLIToolManager.getInstance().getTool(b).getSessionName(a,c),e=await (0,j.y)(a,d);return null===e||(l.info("terminal-snapshot:refused",{worktreeId:a,cliToolId:b,instanceId:c,refusal:e}),!1)}async function r(a,b,c){return await q(a,b,c)?(0,f.$v)((0,e.getDbInstance)(),a,b,c,void 0,{freshCapture:!0}):null}function s(a,b,c,e){let f=e??b,g=`${a}:${b}:${f}`;(0,d.broadcast)(a,{type:"terminal_snapshot",worktreeId:a,cliToolId:b,instanceId:f,output:c.fullOutput??"",isRunning:c.isRunning,sessionStatus:c.sessionStatus,thinking:c.thinking??!1,isPromptWaiting:c.isPromptWaiting??!1,promptData:c.promptData??null,promptAnswerable:c.promptAnswerable,autoYesEnterFallback:c.autoYes?.lastEnterFallback,autoYesDecision:c.autoYesDecision,...void 0!==c.autoYesAnswerMode?{autoYesAnswerMode:c.autoYesAnswerMode}:{},isSelectionListActive:c.isSelectionListActive??!1,isPagerActive:c.isPagerActive??!1,isDismissablePanelActive:c.isDismissablePanelActive??!1,isUnclassifiedActive:c.isUnclassifiedActive??!1,startingSince:c.startingSince??null,version:function(a){let b=(m.get(a)??0)+1;return m.set(a,b),b}(g)})}async function t(a,b,c,e=n){if((0,d.hasRoomSubscribers)(a))try{let d=await r(a,b,c);if(null===d)return;let f=p(d);for(let g of(s(a,b,d,c),e)){await new Promise(a=>setTimeout(a,g));let d=await r(a,b,c);if(null===d)return;if(p(d)!==f)return void s(a,b,d,c)}}catch(d){l.error("terminal-snapshot:interaction-refresh-failed",{worktreeId:a,cliToolId:b,instanceId:c,error:d instanceof Error?d.message:String(d)})}}function u(a,b,c){(0,d.broadcast)(a,{type:"session_status_changed",worktreeId:a,isRunning:b,cliTool:c?.cliTool??null,instance:c?.instance??null})}function v(){m.clear()}}};