@myagentroam/node 0.9.9 → 0.9.11

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 (214) hide show
  1. package/dist/capabilities.js +2 -92
  2. package/dist/claude-agent-sdk.js +2 -330
  3. package/dist/claude-channel.js +2 -44
  4. package/dist/codex-app-server.js +2 -503
  5. package/dist/config.js +2 -56
  6. package/dist/connector/node-connector-options.js +2 -1
  7. package/dist/connector/node-operation-router.js +2 -22
  8. package/dist/connector.js +2 -845
  9. package/dist/control-outbound-scheduler.js +2 -154
  10. package/dist/database.js +2 -1418
  11. package/dist/event-buffer.js +2 -19
  12. package/dist/fake-runner.js +2 -129
  13. package/dist/health.js +2 -3
  14. package/dist/main.js +2 -54
  15. package/dist/migrations/v001.js +3 -144
  16. package/dist/migrations/v002.js +2 -143
  17. package/dist/migrations/v003.js +2 -44
  18. package/dist/migrations/v004.js +34 -30
  19. package/dist/native-jsonl-reader.js +2 -186
  20. package/dist/native-session-history.js +2 -1119
  21. package/dist/opencode-runtime.js +2 -80
  22. package/dist/opencode-server.js +2 -263
  23. package/dist/operational.js +2 -122
  24. package/dist/process-tree.js +2 -18
  25. package/dist/rotating-log.js +2 -67
  26. package/dist/runner/abstract-runner.js +2 -232
  27. package/dist/runner/claude/managed-run-controller.js +2 -345
  28. package/dist/runner/claude-code-runner.js +2 -303
  29. package/dist/runner/codex/composer-image-markers.js +2 -0
  30. package/dist/runner/codex/conversation-parser.js +2 -861
  31. package/dist/runner/codex/managed-run-controller.js +2 -460
  32. package/dist/runner/codex-runner.js +2 -628
  33. package/dist/runner/fake-test-runner.js +2 -47
  34. package/dist/runner/opencode/conversation-parser.js +2 -221
  35. package/dist/runner/opencode/managed-run-controller.js +2 -537
  36. package/dist/runner/opencode-runner.js +2 -448
  37. package/dist/runner/runner-registry.js +2 -90
  38. package/dist/runner-command-engine.js +2 -70
  39. package/dist/runner-profiles.js +2 -215
  40. package/dist/runner-usage.js +2 -190
  41. package/dist/runtime-command-detector.js +2 -73
  42. package/dist/runtime-state.js +2 -982
  43. package/dist/service/attachment-domain-state.js +2 -7
  44. package/dist/service/conversation-history-service.js +2 -457
  45. package/dist/service/conversation-segment-service.js +2 -162
  46. package/dist/service/external-session-resume-service.js +2 -118
  47. package/dist/service/fake-managed-run-service.js +2 -60
  48. package/dist/service/managed-runner-session-service.js +2 -35
  49. package/dist/service/mcp-installation-verifier.js +2 -87
  50. package/dist/service/mcp-node-operation-service.js +2 -90
  51. package/dist/service/mcp-package-installer.js +2 -136
  52. package/dist/service/native-session-projection-service.js +2 -280
  53. package/dist/service/native-session-watch-service.js +2 -383
  54. package/dist/service/node-connection-lifecycle-service.js +2 -84
  55. package/dist/service/node-control-channel.js +2 -85
  56. package/dist/service/node-control-message-service.js +2 -107
  57. package/dist/service/node-request-service.js +2 -52
  58. package/dist/service/node-run-event-bridge.js +2 -83
  59. package/dist/service/node-terminal-channel.js +2 -182
  60. package/dist/service/node-upgrade-coordinator.js +2 -137
  61. package/dist/service/node-workspace-coordinator.js +2 -70
  62. package/dist/service/recent-run-projection-service.js +2 -78
  63. package/dist/service/run-attachment-service.js +2 -194
  64. package/dist/service/run-domain-state.js +2 -4
  65. package/dist/service/run-event-service.js +2 -193
  66. package/dist/service/run-workbench-service.js +2 -104
  67. package/dist/service/runner-channel-message-service.js +2 -20
  68. package/dist/service/runner-interaction-service.js +2 -243
  69. package/dist/service/runner-service.js +2 -71
  70. package/dist/service/session-catalog-service.js +2 -224
  71. package/dist/service/session-command-service.js +2 -76
  72. package/dist/service/session-context-service.js +2 -101
  73. package/dist/service/session-domain-state.js +2 -9
  74. package/dist/service/session-identity-service.js +2 -86
  75. package/dist/service/session-lifecycle-service.js +2 -240
  76. package/dist/service/session-message-service.js +2 -173
  77. package/dist/service/session-presentation-service.js +2 -43
  78. package/dist/service/session-query-service.js +2 -82
  79. package/dist/service/skill-directory-service.js +2 -238
  80. package/dist/service/skill-install-service.js +2 -434
  81. package/dist/service/skill-node-operation-service.js +2 -206
  82. package/dist/service/terminal-relay-state.js +2 -3
  83. package/dist/service/terminal-service.js +2 -52
  84. package/dist/service/workbench-event-service.js +2 -19
  85. package/dist/service/workbench-manifest-service.js +2 -69
  86. package/dist/service/workspace-change-service.js +2 -86
  87. package/dist/service/workspace-content-search-service.js +2 -477
  88. package/dist/service/workspace-domain-state.js +2 -41
  89. package/dist/service/workspace-file-service.js +2 -122
  90. package/dist/service/workspace-git-exclude-service.js +2 -119
  91. package/dist/service/workspace-queue-workbench-service.js +2 -304
  92. package/dist/service/workspace-service.js +2 -69
  93. package/dist/service/workspace-session-service.js +2 -139
  94. package/dist/service/workspace-upload-service.js +2 -262
  95. package/dist/service/workspace-watch-service.js +2 -146
  96. package/dist/service/workspace-workbench-service.js +2 -405
  97. package/dist/service.js +2 -38
  98. package/dist/storage.js +2 -32
  99. package/dist/supervisor.js +2 -136
  100. package/dist/terminal.js +2 -416
  101. package/dist/util/node-operation-parsers.js +2 -382
  102. package/dist/util/personal-instructions.js +2 -31
  103. package/dist/util/runner-error.js +2 -52
  104. package/dist/util/runner-native-session-parsers.js +2 -490
  105. package/dist/util/safe-error.js +2 -5
  106. package/dist/util/secret-environment.js +2 -25
  107. package/dist/workspace.js +2 -1519
  108. package/package.json +3 -3
  109. package/dist/capabilities.d.ts +0 -12
  110. package/dist/claude-agent-sdk.d.ts +0 -92
  111. package/dist/claude-channel.d.ts +0 -28
  112. package/dist/codex-app-server.d.ts +0 -133
  113. package/dist/config.d.ts +0 -18
  114. package/dist/connector/node-connector-options.d.ts +0 -27
  115. package/dist/connector/node-operation-router.d.ts +0 -9
  116. package/dist/connector.d.ts +0 -94
  117. package/dist/control-outbound-scheduler.d.ts +0 -29
  118. package/dist/database.d.ts +0 -305
  119. package/dist/event-buffer.d.ts +0 -9
  120. package/dist/fake-runner.d.ts +0 -42
  121. package/dist/health.d.ts +0 -4
  122. package/dist/main.d.ts +0 -2
  123. package/dist/migrations/v001.d.ts +0 -3
  124. package/dist/migrations/v002.d.ts +0 -4
  125. package/dist/migrations/v003.d.ts +0 -4
  126. package/dist/migrations/v004.d.ts +0 -4
  127. package/dist/native-jsonl-reader.d.ts +0 -35
  128. package/dist/native-session-history.d.ts +0 -126
  129. package/dist/opencode-runtime.d.ts +0 -33
  130. package/dist/opencode-server.d.ts +0 -49
  131. package/dist/operational.d.ts +0 -39
  132. package/dist/process-tree.d.ts +0 -9
  133. package/dist/rotating-log.d.ts +0 -17
  134. package/dist/runner/abstract-runner.d.ts +0 -172
  135. package/dist/runner/claude/managed-run-controller.d.ts +0 -51
  136. package/dist/runner/claude-code-runner.d.ts +0 -72
  137. package/dist/runner/codex/conversation-parser.d.ts +0 -59
  138. package/dist/runner/codex/managed-run-controller.d.ts +0 -90
  139. package/dist/runner/codex-runner.d.ts +0 -103
  140. package/dist/runner/fake-test-runner.d.ts +0 -26
  141. package/dist/runner/opencode/conversation-parser.d.ts +0 -31
  142. package/dist/runner/opencode/managed-run-controller.d.ts +0 -82
  143. package/dist/runner/opencode-runner.d.ts +0 -71
  144. package/dist/runner/runner-registry.d.ts +0 -19
  145. package/dist/runner-command-engine.d.ts +0 -28
  146. package/dist/runner-profiles.d.ts +0 -15
  147. package/dist/runner-usage.d.ts +0 -33
  148. package/dist/runtime-command-detector.d.ts +0 -3
  149. package/dist/runtime-state.d.ts +0 -171
  150. package/dist/service/attachment-domain-state.d.ts +0 -7
  151. package/dist/service/conversation-history-service.d.ts +0 -43
  152. package/dist/service/conversation-segment-service.d.ts +0 -20
  153. package/dist/service/external-session-resume-service.d.ts +0 -34
  154. package/dist/service/fake-managed-run-service.d.ts +0 -28
  155. package/dist/service/managed-runner-session-service.d.ts +0 -12
  156. package/dist/service/mcp-installation-verifier.d.ts +0 -9
  157. package/dist/service/mcp-node-operation-service.d.ts +0 -11
  158. package/dist/service/mcp-package-installer.d.ts +0 -8
  159. package/dist/service/native-session-projection-service.d.ts +0 -52
  160. package/dist/service/native-session-watch-service.d.ts +0 -62
  161. package/dist/service/node-connection-lifecycle-service.d.ts +0 -36
  162. package/dist/service/node-control-channel.d.ts +0 -32
  163. package/dist/service/node-control-message-service.d.ts +0 -27
  164. package/dist/service/node-request-service.d.ts +0 -14
  165. package/dist/service/node-run-event-bridge.d.ts +0 -40
  166. package/dist/service/node-terminal-channel.d.ts +0 -29
  167. package/dist/service/node-upgrade-coordinator.d.ts +0 -29
  168. package/dist/service/node-workspace-coordinator.d.ts +0 -29
  169. package/dist/service/recent-run-projection-service.d.ts +0 -14
  170. package/dist/service/run-attachment-service.d.ts +0 -38
  171. package/dist/service/run-domain-state.d.ts +0 -4
  172. package/dist/service/run-event-service.d.ts +0 -33
  173. package/dist/service/run-workbench-service.d.ts +0 -25
  174. package/dist/service/runner-channel-message-service.d.ts +0 -13
  175. package/dist/service/runner-interaction-service.d.ts +0 -39
  176. package/dist/service/runner-service.d.ts +0 -46
  177. package/dist/service/session-catalog-service.d.ts +0 -45
  178. package/dist/service/session-command-service.d.ts +0 -24
  179. package/dist/service/session-context-service.d.ts +0 -35
  180. package/dist/service/session-domain-state.d.ts +0 -9
  181. package/dist/service/session-identity-service.d.ts +0 -24
  182. package/dist/service/session-lifecycle-service.d.ts +0 -31
  183. package/dist/service/session-message-service.d.ts +0 -33
  184. package/dist/service/session-presentation-service.d.ts +0 -34
  185. package/dist/service/session-query-service.d.ts +0 -35
  186. package/dist/service/skill-directory-service.d.ts +0 -20
  187. package/dist/service/skill-install-service.d.ts +0 -21
  188. package/dist/service/skill-node-operation-service.d.ts +0 -44
  189. package/dist/service/terminal-relay-state.d.ts +0 -6
  190. package/dist/service/terminal-service.d.ts +0 -12
  191. package/dist/service/workbench-event-service.d.ts +0 -9
  192. package/dist/service/workbench-manifest-service.d.ts +0 -90
  193. package/dist/service/workspace-change-service.d.ts +0 -9
  194. package/dist/service/workspace-content-search-service.d.ts +0 -14
  195. package/dist/service/workspace-domain-state.d.ts +0 -79
  196. package/dist/service/workspace-file-service.d.ts +0 -18
  197. package/dist/service/workspace-git-exclude-service.d.ts +0 -4
  198. package/dist/service/workspace-queue-workbench-service.d.ts +0 -86
  199. package/dist/service/workspace-service.d.ts +0 -15
  200. package/dist/service/workspace-session-service.d.ts +0 -23
  201. package/dist/service/workspace-upload-service.d.ts +0 -39
  202. package/dist/service/workspace-watch-service.d.ts +0 -23
  203. package/dist/service/workspace-workbench-service.d.ts +0 -58
  204. package/dist/service.d.ts +0 -4
  205. package/dist/storage.d.ts +0 -2
  206. package/dist/supervisor.d.ts +0 -1
  207. package/dist/terminal.d.ts +0 -133
  208. package/dist/util/node-operation-parsers.d.ts +0 -92
  209. package/dist/util/personal-instructions.d.ts +0 -2
  210. package/dist/util/runner-error.d.ts +0 -6
  211. package/dist/util/runner-native-session-parsers.d.ts +0 -74
  212. package/dist/util/safe-error.d.ts +0 -2
  213. package/dist/util/secret-environment.d.ts +0 -1
  214. package/dist/workspace.d.ts +0 -217
@@ -1,47 +1,2 @@
1
- import { AbstractRunner } from './abstract-runner.js';
2
- /** Registered only by tests; never contributes a production Runner Profile. */
3
- export class FakeTestRunner extends AbstractRunner {
4
- runner;
5
- name = 'fake';
6
- discoveryScope = 'WORKSPACE_REQUIRED';
7
- advertised = false;
8
- interceptsRuns = true;
9
- constructor(runner) {
10
- super();
11
- this.runner = runner;
12
- }
13
- stop() { }
14
- profile() {
15
- return undefined;
16
- }
17
- available() {
18
- return false;
19
- }
20
- profileForValidation() {
21
- throw new Error('FAKE_RUNNER_NOT_ADVERTISED');
22
- }
23
- defaultConfiguration() {
24
- throw new Error('FAKE_RUNNER_NOT_ADVERTISED');
25
- }
26
- resumeExternal() {
27
- return Promise.resolve({ failureCode: 'RUNNER_CAPABILITY_UNSUPPORTED' });
28
- }
29
- discoverSessions() {
30
- return Promise.resolve([]);
31
- }
32
- readContextUsage() {
33
- return Promise.resolve(undefined);
34
- }
35
- start(runId, script, callbacks) {
36
- return this.runner.start(runId, script, callbacks);
37
- }
38
- decide(runId, approvalId, decision) {
39
- return this.runner.decide(runId, approvalId, decision);
40
- }
41
- interrupt(runId) {
42
- return this.runner.interrupt(runId);
43
- }
44
- cancel(runId) {
45
- return this.runner.cancel(runId);
46
- }
47
- }
1
+ /* mar-release-protected */
2
+ var _0x4850c0=_0x5369;(function(_0x5c7672,_0x3c9797){var _0x51656a=_0x5369,_0x8ef99=_0x5c7672();while(!![]){try{var _0x172546=-parseInt(_0x51656a(0xec))/(-0x21c6*-0x1+0x1e1c+-0x3fe1)+-parseInt(_0x51656a(0xee))/(0xf31+-0x272*0x4+-0x567)*(-parseInt(_0x51656a(0xe9))/(-0x1da1+0x5b*0x4b+0x2fb))+-parseInt(_0x51656a(0xe3))/(0xa0a+-0x55d*-0x4+-0x1f7a)+-parseInt(_0x51656a(0xf6))/(0xdeb+0x306*-0xa+-0x52*-0x33)+-parseInt(_0x51656a(0xe6))/(-0x1fcc+-0x22c5+0x1*0x4297)+parseInt(_0x51656a(0xe4))/(-0x1fe8+0x2676+-0x687)*(parseInt(_0x51656a(0xf7))/(-0x2c0*0x2+-0x846+0xdce))+parseInt(_0x51656a(0xfa))/(-0x3*0x37c+-0xba6+0x3*0x761);if(_0x172546===_0x3c9797)break;else _0x8ef99['push'](_0x8ef99['shift']());}catch(_0x3a4599){_0x8ef99['push'](_0x8ef99['shift']());}}}(_0x4f9c,0x6ab*-0x49+0xec715+-0x1*0x4a37d));function _0x5369(_0x4806da,_0xd5b09){_0x4806da=_0x4806da-(0x1046*-0x2+0x15ee+0xb7e);var _0x146c28=_0x4f9c();var _0x110574=_0x146c28[_0x4806da];if(_0x5369['siNesa']===undefined){var _0x423a4d=function(_0x4f8efc){var _0xe0297e='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var _0x26f73d='',_0xb87350='';for(var _0x5039e7=-0x135*0x1d+-0xb*-0xbc+-0x3d*-0x71,_0x1d2ab0,_0x306d86,_0x480019=0x30+-0x3*0x5a+0xde;_0x306d86=_0x4f8efc['charAt'](_0x480019++);~_0x306d86&&(_0x1d2ab0=_0x5039e7%(-0x924+0x5ad+0x37b)?_0x1d2ab0*(-0x6b*-0x8+-0x58d+0x275)+_0x306d86:_0x306d86,_0x5039e7++%(-0x33b*0x1+0x1e8e+0x1b4f*-0x1))?_0x26f73d+=String['fromCharCode'](0x1d94+-0x1481+0x2f*-0x2c&_0x1d2ab0>>(-(0x2d1*-0x5+0x1e1a*0x1+-0x1003*0x1)*_0x5039e7&0x1ae0+-0x26*0x68+0x1*-0xb6a)):-0x5c9*-0x5+-0x6*-0x216+-0x2971){_0x306d86=_0xe0297e['indexOf'](_0x306d86);}for(var _0x1f4d69=0x67*-0x4d+-0xc+0x1f07,_0x3bf0e5=_0x26f73d['length'];_0x1f4d69<_0x3bf0e5;_0x1f4d69++){_0xb87350+='%'+('00'+_0x26f73d['charCodeAt'](_0x1f4d69)['toString'](-0xba*0xa+-0xf13+0x1667))['slice'](-(-0xa79+0x26af+-0x2*0xe1a));}return decodeURIComponent(_0xb87350);};_0x5369['lDSOTa']=_0x423a4d,_0x5369['eYtmwV']={},_0x5369['siNesa']=!![];}var _0x23c006=_0x146c28[0xfd8+-0x2*-0x133d+0x1b29*-0x2];_0x5369['zJezlS']!==_0x23c006&&(_0x5369['eYtmwV']={},_0x5369['zJezlS']=_0x23c006);var _0x1f7ca0=_0x5369['eYtmwV'][_0x4806da];return _0x1f7ca0===undefined?(_0x110574=_0x5369['lDSOTa'](_0x110574),_0x5369['eYtmwV'][_0x4806da]=_0x110574):_0x110574=_0x1f7ca0,_0x110574;}import{AbstractRunner}from'./abstract-runner.js';function _0x4f9c(){var _0x41961a=['CMvZDw1LrxH0zxjUywW','Aw50zxjJzxb0C1j1BNm','CNvUBMvY','ndi5ntuYmhb3tM9rqG','ndL6DNbmAhi','ChjVzMLSzuzVCLzHBgLKyxrPB24','nty4odCZmNbMEKToAG','zgLZy292zxjtzxnZAw9UCW','zMfRzq','mte3vePxvgDs','zgvJAwrL','yxzHAwXHyMXL','mJuYnJi3Auzovg1N','rKflrv9svu5orvjFtK9ux0fevKvsveLtruq','oda0ng5st3fvqq','CMvZB2X2zq','y2fUy2vS','ywr2zxj0AxnLza','v09ss1nqqunfx1jfuvvjuKve','zgLZy292zxj5u2nVCgu','C3rHCNq','Aw50zxjYDxb0','ndK2mdC4nvrjtMPpDq','mta1nty4yxrAAxPp','BMfTzq','uLvotKvsx0nbuefcsuXjvfLFvu5tvvbqt1juruq','mZiWmty3ntn5s1P3sNC','C3rVCa','ChjVzMLSzq','CMvHzenVBNrLEhrvC2fNzq','zgvMyxvSDenVBMzPz3vYyxrPB24'];_0x4f9c=function(){return _0x41961a;};return _0x4f9c();}export class FakeTestRunner extends AbstractRunner{[_0x4850c0(0xe2)];[_0x4850c0(0xf8)]=_0x4850c0(0xe8);[_0x4850c0(0xf3)]=_0x4850c0(0xf2);[_0x4850c0(0xf1)]=![];[_0x4850c0(0xe1)]=!![];constructor(_0x488861){var _0x4a7003=_0x4850c0;super(),this[_0x4a7003(0xe2)]=_0x488861;}[_0x4850c0(0xfb)](){}[_0x4850c0(0xfc)](){return undefined;}[_0x4850c0(0xeb)](){return![];}[_0x4850c0(0xe5)](){var _0x5e3417=_0x4850c0;throw new Error(_0x5e3417(0xed));}[_0x4850c0(0xfe)](){var _0x5e69ec=_0x4850c0;throw new Error(_0x5e69ec(0xed));}[_0x4850c0(0xe0)](){var _0x3cb7e1=_0x4850c0;return Promise[_0x3cb7e1(0xef)]({'failureCode':_0x3cb7e1(0xf9)});}[_0x4850c0(0xe7)](){var _0x498821=_0x4850c0;return Promise[_0x498821(0xef)]([]);}[_0x4850c0(0xfd)](){var _0x200a55=_0x4850c0;return Promise[_0x200a55(0xef)](undefined);}[_0x4850c0(0xf4)](_0x212224,_0x53abeb,_0x19feba){var _0x58b5d6=_0x4850c0;return this[_0x58b5d6(0xe2)][_0x58b5d6(0xf4)](_0x212224,_0x53abeb,_0x19feba);}[_0x4850c0(0xea)](_0x2feaf2,_0x2e66e2,_0x9aea96){var _0x187d1f=_0x4850c0;return this[_0x187d1f(0xe2)][_0x187d1f(0xea)](_0x2feaf2,_0x2e66e2,_0x9aea96);}[_0x4850c0(0xf5)](_0x4d56b8){var _0x4db282=_0x4850c0;return this[_0x4db282(0xe2)][_0x4db282(0xf5)](_0x4d56b8);}[_0x4850c0(0xf0)](_0x287c56){var _0x2cf4c3=_0x4850c0;return this[_0x2cf4c3(0xe2)][_0x2cf4c3(0xf0)](_0x287c56);}}
@@ -1,221 +1,2 @@
1
- import { boundedConversationItemId, compactRunnerText, compactRunnerValue } from '../codex/conversation-parser.js';
2
- import { runtimeAssistantProjectionMoreComplete } from '../../util/runner-native-session-parsers.js';
3
- export function openCodeConversationPage(session, messages, input, managedTurn) {
4
- const records = messages.flatMap((value) => {
5
- const entry = record(value);
6
- const info = record(entry?.info);
7
- return info === undefined || typeof info.id !== 'string'
8
- ? []
9
- : [{ info, parts: array(entry?.parts) }];
10
- });
11
- const parsedTurns = records
12
- .filter(({ info }) => info.role === 'user')
13
- .flatMap(({ info, parts }, sequence) => {
14
- const assistants = records.filter((candidate) => candidate.info.role === 'assistant' && candidate.info.parentID === info.id);
15
- const existing = managedTurn(info.id);
16
- const turn = openCodeTurn(session, info, parts, assistants, sequence, existing);
17
- const after = assistants.at(-1)?.info.id ?? info.id;
18
- return turn === undefined || typeof after !== 'string' ? [] : [{ after, turn }];
19
- });
20
- const turns = parsedTurns.map(({ after, turn }, index) => ({
21
- ...turn,
22
- rewind: { before: parsedTurns[index - 1]?.after ?? null, after }
23
- }));
24
- if (turns.length === 0)
25
- return undefined;
26
- const limit = Math.min(Math.max(input.limit ?? 30, 1), 500);
27
- const end = pageEnd(input.cursor, session.id, turns.length);
28
- const start = Math.max(0, end - limit);
29
- return {
30
- turns: turns.slice(start, end),
31
- nextCursor: start === 0
32
- ? null
33
- : Buffer.from(JSON.stringify({ sessionId: session.id, end: start })).toString('base64url')
34
- };
35
- }
36
- function openCodeTurn(session, user, userParts, assistants, sequence, managed) {
37
- const nativeTurnId = user.id;
38
- const startedAt = number(record(user.time)?.created);
39
- const items = [];
40
- const userText = userParts
41
- .flatMap((part) => {
42
- const value = record(part);
43
- return value?.type === 'text' && typeof value.text === 'string' ? [value.text] : [];
44
- })
45
- .join('\n');
46
- const localUser = managed?.items.find((item) => item.kind === 'user_message');
47
- if (localUser !== undefined)
48
- items.push({ ...localUser, turnId: managed.id });
49
- else if (userText.length > 0)
50
- items.push(item(session, nativeTurnId, `user-${nativeTurnId}`, 'user_message', 'COMPLETED', {
51
- text: compactRunnerText(userText, 20_000),
52
- attachments: []
53
- }, startedAt, startedAt, sequence));
54
- for (const assistant of assistants) {
55
- const completedAt = number(record(assistant.info.time)?.completed);
56
- for (const part of assistant.parts) {
57
- const projected = partItem(session, nativeTurnId, part, assistant.info.mode === 'plan', startedAt, completedAt, sequence);
58
- if (projected !== undefined)
59
- items.push(projected);
60
- }
61
- }
62
- if (items.length === 0)
63
- return undefined;
64
- const completedAt = Math.max(startedAt ?? 0, ...assistants.map(({ info }) => number(record(info.time)?.completed) ?? 0)) || startedAt;
65
- const id = managed?.id ?? `${session.id}:official:${nativeTurnId}`;
66
- const runId = managed?.runId ?? null;
67
- const projectedItems = runtimeAssistantProjectionMoreComplete(managed, items)
68
- ? managed.items
69
- : items;
70
- return {
71
- id,
72
- sessionId: session.id,
73
- runId,
74
- userItemId: items.find((value) => value.kind === 'user_message')?.id ?? null,
75
- status: assistants.some(({ info }) => info.error !== undefined) ? 'FAILED' : 'SUCCEEDED',
76
- model: assistants.find(({ info }) => typeof info.modelID === 'string')?.info.modelID ?? null,
77
- effort: managed?.effort ?? null,
78
- access: managed?.access ?? null,
79
- items: projectedItems.map((value) => ({ ...value, turnId: id, runId })),
80
- startedAt,
81
- completedAt
82
- };
83
- }
84
- function partItem(session, turnId, raw, planMode, startedAt, completedAt, sequence) {
85
- const part = record(raw);
86
- if (typeof part?.id !== 'string' || typeof part.type !== 'string')
87
- return undefined;
88
- if ((part.type === 'text' || part.type === 'reasoning') && typeof part.text === 'string')
89
- return item(session, turnId, part.id, part.type === 'text' ? (planMode ? 'plan' : 'assistant_message') : 'reasoning_summary', completedAt === null ? 'IN_PROGRESS' : 'COMPLETED', part.type === 'text'
90
- ? planMode
91
- ? { explanation: compactRunnerText(part.text, 20_000), steps: [] }
92
- : { text: compactRunnerText(part.text, 20_000), format: 'markdown', model: null }
93
- : { sections: [{ index: 0, text: compactRunnerText(part.text, 10_000) }] }, startedAt, completedAt, sequence);
94
- if (part.type === 'tool' && typeof part.tool === 'string') {
95
- const state = record(part.state);
96
- if (part.tool === 'question' && typeof part.callID === 'string') {
97
- const questions = openCodeQuestions(record(state?.input)?.questions);
98
- if (questions.length > 0)
99
- return item(session, turnId, part.id, 'user_input_request', 'COMPLETED', { requestId: `native:${part.callID}`, questions }, startedAt, completedAt, sequence);
100
- }
101
- const status = state?.status === 'completed'
102
- ? 'COMPLETED'
103
- : state?.status === 'error'
104
- ? 'FAILED'
105
- : 'IN_PROGRESS';
106
- return item(session, turnId, part.id, 'tool_call', status, {
107
- namespace: 'opencode',
108
- toolName: compactRunnerText(part.tool, 128),
109
- title: compactRunnerText(typeof state?.title === 'string' ? state.title : part.tool, 500),
110
- inputSummary: compactRunnerValue(state?.input, 10_000).text || null,
111
- outputSummary: typeof state?.output === 'string' ? compactRunnerText(state.output, 10_000) : null,
112
- progressLabel: null,
113
- errorCode: status === 'FAILED' ? 'OPENCODE_TOOL_FAILED' : null,
114
- truncated: false
115
- }, startedAt, completedAt, sequence);
116
- }
117
- if (part.type === 'compaction')
118
- return item(session, turnId, part.id, 'context_compaction', 'COMPLETED', {
119
- phase: 'COMPLETED',
120
- summary: 'Context compacted',
121
- summaryCode: 'CONTEXT_COMPACTED'
122
- }, startedAt, completedAt, sequence);
123
- if (part.type === 'patch')
124
- return item(session, turnId, part.id, 'tool_call', 'COMPLETED', openCodePatchToolPayload(), startedAt, completedAt, sequence);
125
- if (part.type === 'step-start' || part.type === 'step-finish')
126
- return undefined;
127
- if (part.type === 'text' || part.type === 'reasoning')
128
- return undefined;
129
- return item(session, turnId, part.id, 'unknown', completedAt === null ? 'IN_PROGRESS' : 'COMPLETED', {
130
- sourceEventType: `opencode:${part.type}`,
131
- label: `OpenCode ${compactRunnerText(part.type, 128)}`
132
- }, startedAt, completedAt, sequence);
133
- }
134
- export function openCodeQuestions(value) {
135
- if (!Array.isArray(value) || value.length === 0)
136
- return [];
137
- return value.flatMap((value, index) => {
138
- const question = record(value);
139
- if (typeof question?.question !== 'string')
140
- return [];
141
- const options = (Array.isArray(question.options) ? question.options : []).flatMap((value) => {
142
- const option = record(value);
143
- const label = typeof option?.label === 'string' ? compactRunnerText(option.label, 500) : '';
144
- return label.length === 0
145
- ? []
146
- : [
147
- {
148
- value: label,
149
- label,
150
- description: typeof option?.description === 'string'
151
- ? compactRunnerText(option.description, 1_000)
152
- : null
153
- }
154
- ];
155
- });
156
- const multiSelect = question.multiple === true;
157
- return [
158
- {
159
- id: `question-${index + 1}`,
160
- prompt: compactRunnerText(question.question, 5_000),
161
- input: options.length === 0 ? 'SHORT_TEXT' : multiSelect ? 'MULTI_SELECT' : 'SINGLE_SELECT',
162
- options,
163
- allowOther: true,
164
- multiSelect
165
- }
166
- ];
167
- });
168
- }
169
- export function openCodePatchToolPayload() {
170
- return {
171
- namespace: 'opencode',
172
- toolName: 'patch',
173
- title: 'patch',
174
- inputSummary: null,
175
- outputSummary: 'OpenCode applied the patch',
176
- outputSummaryCode: 'OPENCODE_PATCH_APPLIED',
177
- progressLabel: null,
178
- errorCode: null,
179
- truncated: false
180
- };
181
- }
182
- function item(session, turnId, nativeId, kind, status, payload, startedAt, completedAt, sequence) {
183
- return {
184
- id: boundedConversationItemId(`${session.id}:official:${turnId}`, nativeId),
185
- sessionId: session.id,
186
- turnId: `${session.id}:official:${turnId}`,
187
- runId: null,
188
- parentItemId: null,
189
- sourceSequence: sequence,
190
- revision: 1,
191
- kind,
192
- status,
193
- payload,
194
- startedAt,
195
- completedAt
196
- };
197
- }
198
- function pageEnd(cursor, sessionId, fallback) {
199
- if (cursor === undefined)
200
- return fallback;
201
- try {
202
- const parsed = record(JSON.parse(Buffer.from(cursor, 'base64url').toString('utf8')));
203
- return parsed?.sessionId === sessionId && Number.isInteger(parsed.end)
204
- ? Math.min(Math.max(Number(parsed.end), 0), fallback)
205
- : fallback;
206
- }
207
- catch {
208
- return fallback;
209
- }
210
- }
211
- function record(value) {
212
- return typeof value === 'object' && value !== null && !Array.isArray(value)
213
- ? value
214
- : undefined;
215
- }
216
- function array(value) {
217
- return Array.isArray(value) ? value : [];
218
- }
219
- function number(value) {
220
- return typeof value === 'number' && Number.isFinite(value) ? value : null;
221
- }
1
+ /* mar-release-protected */
2
+ (function(_0x745e79,_0x533ca9){const _0x419957=_0x2990,_0x1140b6=_0x745e79();while(!![]){try{const _0xd8368=-parseInt(_0x419957(0xf1))/(0x2268+-0xf*0xaa+-0x1871)*(-parseInt(_0x419957(0xc0))/(-0x1c8d+0xe*0x245+-0x337))+parseInt(_0x419957(0xd4))/(0x1*0x26ad+0x16cd+-0x419*0xf)+-parseInt(_0x419957(0x114))/(-0xa*0x1b1+0x130d*-0x2+0x3708)*(-parseInt(_0x419957(0xf6))/(0xdff*-0x2+0xa8*0x2+0x5*0x557))+-parseInt(_0x419957(0xd7))/(-0x2*0x6f4+-0x779*-0x5+-0x7*0x359)*(-parseInt(_0x419957(0xb4))/(-0x7*-0x487+0x1*0x11df+-0x3189*0x1))+-parseInt(_0x419957(0x109))/(0x2cf*0xb+0x2256*-0x1+-0x7*-0x7f)*(parseInt(_0x419957(0xcb))/(0x1d2*-0x12+-0x1ed*-0xc+0x9b1))+-parseInt(_0x419957(0xd5))/(-0x254f+-0x5d3+0x2b2c)+parseInt(_0x419957(0xec))/(0xdb0+-0xab7+-0x2ee);if(_0xd8368===_0x533ca9)break;else _0x1140b6['push'](_0x1140b6['shift']());}catch(_0x4ba954){_0x1140b6['push'](_0x1140b6['shift']());}}}(_0x4101,-0x2cd0*0x6b+-0x327b*-0x6b+0x28e27*0x5));import{boundedConversationItemId,compactRunnerText,compactRunnerValue}from'../codex/conversation-parser.js';import{runtimeAssistantProjectionMoreComplete}from'../../util/runner-native-session-parsers.js';export function openCodeConversationPage(_0x84cce2,_0x2db354,_0x56f32b,_0x4e6562){const _0x5a8250=_0x2990,_0x5dba0c=_0x2db354[_0x5a8250(0xf4)](_0x200930=>{const _0xd46955=_0x5a8250,_0x3274b4=record(_0x200930),_0xbad58c=record(_0x3274b4?.[_0xd46955(0xe4)]);return _0xbad58c===undefined||typeof _0xbad58c['id']!==_0xd46955(0xe6)?[]:[{'info':_0xbad58c,'parts':array(_0x3274b4?.[_0xd46955(0xb3)])}];}),_0x1c72a7=_0x5dba0c[_0x5a8250(0xef)](({info:_0x378fa2})=>_0x378fa2[_0x5a8250(0xd9)]===_0x5a8250(0x100))[_0x5a8250(0xf4)](({info:_0x89d725,parts:_0x41f6b3},_0x1399d0)=>{const _0x4bbed7=_0x5a8250,_0x3cd2bb=_0x5dba0c[_0x4bbed7(0xef)](_0x2a7e0e=>_0x2a7e0e[_0x4bbed7(0xe4)][_0x4bbed7(0xd9)]===_0x4bbed7(0x115)&&_0x2a7e0e[_0x4bbed7(0xe4)][_0x4bbed7(0xe0)]===_0x89d725['id']),_0xe8aceb=_0x4e6562(_0x89d725['id']),_0x2ed8b0=openCodeTurn(_0x84cce2,_0x89d725,_0x41f6b3,_0x3cd2bb,_0x1399d0,_0xe8aceb),_0x49ce61=_0x3cd2bb['at'](-(0x150c+0x40*0x12+0xd*-0x1f7))?.[_0x4bbed7(0xe4)]['id']??_0x89d725['id'];return _0x2ed8b0===undefined||typeof _0x49ce61!==_0x4bbed7(0xe6)?[]:[{'after':_0x49ce61,'turn':_0x2ed8b0}];}),_0x3f8148=_0x1c72a7[_0x5a8250(0x102)](({after:_0x545f73,turn:_0x1dca3c},_0x34f3d3)=>({..._0x1dca3c,'rewind':{'before':_0x1c72a7[_0x34f3d3-(0x1*0x1837+-0xda*0xd+-0xd24)]?.[_0x5a8250(0xd0)]??null,'after':_0x545f73}}));if(_0x3f8148[_0x5a8250(0xdd)]===0x15e2+-0x5ab+0x251*-0x7)return undefined;const _0x41e5b5=Math[_0x5a8250(0xf8)](Math[_0x5a8250(0x104)](_0x56f32b[_0x5a8250(0xf7)]??-0x1*0x21f0+-0x3*-0x34b+0x182d,-0xe2+-0xc78+0xd5b*0x1),-0x1337+-0x17ac+0x2cd7),_0x2e8fd0=pageEnd(_0x56f32b[_0x5a8250(0xd6)],_0x84cce2['id'],_0x3f8148[_0x5a8250(0xdd)]),_0x3674c6=Math[_0x5a8250(0x104)](0x7d*-0x13+0x292+-0x6b5*-0x1,_0x2e8fd0-_0x41e5b5);return{'turns':_0x3f8148[_0x5a8250(0xcc)](_0x3674c6,_0x2e8fd0),'nextCursor':_0x3674c6===0x59a+0x209c+0x2636*-0x1?null:Buffer[_0x5a8250(0xfa)](JSON[_0x5a8250(0xcd)]({'sessionId':_0x84cce2['id'],'end':_0x3674c6}))[_0x5a8250(0x110)](_0x5a8250(0xbc))};}function _0x4101(){const _0x4d1e21=['y3jLyxrLza','CxvLC3rPB25Z','zMLUza','q29UDgv4DcbJB21Wywn0zwq','t1bftKnprevFuefuq0HFqvbqteLfra','zw5K','B3v0Chv0','yMfZzty0DxjS','q09ovevyvf9dt01qqunuruq','CgfYC2u','DxnLCL9PBNb1Df9Yzxf1zxn0','mJjuweDRt1K','t3bLBKnVzguG','DgL0Bgu','Cgf0y2G','BgfIzwW','rKfjteve','y29TCgfJDgLVBG','Bw9KzwXjra','DxrMoa','oM9MzMLJAwfSoG','A2LUza','mtH2zxL2r3m','C2XPy2u','C3rYAw5NAwz5','BwfYA2rVD24','C2vZC2LVBKLK','ywz0zxi','AxrLBxm','CMvHC29UAw5Nx3n1Bw1HCNK','CgXHBG','odm0ntDHB01wzxq','mtCZmZKXmJbZA3r1A2O','y3vYC29Y','mtHRqLLdDwu','ChvZAa','CM9Szq','Dw5RBM93BG','CNvUswq','y29TCgXLDgvK','BgvUz3rO','BxvSDgLWBgu','u0HpuLrFvevyva','CgfYzw50suq','AxnbCNjHEq','BMf0AxzLoG','y29UDgv4Df9JB21Wywn0Aw9U','Aw5MBW','yxnZAxn0yw50x21LC3nHz2u','C3rYAw5N','u0Lor0Xfx1nftevdva','CMvHC29UAw5N','AxngAw5PDgu','u1vdq0vfreve','CxvLC3rPB24T','ndm2mtu0ngn3wgzQsG','q09nueXfveve','AxnjBNrLz2vY','zMLSDgvY','zwzMB3j0','nde1ntDxy2L5CwS','ywnJzxnZ','CxvLC3rPB24','zMXHDe1HCa','t1bftKnprevFve9ptf9gquLmruq','mJu2mJq1uuDezfrv','BgLTAxq','BwLU','y2fSBeLe','zNjVBq','C3rHDgu','DhLWzq','Dgv4Da','tvvmveLFu0vmrunu','su5Fufjpr1jfu1m','DxnLCG','DxnLCL9TzxnZywDL','BwfW','DxnLCI0','Bwf4','Dg9VBf9JywXS','B2jQzwn0','Aw5WDxq','Bw9Kzq','mZa0mZe4neTHuwPuyq','B3bLBMnVzgu','C29Tzq','zgvZy3jPChrPB24','B3b0Aw9UCW','zxjYB3i','C3rLCc1MAw5PC2G','Dg9tDhjPBMC','DgLTzq','B3bLBMnVzgu6','t3bLBKnVzguGyxbWBgLLzcb0AguGCgf0y2G','nJHLugXhz2C','yxnZAxn0yw50','AM9PBG','C3rLCc1ZDgfYDa','C3rHDhvZ','Dg9VBa','BNvTyMvY','CgfYDhm','nda0nZm5m1zrsLrhCa'];_0x4101=function(){return _0x4d1e21;};return _0x4101();}function openCodeTurn(_0x1e6b51,_0x4a98ef,_0x4666fe,_0x2ca26d,_0x527616,_0x265260){const _0x47b20d=_0x2990,_0x226f39=_0x4a98ef['id'],_0x46eb88=number(record(_0x4a98ef[_0x47b20d(0x111)])?.[_0x47b20d(0xb5)]),_0x3b4715=[],_0x359404=_0x4666fe[_0x47b20d(0xf4)](_0x10ab00=>{const _0x22a56b=_0x47b20d,_0x2973bc=record(_0x10ab00);return _0x2973bc?.[_0x22a56b(0xfc)]===_0x22a56b(0xfd)&&typeof _0x2973bc[_0x22a56b(0xfd)]===_0x22a56b(0xe6)?[_0x2973bc[_0x22a56b(0xfd)]]:[];})[_0x47b20d(0x116)]('\x0a'),_0x5d17da=_0x265260?.[_0x47b20d(0xd1)][_0x47b20d(0xb7)](_0x26d656=>_0x26d656[_0x47b20d(0xca)]===_0x47b20d(0x101));if(_0x5d17da!==undefined)_0x3b4715[_0x47b20d(0xd8)]({..._0x5d17da,'turnId':_0x265260['id']});else{if(_0x359404[_0x47b20d(0xdd)]>-0x1033+0x6aa*-0x1+0x16dd)_0x3b4715[_0x47b20d(0xd8)](item(_0x1e6b51,_0x226f39,_0x47b20d(0x103)+_0x226f39,_0x47b20d(0x101),_0x47b20d(0xed),{'text':compactRunnerText(_0x359404,-0x7edd*0x1+-0xe*0xcd+0xd833),'attachments':[]},_0x46eb88,_0x46eb88,_0x527616));}for(const _0x31dcca of _0x2ca26d){const _0x3ad443=number(record(_0x31dcca[_0x47b20d(0xe4)][_0x47b20d(0x111)])?.[_0x47b20d(0xdc)]);for(const _0x538d45 of _0x31dcca[_0x47b20d(0xb3)]){const _0x594ded=partItem(_0x1e6b51,_0x226f39,_0x538d45,_0x31dcca[_0x47b20d(0xe4)][_0x47b20d(0x108)]===_0x47b20d(0xd3),_0x46eb88,_0x3ad443,_0x527616);if(_0x594ded!==undefined)_0x3b4715[_0x47b20d(0xd8)](_0x594ded);}}if(_0x3b4715[_0x47b20d(0xdd)]===0x15*0x179+0x1*0x1c2a+-0x3b17)return undefined;const _0x2b1c22=Math[_0x47b20d(0x104)](_0x46eb88??0x13cd+0x1a83+-0x4*0xb94,..._0x2ca26d[_0x47b20d(0x102)](({info:_0x25fbc2})=>number(record(_0x25fbc2[_0x47b20d(0x111)])?.[_0x47b20d(0xdc)])??-0x178e+0x963+0xe2b))||_0x46eb88,_0xd34af0=_0x265260?.['id']??_0x1e6b51['id']+_0x47b20d(0xc9)+_0x226f39,_0x3e23a2=_0x265260?.[_0x47b20d(0xdb)]??null,_0x32cc37=runtimeAssistantProjectionMoreComplete(_0x265260,_0x3b4715)?_0x265260[_0x47b20d(0xd1)]:_0x3b4715;return{'id':_0xd34af0,'sessionId':_0x1e6b51['id'],'runId':_0x3e23a2,'userItemId':_0x3b4715[_0x47b20d(0xb7)](_0x3a14ad=>_0x3a14ad[_0x47b20d(0xca)]===_0x47b20d(0x101))?.['id']??null,'status':_0x2ca26d[_0x47b20d(0x10b)](({info:_0x4c2ac9})=>_0x4c2ac9[_0x47b20d(0x10e)]!==undefined)?_0x47b20d(0xc5):_0x47b20d(0xea),'model':_0x2ca26d[_0x47b20d(0xb7)](({info:_0x4b5b8e})=>typeof _0x4b5b8e[_0x47b20d(0xc7)]===_0x47b20d(0xe6))?.[_0x47b20d(0xe4)][_0x47b20d(0xc7)]??null,'effort':_0x265260?.[_0x47b20d(0xf0)]??null,'access':_0x265260?.[_0x47b20d(0xf2)]??null,'items':_0x32cc37[_0x47b20d(0x102)](_0xdb9c2=>({..._0xdb9c2,'turnId':_0xd34af0,'runId':_0x3e23a2})),'startedAt':_0x46eb88,'completedAt':_0x2b1c22};}function partItem(_0x40a525,_0x517c12,_0x1fb0b1,_0x3b9c2e,_0xaf974b,_0x8a37bd,_0xbcec95){const _0x4defb4=_0x2990,_0x7205aa=record(_0x1fb0b1);if(typeof _0x7205aa?.['id']!==_0x4defb4(0xe6)||typeof _0x7205aa[_0x4defb4(0xfc)]!==_0x4defb4(0xe6))return undefined;if((_0x7205aa[_0x4defb4(0xfc)]===_0x4defb4(0xfd)||_0x7205aa[_0x4defb4(0xfc)]===_0x4defb4(0xe8))&&typeof _0x7205aa[_0x4defb4(0xfd)]===_0x4defb4(0xe6))return item(_0x40a525,_0x517c12,_0x7205aa['id'],_0x7205aa[_0x4defb4(0xfc)]===_0x4defb4(0xfd)?_0x3b9c2e?_0x4defb4(0xd3):_0x4defb4(0xe5):_0x4defb4(0xd2),_0x8a37bd===null?_0x4defb4(0xff):_0x4defb4(0xed),_0x7205aa[_0x4defb4(0xfc)]===_0x4defb4(0xfd)?_0x3b9c2e?{'explanation':compactRunnerText(_0x7205aa[_0x4defb4(0xfd)],0x4d3f+0x1a95+-0x19b4),'steps':[]}:{'text':compactRunnerText(_0x7205aa[_0x4defb4(0xfd)],0x1*-0x169a+0x59ff+-0xabb*-0x1),'format':_0x4defb4(0xce),'model':null}:{'sections':[{'index':0x0,'text':compactRunnerText(_0x7205aa[_0x4defb4(0xfd)],-0x6bd+-0x5*-0x8e9+0x140)}]},_0xaf974b,_0x8a37bd,_0xbcec95);if(_0x7205aa[_0x4defb4(0xfc)]===_0x4defb4(0xb1)&&typeof _0x7205aa[_0x4defb4(0xb1)]===_0x4defb4(0xe6)){const _0x45e7d7=record(_0x7205aa[_0x4defb4(0xfb)]);if(_0x7205aa[_0x4defb4(0xb1)]===_0x4defb4(0xf3)&&typeof _0x7205aa[_0x4defb4(0xf9)]===_0x4defb4(0xe6)){const _0x5a8635=openCodeQuestions(record(_0x45e7d7?.[_0x4defb4(0x107)])?.[_0x4defb4(0xb6)]);if(_0x5a8635[_0x4defb4(0xdd)]>-0x3a*-0x3f+0x13b0+0x6*-0x5a9)return item(_0x40a525,_0x517c12,_0x7205aa['id'],_0x4defb4(0xbf),_0x4defb4(0xed),{'requestId':_0x4defb4(0xe2)+_0x7205aa[_0x4defb4(0xf9)],'questions':_0x5a8635},_0xaf974b,_0x8a37bd,_0xbcec95);}const _0x329be8=_0x45e7d7?.[_0x4defb4(0xb0)]===_0x4defb4(0xdc)?_0x4defb4(0xed):_0x45e7d7?.[_0x4defb4(0xb0)]===_0x4defb4(0x10e)?_0x4defb4(0xc5):_0x4defb4(0xff);return item(_0x40a525,_0x517c12,_0x7205aa['id'],_0x4defb4(0x105),_0x329be8,{'namespace':_0x4defb4(0x10a),'toolName':compactRunnerText(_0x7205aa[_0x4defb4(0xb1)],0x247e+0x515*-0x5+0x7*-0x183),'title':compactRunnerText(typeof _0x45e7d7?.[_0x4defb4(0xc2)]===_0x4defb4(0xe6)?_0x45e7d7[_0x4defb4(0xc2)]:_0x7205aa[_0x4defb4(0xb1)],-0x1713+-0x143*-0x18+-0x541),'inputSummary':compactRunnerValue(_0x45e7d7?.[_0x4defb4(0x107)],-0x1*0x3563+0x815*0x7+0x23e0)[_0x4defb4(0xfd)]||null,'outputSummary':typeof _0x45e7d7?.[_0x4defb4(0xbb)]===_0x4defb4(0xe6)?compactRunnerText(_0x45e7d7[_0x4defb4(0xbb)],-0x2*-0x1c13+-0x35e*0x9+-0x468*-0x3):null,'progressLabel':null,'errorCode':_0x329be8===_0x4defb4(0xc5)?_0x4defb4(0xf5):null,'truncated':![]},_0xaf974b,_0x8a37bd,_0xbcec95);}if(_0x7205aa[_0x4defb4(0xfc)]===_0x4defb4(0xc6))return item(_0x40a525,_0x517c12,_0x7205aa['id'],_0x4defb4(0xe3),_0x4defb4(0xed),{'phase':_0x4defb4(0xed),'summary':_0x4defb4(0xb8),'summaryCode':_0x4defb4(0xbd)},_0xaf974b,_0x8a37bd,_0xbcec95);if(_0x7205aa[_0x4defb4(0xfc)]===_0x4defb4(0xc3))return item(_0x40a525,_0x517c12,_0x7205aa['id'],_0x4defb4(0x105),_0x4defb4(0xed),openCodePatchToolPayload(),_0xaf974b,_0x8a37bd,_0xbcec95);if(_0x7205aa[_0x4defb4(0xfc)]===_0x4defb4(0x117)||_0x7205aa[_0x4defb4(0xfc)]===_0x4defb4(0x10f))return undefined;if(_0x7205aa[_0x4defb4(0xfc)]===_0x4defb4(0xfd)||_0x7205aa[_0x4defb4(0xfc)]===_0x4defb4(0xe8))return undefined;return item(_0x40a525,_0x517c12,_0x7205aa['id'],_0x4defb4(0xda),_0x8a37bd===null?_0x4defb4(0xff):_0x4defb4(0xed),{'sourceEventType':_0x4defb4(0x112)+_0x7205aa[_0x4defb4(0xfc)],'label':_0x4defb4(0xc1)+compactRunnerText(_0x7205aa[_0x4defb4(0xfc)],0x98+-0x1f83+0x47d*0x7)},_0xaf974b,_0x8a37bd,_0xbcec95);}export function openCodeQuestions(_0xfb8960){const _0x1e6233=_0x2990;if(!Array[_0x1e6233(0xe1)](_0xfb8960)||_0xfb8960[_0x1e6233(0xdd)]===0xd*-0x13a+0x1e02+-0xe10)return[];return _0xfb8960[_0x1e6233(0xf4)]((_0x3925c7,_0x5dc184)=>{const _0x3f1ac9=_0x1e6233,_0x31d3fd=record(_0x3925c7);if(typeof _0x31d3fd?.[_0x3f1ac9(0xf3)]!==_0x3f1ac9(0xe6))return[];const _0x2beb80=(Array[_0x3f1ac9(0xe1)](_0x31d3fd[_0x3f1ac9(0x10d)])?_0x31d3fd[_0x3f1ac9(0x10d)]:[])[_0x3f1ac9(0xf4)](_0xc4ab6=>{const _0x4bd3fc=_0x3f1ac9,_0x3ead12=record(_0xc4ab6),_0x233514=typeof _0x3ead12?.[_0x4bd3fc(0xc4)]===_0x4bd3fc(0xe6)?compactRunnerText(_0x3ead12[_0x4bd3fc(0xc4)],-0xf7e+-0x4df+0x1*0x1651):'';return _0x233514[_0x4bd3fc(0xdd)]===0x15ca+0x1*0x12f6+-0x28c0?[]:[{'value':_0x233514,'label':_0x233514,'description':typeof _0x3ead12?.[_0x4bd3fc(0x10c)]===_0x4bd3fc(0xe6)?compactRunnerText(_0x3ead12[_0x4bd3fc(0x10c)],0x2412+0x1b94+-0x3bbe):null}];}),_0x462f84=_0x31d3fd[_0x3f1ac9(0xde)]===!![];return[{'id':_0x3f1ac9(0xeb)+(_0x5dc184+(-0x7f*-0x34+0x1*0x1a5e+0x1163*-0x3)),'prompt':compactRunnerText(_0x31d3fd[_0x3f1ac9(0xf3)],0xb*-0x194+-0x2*0x10e6+0x46b0),'input':_0x2beb80[_0x3f1ac9(0xdd)]===0x20a5+0x1619+-0x36be?_0x3f1ac9(0xdf):_0x462f84?_0x3f1ac9(0xfe):_0x3f1ac9(0xe7),'options':_0x2beb80,'allowOther':!![],'multiSelect':_0x462f84}];});}export function openCodePatchToolPayload(){const _0x3d4acb=_0x2990;return{'namespace':_0x3d4acb(0x10a),'toolName':_0x3d4acb(0xc3),'title':_0x3d4acb(0xc3),'inputSummary':null,'outputSummary':_0x3d4acb(0x113),'outputSummaryCode':_0x3d4acb(0xb9),'progressLabel':null,'errorCode':null,'truncated':![]};}function _0x2990(_0x21ad1d,_0x2ad055){_0x21ad1d=_0x21ad1d-(-0x1*-0x182f+-0x1*-0x1367+-0x2ae6);const _0x47426c=_0x4101();let _0x37cca7=_0x47426c[_0x21ad1d];if(_0x2990['rNsjeR']===undefined){var _0x165b6b=function(_0x28caa7){const _0x4b265a='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4757a2='',_0x307ddd='';for(let _0x21b88f=0x22e5+0x1*0xa21+-0x2d06,_0x41549e,_0x2245f2,_0x2b9357=0x1a*0xb3+-0x1*-0x1843+0x5*-0x87d;_0x2245f2=_0x28caa7['charAt'](_0x2b9357++);~_0x2245f2&&(_0x41549e=_0x21b88f%(0xcd1+-0x1*0x1985+0xcb8)?_0x41549e*(-0x289*0x1+0xb7c*0x2+-0x142f)+_0x2245f2:_0x2245f2,_0x21b88f++%(0x1241+-0x961+-0x8dc))?_0x4757a2+=String['fromCharCode'](0x182*-0x2+-0x1822+0x1c25&_0x41549e>>(-(-0xc2+-0x1dcf+0x1e93*0x1)*_0x21b88f&-0x570*-0x5+0x73b*-0x1+-0x13ef)):-0x1*0x1f7b+0x14e8+0xa93){_0x2245f2=_0x4b265a['indexOf'](_0x2245f2);}for(let _0x4ae081=0x7d7+0x1e7f+-0x2656,_0xbe8e51=_0x4757a2['length'];_0x4ae081<_0xbe8e51;_0x4ae081++){_0x307ddd+='%'+('00'+_0x4757a2['charCodeAt'](_0x4ae081)['toString'](-0x1f*-0x3d+-0x227e+0x217*0xd))['slice'](-(0x1*0x1bbe+0xb29+0xcf7*-0x3));}return decodeURIComponent(_0x307ddd);};_0x2990['yuRtPs']=_0x165b6b,_0x2990['gBrYdf']={},_0x2990['rNsjeR']=!![];}const _0x1e408a=_0x47426c[-0x1*0x197f+-0x397+-0x1*-0x1d16];_0x2990['FhRksT']!==_0x1e408a&&(_0x2990['gBrYdf']={},_0x2990['FhRksT']=_0x1e408a);const _0x2b8e27=_0x2990['gBrYdf'][_0x21ad1d];return _0x2b8e27===undefined?(_0x37cca7=_0x2990['yuRtPs'](_0x37cca7),_0x2990['gBrYdf'][_0x21ad1d]=_0x37cca7):_0x37cca7=_0x2b8e27,_0x37cca7;}function item(_0x1c23d2,_0x493ac7,_0x42611e,_0x1f904b,_0x48ea80,_0x111b9b,_0xc21628,_0x11a3a0,_0x3c00d1){const _0x4478b4=_0x2990;return{'id':boundedConversationItemId(_0x1c23d2['id']+_0x4478b4(0xc9)+_0x493ac7,_0x42611e),'sessionId':_0x1c23d2['id'],'turnId':_0x1c23d2['id']+_0x4478b4(0xc9)+_0x493ac7,'runId':null,'parentItemId':null,'sourceSequence':_0x3c00d1,'revision':0x1,'kind':_0x1f904b,'status':_0x48ea80,'payload':_0x111b9b,'startedAt':_0xc21628,'completedAt':_0x11a3a0};}function pageEnd(_0x3a42ea,_0x4a1b0e,_0x37906b){const _0x2641bf=_0x2990;if(_0x3a42ea===undefined)return _0x37906b;try{const _0x3c247f=record(JSON[_0x2641bf(0xbe)](Buffer[_0x2641bf(0xfa)](_0x3a42ea,_0x2641bf(0xbc))[_0x2641bf(0x110)](_0x2641bf(0xc8))));return _0x3c247f?.[_0x2641bf(0xcf)]===_0x4a1b0e&&Number[_0x2641bf(0xee)](_0x3c247f[_0x2641bf(0xba)])?Math[_0x2641bf(0xf8)](Math[_0x2641bf(0x104)](Number(_0x3c247f[_0x2641bf(0xba)]),0x1*0x481+-0x3*-0x832+-0x1*0x1d17),_0x37906b):_0x37906b;}catch{return _0x37906b;}}function record(_0x5086f9){const _0x53ff2d=_0x2990;return typeof _0x5086f9===_0x53ff2d(0x106)&&_0x5086f9!==null&&!Array[_0x53ff2d(0xe1)](_0x5086f9)?_0x5086f9:undefined;}function array(_0x420ba7){const _0x3e73a3=_0x2990;return Array[_0x3e73a3(0xe1)](_0x420ba7)?_0x420ba7:[];}function number(_0x204c36){const _0x52fc3a=_0x2990;return typeof _0x204c36===_0x52fc3a(0xb2)&&Number[_0x52fc3a(0xe9)](_0x204c36)?_0x204c36:null;}