crewly 1.20.196 → 1.20.198

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 (234) hide show
  1. package/config/roles/orchestrator/prompt.md +8 -9
  2. package/config/roles/team-leader/prompt.md +6 -0
  3. package/config/skills/agent/computer-use/SKILL.md +16 -0
  4. package/config/skills/agent/core/ask-owner/SKILL.md +14 -0
  5. package/config/skills/agent/core/ask-owner/execute.sh +19 -1
  6. package/config/skills/agent/core/ask-owner/execute.test.sh +12 -0
  7. package/config/skills/agent/core/gmail-send/SKILL.md +16 -0
  8. package/config/skills/agent/core/reply-channel/SKILL.md +16 -0
  9. package/config/skills/agent/core/slack-post/SKILL.md +16 -0
  10. package/config/skills/agent/core/whatsapp-send/SKILL.md +16 -0
  11. package/config/skills/agent/remote-browser/SKILL.md +43 -7
  12. package/config/skills/registry.json +7 -7
  13. package/dist/backend/backend/src/constants.d.ts +143 -0
  14. package/dist/backend/backend/src/constants.d.ts.map +1 -1
  15. package/dist/backend/backend/src/constants.js +159 -0
  16. package/dist/backend/backend/src/constants.js.map +1 -1
  17. package/dist/backend/backend/src/controllers/browser/browser.controller.d.ts +12 -1
  18. package/dist/backend/backend/src/controllers/browser/browser.controller.d.ts.map +1 -1
  19. package/dist/backend/backend/src/controllers/browser/browser.controller.js +170 -9
  20. package/dist/backend/backend/src/controllers/browser/browser.controller.js.map +1 -1
  21. package/dist/backend/backend/src/controllers/browser/browser.routes.d.ts.map +1 -1
  22. package/dist/backend/backend/src/controllers/browser/browser.routes.js +5 -1
  23. package/dist/backend/backend/src/controllers/browser/browser.routes.js.map +1 -1
  24. package/dist/backend/backend/src/controllers/monitoring/terminal.controller.d.ts.map +1 -1
  25. package/dist/backend/backend/src/controllers/monitoring/terminal.controller.js +37 -52
  26. package/dist/backend/backend/src/controllers/monitoring/terminal.controller.js.map +1 -1
  27. package/dist/backend/backend/src/controllers/team/team.controller.d.ts.map +1 -1
  28. package/dist/backend/backend/src/controllers/team/team.controller.js +13 -0
  29. package/dist/backend/backend/src/controllers/team/team.controller.js.map +1 -1
  30. package/dist/backend/backend/src/index.d.ts +17 -0
  31. package/dist/backend/backend/src/index.d.ts.map +1 -1
  32. package/dist/backend/backend/src/index.js +102 -0
  33. package/dist/backend/backend/src/index.js.map +1 -1
  34. package/dist/backend/backend/src/services/agent/agent-heartbeat-monitor.service.d.ts.map +1 -1
  35. package/dist/backend/backend/src/services/agent/agent-heartbeat-monitor.service.js +5 -8
  36. package/dist/backend/backend/src/services/agent/agent-heartbeat-monitor.service.js.map +1 -1
  37. package/dist/backend/backend/src/services/agent/agent-registration.service.d.ts +12 -0
  38. package/dist/backend/backend/src/services/agent/agent-registration.service.d.ts.map +1 -1
  39. package/dist/backend/backend/src/services/agent/agent-registration.service.js +275 -241
  40. package/dist/backend/backend/src/services/agent/agent-registration.service.js.map +1 -1
  41. package/dist/backend/backend/src/services/agent/context-window-monitor.service.d.ts.map +1 -1
  42. package/dist/backend/backend/src/services/agent/context-window-monitor.service.js +5 -6
  43. package/dist/backend/backend/src/services/agent/context-window-monitor.service.js.map +1 -1
  44. package/dist/backend/backend/src/services/agent/control-plane-guard.service.d.ts +6 -0
  45. package/dist/backend/backend/src/services/agent/control-plane-guard.service.d.ts.map +1 -1
  46. package/dist/backend/backend/src/services/agent/control-plane-guard.service.js +2 -1
  47. package/dist/backend/backend/src/services/agent/control-plane-guard.service.js.map +1 -1
  48. package/dist/backend/backend/src/services/agent/fresh-task-conversation.service.d.ts.map +1 -1
  49. package/dist/backend/backend/src/services/agent/fresh-task-conversation.service.js +12 -8
  50. package/dist/backend/backend/src/services/agent/fresh-task-conversation.service.js.map +1 -1
  51. package/dist/backend/backend/src/services/agent/gemini-runtime.service.d.ts.map +1 -1
  52. package/dist/backend/backend/src/services/agent/gemini-runtime.service.js +32 -27
  53. package/dist/backend/backend/src/services/agent/gemini-runtime.service.js.map +1 -1
  54. package/dist/backend/backend/src/services/agent/owner-stopped.registry.d.ts +44 -0
  55. package/dist/backend/backend/src/services/agent/owner-stopped.registry.d.ts.map +1 -0
  56. package/dist/backend/backend/src/services/agent/owner-stopped.registry.js +54 -0
  57. package/dist/backend/backend/src/services/agent/owner-stopped.registry.js.map +1 -0
  58. package/dist/backend/backend/src/services/agent/runtime-agent.service.abstract.js +4 -4
  59. package/dist/backend/backend/src/services/agent/runtime-agent.service.abstract.js.map +1 -1
  60. package/dist/backend/backend/src/services/agent/runtime-exit-monitor.service.d.ts.map +1 -1
  61. package/dist/backend/backend/src/services/agent/runtime-exit-monitor.service.js +4 -8
  62. package/dist/backend/backend/src/services/agent/runtime-exit-monitor.service.js.map +1 -1
  63. package/dist/backend/backend/src/services/ai/prompt-modules/decision-rights.module.d.ts +19 -4
  64. package/dist/backend/backend/src/services/ai/prompt-modules/decision-rights.module.d.ts.map +1 -1
  65. package/dist/backend/backend/src/services/ai/prompt-modules/decision-rights.module.js +28 -5
  66. package/dist/backend/backend/src/services/ai/prompt-modules/decision-rights.module.js.map +1 -1
  67. package/dist/backend/backend/src/services/browser/browser-approval.service.d.ts +2 -2
  68. package/dist/backend/backend/src/services/browser/browser-approval.service.d.ts.map +1 -1
  69. package/dist/backend/backend/src/services/browser/browser-approval.service.js +13 -2
  70. package/dist/backend/backend/src/services/browser/browser-approval.service.js.map +1 -1
  71. package/dist/backend/backend/src/services/browser/browser-outbound-guard.d.ts +214 -0
  72. package/dist/backend/backend/src/services/browser/browser-outbound-guard.d.ts.map +1 -0
  73. package/dist/backend/backend/src/services/browser/browser-outbound-guard.js +466 -0
  74. package/dist/backend/backend/src/services/browser/browser-outbound-guard.js.map +1 -0
  75. package/dist/backend/backend/src/services/browser/browser-session.service.d.ts +57 -3
  76. package/dist/backend/backend/src/services/browser/browser-session.service.d.ts.map +1 -1
  77. package/dist/backend/backend/src/services/browser/browser-session.service.js +148 -63
  78. package/dist/backend/backend/src/services/browser/browser-session.service.js.map +1 -1
  79. package/dist/backend/backend/src/services/browser/held-action-store.d.ts +4 -0
  80. package/dist/backend/backend/src/services/browser/held-action-store.d.ts.map +1 -1
  81. package/dist/backend/backend/src/services/browser/held-action-store.js.map +1 -1
  82. package/dist/backend/backend/src/services/browser/owner-browser-input.d.ts +98 -10
  83. package/dist/backend/backend/src/services/browser/owner-browser-input.d.ts.map +1 -1
  84. package/dist/backend/backend/src/services/browser/owner-browser-input.js +126 -11
  85. package/dist/backend/backend/src/services/browser/owner-browser-input.js.map +1 -1
  86. package/dist/backend/backend/src/services/cloud/cloud-initializer.d.ts.map +1 -1
  87. package/dist/backend/backend/src/services/cloud/cloud-initializer.js +6 -8
  88. package/dist/backend/backend/src/services/cloud/cloud-initializer.js.map +1 -1
  89. package/dist/backend/backend/src/services/messaging/input-blocked-retry.service.d.ts +129 -0
  90. package/dist/backend/backend/src/services/messaging/input-blocked-retry.service.d.ts.map +1 -0
  91. package/dist/backend/backend/src/services/messaging/input-blocked-retry.service.js +196 -0
  92. package/dist/backend/backend/src/services/messaging/input-blocked-retry.service.js.map +1 -0
  93. package/dist/backend/backend/src/services/messaging/sub-agent-message-queue.service.d.ts +42 -0
  94. package/dist/backend/backend/src/services/messaging/sub-agent-message-queue.service.d.ts.map +1 -1
  95. package/dist/backend/backend/src/services/messaging/sub-agent-message-queue.service.js +88 -10
  96. package/dist/backend/backend/src/services/messaging/sub-agent-message-queue.service.js.map +1 -1
  97. package/dist/backend/backend/src/services/monitoring/agent-hook-state.d.ts.map +1 -1
  98. package/dist/backend/backend/src/services/monitoring/agent-hook-state.js +5 -0
  99. package/dist/backend/backend/src/services/monitoring/agent-hook-state.js.map +1 -1
  100. package/dist/backend/backend/src/services/orchestrator/orchestrator-heartbeat-monitor.service.d.ts.map +1 -1
  101. package/dist/backend/backend/src/services/orchestrator/orchestrator-heartbeat-monitor.service.js +5 -9
  102. package/dist/backend/backend/src/services/orchestrator/orchestrator-heartbeat-monitor.service.js.map +1 -1
  103. package/dist/backend/backend/src/services/session/pty/pty-session-backend.d.ts +11 -0
  104. package/dist/backend/backend/src/services/session/pty/pty-session-backend.d.ts.map +1 -1
  105. package/dist/backend/backend/src/services/session/pty/pty-session-backend.js +14 -0
  106. package/dist/backend/backend/src/services/session/pty/pty-session-backend.js.map +1 -1
  107. package/dist/backend/backend/src/services/session/pty/pty-terminal-buffer.d.ts +37 -0
  108. package/dist/backend/backend/src/services/session/pty/pty-terminal-buffer.d.ts.map +1 -1
  109. package/dist/backend/backend/src/services/session/pty/pty-terminal-buffer.js +78 -0
  110. package/dist/backend/backend/src/services/session/pty/pty-terminal-buffer.js.map +1 -1
  111. package/dist/backend/backend/src/services/session/session-backend.interface.d.ts +13 -0
  112. package/dist/backend/backend/src/services/session/session-backend.interface.d.ts.map +1 -1
  113. package/dist/backend/backend/src/services/session/session-backend.interface.js.map +1 -1
  114. package/dist/backend/backend/src/services/session/session-command-helper.d.ts +118 -105
  115. package/dist/backend/backend/src/services/session/session-command-helper.d.ts.map +1 -1
  116. package/dist/backend/backend/src/services/session/session-command-helper.js +267 -298
  117. package/dist/backend/backend/src/services/session/session-command-helper.js.map +1 -1
  118. package/dist/backend/backend/src/services/session/tui-input-guard.d.ts +144 -0
  119. package/dist/backend/backend/src/services/session/tui-input-guard.d.ts.map +1 -0
  120. package/dist/backend/backend/src/services/session/tui-input-guard.js +312 -0
  121. package/dist/backend/backend/src/services/session/tui-input-guard.js.map +1 -0
  122. package/dist/backend/backend/src/services/slack/slack-orchestrator-bridge.d.ts.map +1 -1
  123. package/dist/backend/backend/src/services/slack/slack-orchestrator-bridge.js +14 -0
  124. package/dist/backend/backend/src/services/slack/slack-orchestrator-bridge.js.map +1 -1
  125. package/dist/backend/backend/src/services/slack/slack-team-channel.service.d.ts +31 -0
  126. package/dist/backend/backend/src/services/slack/slack-team-channel.service.d.ts.map +1 -1
  127. package/dist/backend/backend/src/services/slack/slack-team-channel.service.js +82 -4
  128. package/dist/backend/backend/src/services/slack/slack-team-channel.service.js.map +1 -1
  129. package/dist/backend/backend/src/services/trace/trace.types.d.ts +2 -2
  130. package/dist/backend/backend/src/services/trace/trace.types.d.ts.map +1 -1
  131. package/dist/backend/backend/src/services/trace/trace.types.js +4 -0
  132. package/dist/backend/backend/src/services/trace/trace.types.js.map +1 -1
  133. package/dist/backend/backend/src/services/trace/turn-origin.d.ts +70 -0
  134. package/dist/backend/backend/src/services/trace/turn-origin.d.ts.map +1 -0
  135. package/dist/backend/backend/src/services/trace/turn-origin.js +198 -0
  136. package/dist/backend/backend/src/services/trace/turn-origin.js.map +1 -0
  137. package/dist/backend/backend/src/types/slack.types.d.ts +8 -0
  138. package/dist/backend/backend/src/types/slack.types.d.ts.map +1 -1
  139. package/dist/backend/backend/src/types/slack.types.js.map +1 -1
  140. package/dist/backend/backend/src/utils/terminal-string-ops.d.ts.map +1 -1
  141. package/dist/backend/backend/src/utils/terminal-string-ops.js +3 -2
  142. package/dist/backend/backend/src/utils/terminal-string-ops.js.map +1 -1
  143. package/dist/backend/build-info.json +2 -2
  144. package/dist/cli/backend/src/constants.d.ts +143 -0
  145. package/dist/cli/backend/src/constants.d.ts.map +1 -1
  146. package/dist/cli/backend/src/constants.js +159 -0
  147. package/dist/cli/backend/src/constants.js.map +1 -1
  148. package/dist/cli/backend/src/services/agent/agent-registration.service.d.ts +12 -0
  149. package/dist/cli/backend/src/services/agent/agent-registration.service.d.ts.map +1 -1
  150. package/dist/cli/backend/src/services/agent/agent-registration.service.js +275 -241
  151. package/dist/cli/backend/src/services/agent/agent-registration.service.js.map +1 -1
  152. package/dist/cli/backend/src/services/agent/context-window-monitor.service.d.ts.map +1 -1
  153. package/dist/cli/backend/src/services/agent/context-window-monitor.service.js +5 -6
  154. package/dist/cli/backend/src/services/agent/context-window-monitor.service.js.map +1 -1
  155. package/dist/cli/backend/src/services/agent/control-plane-guard.service.d.ts +6 -0
  156. package/dist/cli/backend/src/services/agent/control-plane-guard.service.d.ts.map +1 -1
  157. package/dist/cli/backend/src/services/agent/control-plane-guard.service.js +2 -1
  158. package/dist/cli/backend/src/services/agent/control-plane-guard.service.js.map +1 -1
  159. package/dist/cli/backend/src/services/agent/fresh-task-conversation.service.d.ts.map +1 -1
  160. package/dist/cli/backend/src/services/agent/fresh-task-conversation.service.js +12 -8
  161. package/dist/cli/backend/src/services/agent/fresh-task-conversation.service.js.map +1 -1
  162. package/dist/cli/backend/src/services/agent/gemini-runtime.service.d.ts.map +1 -1
  163. package/dist/cli/backend/src/services/agent/gemini-runtime.service.js +32 -27
  164. package/dist/cli/backend/src/services/agent/gemini-runtime.service.js.map +1 -1
  165. package/dist/cli/backend/src/services/agent/runtime-agent.service.abstract.js +4 -4
  166. package/dist/cli/backend/src/services/agent/runtime-agent.service.abstract.js.map +1 -1
  167. package/dist/cli/backend/src/services/agent/runtime-exit-monitor.service.d.ts.map +1 -1
  168. package/dist/cli/backend/src/services/agent/runtime-exit-monitor.service.js +4 -8
  169. package/dist/cli/backend/src/services/agent/runtime-exit-monitor.service.js.map +1 -1
  170. package/dist/cli/backend/src/services/ai/prompt-modules/decision-rights.module.d.ts +19 -4
  171. package/dist/cli/backend/src/services/ai/prompt-modules/decision-rights.module.d.ts.map +1 -1
  172. package/dist/cli/backend/src/services/ai/prompt-modules/decision-rights.module.js +28 -5
  173. package/dist/cli/backend/src/services/ai/prompt-modules/decision-rights.module.js.map +1 -1
  174. package/dist/cli/backend/src/services/messaging/input-blocked-retry.service.d.ts +129 -0
  175. package/dist/cli/backend/src/services/messaging/input-blocked-retry.service.d.ts.map +1 -0
  176. package/dist/cli/backend/src/services/messaging/input-blocked-retry.service.js +196 -0
  177. package/dist/cli/backend/src/services/messaging/input-blocked-retry.service.js.map +1 -0
  178. package/dist/cli/backend/src/services/messaging/sub-agent-message-queue.service.d.ts +42 -0
  179. package/dist/cli/backend/src/services/messaging/sub-agent-message-queue.service.d.ts.map +1 -1
  180. package/dist/cli/backend/src/services/messaging/sub-agent-message-queue.service.js +88 -10
  181. package/dist/cli/backend/src/services/messaging/sub-agent-message-queue.service.js.map +1 -1
  182. package/dist/cli/backend/src/services/session/pty/pty-session-backend.d.ts +11 -0
  183. package/dist/cli/backend/src/services/session/pty/pty-session-backend.d.ts.map +1 -1
  184. package/dist/cli/backend/src/services/session/pty/pty-session-backend.js +14 -0
  185. package/dist/cli/backend/src/services/session/pty/pty-session-backend.js.map +1 -1
  186. package/dist/cli/backend/src/services/session/pty/pty-terminal-buffer.d.ts +37 -0
  187. package/dist/cli/backend/src/services/session/pty/pty-terminal-buffer.d.ts.map +1 -1
  188. package/dist/cli/backend/src/services/session/pty/pty-terminal-buffer.js +78 -0
  189. package/dist/cli/backend/src/services/session/pty/pty-terminal-buffer.js.map +1 -1
  190. package/dist/cli/backend/src/services/session/session-backend.interface.d.ts +13 -0
  191. package/dist/cli/backend/src/services/session/session-backend.interface.d.ts.map +1 -1
  192. package/dist/cli/backend/src/services/session/session-backend.interface.js.map +1 -1
  193. package/dist/cli/backend/src/services/session/session-command-helper.d.ts +118 -105
  194. package/dist/cli/backend/src/services/session/session-command-helper.d.ts.map +1 -1
  195. package/dist/cli/backend/src/services/session/session-command-helper.js +267 -298
  196. package/dist/cli/backend/src/services/session/session-command-helper.js.map +1 -1
  197. package/dist/cli/backend/src/services/session/tui-input-guard.d.ts +144 -0
  198. package/dist/cli/backend/src/services/session/tui-input-guard.d.ts.map +1 -0
  199. package/dist/cli/backend/src/services/session/tui-input-guard.js +312 -0
  200. package/dist/cli/backend/src/services/session/tui-input-guard.js.map +1 -0
  201. package/dist/cli/backend/src/services/slack/slack-orchestrator-bridge.d.ts.map +1 -1
  202. package/dist/cli/backend/src/services/slack/slack-orchestrator-bridge.js +14 -0
  203. package/dist/cli/backend/src/services/slack/slack-orchestrator-bridge.js.map +1 -1
  204. package/dist/cli/backend/src/services/slack/slack-team-channel.service.d.ts +31 -0
  205. package/dist/cli/backend/src/services/slack/slack-team-channel.service.d.ts.map +1 -1
  206. package/dist/cli/backend/src/services/slack/slack-team-channel.service.js +82 -4
  207. package/dist/cli/backend/src/services/slack/slack-team-channel.service.js.map +1 -1
  208. package/dist/cli/backend/src/services/trace/trace.types.d.ts +2 -2
  209. package/dist/cli/backend/src/services/trace/trace.types.d.ts.map +1 -1
  210. package/dist/cli/backend/src/services/trace/trace.types.js +4 -0
  211. package/dist/cli/backend/src/services/trace/trace.types.js.map +1 -1
  212. package/dist/cli/backend/src/services/trace/turn-origin.d.ts +70 -0
  213. package/dist/cli/backend/src/services/trace/turn-origin.d.ts.map +1 -0
  214. package/dist/cli/backend/src/services/trace/turn-origin.js +198 -0
  215. package/dist/cli/backend/src/services/trace/turn-origin.js.map +1 -0
  216. package/dist/cli/backend/src/types/slack.types.d.ts +8 -0
  217. package/dist/cli/backend/src/types/slack.types.d.ts.map +1 -1
  218. package/dist/cli/backend/src/types/slack.types.js.map +1 -1
  219. package/dist/cli/backend/src/utils/terminal-string-ops.d.ts.map +1 -1
  220. package/dist/cli/backend/src/utils/terminal-string-ops.js +3 -2
  221. package/dist/cli/backend/src/utils/terminal-string-ops.js.map +1 -1
  222. package/frontend/dist/assets/index-5cbcf45b.css +42 -0
  223. package/frontend/dist/assets/{index-edfa8e04.js → index-63a33dbf.js} +283 -283
  224. package/frontend/dist/index.html +2 -2
  225. package/package.json +1 -1
  226. package/dist/cli/backend/src/services/agent/agent-suspend.service.d.ts +0 -118
  227. package/dist/cli/backend/src/services/agent/agent-suspend.service.d.ts.map +0 -1
  228. package/dist/cli/backend/src/services/agent/agent-suspend.service.js +0 -304
  229. package/dist/cli/backend/src/services/agent/agent-suspend.service.js.map +0 -1
  230. package/dist/cli/backend/src/services/agent/disk-cleanup.service.d.ts +0 -100
  231. package/dist/cli/backend/src/services/agent/disk-cleanup.service.d.ts.map +0 -1
  232. package/dist/cli/backend/src/services/agent/disk-cleanup.service.js +0 -149
  233. package/dist/cli/backend/src/services/agent/disk-cleanup.service.js.map +0 -1
  234. package/frontend/dist/assets/index-bfa0e2e8.css +0 -42
@@ -1 +1 @@
1
- {"version":3,"file":"held-action-store.js","sourceRoot":"","sources":["../../../../../../backend/src/services/browser/held-action-store.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,EAAE,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AAChE,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAsD7E;;GAEG;AACH,MAAM,OAAO,eAAe;IAST;IACA;IATV,IAAI,GAA0B,IAAI,CAAC;IACnC,KAAK,GAAqB,OAAO,CAAC,OAAO,EAAE,CAAC;IAEpD;;;OAGG;IACH,YACkB,QAAgB,EAChB,MAAoB,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;QADpC,aAAQ,GAAR,QAAQ,CAAQ;QAChB,QAAG,GAAH,GAAG,CAAiC;IACnD,CAAC;IAEJ;;;;;OAKG;IACH,MAAM,CAAC,MAAM,CAAC,UAAkB;QAC/B,OAAO,IAAI,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,0BAA0B,CAAC,cAAc,CAAC,CAAC,CAAC;IAC9F,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,GAAG,CAAC,MAAyB;QAClC,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE;YAC7B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;YAC/B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,MAAM,CAAC,SAAS,CAAC,CAAC;YAC5E,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,GAAG,MAAM,EAAE,CAAC,CAAC;YACjC,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;YAClB,OAAO,EAAE,GAAG,MAAM,EAAE,CAAC;QACtB,CAAC,CAAC,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,MAAM,CAAC,SAAiB,EAAE,EAA+D;QAC9F,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE;YAC7B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;YAC/B,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC;YACrE,IAAI,GAAG,GAAG,CAAC;gBAAE,OAAO,IAAI,CAAC;YACzB,MAAM,KAAK,GAAG,EAAE,CAAC,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC3C,IAAI,CAAC,KAAK;gBAAE,OAAO,IAAI,CAAC;YACxB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,GAAG,KAAK,EAAE,CAAC;YACvD,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;YAClB,OAAO,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QACjC,CAAC,CAAC,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,SAAiB,EAAE,MAA4C;QACrE,OAAO,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IAC3G,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,GAAG,CAAC,SAAiB;QAC1B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QAC/B,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC;QAC9D,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IAC5B,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,IAAI,CAAC,MAA0C;QACpD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QAC/B,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,MAAM,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;IAChF,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,KAAK;QACV,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE;YAC7B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;YAC/B,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,0BAA0B,CAAC,eAAe,CAAC;YACvE,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;YACnC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,IAAI,CAAC,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,QAAQ,CAAC,IAAI,MAAM,CAAC,CAAC;YAC3G,MAAM,OAAO,GAAG,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;YAC7C,IAAI,OAAO,GAAG,CAAC;gBAAE,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;YACnC,OAAO,OAAO,CAAC;QAChB,CAAC,CAAC,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,IAAI;QACjB,IAAI,IAAI,CAAC,IAAI;YAAE,OAAO,IAAI,CAAC,IAAI,CAAC;QAChC,MAAM,GAAG,GAAG,MAAM,YAAY,CAA0B,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;QAC3E,IAAI,CAAC,IAAI,GAAG,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QACvE,OAAO,IAAI,CAAC,IAAI,CAAC;IAClB,CAAC;IAEO,KAAK,CAAC,IAAI;QACjB,IAAI,IAAI,CAAC,IAAI;YAAE,MAAM,eAAe,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IAChE,CAAC;IAEO,MAAM,CAAI,EAAoB;QACrC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QACrC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;QACzC,OAAO,IAAI,CAAC;IACb,CAAC;CACD"}
1
+ {"version":3,"file":"held-action-store.js","sourceRoot":"","sources":["../../../../../../backend/src/services/browser/held-action-store.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,EAAE,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AAChE,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AA0D7E;;GAEG;AACH,MAAM,OAAO,eAAe;IAST;IACA;IATV,IAAI,GAA0B,IAAI,CAAC;IACnC,KAAK,GAAqB,OAAO,CAAC,OAAO,EAAE,CAAC;IAEpD;;;OAGG;IACH,YACkB,QAAgB,EAChB,MAAoB,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;QADpC,aAAQ,GAAR,QAAQ,CAAQ;QAChB,QAAG,GAAH,GAAG,CAAiC;IACnD,CAAC;IAEJ;;;;;OAKG;IACH,MAAM,CAAC,MAAM,CAAC,UAAkB;QAC/B,OAAO,IAAI,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,0BAA0B,CAAC,cAAc,CAAC,CAAC,CAAC;IAC9F,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,GAAG,CAAC,MAAyB;QAClC,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE;YAC7B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;YAC/B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,MAAM,CAAC,SAAS,CAAC,CAAC;YAC5E,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,GAAG,MAAM,EAAE,CAAC,CAAC;YACjC,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;YAClB,OAAO,EAAE,GAAG,MAAM,EAAE,CAAC;QACtB,CAAC,CAAC,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,MAAM,CAAC,SAAiB,EAAE,EAA+D;QAC9F,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE;YAC7B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;YAC/B,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC;YACrE,IAAI,GAAG,GAAG,CAAC;gBAAE,OAAO,IAAI,CAAC;YACzB,MAAM,KAAK,GAAG,EAAE,CAAC,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC3C,IAAI,CAAC,KAAK;gBAAE,OAAO,IAAI,CAAC;YACxB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,GAAG,KAAK,EAAE,CAAC;YACvD,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;YAClB,OAAO,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QACjC,CAAC,CAAC,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,SAAiB,EAAE,MAA4C;QACrE,OAAO,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IAC3G,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,GAAG,CAAC,SAAiB;QAC1B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QAC/B,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC;QAC9D,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IAC5B,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,IAAI,CAAC,MAA0C;QACpD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QAC/B,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,MAAM,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;IAChF,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,KAAK;QACV,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE;YAC7B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;YAC/B,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,0BAA0B,CAAC,eAAe,CAAC;YACvE,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;YACnC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,IAAI,CAAC,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,QAAQ,CAAC,IAAI,MAAM,CAAC,CAAC;YAC3G,MAAM,OAAO,GAAG,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;YAC7C,IAAI,OAAO,GAAG,CAAC;gBAAE,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;YACnC,OAAO,OAAO,CAAC;QAChB,CAAC,CAAC,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,IAAI;QACjB,IAAI,IAAI,CAAC,IAAI;YAAE,OAAO,IAAI,CAAC,IAAI,CAAC;QAChC,MAAM,GAAG,GAAG,MAAM,YAAY,CAA0B,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;QAC3E,IAAI,CAAC,IAAI,GAAG,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QACvE,OAAO,IAAI,CAAC,IAAI,CAAC;IAClB,CAAC;IAEO,KAAK,CAAC,IAAI;QACjB,IAAI,IAAI,CAAC,IAAI;YAAE,MAAM,eAAe,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IAChE,CAAC;IAEO,MAAM,CAAI,EAAoB;QACrC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QACrC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;QACzC,OAAO,IAAI,CAAC;IACb,CAAC;CACD"}
@@ -21,6 +21,31 @@
21
21
  import { BROWSER_OWNER_INPUT_CONSTANTS } from '../../constants.js';
22
22
  /** A key the owner can press from the control bar. */
23
23
  export type OwnerKey = (typeof BROWSER_OWNER_INPUT_CONSTANTS.KEYS)[number];
24
+ /** A scroll button (or an old client's drag), in CSS pixels. */
25
+ export interface OwnerScroll {
26
+ kind: 'scroll';
27
+ /** Vertical scroll in CSS px (positive = down) */
28
+ dy: number;
29
+ /** Horizontal scroll in CSS px (positive = right); optional */
30
+ dx?: number;
31
+ }
32
+ /** A drag on the frame, which scrolls whatever is under the finger. */
33
+ export interface OwnerSwipe {
34
+ kind: 'swipe';
35
+ /** Where the finger started, in the displayed frame's own pixels */
36
+ x: number;
37
+ y: number;
38
+ /**
39
+ * How far the finger moved, in frame pixels. A finger dragged up
40
+ * (negative dy) scrolls the page down, as on a touch screen.
41
+ */
42
+ dx: number;
43
+ dy: number;
44
+ /** Natural width of the frame the owner swiped on */
45
+ frameWidth: number;
46
+ /** Natural height of the frame the owner swiped on */
47
+ frameHeight: number;
48
+ }
24
49
  /** One thing the owner did. */
25
50
  export type OwnerInput = {
26
51
  kind: 'tap';
@@ -38,10 +63,7 @@ export type OwnerInput = {
38
63
  } | {
39
64
  kind: 'key';
40
65
  key: OwnerKey;
41
- } | {
42
- kind: 'scroll';
43
- dy: number;
44
- } | {
66
+ } | OwnerScroll | OwnerSwipe | {
45
67
  kind: 'navigate';
46
68
  url: string;
47
69
  } | {
@@ -133,16 +155,26 @@ export declare function mapTapToViewport(tap: {
133
155
  * Best guess at the viewport from the frame alone, for when the page could
134
156
  * not be measured.
135
157
  *
136
- * The live view captures at `scale` of the CSS viewport, and the capture is
137
- * in device pixels, so a frame is `css × scale × devicePixelRatio` wide.
158
+ * A scaled live-view capture is clipped to the viewport, and a clipped
159
+ * `Page.captureScreenshot` is sized in CSS pixels × scale — the device pixel
160
+ * ratio does not enter into it (a 1280×800 viewport at scale 0.5 is a
161
+ * 640×400 frame on a 1× and on a 2× display alike). Only an unclipped
162
+ * capture (no scale: an older extension, or one whose clip failed) is in
163
+ * device pixels, so only then is the DPR divided out.
138
164
  *
139
165
  * @param frameWidth - Natural width of the frame
140
166
  * @param frameHeight - Natural height of the frame
141
167
  * @param devicePixelRatio - DPR the frame was captured at, when known
142
- * @param scale - The capture's downscale factor
168
+ * @param scale - The scale the frame was captured at; undefined for an unscaled capture
143
169
  * @returns The estimated viewport in CSS pixels
170
+ *
171
+ * @example
172
+ * ```typescript
173
+ * estimateViewportFromFrame(640, 400, 2, 0.5); // { width: 1280, height: 800 }
174
+ * estimateViewportFromFrame(2560, 1600, 2, undefined); // { width: 1280, height: 800 }
175
+ * ```
144
176
  */
145
- export declare function estimateViewportFromFrame(frameWidth: number, frameHeight: number, devicePixelRatio: number | undefined, scale: number): Viewport;
177
+ export declare function estimateViewportFromFrame(frameWidth: number, frameHeight: number, devicePixelRatio: number | undefined, scale: number | undefined): Viewport;
146
178
  /**
147
179
  * Page script that measures the visible viewport in CSS pixels.
148
180
  *
@@ -176,6 +208,58 @@ export declare function parseViewportProbe(result: unknown): Viewport | null;
176
208
  * @returns JavaScript source to evaluate in the page
177
209
  */
178
210
  export declare function keyEffectScript(key: OwnerKey): string;
211
+ /**
212
+ * Turn a swipe on the frame into a wheel on the page.
213
+ *
214
+ * The start point is mapped like a tap, so the wheel lands on whatever is
215
+ * under the finger — an inner panel scrolls, not just the document. The
216
+ * finger's travel is converted from frame pixels to CSS pixels with the same
217
+ * frame-to-viewport ratio, and inverted: dragging content up scrolls down.
218
+ * Each axis is capped at {@link BROWSER_OWNER_INPUT_CONSTANTS.MAX_SCROLL_PX}.
219
+ *
220
+ * @param swipe - The swipe, in frame pixels
221
+ * @param viewport - The page's viewport in CSS pixels
222
+ * @returns Wheel point and deltas in CSS pixels
223
+ *
224
+ * @example
225
+ * ```typescript
226
+ * // Half-size frame (640x400 over 1280x800): finger moved 100 frame px up
227
+ * mapSwipeToWheel({ x: 320, y: 300, dx: 0, dy: -100, frameWidth: 640, frameHeight: 400 }, { width: 1280, height: 800 });
228
+ * // → { x: 640, y: 600, deltaX: 0, deltaY: 200 }
229
+ * ```
230
+ */
231
+ export declare function mapSwipeToWheel(swipe: {
232
+ x: number;
233
+ y: number;
234
+ dx: number;
235
+ dy: number;
236
+ frameWidth: number;
237
+ frameHeight: number;
238
+ }, viewport: Viewport): {
239
+ x: number;
240
+ y: number;
241
+ deltaX: number;
242
+ deltaY: number;
243
+ };
244
+ /**
245
+ * The older-extension equivalent of a `wheel` command.
246
+ *
247
+ * Extensions before 0.4.23 have no `wheel` and answer "Unknown tool". Their
248
+ * `scroll` moves the document by a delta, which is less than a wheel (inner
249
+ * panels stay put) but still moves the page the owner asked to move.
250
+ *
251
+ * @param command - A planned `wheel` command
252
+ * @returns The matching `scroll` command, or null when it was not a wheel
253
+ */
254
+ export declare function legacyScrollFor(command: OwnerCommand): OwnerCommand | null;
255
+ /**
256
+ * Whether an extension reply means it does not know a tool.
257
+ *
258
+ * @param error - The reply's error, if any
259
+ * @param tool - The tool that was sent
260
+ * @returns True for the extension's "Unknown tool: <tool>"
261
+ */
262
+ export declare function isUnknownToolError(error: unknown, tool: string): boolean;
179
263
  /** Script for the Back control. */
180
264
  export declare const HISTORY_BACK_SCRIPT = "(() => { history.back(); return { back: true }; })()";
181
265
  /**
@@ -185,10 +269,14 @@ export declare const HISTORY_BACK_SCRIPT = "(() => { history.back(); return { ba
185
269
  * the way an IME does: the owner taps the field first, exactly as on a real
186
270
  * screen, and needs no selector.
187
271
  *
272
+ * Scrolling goes through `wheel` at a point — under the finger for a swipe,
273
+ * the middle of the page for the scroll buttons — so it moves whatever
274
+ * scrolls there. Without a viewport the buttons fall back to `scroll`.
275
+ *
188
276
  * @param input - What the owner did
189
- * @param viewport - The page's viewport in CSS pixels; required for `tap`
277
+ * @param viewport - The page's viewport in CSS pixels; required for `tap` and `swipe`
190
278
  * @returns The operation to dispatch
191
- * @throws When a tap is planned without a viewport
279
+ * @throws When a tap or swipe is planned without a viewport
192
280
  */
193
281
  export declare function planOwnerInput(input: OwnerInput, viewport?: Viewport): OwnerCommand;
194
282
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"owner-browser-input.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/browser/owner-browser-input.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"owner-browser-input.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/browser/owner-browser-input.ts"],"names":[],"mappings":"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"}
@@ -108,10 +108,34 @@ export function parseOwnerInput(body) {
108
108
  return { ok: true, input: { kind: 'key', key: b.key } };
109
109
  }
110
110
  case 'scroll': {
111
- if (!isFiniteNumber(b.dy) || b.dy === 0)
112
- return { ok: false, error: 'scroll needs a non-zero numeric dy' };
111
+ const dy = b.dy === undefined ? 0 : b.dy;
112
+ const dx = b.dx === undefined ? 0 : b.dx;
113
+ if (!isFiniteNumber(dy) || !isFiniteNumber(dx) || (dy === 0 && dx === 0)) {
114
+ return { ok: false, error: 'scroll needs a non-zero numeric dy (or dx)' };
115
+ }
113
116
  const max = BROWSER_OWNER_INPUT_CONSTANTS.MAX_SCROLL_PX;
114
- return { ok: true, input: { kind: 'scroll', dy: Math.max(-max, Math.min(max, Math.round(b.dy))) } };
117
+ const clamp = (v) => Math.max(-max, Math.min(max, Math.round(v)));
118
+ return { ok: true, input: { kind: 'scroll', dy: clamp(dy), ...(dx !== 0 ? { dx: clamp(dx) } : {}) } };
119
+ }
120
+ case 'swipe': {
121
+ const { x, y, dx, dy, frameWidth, frameHeight } = b;
122
+ if (!isFiniteNumber(x) ||
123
+ !isFiniteNumber(y) ||
124
+ !isFiniteNumber(dx) ||
125
+ !isFiniteNumber(dy) ||
126
+ !isFiniteNumber(frameWidth) ||
127
+ !isFiniteNumber(frameHeight)) {
128
+ return { ok: false, error: 'swipe needs numeric x, y, dx, dy, frameWidth and frameHeight' };
129
+ }
130
+ if (frameWidth <= 0 || frameHeight <= 0) {
131
+ return { ok: false, error: 'frameWidth and frameHeight must be positive' };
132
+ }
133
+ if (x < 0 || y < 0 || x > frameWidth || y > frameHeight) {
134
+ return { ok: false, error: 'swipe starts outside the frame' };
135
+ }
136
+ if (dx === 0 && dy === 0)
137
+ return { ok: false, error: 'swipe needs a non-zero dx or dy' };
138
+ return { ok: true, input: { kind: 'swipe', x, y, dx, dy, frameWidth, frameHeight } };
115
139
  }
116
140
  case 'navigate': {
117
141
  const url = typeof b.url === 'string' ? normalizeOwnerUrl(b.url) : null;
@@ -122,7 +146,7 @@ export function parseOwnerInput(body) {
122
146
  case 'back':
123
147
  return { ok: true, input: { kind: 'back' } };
124
148
  default:
125
- return { ok: false, error: 'kind must be one of tap, type, key, scroll, navigate, back' };
149
+ return { ok: false, error: 'kind must be one of tap, type, key, scroll, swipe, navigate, back' };
126
150
  }
127
151
  }
128
152
  /**
@@ -160,18 +184,28 @@ export function mapTapToViewport(tap, viewport) {
160
184
  * Best guess at the viewport from the frame alone, for when the page could
161
185
  * not be measured.
162
186
  *
163
- * The live view captures at `scale` of the CSS viewport, and the capture is
164
- * in device pixels, so a frame is `css × scale × devicePixelRatio` wide.
187
+ * A scaled live-view capture is clipped to the viewport, and a clipped
188
+ * `Page.captureScreenshot` is sized in CSS pixels × scale — the device pixel
189
+ * ratio does not enter into it (a 1280×800 viewport at scale 0.5 is a
190
+ * 640×400 frame on a 1× and on a 2× display alike). Only an unclipped
191
+ * capture (no scale: an older extension, or one whose clip failed) is in
192
+ * device pixels, so only then is the DPR divided out.
165
193
  *
166
194
  * @param frameWidth - Natural width of the frame
167
195
  * @param frameHeight - Natural height of the frame
168
196
  * @param devicePixelRatio - DPR the frame was captured at, when known
169
- * @param scale - The capture's downscale factor
197
+ * @param scale - The scale the frame was captured at; undefined for an unscaled capture
170
198
  * @returns The estimated viewport in CSS pixels
199
+ *
200
+ * @example
201
+ * ```typescript
202
+ * estimateViewportFromFrame(640, 400, 2, 0.5); // { width: 1280, height: 800 }
203
+ * estimateViewportFromFrame(2560, 1600, 2, undefined); // { width: 1280, height: 800 }
204
+ * ```
171
205
  */
172
206
  export function estimateViewportFromFrame(frameWidth, frameHeight, devicePixelRatio, scale) {
173
207
  const dpr = devicePixelRatio && devicePixelRatio > 0 ? devicePixelRatio : 1;
174
- const factor = scale > 0 ? scale * dpr : dpr;
208
+ const factor = scale !== undefined && scale > 0 && scale < 1 ? scale : dpr;
175
209
  return { width: Math.round(frameWidth / factor), height: Math.round(frameHeight / factor) };
176
210
  }
177
211
  /**
@@ -269,6 +303,61 @@ export function keyEffectScript(key) {
269
303
  return { key, effect, target: tag };
270
304
  })()`;
271
305
  }
306
+ /**
307
+ * Turn a swipe on the frame into a wheel on the page.
308
+ *
309
+ * The start point is mapped like a tap, so the wheel lands on whatever is
310
+ * under the finger — an inner panel scrolls, not just the document. The
311
+ * finger's travel is converted from frame pixels to CSS pixels with the same
312
+ * frame-to-viewport ratio, and inverted: dragging content up scrolls down.
313
+ * Each axis is capped at {@link BROWSER_OWNER_INPUT_CONSTANTS.MAX_SCROLL_PX}.
314
+ *
315
+ * @param swipe - The swipe, in frame pixels
316
+ * @param viewport - The page's viewport in CSS pixels
317
+ * @returns Wheel point and deltas in CSS pixels
318
+ *
319
+ * @example
320
+ * ```typescript
321
+ * // Half-size frame (640x400 over 1280x800): finger moved 100 frame px up
322
+ * mapSwipeToWheel({ x: 320, y: 300, dx: 0, dy: -100, frameWidth: 640, frameHeight: 400 }, { width: 1280, height: 800 });
323
+ * // → { x: 640, y: 600, deltaX: 0, deltaY: 200 }
324
+ * ```
325
+ */
326
+ export function mapSwipeToWheel(swipe, viewport) {
327
+ const point = mapTapToViewport(swipe, viewport);
328
+ const max = BROWSER_OWNER_INPUT_CONSTANTS.MAX_SCROLL_PX;
329
+ const clamp = (v) => Math.max(-max, Math.min(max, Math.round(v))) || 0;
330
+ return {
331
+ ...point,
332
+ deltaX: clamp((-swipe.dx * viewport.width) / swipe.frameWidth),
333
+ deltaY: clamp((-swipe.dy * viewport.height) / swipe.frameHeight),
334
+ };
335
+ }
336
+ /**
337
+ * The older-extension equivalent of a `wheel` command.
338
+ *
339
+ * Extensions before 0.4.23 have no `wheel` and answer "Unknown tool". Their
340
+ * `scroll` moves the document by a delta, which is less than a wheel (inner
341
+ * panels stay put) but still moves the page the owner asked to move.
342
+ *
343
+ * @param command - A planned `wheel` command
344
+ * @returns The matching `scroll` command, or null when it was not a wheel
345
+ */
346
+ export function legacyScrollFor(command) {
347
+ if (command.tool !== 'wheel')
348
+ return null;
349
+ return { tool: 'scroll', params: { x: command.params.deltaX ?? 0, y: command.params.deltaY ?? 0 } };
350
+ }
351
+ /**
352
+ * Whether an extension reply means it does not know a tool.
353
+ *
354
+ * @param error - The reply's error, if any
355
+ * @param tool - The tool that was sent
356
+ * @returns True for the extension's "Unknown tool: <tool>"
357
+ */
358
+ export function isUnknownToolError(error, tool) {
359
+ return typeof error === 'string' && error.includes(`Unknown tool: ${tool}`);
360
+ }
272
361
  /** Script for the Back control. */
273
362
  export const HISTORY_BACK_SCRIPT = '(() => { history.back(); return { back: true }; })()';
274
363
  /**
@@ -278,10 +367,14 @@ export const HISTORY_BACK_SCRIPT = '(() => { history.back(); return { back: true
278
367
  * the way an IME does: the owner taps the field first, exactly as on a real
279
368
  * screen, and needs no selector.
280
369
  *
370
+ * Scrolling goes through `wheel` at a point — under the finger for a swipe,
371
+ * the middle of the page for the scroll buttons — so it moves whatever
372
+ * scrolls there. Without a viewport the buttons fall back to `scroll`.
373
+ *
281
374
  * @param input - What the owner did
282
- * @param viewport - The page's viewport in CSS pixels; required for `tap`
375
+ * @param viewport - The page's viewport in CSS pixels; required for `tap` and `swipe`
283
376
  * @returns The operation to dispatch
284
- * @throws When a tap is planned without a viewport
377
+ * @throws When a tap or swipe is planned without a viewport
285
378
  */
286
379
  export function planOwnerInput(input, viewport) {
287
380
  switch (input.kind) {
@@ -304,7 +397,22 @@ export function planOwnerInput(input, viewport) {
304
397
  case 'key':
305
398
  return { tool: 'executeJs', params: { code: keyEffectScript(input.key) } };
306
399
  case 'scroll':
307
- return { tool: 'scroll', params: { x: 0, y: input.dy } };
400
+ if (!viewport)
401
+ return { tool: 'scroll', params: { x: input.dx ?? 0, y: input.dy } };
402
+ return {
403
+ tool: 'wheel',
404
+ params: {
405
+ x: Math.round(viewport.width / 2),
406
+ y: Math.round(viewport.height / 2),
407
+ deltaX: input.dx ?? 0,
408
+ deltaY: input.dy,
409
+ },
410
+ };
411
+ case 'swipe': {
412
+ if (!viewport)
413
+ throw new Error('A swipe needs the page viewport');
414
+ return { tool: 'wheel', params: mapSwipeToWheel(input, viewport) };
415
+ }
308
416
  case 'navigate':
309
417
  return { tool: 'navigate', params: { url: input.url } };
310
418
  case 'back':
@@ -328,7 +436,14 @@ export function describeOwnerInput(input) {
328
436
  case 'key':
329
437
  return `You pressed ${input.key}`;
330
438
  case 'scroll':
439
+ if (input.dy === 0)
440
+ return (input.dx ?? 0) < 0 ? 'You scrolled left' : 'You scrolled right';
331
441
  return input.dy < 0 ? 'You scrolled up' : 'You scrolled down';
442
+ case 'swipe':
443
+ // A finger moving up scrolls down.
444
+ if (Math.abs(input.dx) > Math.abs(input.dy))
445
+ return input.dx > 0 ? 'You scrolled left' : 'You scrolled right';
446
+ return input.dy > 0 ? 'You scrolled up' : 'You scrolled down';
332
447
  case 'navigate': {
333
448
  let host = '';
334
449
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"owner-browser-input.js","sourceRoot":"","sources":["../../../../../../backend/src/services/browser/owner-browser-input.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"owner-browser-input.js","sourceRoot":"","sources":["../../../../../../backend/src/services/browser/owner-browser-input.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"cloud-initializer.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/cloud/cloud-initializer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAWH;;GAEG;AACH,MAAM,WAAW,eAAe;IAC/B,gEAAgE;IAChE,SAAS,EAAE,OAAO,CAAC;IACnB,uCAAuC;IACvC,OAAO,EAAE,OAAO,CAAC;IACjB,8BAA8B;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,IAAI,IAAI,CA8DzC;AAED;;;;;;GAMG;AACH,wBAAgB,8BAA8B,IAAI,IAAI,CAgBrD;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,IAAI,IAAI,CAc1C;AAED;;;;;;;GAOG;AACH,wBAAsB,2BAA2B,IAAI,OAAO,CAAC,eAAe,CAAC,CAoH5E"}
1
+ {"version":3,"file":"cloud-initializer.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/cloud/cloud-initializer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAWH;;GAEG;AACH,MAAM,WAAW,eAAe;IAC/B,gEAAgE;IAChE,SAAS,EAAE,OAAO,CAAC;IACnB,uCAAuC;IACvC,OAAO,EAAE,OAAO,CAAC;IACjB,8BAA8B;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,IAAI,IAAI,CA4DzC;AAED;;;;;;GAMG;AACH,wBAAgB,8BAA8B,IAAI,IAAI,CAgBrD;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,IAAI,IAAI,CAc1C;AAED;;;;;;;GAOG;AACH,wBAAsB,2BAA2B,IAAI,OAAO,CAAC,eAAe,CAAC,CAoH5E"}
@@ -35,16 +35,14 @@ export function startMessageRouter() {
35
35
  const { getSessionBackendSync } = await import('../session/index.js');
36
36
  const backend = getSessionBackendSync();
37
37
  const session = backend?.getSession(sessionName);
38
- if (!session) {
38
+ if (!backend || !session) {
39
39
  return { success: false, error: `Local session '${sessionName}' not found` };
40
40
  }
41
- // Two-step write pattern for TUI runtimes
42
- session.write(message);
43
- const enterDelay = Math.min(1000 + Math.ceil(message.length / 10), 5000);
44
- await new Promise(resolve => setTimeout(resolve, enterDelay));
45
- session.write('\r');
46
- await new Promise(resolve => setTimeout(resolve, 500));
47
- session.write('\r'); // backup Enter
41
+ // Guarded two-step write (2026-10-03): typed only into an empty
42
+ // input box, Enter only when the box holds exactly this text,
43
+ // no blind backup Enter.
44
+ const { createSessionCommandHelper } = await import('../session/index.js');
45
+ await createSessionCommandHelper(backend).sendMessage(sessionName, message);
48
46
  return { success: true };
49
47
  }
50
48
  catch (err) {
@@ -1 +1 @@
1
- {"version":3,"file":"cloud-initializer.js","sourceRoot":"","sources":["../../../../../../backend/src/services/cloud/cloud-initializer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cloud-initializer.js","sourceRoot":"","sources":["../../../../../../backend/src/services/cloud/cloud-initializer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,129 @@
1
+ /**
2
+ * Input-blocked retry — keeps retrying messages the input guard held back,
3
+ * and tells someone when an agent's input stays blocked.
4
+ *
5
+ * Since crewly#1014 the harness types into an agent only when its input box
6
+ * is readable and empty, and presses Enter only on text it can prove it
7
+ * wrote. A refused message goes back on the agent's queue
8
+ * (`[INPUT_NOT_OURS]`). The queue otherwise drains only on registration or
9
+ * on a busy→idle change — an agent sitting idle in front of a box holding
10
+ * someone's half-typed text would never get it. This service:
11
+ *
12
+ * - retries on a timer while the queue is non-empty and the agent is idle,
13
+ * with backoff (15 s → 2 min);
14
+ * - after a few minutes or a few refusals, tells the owner/orchestrator once
15
+ * per blocked episode what kind of content blocks it (never the text: a
16
+ * box can hold a password or a code);
17
+ * - clears its state when a delivery to the agent succeeds.
18
+ *
19
+ * @module services/messaging/input-blocked-retry.service
20
+ */
21
+ /** What the guard saw when it refused. */
22
+ export interface InputRefusal {
23
+ /** `unknown` (unreadable) or `foreign` (someone else's text) */
24
+ state: string;
25
+ /** How many characters the box held (its text is never kept or shown) */
26
+ inputLength: number;
27
+ /** The message that was held */
28
+ message: string;
29
+ }
30
+ /** A blocked episode, as passed to the notifier. */
31
+ export interface InputBlockedNotice {
32
+ sessionName: string;
33
+ state: string;
34
+ /** How many characters of text not written by Crewly the box held */
35
+ inputLength: number;
36
+ refusals: number;
37
+ blockedForMs: number;
38
+ /** The first held message (to find its origin) */
39
+ message: string;
40
+ }
41
+ /** Collaborators (wired in index.ts). */
42
+ export interface InputBlockedRetryDeps {
43
+ /** Messages still queued for the agent */
44
+ hasQueued(sessionName: string): boolean;
45
+ /** The agent is not in a turn */
46
+ isIdle(sessionName: string): boolean;
47
+ /** Deliver the agent's queued messages now */
48
+ flush(sessionName: string): Promise<void>;
49
+ /** Tell the owner / orchestrator once */
50
+ notify(notice: InputBlockedNotice): Promise<void>;
51
+ }
52
+ /**
53
+ * Retries held messages and reports agents whose input stays blocked.
54
+ */
55
+ export declare class InputBlockedRetryService {
56
+ private static instance;
57
+ private deps;
58
+ private readonly episodes;
59
+ private readonly logger;
60
+ private readonly now;
61
+ /**
62
+ * @param now - Clock (tests)
63
+ */
64
+ constructor(now?: () => number);
65
+ /**
66
+ * The process-wide service.
67
+ *
68
+ * @returns The singleton
69
+ */
70
+ static getInstance(): InputBlockedRetryService;
71
+ /**
72
+ * Replace the singleton (tests).
73
+ *
74
+ * @param service - The service, or null to rebuild lazily
75
+ */
76
+ static setInstance(service: InputBlockedRetryService | null): void;
77
+ /**
78
+ * Wire collaborators. Without them refusals are only counted.
79
+ *
80
+ * @param deps - Collaborators
81
+ */
82
+ setDeps(deps: InputBlockedRetryDeps): void;
83
+ /**
84
+ * The guard refused to deliver to this agent; the message is queued.
85
+ *
86
+ * @param sessionName - The agent
87
+ * @param refusal - What the guard saw
88
+ */
89
+ noteRefusal(sessionName: string, refusal: InputRefusal): void;
90
+ /**
91
+ * A delivery to this agent went through: the episode is over.
92
+ *
93
+ * @param sessionName - The agent
94
+ */
95
+ noteDelivered(sessionName: string): void;
96
+ /**
97
+ * Whether an agent is in a blocked episode.
98
+ *
99
+ * @param sessionName - The agent
100
+ * @returns True while blocked
101
+ */
102
+ isBlocked(sessionName: string): boolean;
103
+ /**
104
+ * Stop all timers (shutdown, tests).
105
+ */
106
+ stop(): void;
107
+ /**
108
+ * Schedule the next retry with backoff, unless one is pending.
109
+ *
110
+ * @param sessionName - The agent
111
+ * @param ep - Its episode
112
+ */
113
+ private schedule;
114
+ /**
115
+ * One retry: flush the queue when the agent is idle, else wait again.
116
+ *
117
+ * @param sessionName - The agent
118
+ * @param ep - Its episode
119
+ */
120
+ private retry;
121
+ /**
122
+ * Tell someone once per episode, after long enough or often enough.
123
+ *
124
+ * @param sessionName - The agent
125
+ * @param ep - Its episode
126
+ */
127
+ private maybeNotify;
128
+ }
129
+ //# sourceMappingURL=input-blocked-retry.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"input-blocked-retry.service.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/messaging/input-blocked-retry.service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAKH,0CAA0C;AAC1C,MAAM,WAAW,YAAY;IAC5B,gEAAgE;IAChE,KAAK,EAAE,MAAM,CAAC;IACd,yEAAyE;IACzE,WAAW,EAAE,MAAM,CAAC;IACpB,gCAAgC;IAChC,OAAO,EAAE,MAAM,CAAC;CAChB;AAED,oDAAoD;AACpD,MAAM,WAAW,kBAAkB;IAClC,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,qEAAqE;IACrE,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,kDAAkD;IAClD,OAAO,EAAE,MAAM,CAAC;CAChB;AAED,yCAAyC;AACzC,MAAM,WAAW,qBAAqB;IACrC,0CAA0C;IAC1C,SAAS,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC;IACxC,iCAAiC;IACjC,MAAM,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC;IACrC,8CAA8C;IAC9C,KAAK,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1C,yCAAyC;IACzC,MAAM,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAClD;AAaD;;GAEG;AACH,qBAAa,wBAAwB;IACpC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAyC;IAChE,OAAO,CAAC,IAAI,CAAsC;IAClD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA8B;IACvD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAkB;IACzC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAe;IAEnC;;OAEG;gBACS,GAAG,GAAE,MAAM,MAAiB;IAKxC;;;;OAIG;IACH,MAAM,CAAC,WAAW,IAAI,wBAAwB;IAK9C;;;;OAIG;IACH,MAAM,CAAC,WAAW,CAAC,OAAO,EAAE,wBAAwB,GAAG,IAAI,GAAG,IAAI;IAKlE;;;;OAIG;IACH,OAAO,CAAC,IAAI,EAAE,qBAAqB,GAAG,IAAI;IAI1C;;;;;OAKG;IACH,WAAW,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,GAAG,IAAI;IAiB7D;;;;OAIG;IACH,aAAa,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI;IAQxC;;;;;OAKG;IACH,SAAS,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO;IAIvC;;OAEG;IACH,IAAI,IAAI,IAAI;IAKZ;;;;;OAKG;IACH,OAAO,CAAC,QAAQ;IAYhB;;;;;OAKG;YACW,KAAK;IAqBnB;;;;;OAKG;YACW,WAAW;CAoBzB"}