openpond 0.2.54 → 0.2.55

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 (254) hide show
  1. package/dist/app-server.d.ts +1513 -99
  2. package/dist/app-server.js +1 -1
  3. package/dist/chunks/actions-command-WTFZA7LF.js +2 -0
  4. package/dist/chunks/{app-layer-I7MZYVLL.js → app-layer-Y2UERCPY.js} +1 -1
  5. package/dist/chunks/app-server-runtime-2RM3N4I6.js +2 -0
  6. package/dist/chunks/apps-KDNWYO3G.js +2 -0
  7. package/dist/chunks/chunk-2DFR7PJ4.js +2460 -0
  8. package/dist/chunks/chunk-4CRM2ADK.js +2 -0
  9. package/dist/chunks/{chunk-7ZG3IT7C.js → chunk-4WEUCGJ3.js} +6 -6
  10. package/dist/chunks/chunk-55G6B54U.js +6 -0
  11. package/dist/chunks/chunk-73G5UYBB.js +12 -0
  12. package/dist/chunks/{chunk-DALJMSJG.js → chunk-ARQEJOEK.js} +24 -24
  13. package/dist/chunks/chunk-B7QDZPNX.js +2 -0
  14. package/dist/chunks/chunk-BFKYRQMA.js +2 -0
  15. package/dist/chunks/{chunk-AH22RHPS.js → chunk-BQAF5P7K.js} +2 -2
  16. package/dist/chunks/{chunk-YJ4PNAST.js → chunk-BTI4N7YO.js} +1 -1
  17. package/dist/chunks/chunk-C6D4WAYN.js +6 -0
  18. package/dist/chunks/chunk-CGBI2VYJ.js +2 -0
  19. package/dist/chunks/chunk-DLVPSCTB.js +2 -0
  20. package/dist/chunks/{chunk-UJ5EFSEC.js → chunk-G6JMQGX7.js} +1 -1
  21. package/dist/chunks/chunk-GGIG3XU7.js +3 -0
  22. package/dist/chunks/chunk-IODUCRBA.js +58 -0
  23. package/dist/chunks/chunk-JIMU3KDA.js +24 -0
  24. package/dist/chunks/chunk-JUJSA7KI.js +22 -0
  25. package/dist/chunks/chunk-K5SBVO3B.js +195 -0
  26. package/dist/chunks/chunk-KD3QVRIJ.js +21 -0
  27. package/dist/chunks/chunk-KGNCKIFP.js +3 -0
  28. package/dist/chunks/chunk-L4235TRQ.js +140 -0
  29. package/dist/chunks/{chunk-N5QNXMIS.js → chunk-MH3LHSGX.js} +1 -1
  30. package/dist/chunks/chunk-MVF3F5QS.js +2 -0
  31. package/dist/chunks/{chunk-N3DEA6PG.js → chunk-NNIRIUSY.js} +1 -1
  32. package/dist/chunks/{chunk-WITSXYEW.js → chunk-NOTXPD2T.js} +1 -1
  33. package/dist/chunks/{chunk-T5LE6R5S.js → chunk-OSIO7PLX.js} +1 -1
  34. package/dist/chunks/chunk-OULAKUIN.js +2 -0
  35. package/dist/chunks/chunk-OWNLDB2O.js +2 -0
  36. package/dist/chunks/{chunk-NAZ26IZL.js → chunk-Q7AXHFZV.js} +1 -1
  37. package/dist/chunks/chunk-QDHMP5FS.js +2 -0
  38. package/dist/chunks/chunk-QKD5OMDI.js +2 -0
  39. package/dist/chunks/{chunk-YD55Z5H3.js → chunk-QRAKXZOC.js} +10 -10
  40. package/dist/chunks/{chunk-JDLAHVAJ.js → chunk-R27YGT77.js} +1 -1
  41. package/dist/chunks/chunk-R2BSIRYL.js +3 -0
  42. package/dist/chunks/chunk-SHQOIROR.js +42 -0
  43. package/dist/chunks/chunk-STDMBJOQ.js +9 -0
  44. package/dist/chunks/chunk-T4QGDQHP.js +4 -0
  45. package/dist/chunks/{chunk-R3XFY7VL.js → chunk-TERVLCRG.js} +1 -1
  46. package/dist/chunks/{chunk-PA7XP42P.js → chunk-U2YMBCX7.js} +1 -1
  47. package/dist/chunks/{chunk-GXSTZBM6.js → chunk-UA5DA5I2.js} +1 -1
  48. package/dist/chunks/chunk-VJEZPDBS.js +5 -0
  49. package/dist/chunks/chunk-WDFLCNRC.js +8 -0
  50. package/dist/chunks/chunk-WZYRAR7X.js +16 -0
  51. package/dist/chunks/chunk-YDT7L3VZ.js +24 -0
  52. package/dist/chunks/chunk-YR5ID2SS.js +2 -0
  53. package/dist/chunks/chunk-YUPBAWBJ.js +554 -0
  54. package/dist/chunks/cli-465VC2WP.js +2 -0
  55. package/dist/chunks/{configuration-command-MATM4XR5.js → configuration-command-LAAP2EXT.js} +1 -1
  56. package/dist/chunks/connected-evidence-XM626247.js +2 -0
  57. package/dist/chunks/{continual-PKK2BOTB.js → continual-TTGJ6YTR.js} +1 -1
  58. package/dist/chunks/core-commands-W7EK552V.js +2 -0
  59. package/dist/chunks/datasets-QJWYTTQL.js +2 -0
  60. package/dist/chunks/desktop-test-3B2D34NF.js +3 -0
  61. package/dist/chunks/dist-FAJX2UBW.js +2 -0
  62. package/dist/chunks/{dist-4HV2W6V4.js → dist-HUAE2KFZ.js} +1 -1
  63. package/dist/chunks/{chunk-6VF3Q6QJ.js → dist-SKYG5LZO.js} +2 -4
  64. package/dist/chunks/evaluation-coordination-2MONR4AX.js +2 -0
  65. package/dist/chunks/experiment-improvements-WVQ5FK46.js +2 -0
  66. package/dist/chunks/experiments-S5UQ32QB.js +2 -0
  67. package/dist/chunks/extension-DWMY6D2R.js +4 -0
  68. package/dist/chunks/{help-WLKSACLZ.js → help-A72QDRNG.js} +1 -1
  69. package/dist/chunks/hosted-experiment-improvement-2OWOQLHC.js +3 -0
  70. package/dist/chunks/hosted-harness-runtime-TGFMAV7W.js +2 -0
  71. package/dist/chunks/hosted-profile-candidate-WQSI6HZO.js +3 -0
  72. package/dist/chunks/hosted-profile-compiler-Z2A4TEA6.js +2 -0
  73. package/dist/chunks/hosted-profile-evaluation-control-FKGARUEE.js +2 -0
  74. package/dist/chunks/hosted-profile-evaluation-inspection-QOY2JKV4.js +3 -0
  75. package/dist/chunks/hosted-profile-evaluation-preparation-WVP6CALP.js +3 -0
  76. package/dist/chunks/human-review-TGHQKXFZ.js +2 -0
  77. package/dist/chunks/{import-V3HUGRHR.js → import-4UE5XNSG.js} +1 -1
  78. package/dist/chunks/javascript-isolate-process-source-ZPQKKLR4.js +2 -0
  79. package/dist/chunks/javascript-verifier-worker-source-F3LSGPOY.js +2 -0
  80. package/dist/chunks/learning-R2XBMMEM.js +2 -0
  81. package/dist/chunks/opchat-WULL6CUP.js +3 -0
  82. package/dist/chunks/organizations-I37HISVX.js +2 -0
  83. package/dist/chunks/profile-NOZ6TVXL.js +3 -0
  84. package/dist/chunks/project-agent-T6XKC54C.js +2 -0
  85. package/dist/chunks/sandbox-command-STB47FRY.js +2 -0
  86. package/dist/chunks/{sandbox-template-BBGGPJMI.js → sandbox-template-LKGBDVJ4.js} +1 -1
  87. package/dist/chunks/sql-execution-process-source-B4HQM6ZV.js +2 -0
  88. package/dist/chunks/src-T3KWWCAH.js +322 -0
  89. package/dist/chunks/{src-CR6UZYTX.js → src-ZWJ5IO7A.js} +1 -1
  90. package/dist/chunks/{taskset-LUG3ZU6J.js → taskset-RNYDR4GS.js} +1 -1
  91. package/dist/chunks/{teams-bot-7I4BAUVO.js → teams-bot-H7XT23XB.js} +1 -1
  92. package/dist/chunks/{training-XHE6FVII.js → training-M6FAPRSJ.js} +1 -1
  93. package/dist/cli.js +1 -1
  94. package/dist/index.js +1 -1
  95. package/dist/web/assets/App-CLFfy_Av.js +154 -0
  96. package/dist/web/assets/App-CTlAPuCY.css +1 -0
  97. package/dist/web/assets/{AppDialog-BdusXgU0.js → AppDialog-CPHTPqrx.js} +1 -1
  98. package/dist/web/assets/{AppTerminalPanel-C4uRpnBz.js → AppTerminalPanel-BVj5Tj93.js} +2 -2
  99. package/dist/web/assets/AppsView-O69zEBY3.js +1 -0
  100. package/dist/web/assets/{BrowserSidebar-Bl7V6YO2.js → BrowserSidebar-Pr_Kpe8p.js} +1 -1
  101. package/dist/web/assets/{CartesianChart-BstFbsdn.js → CartesianChart-JPqo6YOf.js} +1 -1
  102. package/dist/web/assets/{CollaborationTabs-B8YAf0c1.js → CollaborationTabs-CAJcQFn2.js} +1 -1
  103. package/dist/web/assets/{CommandMenu-DZct7zUJ.js → CommandMenu-B-w53n9A.js} +1 -1
  104. package/dist/web/assets/{CommunityView-CR0-W-uG.js → CommunityView-DbZKK8_P.js} +1 -1
  105. package/dist/web/assets/{ComposerCreateImproveStrip-DR-Qo7b4.js → ComposerCreateImproveStrip-3_083PF4.js} +1 -1
  106. package/dist/web/assets/{GetStartedView-xqQoMMei.js → GetStartedView-D7JGm_6c.js} +1 -1
  107. package/dist/web/assets/HostedModelLearningReview-DwgMfZ7_.js +1 -0
  108. package/dist/web/assets/{HostedModelLearningSettings-De3i9wF4.js → HostedModelLearningSettings-JRfQadRl.js} +1 -1
  109. package/dist/web/assets/{LabModelVersionDetailPage-DAY1MmqP.js → LabModelVersionDetailPage-BUYflJY_.js} +1 -1
  110. package/dist/web/assets/{LabSkillSidebar-DLnIgnry.js → LabSkillSidebar-BBiqk7Rf.js} +1 -1
  111. package/dist/web/assets/LabsRoute-Ci6vUnSd.js +99 -0
  112. package/dist/web/assets/MainChatThread-BQK3oI2N.js +2 -0
  113. package/dist/web/assets/MainPane-D3ojiN-p.js +18 -0
  114. package/dist/web/assets/{MarkdownText-gJMuefaJ.js → MarkdownText-DOdOVFXL.js} +25 -25
  115. package/dist/web/assets/{NativeSkillSidebar-Dlxb8iOC.js → NativeSkillSidebar-CRI_ri8z.js} +1 -1
  116. package/dist/web/assets/{NewExperienceSwitcher-DM-cqJ-K.js → NewExperienceSwitcher-DhYtfE68.js} +1 -1
  117. package/dist/web/assets/{NewProjectDialog-Cu1q75gq.js → NewProjectDialog-D8sy1gOz.js} +1 -1
  118. package/dist/web/assets/{OutputsPage-DiXMkasl.js → OutputsPage-CbWgrhXA.js} +1 -1
  119. package/dist/web/assets/{ProjectsPage-DqiBHiCB.js → ProjectsPage-DLB67lyA.js} +1 -1
  120. package/dist/web/assets/RightChatPanelStack-ozSKnDyX.js +1 -0
  121. package/dist/web/assets/{RightSidebarHomePanel-CeSFJM5s.js → RightSidebarHomePanel-CKs3OwhD.js} +1 -1
  122. package/dist/web/assets/ScheduledWorkPage-Cafv_QnR.js +1 -0
  123. package/dist/web/assets/SettingsView-T1vYDPjh.js +5 -0
  124. package/dist/web/assets/{TeamChatView-DM0adMtj.js → TeamChatView-vIrmXOY_.js} +2 -2
  125. package/dist/web/assets/{TerminalOverlay-CFlH51DD.js → TerminalOverlay-CAmF__Dq.js} +1 -1
  126. package/dist/web/assets/{TrainingCreationPanel-CgIBVGha.js → TrainingCreationPanel-D75K0yk5.js} +1 -1
  127. package/dist/web/assets/{TrainingDraftPanel-Bbo3RRie.js → TrainingDraftPanel-D7XZePAk.js} +1 -1
  128. package/dist/web/assets/{UsageSettingsSection-CSRjJUSa.js → UsageSettingsSection-CYTmp7PG.js} +1 -1
  129. package/dist/web/assets/WorkSidebarPanel-CODMjVHY.js +1 -0
  130. package/dist/web/assets/WorkspaceDiffPanel-DQGoIjH9.js +14 -0
  131. package/dist/web/assets/WorkspaceEnvironmentMenu-c1pHDskn.js +63 -0
  132. package/dist/web/assets/{WorkspaceGitDialogs-Dgmg-6XG.js → WorkspaceGitDialogs-DrVtapQQ.js} +1 -1
  133. package/dist/web/assets/{WorkspaceMonacoEditor-BR4qxMgU.js → WorkspaceMonacoEditor-BCKzvSj2.js} +3 -3
  134. package/dist/web/assets/arrow-up-right-CP4hZdrJ.js +1 -0
  135. package/dist/web/assets/chunk-NOJECMB7-Bhcms-w5.js +1 -0
  136. package/dist/web/assets/{clipboard-BZzZ82Bk.js → clipboard-BgrXorn-.js} +1 -1
  137. package/dist/web/assets/{cloud-upload-CJPYPVl8.js → cloud-upload-B_zYztb6.js} +1 -1
  138. package/dist/web/assets/{cssMode-WC4Rg1l-.js → cssMode-DanjGgA8.js} +1 -1
  139. package/dist/web/assets/{folder-open-sLZJxLQy.js → folder-open-CdVKbtGq.js} +1 -1
  140. package/dist/web/assets/folder-plus-Cc5KElB6.js +1 -0
  141. package/dist/web/assets/{git-commit-horizontal-Cotm7KEC.js → git-commit-horizontal-CjGIIgRi.js} +1 -1
  142. package/dist/web/assets/{htmlMode-C6oZGeaB.js → htmlMode-DRGDF_UL.js} +1 -1
  143. package/dist/web/assets/index-B5re-RJy.css +1 -0
  144. package/dist/web/assets/{index-BxWTVKtn.js → index-BE-wXZ5R.js} +2 -2
  145. package/dist/web/assets/info-BLj0RvhA.js +1 -0
  146. package/dist/web/assets/{jsonMode-BET4LQIn.js → jsonMode-CCu0j2GD.js} +1 -1
  147. package/dist/web/assets/{lspLanguageFeatures-BPxA_-Kg.js → lspLanguageFeatures-s_Lhm7P6.js} +1 -1
  148. package/dist/web/assets/minimize-2-Cyg_zD9z.js +1 -0
  149. package/dist/web/assets/{monaco.contribution-DXzyQfVi.js → monaco.contribution-CAzXvYkn.js} +2 -2
  150. package/dist/web/assets/{monaco.contribution-DFzEyaHi.js → monaco.contribution-CY7mRgOB.js} +2 -2
  151. package/dist/web/assets/{monaco.contribution-7AUuf2NS.js → monaco.contribution-aUeLcBEg.js} +2 -2
  152. package/dist/web/assets/{monaco.contribution-BH6kkO4b.js → monaco.contribution-mUPNK9ra.js} +2 -2
  153. package/dist/web/assets/monitor-DZvOs_wC.js +1 -0
  154. package/dist/web/assets/play-BJPzemuY.js +1 -0
  155. package/dist/web/assets/{python-PzBkTjWx.js → python-B_qnnVaG.js} +1 -1
  156. package/dist/web/assets/{save-DpezrtH2.js → save-BDy9tA3E.js} +1 -1
  157. package/dist/web/assets/square-Cb2c5td4.js +1 -0
  158. package/dist/web/assets/{toggleHighContrast-Cto-fOXm.js → toggleHighContrast-MhO1JLyR.js} +1 -1
  159. package/dist/web/assets/{tsMode-BYA4LNc6.js → tsMode-DfBXJb9V.js} +1 -1
  160. package/dist/web/assets/{upload-C5YFNgtS.js → upload-D56kThRh.js} +1 -1
  161. package/dist/web/assets/{useLocalAgentSchedules-CnyTsqlf.js → useLocalAgentSchedules-DMnGfswi.js} +1 -1
  162. package/dist/web/assets/useProviderSettings-Bv5B9eNk.js +5 -0
  163. package/dist/web/assets/{useSessionTurnCache-DICuJSJW.js → useSessionTurnCache-ClAY8gze.js} +1 -1
  164. package/dist/web/assets/{wifi-off-nzHj7JXp.js → wifi-off-C9lWJmVm.js} +1 -1
  165. package/dist/web/assets/{workers-Dboaw6f_.js → workers-BYzrH8by.js} +1 -1
  166. package/dist/web/assets/{yaml-uuY5JmO8.js → yaml-D3T8UkT3.js} +1 -1
  167. package/dist/web/index.html +2 -2
  168. package/package.json +3 -3
  169. package/dist/chunks/actions-command-DSO6YOEE.js +0 -2
  170. package/dist/chunks/app-server-runtime-7AXV6JZI.js +0 -2
  171. package/dist/chunks/apps-TM74FFQB.js +0 -2
  172. package/dist/chunks/chunk-2JO2KWT3.js +0 -5
  173. package/dist/chunks/chunk-2SPZYBDN.js +0 -16
  174. package/dist/chunks/chunk-37DXASQL.js +0 -191
  175. package/dist/chunks/chunk-4EEH7MEC.js +0 -2
  176. package/dist/chunks/chunk-4SHKI3BH.js +0 -2
  177. package/dist/chunks/chunk-4TZHH5FC.js +0 -2409
  178. package/dist/chunks/chunk-5TNDPNS3.js +0 -2
  179. package/dist/chunks/chunk-6JAN4RMN.js +0 -42
  180. package/dist/chunks/chunk-7QEE4PBI.js +0 -8
  181. package/dist/chunks/chunk-BX4J2VDU.js +0 -2
  182. package/dist/chunks/chunk-EMKZVP7Z.js +0 -2
  183. package/dist/chunks/chunk-FPUUZQUP.js +0 -6
  184. package/dist/chunks/chunk-GCOUYYHG.js +0 -5
  185. package/dist/chunks/chunk-GS2NKNKG.js +0 -4
  186. package/dist/chunks/chunk-H2VT22JK.js +0 -2
  187. package/dist/chunks/chunk-HA7EFTPF.js +0 -23
  188. package/dist/chunks/chunk-IKWDL3RB.js +0 -17
  189. package/dist/chunks/chunk-L3KS6MOV.js +0 -2
  190. package/dist/chunks/chunk-NHFGEVVH.js +0 -518
  191. package/dist/chunks/chunk-NNF6KCHD.js +0 -3
  192. package/dist/chunks/chunk-PJM2G7SG.js +0 -21
  193. package/dist/chunks/chunk-PQHTZ5CP.js +0 -2
  194. package/dist/chunks/chunk-PYABBF53.js +0 -53
  195. package/dist/chunks/chunk-QRWPEW3Z.js +0 -24
  196. package/dist/chunks/chunk-QXVIIM4T.js +0 -2
  197. package/dist/chunks/chunk-SDEDAHV6.js +0 -160
  198. package/dist/chunks/chunk-TGIB24K4.js +0 -22
  199. package/dist/chunks/chunk-UE3DMPGM.js +0 -3
  200. package/dist/chunks/chunk-USKE34VR.js +0 -9
  201. package/dist/chunks/chunk-WV2APYWG.js +0 -2
  202. package/dist/chunks/chunk-XM26DGML.js +0 -3
  203. package/dist/chunks/chunk-YIB3J4RC.js +0 -2
  204. package/dist/chunks/chunk-YL6VFJ4P.js +0 -2
  205. package/dist/chunks/chunk-Z3D4C7BG.js +0 -12
  206. package/dist/chunks/cli-JVB345H2.js +0 -2
  207. package/dist/chunks/connected-evidence-YDPGNHLP.js +0 -2
  208. package/dist/chunks/core-commands-MTV4EKXY.js +0 -2
  209. package/dist/chunks/datasets-CP3IT47T.js +0 -2
  210. package/dist/chunks/desktop-test-IAZC5MAH.js +0 -3
  211. package/dist/chunks/dist-SAABJU5F.js +0 -2
  212. package/dist/chunks/evaluation-coordination-EPHLZXYM.js +0 -2
  213. package/dist/chunks/experiment-improvements-6JTOPA74.js +0 -2
  214. package/dist/chunks/experiments-XHPFGECH.js +0 -2
  215. package/dist/chunks/extension-GX7DLW2X.js +0 -4
  216. package/dist/chunks/hosted-experiment-improvement-HAB3UE6A.js +0 -3
  217. package/dist/chunks/hosted-harness-runtime-YM23QNDK.js +0 -2
  218. package/dist/chunks/hosted-profile-candidate-EOBGKQAS.js +0 -3
  219. package/dist/chunks/hosted-profile-compiler-SCVJI2CP.js +0 -2
  220. package/dist/chunks/hosted-profile-evaluation-control-RJ6XJZCS.js +0 -2
  221. package/dist/chunks/hosted-profile-evaluation-inspection-OC4XNGL2.js +0 -3
  222. package/dist/chunks/hosted-profile-evaluation-preparation-ZD4FM3FD.js +0 -3
  223. package/dist/chunks/human-review-AAVMISBF.js +0 -2
  224. package/dist/chunks/learning-FNBEIAY6.js +0 -2
  225. package/dist/chunks/opchat-QK43DXTY.js +0 -3
  226. package/dist/chunks/organizations-SRPAWKC7.js +0 -2
  227. package/dist/chunks/profile-C6CQNVYE.js +0 -3
  228. package/dist/chunks/project-agent-GZV5HNYI.js +0 -2
  229. package/dist/chunks/sandbox-command-4TJXQTKT.js +0 -2
  230. package/dist/chunks/src-NE6R4XC6.js +0 -329
  231. package/dist/web/assets/App-CO2F717V.css +0 -1
  232. package/dist/web/assets/App-CuhaCsfb.js +0 -235
  233. package/dist/web/assets/AppsView-BS1czXUP.js +0 -1
  234. package/dist/web/assets/HostedModelLearningReview-CHxxf_Lu.js +0 -1
  235. package/dist/web/assets/LabsRoute-CXJRJMhr.js +0 -99
  236. package/dist/web/assets/MainChatThread-BwAla81W.js +0 -2
  237. package/dist/web/assets/MainPane-CakOBCHw.js +0 -19
  238. package/dist/web/assets/RightChatPanelStack-VaOOmxwd.js +0 -1
  239. package/dist/web/assets/ScheduledWorkPage-D1jRQxFs.js +0 -1
  240. package/dist/web/assets/SettingsView-RA9OXgcu.js +0 -5
  241. package/dist/web/assets/WorkSidebarPanel-DwlEMEoG.js +0 -1
  242. package/dist/web/assets/WorkspaceDiffPanel-pGVezNMw.js +0 -14
  243. package/dist/web/assets/WorkspaceEnvironmentMenu-Byjngd9V.js +0 -32
  244. package/dist/web/assets/arrow-up-right-H0pvnH2s.js +0 -1
  245. package/dist/web/assets/chunk-UHVJOMWN-BqXRe639.js +0 -1
  246. package/dist/web/assets/folder-plus-C84wrpt_.js +0 -1
  247. package/dist/web/assets/index-dSmk3FLJ.css +0 -1
  248. package/dist/web/assets/info-Dc81lEfw.js +0 -1
  249. package/dist/web/assets/minimize-2-Bs7MVN3C.js +0 -1
  250. package/dist/web/assets/monitor-DXL019Wf.js +0 -1
  251. package/dist/web/assets/play-CXkxUZeU.js +0 -1
  252. package/dist/web/assets/square-oy7f5Ce6.js +0 -1
  253. package/dist/web/assets/useProviderSettings-B_KeQjE5.js +0 -5
  254. /package/dist/chunks/{chunk-OGPHXXCD.js → chunk-BT5YNE5U.js} +0 -0
@@ -1,235 +0,0 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/TerminalOverlay-CFlH51DD.js","assets/index-BxWTVKtn.js","assets/index-dSmk3FLJ.css","assets/TerminalOverlay-DwBiZLwk.css","assets/CommandMenu-DZct7zUJ.js","assets/CommandMenu-Cb3vNGJr.css","assets/SettingsView-RA9OXgcu.js","assets/useProviderSettings-B_KeQjE5.js","assets/save-DpezrtH2.js","assets/MarkdownText-gJMuefaJ.js","assets/useProviderSettings-Bw-csWbH.css","assets/folder-open-sLZJxLQy.js","assets/play-CXkxUZeU.js","assets/wifi-off-nzHj7JXp.js","assets/cloud-upload-CJPYPVl8.js","assets/git-commit-horizontal-Cotm7KEC.js","assets/useLocalAgentSchedules-CnyTsqlf.js","assets/folder-plus-C84wrpt_.js","assets/AppDialog-BdusXgU0.js","assets/WorkspaceDiffPanel-pGVezNMw.js","assets/training-model-data-CKOkpBBL.js","assets/info-Dc81lEfw.js","assets/minimize-2-Bs7MVN3C.js","assets/clipboard-BZzZ82Bk.js","assets/SettingsView-BnANbPLS.css","assets/git-dialogs-C-F47S10.css","assets/NewProjectDialog-Cu1q75gq.js","assets/monitor-DXL019Wf.js","assets/WorkspaceGitDialogs-Dgmg-6XG.js","assets/upload-C5YFNgtS.js","assets/WorkspaceEnvironmentMenu-Byjngd9V.js","assets/square-oy7f5Ce6.js","assets/WorkspaceEnvironmentMenu-DGIFdG3o.css","assets/MainPane-CakOBCHw.js","assets/arrow-up-right-H0pvnH2s.js","assets/MainPane-DOWsSew1.css"])))=>i.map(i=>d[i]);
2
- import{r as y,j as S,a as VT,g as s1,_ as Zo}from"./index-BxWTVKtn.js";const l1=y.createContext(void 0),c1=e=>{const t=y.useContext(l1);if(!t)throw new Error("No QueryClient set, use QueryClientProvider to set one");return t},KT=({client:e,children:t})=>(y.useEffect(()=>(e.mount(),()=>{e.unmount()}),[e]),S.jsx(l1.Provider,{value:e,children:t})),WT={setTimeout:(e,t)=>setTimeout(e,t),clearTimeout:e=>clearTimeout(e),setInterval:(e,t)=>setInterval(e,t),clearInterval:e=>clearInterval(e)};var GT=class{#e=WT;#t=!1;setTimeoutProvider(e){this.#e=e}setTimeout(e,t){return this.#e.setTimeout(e,t)}clearTimeout(e){this.#e.clearTimeout(e)}setInterval(e,t){return this.#e.setInterval(e,t)}clearInterval(e){this.#e.clearInterval(e)}};const br=new GT;function JT(e){setTimeout(e,0)}const ZT=typeof window>"u"||"Deno"in globalThis;function ha(){}function YT(e,t){return typeof e=="function"?e(t):e}function d1(e){return typeof e=="number"&&e>=0&&e!==1/0}function u1(e,t){return Math.max(e+(t||0)-Date.now(),0)}function fn(e,t){return typeof e=="function"?e(t):e}function Zy(e,t){const{type:n="all",exact:a,fetchStatus:o,predicate:r,queryKey:s,stale:c}=e;if(s){if(a){if(t.queryHash!==mv(s,t.options))return!1}else if(!Fs(t.queryKey,s))return!1}if(n!=="all"){const m=t.isActive();if(n==="active"&&!m||n==="inactive"&&m)return!1}return!(typeof c=="boolean"&&t.isStale()!==c||o&&o!==t.state.fetchStatus||r&&!r(t))}function Yy(e,t){const{exact:n,status:a,predicate:o,mutationKey:r}=e;if(r){if(!t.options.mutationKey)return!1;if(n){if(bc(t.options.mutationKey)!==bc(r))return!1}else if(!Fs(t.options.mutationKey,r))return!1}return!(a&&t.state.status!==a||o&&!o(t))}function mv(e,t){return(t?.queryKeyHashFn||bc)(e)}function bc(e){return JSON.stringify(e,(t,n)=>ng(n)?Object.keys(n).sort().reduce((a,o)=>(a[o]=n[o],a),{}):n)}function Fs(e,t){if(e===t)return!0;if(typeof e!=typeof t)return!1;if(e&&t&&typeof e=="object"&&typeof t=="object"){if(Array.isArray(e)&&Array.isArray(t)){for(let a=0;a<t.length;a++)if(!Fs(e[a],t[a]))return!1;return!0}const n=Object.keys(t);for(const a of n)if(!Fs(e[a],t[a]))return!1;return!0}return!1}const QT=Object.prototype.hasOwnProperty;function m1(e,t,n=0){if(e===t)return e;if(n>500)return t;const a=Qy(e)&&Qy(t);if(!a&&!(ng(e)&&ng(t)))return t;const o=(a?e:Object.keys(e)).length,r=a?t:Object.keys(t),s=r.length,c=a?new Array(s):{};let m=0;for(let u=0;u<s;u++){const f=a?u:r[u],h=e[f],x=t[f];if(h===x){c[f]=h,(a?u<o:QT.call(e,f))&&m++;continue}if(h===null||x===null||typeof h!="object"||typeof x!="object"){c[f]=x;continue}const k=m1(h,x,n+1);c[f]=k,k===h&&m++}return o===s&&m===o?e:c}function Ef(e,t){if(!t||Object.keys(e).length!==Object.keys(t).length)return!1;for(const n in e)if(e[n]!==t[n])return!1;return!0}function Qy(e){return Array.isArray(e)&&e.length===Object.keys(e).length}function ng(e){if(!Xy(e))return!1;const t=e.constructor;if(t===void 0)return!0;const n=t.prototype;return!(!Xy(n)||!n.hasOwnProperty("isPrototypeOf")||Object.getPrototypeOf(e)!==Object.prototype)}function Xy(e){return Object.prototype.toString.call(e)==="[object Object]"}function XT(e){return new Promise(t=>{br.setTimeout(t,e)})}function ag(e,t,n){return typeof n.structuralSharing=="function"?n.structuralSharing(e,t):n.structuralSharing!==!1?m1(e,t):t}function eE(e,t,n=0){const a=[...e,t];return n&&a.length>n?a.slice(1):a}function tE(e,t,n=0){const a=[t,...e];return n&&a.length>n?a.slice(0,-1):a}const pv=Symbol();function p1(e,t){return!e.queryFn&&t?.initialPromise?()=>t.initialPromise:!e.queryFn||e.queryFn===pv?()=>Promise.reject(new Error(`Missing queryFn: '${e.queryHash}'`)):e.queryFn}function f1(e,t){return typeof e=="function"?e(...t):!!e}function nE(e,t,n){let a=!1,o;return Object.defineProperty(e,"signal",{enumerable:!0,get:()=>(o??=t(),a||(a=!0,o.aborted?n():o.addEventListener("abort",n,{once:!0})),o)}),e}let aE=()=>ZT;const fv=()=>aE();var Vc=class{constructor(){this.listeners=new Set,this.subscribe=this.subscribe.bind(this)}subscribe(e){return this.listeners.add(e),this.onSubscribe(),()=>{this.listeners.delete(e),this.onUnsubscribe()}}hasListeners(){return this.listeners.size>0}onSubscribe(){}onUnsubscribe(){}},iE=class extends Vc{#e;#t;#n;constructor(){super(),this.#n=e=>{if(typeof window<"u"&&window.addEventListener){const t=()=>e();return window.addEventListener("visibilitychange",t,!1),()=>{window.removeEventListener("visibilitychange",t)}}}}onSubscribe(){this.#t||this.setEventListener(this.#n)}onUnsubscribe(){this.hasListeners()||(this.#t?.(),this.#t=void 0)}setEventListener(e){this.#n=e,this.#t?.(),this.#t=e(t=>{typeof t=="boolean"?this.setFocused(t):this.onFocus()})}setFocused(e){this.#e!==e&&(this.#e=e,this.onFocus())}onFocus(){const e=this.isFocused();this.listeners.forEach(t=>{t(e)})}isFocused(){return typeof this.#e=="boolean"?this.#e:globalThis.document?.visibilityState!=="hidden"}};const hv=new iE,oE=JT;function rE(){let e=[],t=0,n=c=>{c()},a=c=>{c()},o=oE;const r=c=>{t?e.push(c):o(()=>{n(c)})},s=()=>{const c=e;e=[],c.length&&o(()=>{a(()=>{c.forEach(m=>{n(m)})})})};return{batch:c=>{let m;t++;try{m=c()}finally{t--,t||s()}return m},batchCalls:c=>(...m)=>{r(()=>{c(...m)})},schedule:r,setNotifyFunction:c=>{n=c},setBatchNotifyFunction:c=>{a=c},setScheduler:c=>{o=c}}}const Vn=rE();var sE=class extends Vc{#e=!0;#t;#n;constructor(){super(),this.#n=e=>{if(typeof window<"u"&&window.addEventListener){const t=()=>e(!0),n=()=>e(!1);return window.addEventListener("online",t,!1),window.addEventListener("offline",n,!1),()=>{window.removeEventListener("online",t),window.removeEventListener("offline",n)}}}}onSubscribe(){this.#t||this.setEventListener(this.#n)}onUnsubscribe(){this.hasListeners()||(this.#t?.(),this.#t=void 0)}setEventListener(e){this.#n=e,this.#t?.(),this.#t=e(this.setOnline.bind(this))}setOnline(e){this.#e!==e&&(this.#e=e,this.listeners.forEach(t=>{t(e)}))}isOnline(){return this.#e}};const Bu=new sE;function lE(e){return Math.min(1e3*2**e,3e4)}function h1(e){return(e??"online")==="online"?Bu.isOnline():!0}var ig=class extends Error{constructor(e){super("CancelledError"),this.revert=e?.revert,this.silent=e?.silent}};function g1(e){let t=!1,n=0,a,o="pending",r,s;const c=new Promise(($,j)=>{r=$,s=j});c.catch(ha);const m=()=>o!=="pending",u=$=>{if(!m()){const j=new ig($);P(j),e.onCancel?.(j)}},f=()=>{t=!0},h=()=>{t=!1},x=()=>hv.isFocused()&&(e.networkMode==="always"||Bu.isOnline())&&e.canRun(),k=()=>h1(e.networkMode)&&e.canRun(),_=$=>{m()||(a?.(),o="resolved",r($))},P=$=>{m()||(a?.(),o="rejected",s($))},E=()=>new Promise($=>{a=j=>{(m()||x())&&$(j)},e.onPause?.()}).then(()=>{a=void 0,m()||e.onContinue?.()}),A=()=>{if(m())return;let $;const j=n===0?e.initialPromise:void 0;try{$=j??e.fn()}catch(M){$=Promise.reject(M)}Promise.resolve($).then(_).catch(M=>{if(m())return;const w=e.retry??(fv()?0:3),R=e.retryDelay??lE,O=typeof R=="function"?R(n,M):R,N=w===!0||typeof w=="number"&&n<w||typeof w=="function"&&w(n,M);if(t||!N){P(M);return}n++,e.onFail?.(n,M),XT(O).then(()=>x()?void 0:E()).then(()=>{t?P(M):A()})})};return{promise:c,status:()=>o,cancel:u,continue:()=>(a?.(),c),cancelRetry:f,continueRetry:h,canStart:k,start:()=>(k()?A():E().then(A),c)}}var v1=class{#e;destroy(){this.clearGcTimeout()}scheduleGc(){this.clearGcTimeout(),d1(this.gcTime)&&(this.#e=br.setTimeout(()=>{this.optionalRemove()},this.gcTime))}updateGcTime(e){this.gcTime=Math.max(this.gcTime||0,e??(fv()?1/0:3e5))}clearGcTimeout(){this.#e!==void 0&&(br.clearTimeout(this.#e),this.#e=void 0)}};function cE(e){return{onFetch:(t,n)=>{const a=t.options,o=t.fetchOptions?.meta?.fetchMore?.direction,r=t.state.data?.pages||[],s=t.state.data?.pageParams||[];let c={pages:[],pageParams:[]},m=0;const u=async()=>{let f=!1;const h=_=>{nE(_,()=>t.signal,()=>f=!0)},x=p1(t.options,t.fetchOptions),k=async(_,P,E)=>{if(f)return Promise.reject(t.signal.reason);if(P==null&&_.pages.length)return Promise.resolve(_);const $=(()=>{const R={client:t.client,queryKey:t.queryKey,pageParam:P,direction:E?"backward":"forward",meta:t.options.meta};return h(R),R})(),j=await x($),{maxPages:M}=t.options,w=E?tE:eE;return{pages:w(_.pages,j,M),pageParams:w(_.pageParams,P,M)}};if(o&&r.length){const _=o==="backward",P=_?b1:og,E={pages:r,pageParams:s};c=await k(E,P(a,E),_)}else{const _=e??r.length;do{const P=m===0?s[0]??a.initialPageParam:og(a,c);if(m>0&&P==null)break;c=await k(c,P),m++}while(m<_)}return c};t.options.persister?t.fetchFn=()=>t.options.persister?.(u,{client:t.client,queryKey:t.queryKey,meta:t.options.meta,signal:t.signal},n):t.fetchFn=u}}}function og(e,{pages:t,pageParams:n}){const a=t.length-1;return t.length>0?e.getNextPageParam(t[a],t,n[a],n):void 0}function b1(e,{pages:t,pageParams:n}){return t.length>0?e.getPreviousPageParam?.(t[0],t,n[0],n):void 0}function $ae(e,t){return t?og(e,t)!=null:!1}function Nae(e,t){return!t||!e.getPreviousPageParam?!1:b1(e,t)!=null}var dE=class extends v1{#e;#t;#n;#a;#o;#i;#r;#l;constructor(e){super(),this.#l=!1,this.#r=e.defaultOptions,this.setOptions(e.options),this.observers=[],this.#o=e.client,this.#a=this.#o.getQueryCache(),this.queryKey=e.queryKey,this.queryHash=e.queryHash,this.#t=t0(this.options),this.state=e.state??this.#t,this.scheduleGc()}get meta(){return this.options.meta}get queryType(){return this.#e}get promise(){return this.#i?.promise}setOptions(e){if(this.options={...this.#r,...e},e?._type&&(this.#e=e._type),this.updateGcTime(this.options.gcTime),this.state&&this.state.data===void 0){const t=t0(this.options);t.data!==void 0&&(this.setState(e0(t.data,t.dataUpdatedAt)),this.#t=t)}}optionalRemove(){!this.observers.length&&this.state.fetchStatus==="idle"&&this.#a.remove(this)}setData(e,t){const n=ag(this.state.data,e,this.options);return this.#s({data:n,type:"success",dataUpdatedAt:t?.updatedAt,manual:t?.manual}),n}setState(e){this.#s({type:"setState",state:e})}cancel(e){const t=this.#i?.promise;return this.#i?.cancel(e),t?t.then(ha).catch(ha):Promise.resolve()}destroy(){super.destroy(),this.cancel({silent:!0})}get resetState(){return this.#t}reset(){this.destroy(),this.setState(this.resetState)}isActive(){return this.observers.some(e=>fn(e.options.enabled,this)!==!1)}isDisabled(){return this.getObserversCount()>0?!this.isActive():this.options.queryFn===pv||!this.isFetched()}isFetched(){return this.state.dataUpdateCount+this.state.errorUpdateCount>0}isStatic(){return this.getObserversCount()>0?this.observers.some(e=>fn(e.options.staleTime,this)==="static"):!1}isStale(){return this.getObserversCount()>0?this.observers.some(e=>e.getCurrentResult().isStale):this.state.data===void 0||this.state.isInvalidated}isStaleByTime(e=0){return this.state.data===void 0?!0:e==="static"?!1:this.state.isInvalidated?!0:!u1(this.state.dataUpdatedAt,e)}onFocus(){this.observers.find(e=>e.shouldFetchOnWindowFocus())?.refetch({cancelRefetch:!1}),this.#i?.continue()}onOnline(){this.observers.find(e=>e.shouldFetchOnReconnect())?.refetch({cancelRefetch:!1}),this.#i?.continue()}addObserver(e){this.observers.includes(e)||(this.observers.push(e),this.clearGcTimeout(),this.#a.notify({type:"observerAdded",query:this,observer:e}))}removeObserver(e){const t=this.observers.indexOf(e);t!==-1&&(this.observers.splice(t,1),this.observers.length||(this.#i&&(this.#l||this.state.fetchStatus==="paused"&&this.state.status==="pending"?this.#i.cancel({revert:!0}):this.#i.cancelRetry()),this.scheduleGc()),this.#a.notify({type:"observerRemoved",query:this,observer:e}))}getObserversCount(){return this.observers.length}invalidate(){this.state.isInvalidated||this.#s({type:"invalidate"})}async fetch(e,t){if(this.state.fetchStatus!=="idle"&&this.#i?.status()!=="rejected"){if(this.state.data!==void 0&&t?.cancelRefetch)this.cancel({silent:!0});else if(this.#i)return this.#i.continueRetry(),this.#i.promise}if(e&&this.setOptions(e),!this.options.queryFn){const m=this.observers.find(u=>u.options.queryFn);m&&this.setOptions(m.options)}const n=new AbortController,a=m=>{Object.defineProperty(m,"signal",{enumerable:!0,get:()=>(this.#l=!0,n.signal)})},o=()=>{const m=p1(this.options,t),f=(()=>{const h={client:this.#o,queryKey:this.queryKey,meta:this.meta};return a(h),h})();return this.#l=!1,this.options.persister?this.options.persister(m,f,this):m(f)},s=(()=>{const m={fetchOptions:t,options:this.options,queryKey:this.queryKey,client:this.#o,state:this.state,fetchFn:o};return a(m),m})();(this.#e==="infinite"?cE(this.options.pages):this.options.behavior)?.onFetch(s,this),this.#n=this.state,(this.state.fetchStatus==="idle"||this.state.fetchMeta!==s.fetchOptions?.meta)&&this.#s({type:"fetch",meta:s.fetchOptions?.meta});const c=this.#i=g1({initialPromise:t?.initialPromise,fn:s.fetchFn,onCancel:m=>{m instanceof ig&&m.revert&&this.setState({...this.#n,fetchStatus:"idle"}),n.abort()},onFail:(m,u)=>{this.#s({type:"failed",failureCount:m,error:u})},onPause:()=>{this.#s({type:"pause"})},onContinue:()=>{this.#s({type:"continue"})},retry:s.options.retry,retryDelay:s.options.retryDelay,networkMode:s.options.networkMode,canRun:()=>!0});try{const m=await c.start();if(m===void 0)throw new Error(`${this.queryHash} data is undefined`);return this.setData(m),this.#a.config.onSuccess?.(m,this),this.#a.config.onSettled?.(m,this.state.error,this),m}catch(m){if(m instanceof ig){if(m.silent)return this.#i.promise;if(m.revert){if(this.state.data===void 0)throw m;return this.state.data}}throw this.#s({type:"error",error:m}),this.#a.config.onError?.(m,this),this.#a.config.onSettled?.(this.state.data,m,this),m}finally{this.#i===c&&(this.#i=void 0),this.scheduleGc()}}#s(e){const t=n=>{switch(e.type){case"failed":return{...n,fetchFailureCount:e.failureCount,fetchFailureReason:e.error};case"pause":return{...n,fetchStatus:"paused"};case"continue":return{...n,fetchStatus:"fetching"};case"fetch":return{...n,...y1(n.data,this.options),fetchMeta:e.meta??null};case"success":const a={...n,...e0(e.data,e.dataUpdatedAt),dataUpdateCount:n.dataUpdateCount+1,...!e.manual&&{fetchStatus:"idle",fetchFailureCount:0,fetchFailureReason:null}};return this.#n=e.manual?a:void 0,a;case"error":const o=e.error;return{...n,error:o,errorUpdateCount:n.errorUpdateCount+1,errorUpdatedAt:Date.now(),fetchFailureCount:n.fetchFailureCount+1,fetchFailureReason:o,fetchStatus:"idle",status:"error",isInvalidated:!0};case"invalidate":return{...n,isInvalidated:!0};case"setState":return{...n,...e.state}}};this.state=t(this.state),Vn.batch(()=>{this.observers.slice().forEach(n=>{n.onQueryUpdate()}),this.#a.notify({query:this,type:"updated",action:e})})}};function y1(e,t){return{fetchFailureCount:0,fetchFailureReason:null,fetchStatus:h1(t.networkMode)?"fetching":"paused",...e===void 0&&{error:null,status:"pending"}}}function e0(e,t){return{data:e,dataUpdatedAt:t??Date.now(),error:null,isInvalidated:!1,status:"success"}}function t0(e){const t=typeof e.initialData=="function"?e.initialData():e.initialData,n=t!==void 0,a=n?typeof e.initialDataUpdatedAt=="function"?e.initialDataUpdatedAt():e.initialDataUpdatedAt:0;return{data:t,dataUpdateCount:0,dataUpdatedAt:n?a??Date.now():0,error:null,errorUpdateCount:0,errorUpdatedAt:0,fetchFailureCount:0,fetchFailureReason:null,fetchMeta:null,isInvalidated:!1,status:n?"success":"pending",fetchStatus:"idle"}}var uE=class extends Vc{#e;#t=void 0;#n=void 0;#a=void 0;#o;#i;#r;#l;#s;#p;#d;#u;#c;#f=new Set;constructor(e,t){super(),this.options=t,this.#e=e,this.#r=null,this.bindMethods(),this.setOptions(t)}bindMethods(){this.refetch=this.refetch.bind(this)}onSubscribe(){this.listeners.size===1&&(this.#t.addObserver(this),n0(this.#t,this.options)?this.#m():this.updateResult(),this.#y())}onUnsubscribe(){this.hasListeners()||this.destroy()}shouldFetchOnReconnect(){return rg(this.#t,this.options,this.options.refetchOnReconnect)}shouldFetchOnWindowFocus(){return rg(this.#t,this.options,this.options.refetchOnWindowFocus)}destroy(){this.listeners=new Set,this.#S(),this.#x(),this.#t.removeObserver(this)}setOptions(e){const t=this.options,n=this.#t;if(this.options=this.#e.defaultQueryOptions(e),this.options.enabled!==void 0&&typeof this.options.enabled!="boolean"&&typeof this.options.enabled!="function"&&typeof fn(this.options.enabled,this.#t)!="boolean")throw new Error("Expected enabled to be a boolean or a callback that returns a boolean");this.#k(),this.#t.setOptions(this.options),t._defaulted&&!Ef(this.options,t)&&this.#e.getQueryCache().notify({type:"observerOptionsUpdated",query:this.#t,observer:this});const a=this.hasListeners();a&&a0(this.#t,n,this.options,t)&&this.#m(),this.updateResult(),a&&(this.#t!==n||fn(this.options.enabled,this.#t)!==fn(t.enabled,this.#t)||fn(this.options.staleTime,this.#t)!==fn(t.staleTime,this.#t))&&this.#g();const o=this.#v();a&&(this.#t!==n||fn(this.options.enabled,this.#t)!==fn(t.enabled,this.#t)||o!==this.#c)&&this.#b(o)}getOptimisticResult(e){const t=this.#e.getQueryCache().build(this.#e,e),n=this.createResult(t,e);return Ef(this.getCurrentResult(),n)||(this.#a=n,this.#i=this.options,this.#o=this.#t.state),n}getCurrentResult(){return this.#a}trackResult(e,t){return new Proxy(e,{get:(n,a)=>(this.trackProp(a),t?.(a),Reflect.get(n,a))})}trackProp(e){this.#f.add(e)}getCurrentQuery(){return this.#t}refetch({...e}={}){return this.fetch({...e})}fetchOptimistic(e){const t=this.#e.defaultQueryOptions(e),n=this.#e.getQueryCache().build(this.#e,t);let a=()=>{},o;const r=new Promise(s=>{o=s,a=this.#e.getQueryCache().subscribe(c=>{c.type==="updated"&&c.query.queryHash===n.queryHash&&n.state.data!==void 0&&(a(),s(this.createResult(n,t)))})});return Promise.race([n.fetch().then(()=>{const s=this.createResult(n,t);return o?.(s),s}).finally(()=>{a()}),r])}fetch(e){return this.#m({...e,cancelRefetch:e.cancelRefetch??!0}).then(()=>(this.updateResult(),this.#a))}#m(e){this.#k();let t=this.#t.fetch(this.options,e);return e?.throwOnError||(t=t.catch(ha)),t}#h(e){return!fv()&&fn(this.options.enabled,this.#t)!==!1&&d1(e)}#g(){this.#S();const e=fn(this.options.staleTime,this.#t);if(this.#a.isStale||!this.#h(e))return;const t=u1(this.#a.dataUpdatedAt,e)+1;this.#d=br.setTimeout(()=>{this.#a.isStale||this.updateResult()},t)}#v(){return(typeof this.options.refetchInterval=="function"?this.options.refetchInterval(this.#t):this.options.refetchInterval)??!1}#b(e){this.#x(),this.#c=e,!(this.#c===0||!this.#h(this.#c))&&(this.#u=br.setInterval(()=>{(this.options.refetchIntervalInBackground||hv.isFocused())&&this.#m()},this.#c))}#y(){this.#g(),this.#b(this.#v())}#S(){this.#d!==void 0&&(br.clearTimeout(this.#d),this.#d=void 0)}#x(){this.#u!==void 0&&(br.clearInterval(this.#u),this.#u=void 0)}createResult(e,t){const n=this.#t,a=this.options,o=this.#a,r=this.#o,s=this.#i,c=e!==n?e.state:this.#n,{state:m}=e;let u={...m},f=!1,h;if(t._optimisticResults){const w=this.hasListeners(),R=!w&&n0(e,t),O=w&&a0(e,n,t,a);(R||O)&&(u={...u,...y1(m.data,e.options)}),t._optimisticResults==="isRestoring"&&(u.fetchStatus="idle")}let{error:x,errorUpdatedAt:k,status:_}=u;h=u.data;let P=!1;if(t.placeholderData!==void 0&&h===void 0&&_==="pending"){let w;o?.isPlaceholderData&&t.placeholderData===s?.placeholderData?(w=o.data,P=!0):w=typeof t.placeholderData=="function"?t.placeholderData(this.#p?.state.data,this.#p):t.placeholderData,w!==void 0&&(_="success",h=ag(o?.data,w,t),f=!0)}if(t.select&&h!==void 0&&!P)if(o&&h===r?.data&&t.select===this.#l)h=this.#s;else try{this.#l=t.select,h=t.select(h),h=ag(o?.data,h,t),this.#s=h,this.#r=null}catch(w){this.#r=w}else h===void 0&&(this.#r=null);this.#r&&(x=this.#r,h=this.#s,k=Date.now(),_="error",f=!1);const E=u.fetchStatus==="fetching",A=_==="pending",$=_==="error",j=A&&E,M=h!==void 0;return{status:_,fetchStatus:u.fetchStatus,isPending:A,isSuccess:_==="success",isError:$,isInitialLoading:j,isLoading:j,data:h,dataUpdatedAt:u.dataUpdatedAt,error:x,errorUpdatedAt:k,failureCount:u.fetchFailureCount,failureReason:u.fetchFailureReason,errorUpdateCount:u.errorUpdateCount,isFetched:e.isFetched(),isFetchedAfterMount:u.dataUpdateCount>c.dataUpdateCount||u.errorUpdateCount>c.errorUpdateCount,isFetching:E,isRefetching:E&&!A,isLoadingError:$&&!M,isPaused:u.fetchStatus==="paused",isPlaceholderData:f,isRefetchError:$&&M,isStale:gv(e,t),refetch:this.refetch,isEnabled:fn(t.enabled,e)!==!1}}updateResult(){const e=this.#a,t=this.createResult(this.#t,this.options);if(this.#o=this.#t.state,this.#i=this.options,this.#o.data!==void 0&&(this.#p=this.#t),Ef(t,e))return;this.#a=t;const a=(()=>{if(!e)return!0;const{notifyOnChangeProps:o}=this.options,r=typeof o=="function"?o():o;if(r==="all"||!r&&!this.#f.size)return!0;const s=new Set(r??this.#f);return this.options.throwOnError&&s.add("error"),Object.keys(this.#a).some(c=>{const m=c;return this.#a[m]!==e[m]&&s.has(m)})})();Vn.batch(()=>{a&&this.listeners.forEach(o=>{o(this.#a)}),this.#e.getQueryCache().notify({query:this.#t,type:"observerResultsUpdated"})})}#k(){const e=this.#e.getQueryCache().build(this.#e,this.options);if(e===this.#t)return;const t=this.#t;this.#t=e,this.#n=e.state,this.hasListeners()&&(t?.removeObserver(this),e.addObserver(this))}onQueryUpdate(){this.updateResult(),this.hasListeners()&&this.#y()}};function mE(e,t){return fn(t.enabled,e)!==!1&&e.state.data===void 0&&!(e.state.status==="error"&&fn(t.retryOnMount,e)===!1)}function n0(e,t){return mE(e,t)||e.state.data!==void 0&&rg(e,t,t.refetchOnMount)}function rg(e,t,n){if(fn(t.enabled,e)!==!1&&fn(t.staleTime,e)!=="static"){const a=typeof n=="function"?n(e):n;return a==="always"||a!==!1&&gv(e,t)}return!1}function a0(e,t,n,a){return(e!==t||fn(a.enabled,e)===!1)&&(!n.suspense||e.state.status!=="error")&&gv(e,n)}function gv(e,t){return fn(t.enabled,e)!==!1&&e.isStaleByTime(fn(t.staleTime,e))}var pE=class extends v1{#e;#t;#n;#a;constructor(t){super(),this.#e=t.client,this.mutationId=t.mutationId,this.#n=t.mutationCache,this.#t=[],this.state=t.state||fE(),this.setOptions(t.options),this.scheduleGc()}setOptions(t){this.options=t,this.updateGcTime(this.options.gcTime)}get meta(){return this.options.meta}addObserver(t){this.#t.includes(t)||(this.#t.push(t),this.clearGcTimeout(),this.#n.notify({type:"observerAdded",mutation:this,observer:t}))}removeObserver(t){this.#t=this.#t.filter(n=>n!==t),this.scheduleGc(),this.#n.notify({type:"observerRemoved",mutation:this,observer:t})}optionalRemove(){this.#t.length||(this.state.status==="pending"?this.scheduleGc():this.#n.remove(this))}continue(){return this.#a?.continue()??(this.state.status==="pending"?this.execute(this.state.variables):Promise.resolve())}async execute(t){const n=()=>{this.#o({type:"continue"})},a={client:this.#e,meta:this.options.meta,mutationKey:this.options.mutationKey},o=this.#a=g1({fn:()=>this.options.mutationFn?this.options.mutationFn(t,a):Promise.reject(new Error("No mutationFn found")),onFail:(c,m)=>{this.#o({type:"failed",failureCount:c,error:m})},onPause:()=>{this.#o({type:"pause"})},onContinue:n,retry:this.options.retry??0,retryDelay:this.options.retryDelay,networkMode:this.options.networkMode,canRun:()=>this.#n.canRun(this)}),r=this.state.status==="pending",s=!o.canStart();try{if(r)n();else{this.#o({type:"pending",variables:t,isPaused:s}),this.#n.config.onMutate&&await this.#n.config.onMutate(t,this,a);const m=await this.options.onMutate?.(t,a);m!==this.state.context&&this.#o({type:"pending",context:m,variables:t,isPaused:s})}const c=await o.start();return await this.#n.config.onSuccess?.(c,t,this.state.context,this,a),await this.options.onSuccess?.(c,t,this.state.context,a),await this.#n.config.onSettled?.(c,null,this.state.variables,this.state.context,this,a),await this.options.onSettled?.(c,null,t,this.state.context,a),this.#o({type:"success",data:c}),c}catch(c){try{await this.#n.config.onError?.(c,t,this.state.context,this,a)}catch(m){Promise.reject(m)}try{await this.options.onError?.(c,t,this.state.context,a)}catch(m){Promise.reject(m)}try{await this.#n.config.onSettled?.(void 0,c,this.state.variables,this.state.context,this,a)}catch(m){Promise.reject(m)}try{await this.options.onSettled?.(void 0,c,t,this.state.context,a)}catch(m){Promise.reject(m)}throw this.#o({type:"error",error:c}),c}finally{this.#a===o&&(this.#a=void 0),this.#n.runNext(this)}}#o(t){const n=a=>{switch(t.type){case"failed":return{...a,failureCount:t.failureCount,failureReason:t.error};case"pause":return{...a,isPaused:!0};case"continue":return{...a,isPaused:!1};case"pending":return{...a,context:t.context,data:void 0,failureCount:0,failureReason:null,error:null,isPaused:t.isPaused,status:"pending",variables:t.variables,submittedAt:Date.now()};case"success":return{...a,data:t.data,failureCount:0,failureReason:null,error:null,status:"success",isPaused:!1};case"error":return{...a,data:void 0,error:t.error,failureCount:a.failureCount+1,failureReason:t.error,isPaused:!1,status:"error"}}};this.state=n(this.state),Vn.batch(()=>{this.#t.forEach(a=>{a.onMutationUpdate(t)}),this.#n.notify({mutation:this,type:"updated",action:t})})}};function fE(){return{context:void 0,data:void 0,error:null,failureCount:0,failureReason:null,isPaused:!1,status:"idle",variables:void 0,submittedAt:0}}var hE=class extends Vc{#e;#t;#n;constructor(e={}){super(),this.config=e,this.#e=new Set,this.#t=new Map,this.#n=0}build(e,t,n){const a=new pE({client:e,mutationCache:this,mutationId:++this.#n,options:e.defaultMutationOptions(t),state:n});return this.add(a),a}add(e){this.#e.add(e);const t=Fd(e);if(typeof t=="string"){const n=this.#t.get(t);n?n.push(e):this.#t.set(t,[e])}this.notify({type:"added",mutation:e})}remove(e){if(this.#e.delete(e)){const t=Fd(e);if(typeof t=="string"){const n=this.#t.get(t);if(n)if(n.length>1){const a=n.indexOf(e);a!==-1&&n.splice(a,1)}else n[0]===e&&this.#t.delete(t)}}this.notify({type:"removed",mutation:e})}canRun(e){const t=Fd(e);if(typeof t=="string"){const n=this.#t.get(t)?.find(a=>a.state.status==="pending");return!n||n===e}else return!0}runNext(e){const t=Fd(e);return typeof t=="string"?this.#t.get(t)?.find(n=>n!==e&&n.state.isPaused)?.continue()??Promise.resolve():Promise.resolve()}clear(){Vn.batch(()=>{this.#e.forEach(e=>{this.notify({type:"removed",mutation:e})}),this.#e.clear(),this.#t.clear()})}getAll(){return Array.from(this.#e)}find(e){const t={exact:!0,...e};return this.getAll().find(n=>Yy(t,n))}findAll(e={}){return this.getAll().filter(t=>Yy(e,t))}notify(e){Vn.batch(()=>{this.listeners.forEach(t=>{t(e)})})}resumePausedMutations(){const e=this.getAll().filter(t=>t.state.isPaused);return Vn.batch(()=>Promise.all(e.map(t=>t.continue().catch(ha))))}};function Fd(e){return e.options.scope?.id}var gE=class extends Vc{#e;constructor(e={}){super(),this.config=e,this.#e=new Map}build(e,t,n){const a=t.queryKey,o=t.queryHash??mv(a,t);let r=this.get(o);return r||(r=new dE({client:e,queryKey:a,queryHash:o,options:e.defaultQueryOptions(t),state:n,defaultOptions:e.getQueryDefaults(a)}),this.add(r)),r}add(e){this.#e.has(e.queryHash)||(this.#e.set(e.queryHash,e),this.notify({type:"added",query:e}))}remove(e){const t=this.#e.get(e.queryHash);t&&(e.destroy(),t===e&&this.#e.delete(e.queryHash),this.notify({type:"removed",query:e}))}clear(){Vn.batch(()=>{this.getAll().forEach(e=>{this.remove(e)})})}get(e){return this.#e.get(e)}getAll(){return[...this.#e.values()]}find(e){const t={exact:!0,...e};return this.getAll().find(n=>Zy(t,n))}findAll(e={}){const t=this.getAll();return Object.keys(e).length>0?t.filter(n=>Zy(e,n)):t}notify(e){Vn.batch(()=>{this.listeners.forEach(t=>{t(e)})})}onFocus(){Vn.batch(()=>{this.getAll().forEach(e=>{e.onFocus()})})}onOnline(){Vn.batch(()=>{this.getAll().forEach(e=>{e.onOnline()})})}},vE=class{#e;#t;#n;#a;#o;#i;#r;#l;constructor(e={}){this.#e=e.queryCache||new gE,this.#t=e.mutationCache||new hE,this.#n=e.defaultOptions||{},this.#a=new Map,this.#o=new Map,this.#i=0}mount(){this.#i++,this.#i===1&&(this.#r=hv.subscribe(async e=>{e&&(await this.resumePausedMutations(),this.#e.onFocus())}),this.#l=Bu.subscribe(async e=>{e&&(await this.resumePausedMutations(),this.#e.onOnline())}))}unmount(){this.#i--,this.#i===0&&(this.#r?.(),this.#r=void 0,this.#l?.(),this.#l=void 0)}isFetching(e){return this.#e.findAll({...e,fetchStatus:"fetching"}).length}isMutating(e){return this.#t.findAll({...e,status:"pending"}).length}getQueryData(e){const t=this.defaultQueryOptions({queryKey:e});return this.#e.get(t.queryHash)?.state.data}ensureQueryData(e){const t=this.defaultQueryOptions(e),n=this.#e.build(this,t),a=n.state.data;return a===void 0?this.fetchQuery(e):(e.revalidateIfStale&&n.isStaleByTime(fn(t.staleTime,n))&&this.prefetchQuery(t),Promise.resolve(a))}getQueriesData(e){return this.#e.findAll(e).map(({queryKey:t,state:n})=>[t,n.data])}setQueryData(e,t,n){const a=this.defaultQueryOptions({queryKey:e}),o=this.#e.get(a.queryHash)?.state.data,r=YT(t,o);if(r!==void 0)return this.#e.build(this,a).setData(r,{...n,manual:!0})}setQueriesData(e,t,n){return Vn.batch(()=>this.#e.findAll(e).map(({queryKey:a})=>[a,this.setQueryData(a,t,n)]))}getQueryState(e){const t=this.defaultQueryOptions({queryKey:e});return this.#e.get(t.queryHash)?.state}removeQueries(e){const t=this.#e;Vn.batch(()=>{t.findAll(e).forEach(n=>{t.remove(n)})})}resetQueries(e,t){const n=this.#e;return Vn.batch(()=>{const a=n.findAll(e),o=new Set(a);return a.forEach(r=>{r.reset()}),this.refetchQueries({type:"active",predicate:r=>o.has(r)},t)})}cancelQueries(e,t={}){const n={revert:!0,...t},a=Vn.batch(()=>this.#e.findAll(e).map(o=>o.cancel(n)));return Promise.all(a).then(ha).catch(ha)}invalidateQueries(e,t={}){return Vn.batch(()=>(this.#e.findAll(e).forEach(n=>{n.invalidate()}),e?.refetchType==="none"?Promise.resolve():this.refetchQueries({...e,type:e?.refetchType??e?.type??"active"},t)))}refetchQueries(e,t={}){const n={...t,cancelRefetch:t.cancelRefetch??!0},a=Vn.batch(()=>this.#e.findAll(e).filter(o=>!o.isDisabled()&&!o.isStatic()).map(o=>{let r=o.fetch(void 0,n);return n.throwOnError||(r=r.catch(ha)),o.state.fetchStatus==="paused"?Promise.resolve():r}));return Promise.all(a).then(ha)}async query(e){const t=this.defaultQueryOptions(e);t.retry===void 0&&(t.retry=!1);const n=this.#e.build(this,t),a=n.isStaleByTime(fn(t.staleTime,n))?await n.fetch(t):n.state.data,o=t.select;return o?o(a):a}fetchQuery(e){const t=this.defaultQueryOptions(e);t.retry===void 0&&(t.retry=!1);const n=this.#e.build(this,t);return n.isStaleByTime(fn(t.staleTime,n))?n.fetch(t):Promise.resolve(n.state.data)}prefetchQuery(e){return this.fetchQuery(e).then(ha).catch(ha)}infiniteQuery(e){return e._type="infinite",this.query(e)}fetchInfiniteQuery(e){return e._type="infinite",this.fetchQuery(e)}prefetchInfiniteQuery(e){return this.fetchInfiniteQuery(e).then(ha).catch(ha)}ensureInfiniteQueryData(e){return e._type="infinite",this.ensureQueryData(e)}resumePausedMutations(){return Bu.isOnline()?this.#t.resumePausedMutations():Promise.resolve()}getQueryCache(){return this.#e}getMutationCache(){return this.#t}getDefaultOptions(){return this.#n}setDefaultOptions(e){this.#n=e}setQueryDefaults(e,t){this.#a.set(bc(e),{queryKey:e,defaultOptions:t})}getQueryDefaults(e){const t=[...this.#a.values()],n={};return t.forEach(a=>{Fs(e,a.queryKey)&&Object.assign(n,a.defaultOptions)}),n}setMutationDefaults(e,t){this.#o.set(bc(e),{mutationKey:e,defaultOptions:t})}getMutationDefaults(e){const t=[...this.#o.values()],n={};return t.forEach(a=>{Fs(e,a.mutationKey)&&Object.assign(n,a.defaultOptions)}),n}defaultQueryOptions(e){if(e._defaulted)return e;const t={...this.#n.queries,...this.getQueryDefaults(e.queryKey),...e,_defaulted:!0};return t.queryHash||(t.queryHash=mv(t.queryKey,t)),t.refetchOnReconnect===void 0&&(t.refetchOnReconnect=t.networkMode!=="always"),t.throwOnError===void 0&&(t.throwOnError=!!t.suspense),!t.networkMode&&t.persister&&(t.networkMode="offlineFirst"),t.queryFn===pv&&(t.enabled=!1),t}defaultMutationOptions(e){return e?._defaulted?e:{...this.#n.mutations,...e?.mutationKey&&this.getMutationDefaults(e.mutationKey),...e,_defaulted:!0}}clear(){this.#e.clear(),this.#t.clear()}};const S1=y.createContext(!1),bE=()=>y.useContext(S1);S1.Provider;function yE(){let e=!1;return{clearReset:()=>{e=!1},reset:()=>{e=!0},isReset:()=>e}}const SE=y.createContext(yE()),xE=()=>y.useContext(SE),kE=(e,t,n)=>{const a=n?.state.error&&typeof e.throwOnError=="function"?f1(e.throwOnError,[n.state.error,n]):e.throwOnError;(e.suspense||a)&&(t.isReset()||(e.retryOnMount=!1))},wE=e=>{y.useEffect(()=>{e.clearReset()},[e])},IE=({result:e,errorResetBoundary:t,throwOnError:n,query:a,suspense:o})=>e.isError&&!t.isReset()&&!e.isFetching&&a&&(o&&e.data===void 0||f1(n,[e.error,a])),_E=e=>{if(e.suspense){const n=o=>o==="static"?o:Math.max(o??1e3,1e3),a=e.staleTime;e.staleTime=typeof a=="function"?(...o)=>n(a(...o)):n(a),typeof e.gcTime=="number"&&(e.gcTime=Math.max(e.gcTime,1e3))}},CE=(e,t)=>e?.suspense&&t.isPending,RE=(e,t,n)=>t.fetchOptimistic(e).catch(()=>{n.clearReset()});function PE(e,t,n){const a=bE(),o=xE(),r=c1(),s=r.defaultQueryOptions(e),c=r.getQueryCache().get(s.queryHash),m=e.subscribed!==!1;s._optimisticResults=a?"isRestoring":m?"optimistic":void 0,_E(s),kE(s,o,c),wE(o);const[u]=y.useState(()=>new t(r,s)),f=u.getOptimisticResult(s),h=!a&&m;if(y.useSyncExternalStore(y.useCallback(x=>{const k=h?u.subscribe(Vn.batchCalls(x)):ha;return u.updateResult(),k},[u,h]),()=>u.getCurrentResult(),()=>u.getCurrentResult()),y.useEffect(()=>{u.setOptions(s)},[s,u]),CE(s,f))throw RE(s,u,o);if(IE({result:f,errorResetBoundary:o,throwOnError:s.throwOnError,query:c,suspense:s.suspense}))throw f.error;return s.notifyOnChangeProps?f:u.trackResult(f)}function x1(e,t){return PE(e,uE)}function AE(){return new vE({defaultOptions:{queries:{staleTime:6e4,gcTime:15*6e4,retry:1,refetchOnWindowFocus:!1}}})}const TE=new Set(["turn.started","turn.completed","turn.failed","turn.interrupted","approval.requested","approval.resolved","task.input","task.wait"]);function EE(e){const t={};for(const n of e)n.sessionId&&TE.has(n.name)&&(Date.parse(n.timestamp)>Date.parse(t[n.sessionId]??"")||!t[n.sessionId]&&Number.isFinite(Date.parse(n.timestamp)))&&(t[n.sessionId]=n.timestamp);return t}function jE(e,t,n){return[...new Map(e.map(a=>[a.id,a])).values()].sort((a,o)=>Number(n.has(o.id))-Number(n.has(a.id))||Fu(o,t)-Fu(a,t)||a.id.localeCompare(o.id))}function Fu(e,t){const n=typeof e.metadata?.sidebarActivityAt=="string"?e.metadata.sidebarActivityAt:null;return Math.max(Date.parse(t[e.id]??"")||0,Date.parse(n??e.createdAt)||0)}function ME(e,t,n,a=new Date){const o=c=>`${c.getFullYear()}-${c.getMonth()}-${c.getDate()}`,r=new Date(a);r.setDate(a.getDate()-1);const s=[];for(const c of e){const m=new Date(Fu(c,t)),u=n.has(c.id),f=u?"running":o(m);let h=s.at(-1);h?.key!==f&&(h={key:f,label:u||f===o(a)?null:f===o(r)?"Yesterday":m.toLocaleDateString(void 0,{month:"short",day:"numeric",...m.getFullYear()!==a.getFullYear()?{year:"numeric"}:{}}),sessions:[]},s.push(h)),h.sessions.push(c)}return s}function OE(e,t,n){const a=new Headers;a.set("Accept","text/event-stream"),a.set("Authorization",`Bearer ${e.token}`);const o=new URL(`${e.serverUrl.replace(/\/$/,"")}/v1/events`);return n!==void 0&&Number.isSafeInteger(n)&&n>0&&o.searchParams.set("afterSequence",String(n)),{url:o.toString(),init:{headers:a,signal:t}}}function $E(e){return Math.min(500*2**Math.max(0,e),1e4)}async function NE(e,t,n,a){k1(e);const o=e.body.getReader(),r=new TextDecoder;let s="";for(;!a?.aborted;){const{done:c,value:m}=await o.read();if(c){s+=r.decode();break}s+=r.decode(m,{stream:!0});let u=s.indexOf(`
3
-
4
- `);for(;u>=0;){const f=s.slice(0,u);s=s.slice(u+2),o0(f,t,n),u=s.indexOf(`
5
-
6
- `)}}!a?.aborted&&s.trim()&&o0(s,t,n)}function k1(e){if(!e.ok)throw new Error(`event stream failed: ${e.status} ${e.statusText||"HTTP error"}`);if(!e.body)throw new Error("event stream did not return a response body")}function DE(e,t,n,a,o={}){const r=new AbortController,s=o.fetchImpl??fetch,c=o.reconnectDelayMs??$E;let m=i0(o.afterSequence),u=!1;return(async()=>{let f=0;for(;!r.signal.aborted;)try{const h=OE(e,r.signal,m),x=await s(h.url,h.init);if(k1(x),u=!0,f=0,await NE(x,k=>{const _=i0(k.sequence);_>0&&_<=m||(_>0&&(m=_),t(k))},a,r.signal),u=!1,r.signal.aborted)break;throw new Error("event stream ended")}catch(h){if(u=!1,r.signal.aborted)break;n(h),await HE(c(f),r.signal),f+=1}})().catch(()=>{}),{close(){r.abort()},isOpen(){return u}}}function i0(e){return typeof e=="number"&&Number.isSafeInteger(e)&&e>0?e:0}function o0(e,t,n){let a="message";const o=[];for(const r of e.split(`
7
- `))r.startsWith(":")||(r.startsWith("event: ")&&(a=r.slice(7).trim()),r.startsWith("data: ")&&o.push(r.slice(6)));if(a==="ready"){n?.();return}if(!(a!=="runtime"||o.length===0))try{t(JSON.parse(o.join(`
8
- `)))}catch{}}async function HE(e,t){e<=0||t.aborted||await new Promise(n=>{const a=globalThis.setTimeout(n,e);t.addEventListener("abort",()=>{globalThis.clearTimeout(a),n()},{once:!0})})}class LE extends Error{constructor(t,n){super(t),this.status=n,this.name="ApiRequestError"}status}function r0(e={}){const t=new URLSearchParams;return e.teamId&&t.set("teamId",e.teamId),e.projectId&&t.set("projectId",e.projectId),e.agentId&&t.set("agentId",e.agentId),t}const s0=new WeakMap,l0=new WeakMap,Vd=new WeakMap;let qE=0;async function z(e,t,n){if(t==="/v1/preferences"&&typeof n?.body=="string"){const o=(Vd.get(e)??Promise.resolve()).catch(()=>{}).then(()=>c0(e,t,n));Vd.set(e,o);try{return await o}finally{Vd.get(e)===o&&Vd.delete(e)}}return c0(e,t,n)}async function c0(e,t,n){const a=++qE;if(t==="/v1/preferences"&&typeof n?.body=="string"){const m=s0.get(e);if(!m)throw new Error("Reload settings before saving so changes can be checked against the current file.");n={...n,body:JSON.stringify({expectedRevision:m,...JSON.parse(n.body)})}}const o=new Headers(n?.headers);o.set("Content-Type","application/json"),o.set("Authorization",`Bearer ${e.token}`);const r=await fetch(`${e.serverUrl}${t}`,{...n,headers:o});if(!r.ok){const m=await r.json().catch(()=>({})),u=m&&typeof m=="object"&&"error"in m?String(m.error):r.statusText;throw new LE(u,r.status)}if(r.status===204)return;const s=await r.json(),c=s?.configuration?.rawRevision??(t==="/v1/preferences"?s?.rawRevision:void 0);return typeof c=="string"&&a>=(l0.get(e)??0)&&(s0.set(e,c),l0.set(e,a)),s}function Hae(e){const t=new URL("/v1/terminal",e.serverUrl);return t.protocol=t.protocol==="https:"?"wss:":"ws:",t.toString()}function Lae(e){return["openpond-terminal",`openpond-token.${zE(e.token)}`]}function UE(e){const t=new TextEncoder().encode(e);let n="";for(let a=0;a<t.length;a+=32768){const o=t.subarray(a,a+32768);n+=String.fromCharCode(...o)}return btoa(n)}function zE(e){return UE(e).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,"")}function BE(e){const t=atob(e),n=new Uint8Array(t.length);for(let a=0;a<t.length;a+=1)n[a]=t.charCodeAt(a);return new TextDecoder().decode(n)}function FE(e,t,n){const a=y.useRef(n);a.current=n,y.useEffect(()=>{if(!e||!t)return;let o=!1,r=!1,s=null;const c=new Set,m=new Map,u=P=>`openpond:ponder-notification-delivery:${t}:${P}`;async function f(P){if(!(o||!s))try{const E=await z(e,"/v1/ponder/notifications");if(o||E.bindingId!==s||!E.items.some(A=>A.id===P)||(await z(e,`/v1/ponder/notifications/${encodeURIComponent(P)}/read`,{method:"POST",body:"{}"}),o))return;window.focus(),a.current?.()}catch{}}const h=window.openpond?.onPonderNotification?.(P=>{f(P.id)});async function x(){if(!(o||r)){r=!0;try{const[P,E]=await Promise.all([z(e,"/v1/ponder/settings"),z(e,"/v1/ponder/notifications")]);if(o||P.bindingId!==E.bindingId)return;if(s!==E.bindingId){s=E.bindingId,c.clear();try{const $=JSON.parse(localStorage.getItem(u(s))??"[]");if(Array.isArray($))for(const j of $)typeof j=="string"&&c.add(j)}catch{}}const A=new Set(E.items.filter($=>!$.readAt).map($=>$.id));for(const[$,j]of m)A.has($)||(j.close(),m.delete($));if(localStorage.getItem("openpond:ponder-notifications")!=="on"||P.settings.notifications==="off")return;for(const $ of E.items){if(o||$.readAt||c.has($.id))continue;const j={id:$.id,title:$.title.slice(0,160),body:$.body.slice(0,500),ponder:!0};let M=!1;if(window.openpond?.notify)M=await window.openpond.notify(j);else if("Notification"in window&&Notification.permission==="granted"){const w=new Notification(j.title,{body:j.body,tag:j.id});w.onclick=()=>{w.close(),f($.id)},m.set($.id,w),M=!0}if(o)return;M&&c.add($.id)}for(;c.size>500;)c.delete(c.values().next().value);try{localStorage.setItem(u(s),JSON.stringify([...c]))}catch{}}catch{}finally{r=!1}}}x();const k=window.setInterval(()=>{x()},1e4),_=()=>{x()};return window.addEventListener("ponder-settings-changed",_),()=>{o=!0,window.clearInterval(k),h?.(),window.removeEventListener("ponder-settings-changed",_);for(const P of m.values())P.close()}},[e,t])}var d0;function _e(e,t,n){function a(c,m){if(c._zod||Object.defineProperty(c,"_zod",{value:{def:m,constr:s,traits:new Set},enumerable:!1}),c._zod.traits.has(e))return;c._zod.traits.add(e),t(c,m);const u=s.prototype,f=Object.keys(u);for(let h=0;h<f.length;h++){const x=f[h];x in c||(c[x]=u[x].bind(c))}}const o=n?.Parent??Object;class r extends o{}Object.defineProperty(r,"name",{value:e});function s(c){var m;const u=n?.Parent?new r:this;a(u,c),(m=u._zod).deferred??(m.deferred=[]);for(const f of u._zod.deferred)f();return u}return Object.defineProperty(s,"init",{value:a}),Object.defineProperty(s,Symbol.hasInstance,{value:c=>n?.Parent&&c instanceof n.Parent?!0:c?._zod?.traits?.has(e)}),Object.defineProperty(s,"name",{value:e}),s}class Hs extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}}class w1 extends Error{constructor(t){super(`Encountered unidirectional transform during encode: ${t}`),this.name="ZodEncodeError"}}(d0=globalThis).__zod_globalConfig??(d0.__zod_globalConfig={});const vv=globalThis.__zod_globalConfig;function bo(e){return vv}function I1(e){const t=Object.values(e).filter(a=>typeof a=="number");return Object.entries(e).filter(([a,o])=>t.indexOf(+a)===-1).map(([a,o])=>o)}function sg(e,t){return typeof t=="bigint"?t.toString():t}function Im(e){return{get value(){{const t=e();return Object.defineProperty(this,"value",{value:t}),t}}}}function bv(e){return e==null}function yv(e){const t=e.startsWith("^")?1:0,n=e.endsWith("$")?e.length-1:e.length;return e.slice(t,n)}function VE(e,t){const n=e/t,a=Math.round(n),o=Number.EPSILON*Math.max(Math.abs(n),1);return Math.abs(n-a)<o?0:n-a}const u0=Symbol("evaluating");function Tt(e,t,n){let a;Object.defineProperty(e,t,{get(){if(a!==u0)return a===void 0&&(a=u0,a=n()),a},set(o){Object.defineProperty(e,t,{value:o})},configurable:!0})}function $r(e,t,n){Object.defineProperty(e,t,{value:n,writable:!0,enumerable:!0,configurable:!0})}function Yo(...e){const t={};for(const n of e){const a=Object.getOwnPropertyDescriptors(n);Object.assign(t,a)}return Object.defineProperties({},t)}function m0(e){return JSON.stringify(e)}function KE(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,"").replace(/[\s_-]+/g,"-").replace(/^-+|-+$/g,"")}const _1="captureStackTrace"in Error?Error.captureStackTrace:(...e)=>{};function yc(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}const WE=Im(()=>{if(vv.jitless||typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{const e=Function;return new e(""),!0}catch{return!1}});function Vs(e){if(yc(e)===!1)return!1;const t=e.constructor;if(t===void 0||typeof t!="function")return!0;const n=t.prototype;return!(yc(n)===!1||Object.prototype.hasOwnProperty.call(n,"isPrototypeOf")===!1)}function C1(e){return Vs(e)?{...e}:Array.isArray(e)?[...e]:e instanceof Map?new Map(e):e instanceof Set?new Set(e):e}const GE=new Set(["string","number","symbol"]);function Ks(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Qo(e,t,n){const a=new e._zod.constr(t??e._zod.def);return(!t||n?.parent)&&(a._zod.parent=e),a}function nt(e){const t=e;if(!t)return{};if(typeof t=="string")return{error:()=>t};if(t?.message!==void 0){if(t?.error!==void 0)throw new Error("Cannot specify both `message` and `error` params");t.error=t.message}return delete t.message,typeof t.error=="string"?{...t,error:()=>t.error}:t}function JE(e){return Object.keys(e).filter(t=>e[t]._zod.optin==="optional"&&e[t]._zod.optout==="optional")}const ZE={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]};function YE(e,t){const n=e._zod.def,a=n.checks;if(a&&a.length>0)throw new Error(".pick() cannot be used on object schemas containing refinements");const r=Yo(e._zod.def,{get shape(){const s={};for(const c in t){if(!(c in n.shape))throw new Error(`Unrecognized key: "${c}"`);t[c]&&(s[c]=n.shape[c])}return $r(this,"shape",s),s},checks:[]});return Qo(e,r)}function QE(e,t){const n=e._zod.def,a=n.checks;if(a&&a.length>0)throw new Error(".omit() cannot be used on object schemas containing refinements");const r=Yo(e._zod.def,{get shape(){const s={...e._zod.def.shape};for(const c in t){if(!(c in n.shape))throw new Error(`Unrecognized key: "${c}"`);t[c]&&delete s[c]}return $r(this,"shape",s),s},checks:[]});return Qo(e,r)}function XE(e,t){if(!Vs(t))throw new Error("Invalid input to extend: expected a plain object");const n=e._zod.def.checks;if(n&&n.length>0){const r=e._zod.def.shape;for(const s in t)if(Object.getOwnPropertyDescriptor(r,s)!==void 0)throw new Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.")}const o=Yo(e._zod.def,{get shape(){const r={...e._zod.def.shape,...t};return $r(this,"shape",r),r}});return Qo(e,o)}function ej(e,t){if(!Vs(t))throw new Error("Invalid input to safeExtend: expected a plain object");const n=Yo(e._zod.def,{get shape(){const a={...e._zod.def.shape,...t};return $r(this,"shape",a),a}});return Qo(e,n)}function tj(e,t){if(e._zod.def.checks?.length)throw new Error(".merge() cannot be used on object schemas containing refinements. Use .safeExtend() instead.");const n=Yo(e._zod.def,{get shape(){const a={...e._zod.def.shape,...t._zod.def.shape};return $r(this,"shape",a),a},get catchall(){return t._zod.def.catchall},checks:t._zod.def.checks??[]});return Qo(e,n)}function nj(e,t,n){const o=t._zod.def.checks;if(o&&o.length>0)throw new Error(".partial() cannot be used on object schemas containing refinements");const s=Yo(t._zod.def,{get shape(){const c=t._zod.def.shape,m={...c};if(n)for(const u in n){if(!(u in c))throw new Error(`Unrecognized key: "${u}"`);n[u]&&(m[u]=e?new e({type:"optional",innerType:c[u]}):c[u])}else for(const u in c)m[u]=e?new e({type:"optional",innerType:c[u]}):c[u];return $r(this,"shape",m),m},checks:[]});return Qo(t,s)}function aj(e,t,n){const a=Yo(t._zod.def,{get shape(){const o=t._zod.def.shape,r={...o};if(n)for(const s in n){if(!(s in r))throw new Error(`Unrecognized key: "${s}"`);n[s]&&(r[s]=new e({type:"nonoptional",innerType:o[s]}))}else for(const s in o)r[s]=new e({type:"nonoptional",innerType:o[s]});return $r(this,"shape",r),r}});return Qo(t,a)}function ws(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue!==!0)return!0;return!1}function ij(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue===!1)return!0;return!1}function Is(e,t){return t.map(n=>{var a;return(a=n).path??(a.path=[]),n.path.unshift(e),n})}function Kd(e){return typeof e=="string"?e:e?.message}function yo(e,t,n){const a=e.message?e.message:Kd(e.inst?._zod.def?.error?.(e))??Kd(t?.error?.(e))??Kd(n.customError?.(e))??Kd(n.localeError?.(e))??"Invalid input",{inst:o,continue:r,input:s,...c}=e;return c.path??(c.path=[]),c.message=a,t?.reportInput&&(c.input=s),c}function Sv(e){return Array.isArray(e)?"array":typeof e=="string"?"string":"unknown"}function Sc(...e){const[t,n,a]=e;return typeof t=="string"?{message:t,code:"custom",input:n,inst:a}:{...t}}const R1=(e,t)=>{e.name="$ZodError",Object.defineProperty(e,"_zod",{value:e._zod,enumerable:!1}),Object.defineProperty(e,"issues",{value:t,enumerable:!1}),e.message=JSON.stringify(t,sg,2),Object.defineProperty(e,"toString",{value:()=>e.message,enumerable:!1})},P1=_e("$ZodError",R1),A1=_e("$ZodError",R1,{Parent:Error});function oj(e,t=n=>n.message){const n={},a=[];for(const o of e.issues)o.path.length>0?(n[o.path[0]]=n[o.path[0]]||[],n[o.path[0]].push(t(o))):a.push(t(o));return{formErrors:a,fieldErrors:n}}function rj(e,t=n=>n.message){const n={_errors:[]},a=(o,r=[])=>{for(const s of o.issues)if(s.code==="invalid_union"&&s.errors.length)s.errors.map(c=>a({issues:c},[...r,...s.path]));else if(s.code==="invalid_key")a({issues:s.issues},[...r,...s.path]);else if(s.code==="invalid_element")a({issues:s.issues},[...r,...s.path]);else{const c=[...r,...s.path];if(c.length===0)n._errors.push(t(s));else{let m=n,u=0;for(;u<c.length;){const f=c[u];u===c.length-1?(m[f]=m[f]||{_errors:[]},m[f]._errors.push(t(s))):m[f]=m[f]||{_errors:[]},m=m[f],u++}}}};return a(e),n}const xv=e=>(t,n,a,o)=>{const r=a?{...a,async:!1}:{async:!1},s=t._zod.run({value:n,issues:[]},r);if(s instanceof Promise)throw new Hs;if(s.issues.length){const c=new(o?.Err??e)(s.issues.map(m=>yo(m,r,bo())));throw _1(c,o?.callee),c}return s.value},kv=e=>async(t,n,a,o)=>{const r=a?{...a,async:!0}:{async:!0};let s=t._zod.run({value:n,issues:[]},r);if(s instanceof Promise&&(s=await s),s.issues.length){const c=new(o?.Err??e)(s.issues.map(m=>yo(m,r,bo())));throw _1(c,o?.callee),c}return s.value},_m=e=>(t,n,a)=>{const o=a?{...a,async:!1}:{async:!1},r=t._zod.run({value:n,issues:[]},o);if(r instanceof Promise)throw new Hs;return r.issues.length?{success:!1,error:new(e??P1)(r.issues.map(s=>yo(s,o,bo())))}:{success:!0,data:r.value}},sj=_m(A1),Cm=e=>async(t,n,a)=>{const o=a?{...a,async:!0}:{async:!0};let r=t._zod.run({value:n,issues:[]},o);return r instanceof Promise&&(r=await r),r.issues.length?{success:!1,error:new e(r.issues.map(s=>yo(s,o,bo())))}:{success:!0,data:r.value}},lj=Cm(A1),cj=e=>(t,n,a)=>{const o=a?{...a,direction:"backward"}:{direction:"backward"};return xv(e)(t,n,o)},dj=e=>(t,n,a)=>xv(e)(t,n,a),uj=e=>async(t,n,a)=>{const o=a?{...a,direction:"backward"}:{direction:"backward"};return kv(e)(t,n,o)},mj=e=>async(t,n,a)=>kv(e)(t,n,a),pj=e=>(t,n,a)=>{const o=a?{...a,direction:"backward"}:{direction:"backward"};return _m(e)(t,n,o)},fj=e=>(t,n,a)=>_m(e)(t,n,a),hj=e=>async(t,n,a)=>{const o=a?{...a,direction:"backward"}:{direction:"backward"};return Cm(e)(t,n,o)},gj=e=>async(t,n,a)=>Cm(e)(t,n,a),vj=/^[cC][0-9a-z]{6,}$/,bj=/^[0-9a-z]+$/,yj=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,Sj=/^[0-9a-vA-V]{20}$/,xj=/^[A-Za-z0-9]{27}$/,kj=/^[a-zA-Z0-9_-]{21}$/,wj=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,Ij=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,p0=e=>e?new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${e}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/,_j=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,Cj="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function Rj(){return new RegExp(Cj,"u")}const Pj=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,Aj=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))$/,Tj=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,Ej=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,jj=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,T1=/^[A-Za-z0-9_-]*$/,Mj=/^https?$/,Oj=/^\+[1-9]\d{6,14}$/,E1="(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))",$j=new RegExp(`^${E1}$`);function j1(e){const t="(?:[01]\\d|2[0-3]):[0-5]\\d";return typeof e.precision=="number"?e.precision===-1?`${t}`:e.precision===0?`${t}:[0-5]\\d`:`${t}:[0-5]\\d\\.\\d{${e.precision}}`:`${t}(?::[0-5]\\d(?:\\.\\d+)?)?`}function Nj(e){return new RegExp(`^${j1(e)}$`)}function Dj(e){const t=j1({precision:e.precision}),n=["Z"];e.local&&n.push(""),e.offset&&n.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");const a=`${t}(?:${n.join("|")})`;return new RegExp(`^${E1}T(?:${a})$`)}const Hj=e=>{const t=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${t}$`)},Lj=/^-?\d+$/,M1=/^-?\d+(?:\.\d+)?$/,qj=/^(?:true|false)$/i,Uj=/^null$/i,zj=/^[^A-Z]*$/,Bj=/^[^a-z]*$/,Sa=_e("$ZodCheck",(e,t)=>{var n;e._zod??(e._zod={}),e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])}),O1={number:"number",bigint:"bigint",object:"date"},$1=_e("$ZodCheckLessThan",(e,t)=>{Sa.init(e,t);const n=O1[typeof t.value];e._zod.onattach.push(a=>{const o=a._zod.bag,r=(t.inclusive?o.maximum:o.exclusiveMaximum)??Number.POSITIVE_INFINITY;t.value<r&&(t.inclusive?o.maximum=t.value:o.exclusiveMaximum=t.value)}),e._zod.check=a=>{(t.inclusive?a.value<=t.value:a.value<t.value)||a.issues.push({origin:n,code:"too_big",maximum:typeof t.value=="object"?t.value.getTime():t.value,input:a.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),N1=_e("$ZodCheckGreaterThan",(e,t)=>{Sa.init(e,t);const n=O1[typeof t.value];e._zod.onattach.push(a=>{const o=a._zod.bag,r=(t.inclusive?o.minimum:o.exclusiveMinimum)??Number.NEGATIVE_INFINITY;t.value>r&&(t.inclusive?o.minimum=t.value:o.exclusiveMinimum=t.value)}),e._zod.check=a=>{(t.inclusive?a.value>=t.value:a.value>t.value)||a.issues.push({origin:n,code:"too_small",minimum:typeof t.value=="object"?t.value.getTime():t.value,input:a.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),Fj=_e("$ZodCheckMultipleOf",(e,t)=>{Sa.init(e,t),e._zod.onattach.push(n=>{var a;(a=n._zod.bag).multipleOf??(a.multipleOf=t.value)}),e._zod.check=n=>{if(typeof n.value!=typeof t.value)throw new Error("Cannot mix number and bigint in multiple_of check.");(typeof n.value=="bigint"?n.value%t.value===BigInt(0):VE(n.value,t.value)===0)||n.issues.push({origin:typeof n.value,code:"not_multiple_of",divisor:t.value,input:n.value,inst:e,continue:!t.abort})}}),Vj=_e("$ZodCheckNumberFormat",(e,t)=>{Sa.init(e,t),t.format=t.format||"float64";const n=t.format?.includes("int"),a=n?"int":"number",[o,r]=ZE[t.format];e._zod.onattach.push(s=>{const c=s._zod.bag;c.format=t.format,c.minimum=o,c.maximum=r,n&&(c.pattern=Lj)}),e._zod.check=s=>{const c=s.value;if(n){if(!Number.isInteger(c)){s.issues.push({expected:a,format:t.format,code:"invalid_type",continue:!1,input:c,inst:e});return}if(!Number.isSafeInteger(c)){c>0?s.issues.push({input:c,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:a,inclusive:!0,continue:!t.abort}):s.issues.push({input:c,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:a,inclusive:!0,continue:!t.abort});return}}c<o&&s.issues.push({origin:"number",input:c,code:"too_small",minimum:o,inclusive:!0,inst:e,continue:!t.abort}),c>r&&s.issues.push({origin:"number",input:c,code:"too_big",maximum:r,inclusive:!0,inst:e,continue:!t.abort})}}),Kj=_e("$ZodCheckMaxLength",(e,t)=>{var n;Sa.init(e,t),(n=e._zod.def).when??(n.when=a=>{const o=a.value;return!bv(o)&&o.length!==void 0}),e._zod.onattach.push(a=>{const o=a._zod.bag.maximum??Number.POSITIVE_INFINITY;t.maximum<o&&(a._zod.bag.maximum=t.maximum)}),e._zod.check=a=>{const o=a.value;if(o.length<=t.maximum)return;const s=Sv(o);a.issues.push({origin:s,code:"too_big",maximum:t.maximum,inclusive:!0,input:o,inst:e,continue:!t.abort})}}),Wj=_e("$ZodCheckMinLength",(e,t)=>{var n;Sa.init(e,t),(n=e._zod.def).when??(n.when=a=>{const o=a.value;return!bv(o)&&o.length!==void 0}),e._zod.onattach.push(a=>{const o=a._zod.bag.minimum??Number.NEGATIVE_INFINITY;t.minimum>o&&(a._zod.bag.minimum=t.minimum)}),e._zod.check=a=>{const o=a.value;if(o.length>=t.minimum)return;const s=Sv(o);a.issues.push({origin:s,code:"too_small",minimum:t.minimum,inclusive:!0,input:o,inst:e,continue:!t.abort})}}),Gj=_e("$ZodCheckLengthEquals",(e,t)=>{var n;Sa.init(e,t),(n=e._zod.def).when??(n.when=a=>{const o=a.value;return!bv(o)&&o.length!==void 0}),e._zod.onattach.push(a=>{const o=a._zod.bag;o.minimum=t.length,o.maximum=t.length,o.length=t.length}),e._zod.check=a=>{const o=a.value,r=o.length;if(r===t.length)return;const s=Sv(o),c=r>t.length;a.issues.push({origin:s,...c?{code:"too_big",maximum:t.length}:{code:"too_small",minimum:t.length},inclusive:!0,exact:!0,input:a.value,inst:e,continue:!t.abort})}}),Rm=_e("$ZodCheckStringFormat",(e,t)=>{var n,a;Sa.init(e,t),e._zod.onattach.push(o=>{const r=o._zod.bag;r.format=t.format,t.pattern&&(r.patterns??(r.patterns=new Set),r.patterns.add(t.pattern))}),t.pattern?(n=e._zod).check??(n.check=o=>{t.pattern.lastIndex=0,!t.pattern.test(o.value)&&o.issues.push({origin:"string",code:"invalid_format",format:t.format,input:o.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})}):(a=e._zod).check??(a.check=()=>{})}),Jj=_e("$ZodCheckRegex",(e,t)=>{Rm.init(e,t),e._zod.check=n=>{t.pattern.lastIndex=0,!t.pattern.test(n.value)&&n.issues.push({origin:"string",code:"invalid_format",format:"regex",input:n.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),Zj=_e("$ZodCheckLowerCase",(e,t)=>{t.pattern??(t.pattern=zj),Rm.init(e,t)}),Yj=_e("$ZodCheckUpperCase",(e,t)=>{t.pattern??(t.pattern=Bj),Rm.init(e,t)}),Qj=_e("$ZodCheckIncludes",(e,t)=>{Sa.init(e,t);const n=Ks(t.includes),a=new RegExp(typeof t.position=="number"?`^.{${t.position}}${n}`:n);t.pattern=a,e._zod.onattach.push(o=>{const r=o._zod.bag;r.patterns??(r.patterns=new Set),r.patterns.add(a)}),e._zod.check=o=>{o.value.includes(t.includes,t.position)||o.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:t.includes,input:o.value,inst:e,continue:!t.abort})}}),Xj=_e("$ZodCheckStartsWith",(e,t)=>{Sa.init(e,t);const n=new RegExp(`^${Ks(t.prefix)}.*`);t.pattern??(t.pattern=n),e._zod.onattach.push(a=>{const o=a._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(n)}),e._zod.check=a=>{a.value.startsWith(t.prefix)||a.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:t.prefix,input:a.value,inst:e,continue:!t.abort})}}),eM=_e("$ZodCheckEndsWith",(e,t)=>{Sa.init(e,t);const n=new RegExp(`.*${Ks(t.suffix)}$`);t.pattern??(t.pattern=n),e._zod.onattach.push(a=>{const o=a._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(n)}),e._zod.check=a=>{a.value.endsWith(t.suffix)||a.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:t.suffix,input:a.value,inst:e,continue:!t.abort})}}),tM=_e("$ZodCheckOverwrite",(e,t)=>{Sa.init(e,t),e._zod.check=n=>{n.value=t.tx(n.value)}});class nM{constructor(t=[]){this.content=[],this.indent=0,this&&(this.args=t)}indented(t){this.indent+=1,t(this),this.indent-=1}write(t){if(typeof t=="function"){t(this,{execution:"sync"}),t(this,{execution:"async"});return}const a=t.split(`
9
- `).filter(s=>s),o=Math.min(...a.map(s=>s.length-s.trimStart().length)),r=a.map(s=>s.slice(o)).map(s=>" ".repeat(this.indent*2)+s);for(const s of r)this.content.push(s)}compile(){const t=Function,n=this?.args,o=[...(this?.content??[""]).map(r=>` ${r}`)];return new t(...n,o.join(`
10
- `))}}const aM={major:4,minor:4,patch:3},rn=_e("$ZodType",(e,t)=>{var n;e??(e={}),e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=aM;const a=[...e._zod.def.checks??[]];e._zod.traits.has("$ZodCheck")&&a.unshift(e);for(const o of a)for(const r of o._zod.onattach)r(e);if(a.length===0)(n=e._zod).deferred??(n.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{const o=(s,c,m)=>{let u=ws(s),f;for(const h of c){if(h._zod.def.when){if(ij(s)||!h._zod.def.when(s))continue}else if(u)continue;const x=s.issues.length,k=h._zod.check(s);if(k instanceof Promise&&m?.async===!1)throw new Hs;if(f||k instanceof Promise)f=(f??Promise.resolve()).then(async()=>{await k,s.issues.length!==x&&(u||(u=ws(s,x)))});else{if(s.issues.length===x)continue;u||(u=ws(s,x))}}return f?f.then(()=>s):s},r=(s,c,m)=>{if(ws(s))return s.aborted=!0,s;const u=o(c,a,m);if(u instanceof Promise){if(m.async===!1)throw new Hs;return u.then(f=>e._zod.parse(f,m))}return e._zod.parse(u,m)};e._zod.run=(s,c)=>{if(c.skipChecks)return e._zod.parse(s,c);if(c.direction==="backward"){const u=e._zod.parse({value:s.value,issues:[]},{...c,skipChecks:!0});return u instanceof Promise?u.then(f=>r(f,s,c)):r(u,s,c)}const m=e._zod.parse(s,c);if(m instanceof Promise){if(c.async===!1)throw new Hs;return m.then(u=>o(u,a,c))}return o(m,a,c)}}Tt(e,"~standard",()=>({validate:o=>{try{const r=sj(e,o);return r.success?{value:r.data}:{issues:r.error?.issues}}catch{return lj(e,o).then(s=>s.success?{value:s.data}:{issues:s.error?.issues})}},vendor:"zod",version:1}))}),wv=_e("$ZodString",(e,t)=>{rn.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??Hj(e._zod.bag),e._zod.parse=(n,a)=>{if(t.coerce)try{n.value=String(n.value)}catch{}return typeof n.value=="string"||n.issues.push({expected:"string",code:"invalid_type",input:n.value,inst:e}),n}}),un=_e("$ZodStringFormat",(e,t)=>{Rm.init(e,t),wv.init(e,t)}),iM=_e("$ZodGUID",(e,t)=>{t.pattern??(t.pattern=Ij),un.init(e,t)}),oM=_e("$ZodUUID",(e,t)=>{if(t.version){const a={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[t.version];if(a===void 0)throw new Error(`Invalid UUID version: "${t.version}"`);t.pattern??(t.pattern=p0(a))}else t.pattern??(t.pattern=p0());un.init(e,t)}),rM=_e("$ZodEmail",(e,t)=>{t.pattern??(t.pattern=_j),un.init(e,t)}),sM=_e("$ZodURL",(e,t)=>{un.init(e,t),e._zod.check=n=>{try{const a=n.value.trim();if(!t.normalize&&t.protocol?.source===Mj.source&&!/^https?:\/\//i.test(a)){n.issues.push({code:"invalid_format",format:"url",note:"Invalid URL format",input:n.value,inst:e,continue:!t.abort});return}const o=new URL(a);t.hostname&&(t.hostname.lastIndex=0,t.hostname.test(o.hostname)||n.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:t.hostname.source,input:n.value,inst:e,continue:!t.abort})),t.protocol&&(t.protocol.lastIndex=0,t.protocol.test(o.protocol.endsWith(":")?o.protocol.slice(0,-1):o.protocol)||n.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:t.protocol.source,input:n.value,inst:e,continue:!t.abort})),t.normalize?n.value=o.href:n.value=a;return}catch{n.issues.push({code:"invalid_format",format:"url",input:n.value,inst:e,continue:!t.abort})}}}),lM=_e("$ZodEmoji",(e,t)=>{t.pattern??(t.pattern=Rj()),un.init(e,t)}),cM=_e("$ZodNanoID",(e,t)=>{t.pattern??(t.pattern=kj),un.init(e,t)}),dM=_e("$ZodCUID",(e,t)=>{t.pattern??(t.pattern=vj),un.init(e,t)}),uM=_e("$ZodCUID2",(e,t)=>{t.pattern??(t.pattern=bj),un.init(e,t)}),mM=_e("$ZodULID",(e,t)=>{t.pattern??(t.pattern=yj),un.init(e,t)}),pM=_e("$ZodXID",(e,t)=>{t.pattern??(t.pattern=Sj),un.init(e,t)}),fM=_e("$ZodKSUID",(e,t)=>{t.pattern??(t.pattern=xj),un.init(e,t)}),hM=_e("$ZodISODateTime",(e,t)=>{t.pattern??(t.pattern=Dj(t)),un.init(e,t)}),gM=_e("$ZodISODate",(e,t)=>{t.pattern??(t.pattern=$j),un.init(e,t)}),vM=_e("$ZodISOTime",(e,t)=>{t.pattern??(t.pattern=Nj(t)),un.init(e,t)}),bM=_e("$ZodISODuration",(e,t)=>{t.pattern??(t.pattern=wj),un.init(e,t)}),yM=_e("$ZodIPv4",(e,t)=>{t.pattern??(t.pattern=Pj),un.init(e,t),e._zod.bag.format="ipv4"}),SM=_e("$ZodIPv6",(e,t)=>{t.pattern??(t.pattern=Aj),un.init(e,t),e._zod.bag.format="ipv6",e._zod.check=n=>{try{new URL(`http://[${n.value}]`)}catch{n.issues.push({code:"invalid_format",format:"ipv6",input:n.value,inst:e,continue:!t.abort})}}}),xM=_e("$ZodCIDRv4",(e,t)=>{t.pattern??(t.pattern=Tj),un.init(e,t)}),kM=_e("$ZodCIDRv6",(e,t)=>{t.pattern??(t.pattern=Ej),un.init(e,t),e._zod.check=n=>{const a=n.value.split("/");try{if(a.length!==2)throw new Error;const[o,r]=a;if(!r)throw new Error;const s=Number(r);if(`${s}`!==r)throw new Error;if(s<0||s>128)throw new Error;new URL(`http://[${o}]`)}catch{n.issues.push({code:"invalid_format",format:"cidrv6",input:n.value,inst:e,continue:!t.abort})}}});function D1(e){if(e==="")return!0;if(/\s/.test(e)||e.length%4!==0)return!1;try{return atob(e),!0}catch{return!1}}const wM=_e("$ZodBase64",(e,t)=>{t.pattern??(t.pattern=jj),un.init(e,t),e._zod.bag.contentEncoding="base64",e._zod.check=n=>{D1(n.value)||n.issues.push({code:"invalid_format",format:"base64",input:n.value,inst:e,continue:!t.abort})}});function IM(e){if(!T1.test(e))return!1;const t=e.replace(/[-_]/g,a=>a==="-"?"+":"/"),n=t.padEnd(Math.ceil(t.length/4)*4,"=");return D1(n)}const _M=_e("$ZodBase64URL",(e,t)=>{t.pattern??(t.pattern=T1),un.init(e,t),e._zod.bag.contentEncoding="base64url",e._zod.check=n=>{IM(n.value)||n.issues.push({code:"invalid_format",format:"base64url",input:n.value,inst:e,continue:!t.abort})}}),CM=_e("$ZodE164",(e,t)=>{t.pattern??(t.pattern=Oj),un.init(e,t)});function RM(e,t=null){try{const n=e.split(".");if(n.length!==3)return!1;const[a]=n;if(!a)return!1;const o=JSON.parse(atob(a));return!("typ"in o&&o?.typ!=="JWT"||!o.alg||t&&(!("alg"in o)||o.alg!==t))}catch{return!1}}const PM=_e("$ZodJWT",(e,t)=>{un.init(e,t),e._zod.check=n=>{RM(n.value,t.alg)||n.issues.push({code:"invalid_format",format:"jwt",input:n.value,inst:e,continue:!t.abort})}}),H1=_e("$ZodNumber",(e,t)=>{rn.init(e,t),e._zod.pattern=e._zod.bag.pattern??M1,e._zod.parse=(n,a)=>{if(t.coerce)try{n.value=Number(n.value)}catch{}const o=n.value;if(typeof o=="number"&&!Number.isNaN(o)&&Number.isFinite(o))return n;const r=typeof o=="number"?Number.isNaN(o)?"NaN":Number.isFinite(o)?void 0:"Infinity":void 0;return n.issues.push({expected:"number",code:"invalid_type",input:o,inst:e,...r?{received:r}:{}}),n}}),AM=_e("$ZodNumberFormat",(e,t)=>{Vj.init(e,t),H1.init(e,t)}),TM=_e("$ZodBoolean",(e,t)=>{rn.init(e,t),e._zod.pattern=qj,e._zod.parse=(n,a)=>{if(t.coerce)try{n.value=!!n.value}catch{}const o=n.value;return typeof o=="boolean"||n.issues.push({expected:"boolean",code:"invalid_type",input:o,inst:e}),n}}),EM=_e("$ZodNull",(e,t)=>{rn.init(e,t),e._zod.pattern=Uj,e._zod.values=new Set([null]),e._zod.parse=(n,a)=>{const o=n.value;return o===null||n.issues.push({expected:"null",code:"invalid_type",input:o,inst:e}),n}}),jM=_e("$ZodUnknown",(e,t)=>{rn.init(e,t),e._zod.parse=n=>n}),MM=_e("$ZodNever",(e,t)=>{rn.init(e,t),e._zod.parse=(n,a)=>(n.issues.push({expected:"never",code:"invalid_type",input:n.value,inst:e}),n)});function f0(e,t,n){e.issues.length&&t.issues.push(...Is(n,e.issues)),t.value[n]=e.value}const OM=_e("$ZodArray",(e,t)=>{rn.init(e,t),e._zod.parse=(n,a)=>{const o=n.value;if(!Array.isArray(o))return n.issues.push({expected:"array",code:"invalid_type",input:o,inst:e}),n;n.value=Array(o.length);const r=[];for(let s=0;s<o.length;s++){const c=o[s],m=t.element._zod.run({value:c,issues:[]},a);m instanceof Promise?r.push(m.then(u=>f0(u,n,s))):f0(m,n,s)}return r.length?Promise.all(r).then(()=>n):n}});function Vu(e,t,n,a,o,r){const s=n in a;if(e.issues.length){if(o&&r&&!s)return;t.issues.push(...Is(n,e.issues))}if(!s&&!o){e.issues.length||t.issues.push({code:"invalid_type",expected:"nonoptional",input:void 0,path:[n]});return}e.value===void 0?s&&(t.value[n]=void 0):t.value[n]=e.value}function L1(e){const t=Object.keys(e.shape);for(const a of t)if(!e.shape?.[a]?._zod?.traits?.has("$ZodType"))throw new Error(`Invalid element at key "${a}": expected a Zod schema`);const n=JE(e.shape);return{...e,keys:t,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(n)}}function q1(e,t,n,a,o,r){const s=[],c=o.keySet,m=o.catchall._zod,u=m.def.type,f=m.optin==="optional",h=m.optout==="optional";for(const x in t){if(x==="__proto__"||c.has(x))continue;if(u==="never"){s.push(x);continue}const k=m.run({value:t[x],issues:[]},a);k instanceof Promise?e.push(k.then(_=>Vu(_,n,x,t,f,h))):Vu(k,n,x,t,f,h)}return s.length&&n.issues.push({code:"unrecognized_keys",keys:s,input:t,inst:r}),e.length?Promise.all(e).then(()=>n):n}const $M=_e("$ZodObject",(e,t)=>{if(rn.init(e,t),!Object.getOwnPropertyDescriptor(t,"shape")?.get){const c=t.shape;Object.defineProperty(t,"shape",{get:()=>{const m={...c};return Object.defineProperty(t,"shape",{value:m}),m}})}const a=Im(()=>L1(t));Tt(e._zod,"propValues",()=>{const c=t.shape,m={};for(const u in c){const f=c[u]._zod;if(f.values){m[u]??(m[u]=new Set);for(const h of f.values)m[u].add(h)}}return m});const o=yc,r=t.catchall;let s;e._zod.parse=(c,m)=>{s??(s=a.value);const u=c.value;if(!o(u))return c.issues.push({expected:"object",code:"invalid_type",input:u,inst:e}),c;c.value={};const f=[],h=s.shape;for(const x of s.keys){const k=h[x],_=k._zod.optin==="optional",P=k._zod.optout==="optional",E=k._zod.run({value:u[x],issues:[]},m);E instanceof Promise?f.push(E.then(A=>Vu(A,c,x,u,_,P))):Vu(E,c,x,u,_,P)}return r?q1(f,u,c,m,a.value,e):f.length?Promise.all(f).then(()=>c):c}}),NM=_e("$ZodObjectJIT",(e,t)=>{$M.init(e,t);const n=e._zod.parse,a=Im(()=>L1(t)),o=x=>{const k=new nM(["shape","payload","ctx"]),_=a.value,P=j=>{const M=m0(j);return`shape[${M}]._zod.run({ value: input[${M}], issues: [] }, ctx)`};k.write("const input = payload.value;");const E=Object.create(null);let A=0;for(const j of _.keys)E[j]=`key_${A++}`;k.write("const newResult = {};");for(const j of _.keys){const M=E[j],w=m0(j),R=x[j],O=R?._zod?.optin==="optional",N=R?._zod?.optout==="optional";k.write(`const ${M} = ${P(j)};`),O&&N?k.write(`
11
- if (${M}.issues.length) {
12
- if (${w} in input) {
13
- payload.issues = payload.issues.concat(${M}.issues.map(iss => ({
14
- ...iss,
15
- path: iss.path ? [${w}, ...iss.path] : [${w}]
16
- })));
17
- }
18
- }
19
-
20
- if (${M}.value === undefined) {
21
- if (${w} in input) {
22
- newResult[${w}] = undefined;
23
- }
24
- } else {
25
- newResult[${w}] = ${M}.value;
26
- }
27
-
28
- `):O?k.write(`
29
- if (${M}.issues.length) {
30
- payload.issues = payload.issues.concat(${M}.issues.map(iss => ({
31
- ...iss,
32
- path: iss.path ? [${w}, ...iss.path] : [${w}]
33
- })));
34
- }
35
-
36
- if (${M}.value === undefined) {
37
- if (${w} in input) {
38
- newResult[${w}] = undefined;
39
- }
40
- } else {
41
- newResult[${w}] = ${M}.value;
42
- }
43
-
44
- `):k.write(`
45
- const ${M}_present = ${w} in input;
46
- if (${M}.issues.length) {
47
- payload.issues = payload.issues.concat(${M}.issues.map(iss => ({
48
- ...iss,
49
- path: iss.path ? [${w}, ...iss.path] : [${w}]
50
- })));
51
- }
52
- if (!${M}_present && !${M}.issues.length) {
53
- payload.issues.push({
54
- code: "invalid_type",
55
- expected: "nonoptional",
56
- input: undefined,
57
- path: [${w}]
58
- });
59
- }
60
-
61
- if (${M}_present) {
62
- if (${M}.value === undefined) {
63
- newResult[${w}] = undefined;
64
- } else {
65
- newResult[${w}] = ${M}.value;
66
- }
67
- }
68
-
69
- `)}k.write("payload.value = newResult;"),k.write("return payload;");const $=k.compile();return(j,M)=>$(x,j,M)};let r;const s=yc,c=!vv.jitless,u=c&&WE.value,f=t.catchall;let h;e._zod.parse=(x,k)=>{h??(h=a.value);const _=x.value;return s(_)?c&&u&&k?.async===!1&&k.jitless!==!0?(r||(r=o(t.shape)),x=r(x,k),f?q1([],_,x,k,h,e):x):n(x,k):(x.issues.push({expected:"object",code:"invalid_type",input:_,inst:e}),x)}});function h0(e,t,n,a){for(const r of e)if(r.issues.length===0)return t.value=r.value,t;const o=e.filter(r=>!ws(r));return o.length===1?(t.value=o[0].value,o[0]):(t.issues.push({code:"invalid_union",input:t.value,inst:n,errors:e.map(r=>r.issues.map(s=>yo(s,a,bo())))}),t)}const U1=_e("$ZodUnion",(e,t)=>{rn.init(e,t),Tt(e._zod,"optin",()=>t.options.some(a=>a._zod.optin==="optional")?"optional":void 0),Tt(e._zod,"optout",()=>t.options.some(a=>a._zod.optout==="optional")?"optional":void 0),Tt(e._zod,"values",()=>{if(t.options.every(a=>a._zod.values))return new Set(t.options.flatMap(a=>Array.from(a._zod.values)))}),Tt(e._zod,"pattern",()=>{if(t.options.every(a=>a._zod.pattern)){const a=t.options.map(o=>o._zod.pattern);return new RegExp(`^(${a.map(o=>yv(o.source)).join("|")})$`)}});const n=t.options.length===1?t.options[0]._zod.run:null;e._zod.parse=(a,o)=>{if(n)return n(a,o);let r=!1;const s=[];for(const c of t.options){const m=c._zod.run({value:a.value,issues:[]},o);if(m instanceof Promise)s.push(m),r=!0;else{if(m.issues.length===0)return m;s.push(m)}}return r?Promise.all(s).then(c=>h0(c,a,e,o)):h0(s,a,e,o)}}),DM=_e("$ZodDiscriminatedUnion",(e,t)=>{t.inclusive=!1,U1.init(e,t);const n=e._zod.parse;Tt(e._zod,"propValues",()=>{const o={};for(const r of t.options){const s=r._zod.propValues;if(!s||Object.keys(s).length===0)throw new Error(`Invalid discriminated union option at index "${t.options.indexOf(r)}"`);for(const[c,m]of Object.entries(s)){o[c]||(o[c]=new Set);for(const u of m)o[c].add(u)}}return o});const a=Im(()=>{const o=t.options,r=new Map;for(const s of o){const c=s._zod.propValues?.[t.discriminator];if(!c||c.size===0)throw new Error(`Invalid discriminated union option at index "${t.options.indexOf(s)}"`);for(const m of c){if(r.has(m))throw new Error(`Duplicate discriminator value "${String(m)}"`);r.set(m,s)}}return r});e._zod.parse=(o,r)=>{const s=o.value;if(!yc(s))return o.issues.push({code:"invalid_type",expected:"object",input:s,inst:e}),o;const c=a.value.get(s?.[t.discriminator]);return c?c._zod.run(o,r):t.unionFallback||r.direction==="backward"?n(o,r):(o.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",discriminator:t.discriminator,options:Array.from(a.value.keys()),input:s,path:[t.discriminator],inst:e}),o)}}),HM=_e("$ZodIntersection",(e,t)=>{rn.init(e,t),e._zod.parse=(n,a)=>{const o=n.value,r=t.left._zod.run({value:o,issues:[]},a),s=t.right._zod.run({value:o,issues:[]},a);return r instanceof Promise||s instanceof Promise?Promise.all([r,s]).then(([m,u])=>g0(n,m,u)):g0(n,r,s)}});function lg(e,t){if(e===t)return{valid:!0,data:e};if(e instanceof Date&&t instanceof Date&&+e==+t)return{valid:!0,data:e};if(Vs(e)&&Vs(t)){const n=Object.keys(t),a=Object.keys(e).filter(r=>n.indexOf(r)!==-1),o={...e,...t};for(const r of a){const s=lg(e[r],t[r]);if(!s.valid)return{valid:!1,mergeErrorPath:[r,...s.mergeErrorPath]};o[r]=s.data}return{valid:!0,data:o}}if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return{valid:!1,mergeErrorPath:[]};const n=[];for(let a=0;a<e.length;a++){const o=e[a],r=t[a],s=lg(o,r);if(!s.valid)return{valid:!1,mergeErrorPath:[a,...s.mergeErrorPath]};n.push(s.data)}return{valid:!0,data:n}}return{valid:!1,mergeErrorPath:[]}}function g0(e,t,n){const a=new Map;let o;for(const c of t.issues)if(c.code==="unrecognized_keys"){o??(o=c);for(const m of c.keys)a.has(m)||a.set(m,{}),a.get(m).l=!0}else e.issues.push(c);for(const c of n.issues)if(c.code==="unrecognized_keys")for(const m of c.keys)a.has(m)||a.set(m,{}),a.get(m).r=!0;else e.issues.push(c);const r=[...a].filter(([,c])=>c.l&&c.r).map(([c])=>c);if(r.length&&o&&e.issues.push({...o,keys:r}),ws(e))return e;const s=lg(t.value,n.value);if(!s.valid)throw new Error(`Unmergable intersection. Error path: ${JSON.stringify(s.mergeErrorPath)}`);return e.value=s.data,e}const LM=_e("$ZodRecord",(e,t)=>{rn.init(e,t),e._zod.parse=(n,a)=>{const o=n.value;if(!Vs(o))return n.issues.push({expected:"record",code:"invalid_type",input:o,inst:e}),n;const r=[],s=t.keyType._zod.values;if(s){n.value={};const c=new Set;for(const u of s)if(typeof u=="string"||typeof u=="number"||typeof u=="symbol"){c.add(typeof u=="number"?u.toString():u);const f=t.keyType._zod.run({value:u,issues:[]},a);if(f instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(f.issues.length){n.issues.push({code:"invalid_key",origin:"record",issues:f.issues.map(k=>yo(k,a,bo())),input:u,path:[u],inst:e});continue}const h=f.value,x=t.valueType._zod.run({value:o[u],issues:[]},a);x instanceof Promise?r.push(x.then(k=>{k.issues.length&&n.issues.push(...Is(u,k.issues)),n.value[h]=k.value})):(x.issues.length&&n.issues.push(...Is(u,x.issues)),n.value[h]=x.value)}let m;for(const u in o)c.has(u)||(m=m??[],m.push(u));m&&m.length>0&&n.issues.push({code:"unrecognized_keys",input:o,inst:e,keys:m})}else{n.value={};for(const c of Reflect.ownKeys(o)){if(c==="__proto__"||!Object.prototype.propertyIsEnumerable.call(o,c))continue;let m=t.keyType._zod.run({value:c,issues:[]},a);if(m instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(typeof c=="string"&&M1.test(c)&&m.issues.length){const h=t.keyType._zod.run({value:Number(c),issues:[]},a);if(h instanceof Promise)throw new Error("Async schemas not supported in object keys currently");h.issues.length===0&&(m=h)}if(m.issues.length){t.mode==="loose"?n.value[c]=o[c]:n.issues.push({code:"invalid_key",origin:"record",issues:m.issues.map(h=>yo(h,a,bo())),input:c,path:[c],inst:e});continue}const f=t.valueType._zod.run({value:o[c],issues:[]},a);f instanceof Promise?r.push(f.then(h=>{h.issues.length&&n.issues.push(...Is(c,h.issues)),n.value[m.value]=h.value})):(f.issues.length&&n.issues.push(...Is(c,f.issues)),n.value[m.value]=f.value)}}return r.length?Promise.all(r).then(()=>n):n}}),qM=_e("$ZodEnum",(e,t)=>{rn.init(e,t);const n=I1(t.entries),a=new Set(n);e._zod.values=a,e._zod.pattern=new RegExp(`^(${n.filter(o=>GE.has(typeof o)).map(o=>typeof o=="string"?Ks(o):o.toString()).join("|")})$`),e._zod.parse=(o,r)=>{const s=o.value;return a.has(s)||o.issues.push({code:"invalid_value",values:n,input:s,inst:e}),o}}),UM=_e("$ZodLiteral",(e,t)=>{if(rn.init(e,t),t.values.length===0)throw new Error("Cannot create literal schema with no valid values");const n=new Set(t.values);e._zod.values=n,e._zod.pattern=new RegExp(`^(${t.values.map(a=>typeof a=="string"?Ks(a):a?Ks(a.toString()):String(a)).join("|")})$`),e._zod.parse=(a,o)=>{const r=a.value;return n.has(r)||a.issues.push({code:"invalid_value",values:t.values,input:r,inst:e}),a}}),zM=_e("$ZodTransform",(e,t)=>{rn.init(e,t),e._zod.optin="optional",e._zod.parse=(n,a)=>{if(a.direction==="backward")throw new w1(e.constructor.name);const o=t.transform(n.value,n);if(a.async)return(o instanceof Promise?o:Promise.resolve(o)).then(s=>(n.value=s,n.fallback=!0,n));if(o instanceof Promise)throw new Hs;return n.value=o,n.fallback=!0,n}});function v0(e,t){return t===void 0&&(e.issues.length||e.fallback)?{issues:[],value:void 0}:e}const z1=_e("$ZodOptional",(e,t)=>{rn.init(e,t),e._zod.optin="optional",e._zod.optout="optional",Tt(e._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),Tt(e._zod,"pattern",()=>{const n=t.innerType._zod.pattern;return n?new RegExp(`^(${yv(n.source)})?$`):void 0}),e._zod.parse=(n,a)=>{if(t.innerType._zod.optin==="optional"){const o=n.value,r=t.innerType._zod.run(n,a);return r instanceof Promise?r.then(s=>v0(s,o)):v0(r,o)}return n.value===void 0?n:t.innerType._zod.run(n,a)}}),BM=_e("$ZodExactOptional",(e,t)=>{z1.init(e,t),Tt(e._zod,"values",()=>t.innerType._zod.values),Tt(e._zod,"pattern",()=>t.innerType._zod.pattern),e._zod.parse=(n,a)=>t.innerType._zod.run(n,a)}),FM=_e("$ZodNullable",(e,t)=>{rn.init(e,t),Tt(e._zod,"optin",()=>t.innerType._zod.optin),Tt(e._zod,"optout",()=>t.innerType._zod.optout),Tt(e._zod,"pattern",()=>{const n=t.innerType._zod.pattern;return n?new RegExp(`^(${yv(n.source)}|null)$`):void 0}),Tt(e._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,null]):void 0),e._zod.parse=(n,a)=>n.value===null?n:t.innerType._zod.run(n,a)}),VM=_e("$ZodDefault",(e,t)=>{rn.init(e,t),e._zod.optin="optional",Tt(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(n,a)=>{if(a.direction==="backward")return t.innerType._zod.run(n,a);if(n.value===void 0)return n.value=t.defaultValue,n;const o=t.innerType._zod.run(n,a);return o instanceof Promise?o.then(r=>b0(r,t)):b0(o,t)}});function b0(e,t){return e.value===void 0&&(e.value=t.defaultValue),e}const KM=_e("$ZodPrefault",(e,t)=>{rn.init(e,t),e._zod.optin="optional",Tt(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(n,a)=>(a.direction==="backward"||n.value===void 0&&(n.value=t.defaultValue),t.innerType._zod.run(n,a))}),WM=_e("$ZodNonOptional",(e,t)=>{rn.init(e,t),Tt(e._zod,"values",()=>{const n=t.innerType._zod.values;return n?new Set([...n].filter(a=>a!==void 0)):void 0}),e._zod.parse=(n,a)=>{const o=t.innerType._zod.run(n,a);return o instanceof Promise?o.then(r=>y0(r,e)):y0(o,e)}});function y0(e,t){return!e.issues.length&&e.value===void 0&&e.issues.push({code:"invalid_type",expected:"nonoptional",input:e.value,inst:t}),e}const GM=_e("$ZodCatch",(e,t)=>{rn.init(e,t),e._zod.optin="optional",Tt(e._zod,"optout",()=>t.innerType._zod.optout),Tt(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(n,a)=>{if(a.direction==="backward")return t.innerType._zod.run(n,a);const o=t.innerType._zod.run(n,a);return o instanceof Promise?o.then(r=>(n.value=r.value,r.issues.length&&(n.value=t.catchValue({...n,error:{issues:r.issues.map(s=>yo(s,a,bo()))},input:n.value}),n.issues=[],n.fallback=!0),n)):(n.value=o.value,o.issues.length&&(n.value=t.catchValue({...n,error:{issues:o.issues.map(r=>yo(r,a,bo()))},input:n.value}),n.issues=[],n.fallback=!0),n)}}),B1=_e("$ZodPipe",(e,t)=>{rn.init(e,t),Tt(e._zod,"values",()=>t.in._zod.values),Tt(e._zod,"optin",()=>t.in._zod.optin),Tt(e._zod,"optout",()=>t.out._zod.optout),Tt(e._zod,"propValues",()=>t.in._zod.propValues),e._zod.parse=(n,a)=>{if(a.direction==="backward"){const r=t.out._zod.run(n,a);return r instanceof Promise?r.then(s=>Wd(s,t.in,a)):Wd(r,t.in,a)}const o=t.in._zod.run(n,a);return o instanceof Promise?o.then(r=>Wd(r,t.out,a)):Wd(o,t.out,a)}});function Wd(e,t,n){return e.issues.length?(e.aborted=!0,e):t._zod.run({value:e.value,issues:e.issues,fallback:e.fallback},n)}const JM=_e("$ZodPreprocess",(e,t)=>{B1.init(e,t)}),ZM=_e("$ZodReadonly",(e,t)=>{rn.init(e,t),Tt(e._zod,"propValues",()=>t.innerType._zod.propValues),Tt(e._zod,"values",()=>t.innerType._zod.values),Tt(e._zod,"optin",()=>t.innerType?._zod?.optin),Tt(e._zod,"optout",()=>t.innerType?._zod?.optout),e._zod.parse=(n,a)=>{if(a.direction==="backward")return t.innerType._zod.run(n,a);const o=t.innerType._zod.run(n,a);return o instanceof Promise?o.then(S0):S0(o)}});function S0(e){return e.value=Object.freeze(e.value),e}const YM=_e("$ZodLazy",(e,t)=>{rn.init(e,t),Tt(e._zod,"innerType",()=>{const n=t;return n._cachedInner||(n._cachedInner=t.getter()),n._cachedInner}),Tt(e._zod,"pattern",()=>e._zod.innerType?._zod?.pattern),Tt(e._zod,"propValues",()=>e._zod.innerType?._zod?.propValues),Tt(e._zod,"optin",()=>e._zod.innerType?._zod?.optin??void 0),Tt(e._zod,"optout",()=>e._zod.innerType?._zod?.optout??void 0),e._zod.parse=(n,a)=>e._zod.innerType._zod.run(n,a)}),QM=_e("$ZodCustom",(e,t)=>{Sa.init(e,t),rn.init(e,t),e._zod.parse=(n,a)=>n,e._zod.check=n=>{const a=n.value,o=t.fn(a);if(o instanceof Promise)return o.then(r=>x0(r,n,a,e));x0(o,n,a,e)}});function x0(e,t,n,a){if(!e){const o={code:"custom",input:n,inst:a,path:[...a._zod.def.path??[]],continue:!a._zod.def.abort};a._zod.def.params&&(o.params=a._zod.def.params),t.issues.push(Sc(o))}}var k0;class XM{constructor(){this._map=new WeakMap,this._idmap=new Map}add(t,...n){const a=n[0];return this._map.set(t,a),a&&typeof a=="object"&&"id"in a&&this._idmap.set(a.id,t),this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(t){const n=this._map.get(t);return n&&typeof n=="object"&&"id"in n&&this._idmap.delete(n.id),this._map.delete(t),this}get(t){const n=t._zod.parent;if(n){const a={...this.get(n)??{}};delete a.id;const o={...a,...this._map.get(t)};return Object.keys(o).length?o:void 0}return this._map.get(t)}has(t){return this._map.has(t)}}function eO(){return new XM}(k0=globalThis).__zod_globalRegistry??(k0.__zod_globalRegistry=eO());const Yl=globalThis.__zod_globalRegistry;function tO(e,t){return new e({type:"string",...nt(t)})}function nO(e,t){return new e({type:"string",format:"email",check:"string_format",abort:!1,...nt(t)})}function w0(e,t){return new e({type:"string",format:"guid",check:"string_format",abort:!1,...nt(t)})}function F1(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,...nt(t)})}function aO(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...nt(t)})}function iO(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...nt(t)})}function oO(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...nt(t)})}function rO(e,t){return new e({type:"string",format:"url",check:"string_format",abort:!1,...nt(t)})}function sO(e,t){return new e({type:"string",format:"emoji",check:"string_format",abort:!1,...nt(t)})}function lO(e,t){return new e({type:"string",format:"nanoid",check:"string_format",abort:!1,...nt(t)})}function cO(e,t){return new e({type:"string",format:"cuid",check:"string_format",abort:!1,...nt(t)})}function dO(e,t){return new e({type:"string",format:"cuid2",check:"string_format",abort:!1,...nt(t)})}function uO(e,t){return new e({type:"string",format:"ulid",check:"string_format",abort:!1,...nt(t)})}function mO(e,t){return new e({type:"string",format:"xid",check:"string_format",abort:!1,...nt(t)})}function pO(e,t){return new e({type:"string",format:"ksuid",check:"string_format",abort:!1,...nt(t)})}function fO(e,t){return new e({type:"string",format:"ipv4",check:"string_format",abort:!1,...nt(t)})}function hO(e,t){return new e({type:"string",format:"ipv6",check:"string_format",abort:!1,...nt(t)})}function gO(e,t){return new e({type:"string",format:"cidrv4",check:"string_format",abort:!1,...nt(t)})}function vO(e,t){return new e({type:"string",format:"cidrv6",check:"string_format",abort:!1,...nt(t)})}function bO(e,t){return new e({type:"string",format:"base64",check:"string_format",abort:!1,...nt(t)})}function yO(e,t){return new e({type:"string",format:"base64url",check:"string_format",abort:!1,...nt(t)})}function SO(e,t){return new e({type:"string",format:"e164",check:"string_format",abort:!1,...nt(t)})}function xO(e,t){return new e({type:"string",format:"jwt",check:"string_format",abort:!1,...nt(t)})}function kO(e,t){return new e({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...nt(t)})}function wO(e,t){return new e({type:"string",format:"date",check:"string_format",...nt(t)})}function IO(e,t){return new e({type:"string",format:"time",check:"string_format",precision:null,...nt(t)})}function _O(e,t){return new e({type:"string",format:"duration",check:"string_format",...nt(t)})}function CO(e,t){return new e({type:"number",checks:[],...nt(t)})}function qae(e,t){return new e({type:"number",coerce:!0,checks:[],...nt(t)})}function RO(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"safeint",...nt(t)})}function PO(e,t){return new e({type:"boolean",...nt(t)})}function AO(e,t){return new e({type:"null",...nt(t)})}function TO(e){return new e({type:"unknown"})}function EO(e,t){return new e({type:"never",...nt(t)})}function I0(e,t){return new $1({check:"less_than",...nt(t),value:e,inclusive:!1})}function jf(e,t){return new $1({check:"less_than",...nt(t),value:e,inclusive:!0})}function _0(e,t){return new N1({check:"greater_than",...nt(t),value:e,inclusive:!1})}function Mf(e,t){return new N1({check:"greater_than",...nt(t),value:e,inclusive:!0})}function C0(e,t){return new Fj({check:"multiple_of",...nt(t),value:e})}function V1(e,t){return new Kj({check:"max_length",...nt(t),maximum:e})}function Ku(e,t){return new Wj({check:"min_length",...nt(t),minimum:e})}function K1(e,t){return new Gj({check:"length_equals",...nt(t),length:e})}function jO(e,t){return new Jj({check:"string_format",format:"regex",...nt(t),pattern:e})}function MO(e){return new Zj({check:"string_format",format:"lowercase",...nt(e)})}function OO(e){return new Yj({check:"string_format",format:"uppercase",...nt(e)})}function $O(e,t){return new Qj({check:"string_format",format:"includes",...nt(t),includes:e})}function NO(e,t){return new Xj({check:"string_format",format:"starts_with",...nt(t),prefix:e})}function DO(e,t){return new eM({check:"string_format",format:"ends_with",...nt(t),suffix:e})}function ll(e){return new tM({check:"overwrite",tx:e})}function HO(e){return ll(t=>t.normalize(e))}function LO(){return ll(e=>e.trim())}function qO(){return ll(e=>e.toLowerCase())}function UO(){return ll(e=>e.toUpperCase())}function zO(){return ll(e=>KE(e))}function BO(e,t,n){return new e({type:"array",element:t,...nt(n)})}function FO(e,t,n){const a=nt(n);return a.abort??(a.abort=!0),new e({type:"custom",check:"custom",fn:t,...a})}function VO(e,t,n){return new e({type:"custom",check:"custom",fn:t,...nt(n)})}function KO(e,t){const n=WO(a=>(a.addIssue=o=>{if(typeof o=="string")a.issues.push(Sc(o,a.value,n._zod.def));else{const r=o;r.fatal&&(r.continue=!1),r.code??(r.code="custom"),r.input??(r.input=a.value),r.inst??(r.inst=n),r.continue??(r.continue=!n._zod.def.abort),a.issues.push(Sc(r))}},e(a.value,a)),t);return n}function WO(e,t){const n=new Sa({check:"custom",...nt(t)});return n._zod.check=e,n}function W1(e){let t=e?.target??"draft-2020-12";return t==="draft-4"&&(t="draft-04"),t==="draft-7"&&(t="draft-07"),{processors:e.processors??{},metadataRegistry:e?.metadata??Yl,target:t,unrepresentable:e?.unrepresentable??"throw",override:e?.override??(()=>{}),io:e?.io??"output",counter:0,seen:new Map,cycles:e?.cycles??"ref",reused:e?.reused??"inline",external:e?.external??void 0}}function yn(e,t,n={path:[],schemaPath:[]}){var a;const o=e._zod.def,r=t.seen.get(e);if(r)return r.count++,n.schemaPath.includes(e)&&(r.cycle=n.path),r.schema;const s={schema:{},count:1,cycle:void 0,path:n.path};t.seen.set(e,s);const c=e._zod.toJSONSchema?.();if(c)s.schema=c;else{const f={...n,schemaPath:[...n.schemaPath,e],path:n.path};if(e._zod.processJSONSchema)e._zod.processJSONSchema(t,s.schema,f);else{const x=s.schema,k=t.processors[o.type];if(!k)throw new Error(`[toJSONSchema]: Non-representable type encountered: ${o.type}`);k(e,t,x,f)}const h=e._zod.parent;h&&(s.ref||(s.ref=h),yn(h,t,f),t.seen.get(h).isParent=!0)}const m=t.metadataRegistry.get(e);return m&&Object.assign(s.schema,m),t.io==="input"&&na(e)&&(delete s.schema.examples,delete s.schema.default),t.io==="input"&&"_prefault"in s.schema&&((a=s.schema).default??(a.default=s.schema._prefault)),delete s.schema._prefault,t.seen.get(e).schema}function G1(e,t){const n=e.seen.get(t);if(!n)throw new Error("Unprocessed schema. This is a bug in Zod.");const a=new Map;for(const s of e.seen.entries()){const c=e.metadataRegistry.get(s[0])?.id;if(c){const m=a.get(c);if(m&&m!==s[0])throw new Error(`Duplicate schema id "${c}" detected during JSON Schema conversion. Two different schemas cannot share the same id when converted together.`);a.set(c,s[0])}}const o=s=>{const c=e.target==="draft-2020-12"?"$defs":"definitions";if(e.external){const h=e.external.registry.get(s[0])?.id,x=e.external.uri??(_=>_);if(h)return{ref:x(h)};const k=s[1].defId??s[1].schema.id??`schema${e.counter++}`;return s[1].defId=k,{defId:k,ref:`${x("__shared")}#/${c}/${k}`}}if(s[1]===n)return{ref:"#"};const u=`#/${c}/`,f=s[1].schema.id??`__schema${e.counter++}`;return{defId:f,ref:u+f}},r=s=>{if(s[1].schema.$ref)return;const c=s[1],{ref:m,defId:u}=o(s);c.def={...c.schema},u&&(c.defId=u);const f=c.schema;for(const h in f)delete f[h];f.$ref=m};if(e.cycles==="throw")for(const s of e.seen.entries()){const c=s[1];if(c.cycle)throw new Error(`Cycle detected: #/${c.cycle?.join("/")}/<root>
70
-
71
- Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(const s of e.seen.entries()){const c=s[1];if(t===s[0]){r(s);continue}if(e.external){const u=e.external.registry.get(s[0])?.id;if(t!==s[0]&&u){r(s);continue}}if(e.metadataRegistry.get(s[0])?.id){r(s);continue}if(c.cycle){r(s);continue}if(c.count>1&&e.reused==="ref"){r(s);continue}}}function J1(e,t){const n=e.seen.get(t);if(!n)throw new Error("Unprocessed schema. This is a bug in Zod.");const a=c=>{const m=e.seen.get(c);if(m.ref===null)return;const u=m.def??m.schema,f={...u},h=m.ref;if(m.ref=null,h){a(h);const k=e.seen.get(h),_=k.schema;if(_.$ref&&(e.target==="draft-07"||e.target==="draft-04"||e.target==="openapi-3.0")?(u.allOf=u.allOf??[],u.allOf.push(_)):Object.assign(u,_),Object.assign(u,f),c._zod.parent===h)for(const E in u)E==="$ref"||E==="allOf"||E in f||delete u[E];if(_.$ref&&k.def)for(const E in u)E==="$ref"||E==="allOf"||E in k.def&&JSON.stringify(u[E])===JSON.stringify(k.def[E])&&delete u[E]}const x=c._zod.parent;if(x&&x!==h){a(x);const k=e.seen.get(x);if(k?.schema.$ref&&(u.$ref=k.schema.$ref,k.def))for(const _ in u)_==="$ref"||_==="allOf"||_ in k.def&&JSON.stringify(u[_])===JSON.stringify(k.def[_])&&delete u[_]}e.override({zodSchema:c,jsonSchema:u,path:m.path??[]})};for(const c of[...e.seen.entries()].reverse())a(c[0]);const o={};if(e.target==="draft-2020-12"?o.$schema="https://json-schema.org/draft/2020-12/schema":e.target==="draft-07"?o.$schema="http://json-schema.org/draft-07/schema#":e.target==="draft-04"?o.$schema="http://json-schema.org/draft-04/schema#":e.target,e.external?.uri){const c=e.external.registry.get(t)?.id;if(!c)throw new Error("Schema is missing an `id` property");o.$id=e.external.uri(c)}Object.assign(o,n.def??n.schema);const r=e.metadataRegistry.get(t)?.id;r!==void 0&&o.id===r&&delete o.id;const s=e.external?.defs??{};for(const c of e.seen.entries()){const m=c[1];m.def&&m.defId&&(m.def.id===m.defId&&delete m.def.id,s[m.defId]=m.def)}e.external||Object.keys(s).length>0&&(e.target==="draft-2020-12"?o.$defs=s:o.definitions=s);try{const c=JSON.parse(JSON.stringify(o));return Object.defineProperty(c,"~standard",{value:{...t["~standard"],jsonSchema:{input:Wu(t,"input",e.processors),output:Wu(t,"output",e.processors)}},enumerable:!1,writable:!1}),c}catch{throw new Error("Error converting schema to JSON.")}}function na(e,t){const n=t??{seen:new Set};if(n.seen.has(e))return!1;n.seen.add(e);const a=e._zod.def;if(a.type==="transform")return!0;if(a.type==="array")return na(a.element,n);if(a.type==="set")return na(a.valueType,n);if(a.type==="lazy")return na(a.getter(),n);if(a.type==="promise"||a.type==="optional"||a.type==="nonoptional"||a.type==="nullable"||a.type==="readonly"||a.type==="default"||a.type==="prefault")return na(a.innerType,n);if(a.type==="intersection")return na(a.left,n)||na(a.right,n);if(a.type==="record"||a.type==="map")return na(a.keyType,n)||na(a.valueType,n);if(a.type==="pipe")return e._zod.traits.has("$ZodCodec")?!0:na(a.in,n)||na(a.out,n);if(a.type==="object"){for(const o in a.shape)if(na(a.shape[o],n))return!0;return!1}if(a.type==="union"){for(const o of a.options)if(na(o,n))return!0;return!1}if(a.type==="tuple"){for(const o of a.items)if(na(o,n))return!0;return!!(a.rest&&na(a.rest,n))}return!1}const GO=(e,t={})=>n=>{const a=W1({...n,processors:t});return yn(e,a),G1(a,e),J1(a,e)},Wu=(e,t,n={})=>a=>{const{libraryOptions:o,target:r}=a??{},s=W1({...o??{},target:r,io:t,processors:n});return yn(e,s),G1(s,e),J1(s,e)},JO={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},ZO=(e,t,n,a)=>{const o=n;o.type="string";const{minimum:r,maximum:s,format:c,patterns:m,contentEncoding:u}=e._zod.bag;if(typeof r=="number"&&(o.minLength=r),typeof s=="number"&&(o.maxLength=s),c&&(o.format=JO[c]??c,o.format===""&&delete o.format,c==="time"&&delete o.format),u&&(o.contentEncoding=u),m&&m.size>0){const f=[...m];f.length===1?o.pattern=f[0].source:f.length>1&&(o.allOf=[...f.map(h=>({...t.target==="draft-07"||t.target==="draft-04"||t.target==="openapi-3.0"?{type:"string"}:{},pattern:h.source}))])}},YO=(e,t,n,a)=>{const o=n,{minimum:r,maximum:s,format:c,multipleOf:m,exclusiveMaximum:u,exclusiveMinimum:f}=e._zod.bag;typeof c=="string"&&c.includes("int")?o.type="integer":o.type="number";const h=typeof f=="number"&&f>=(r??Number.NEGATIVE_INFINITY),x=typeof u=="number"&&u<=(s??Number.POSITIVE_INFINITY),k=t.target==="draft-04"||t.target==="openapi-3.0";h?k?(o.minimum=f,o.exclusiveMinimum=!0):o.exclusiveMinimum=f:typeof r=="number"&&(o.minimum=r),x?k?(o.maximum=u,o.exclusiveMaximum=!0):o.exclusiveMaximum=u:typeof s=="number"&&(o.maximum=s),typeof m=="number"&&(o.multipleOf=m)},QO=(e,t,n,a)=>{n.type="boolean"},XO=(e,t,n,a)=>{t.target==="openapi-3.0"?(n.type="string",n.nullable=!0,n.enum=[null]):n.type="null"},e2=(e,t,n,a)=>{n.not={}},t2=(e,t,n,a)=>{},n2=(e,t,n,a)=>{const o=e._zod.def,r=I1(o.entries);r.every(s=>typeof s=="number")&&(n.type="number"),r.every(s=>typeof s=="string")&&(n.type="string"),n.enum=r},a2=(e,t,n,a)=>{const o=e._zod.def,r=[];for(const s of o.values)if(s===void 0){if(t.unrepresentable==="throw")throw new Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof s=="bigint"){if(t.unrepresentable==="throw")throw new Error("BigInt literals cannot be represented in JSON Schema");r.push(Number(s))}else r.push(s);if(r.length!==0)if(r.length===1){const s=r[0];n.type=s===null?"null":typeof s,t.target==="draft-04"||t.target==="openapi-3.0"?n.enum=[s]:n.const=s}else r.every(s=>typeof s=="number")&&(n.type="number"),r.every(s=>typeof s=="string")&&(n.type="string"),r.every(s=>typeof s=="boolean")&&(n.type="boolean"),r.every(s=>s===null)&&(n.type="null"),n.enum=r},i2=(e,t,n,a)=>{if(t.unrepresentable==="throw")throw new Error("Custom types cannot be represented in JSON Schema")},o2=(e,t,n,a)=>{if(t.unrepresentable==="throw")throw new Error("Transforms cannot be represented in JSON Schema")},r2=(e,t,n,a)=>{const o=n,r=e._zod.def,{minimum:s,maximum:c}=e._zod.bag;typeof s=="number"&&(o.minItems=s),typeof c=="number"&&(o.maxItems=c),o.type="array",o.items=yn(r.element,t,{...a,path:[...a.path,"items"]})},s2=(e,t,n,a)=>{const o=n,r=e._zod.def;o.type="object",o.properties={};const s=r.shape;for(const u in s)o.properties[u]=yn(s[u],t,{...a,path:[...a.path,"properties",u]});const c=new Set(Object.keys(s)),m=new Set([...c].filter(u=>{const f=r.shape[u]._zod;return t.io==="input"?f.optin===void 0:f.optout===void 0}));m.size>0&&(o.required=Array.from(m)),r.catchall?._zod.def.type==="never"?o.additionalProperties=!1:r.catchall?r.catchall&&(o.additionalProperties=yn(r.catchall,t,{...a,path:[...a.path,"additionalProperties"]})):t.io==="output"&&(o.additionalProperties=!1)},l2=(e,t,n,a)=>{const o=e._zod.def,r=o.inclusive===!1,s=o.options.map((c,m)=>yn(c,t,{...a,path:[...a.path,r?"oneOf":"anyOf",m]}));r?n.oneOf=s:n.anyOf=s},c2=(e,t,n,a)=>{const o=e._zod.def,r=yn(o.left,t,{...a,path:[...a.path,"allOf",0]}),s=yn(o.right,t,{...a,path:[...a.path,"allOf",1]}),c=u=>"allOf"in u&&Object.keys(u).length===1,m=[...c(r)?r.allOf:[r],...c(s)?s.allOf:[s]];n.allOf=m},d2=(e,t,n,a)=>{const o=n,r=e._zod.def;o.type="object";const s=r.keyType,m=s._zod.bag?.patterns;if(r.mode==="loose"&&m&&m.size>0){const f=yn(r.valueType,t,{...a,path:[...a.path,"patternProperties","*"]});o.patternProperties={};for(const h of m)o.patternProperties[h.source]=f}else(t.target==="draft-07"||t.target==="draft-2020-12")&&(o.propertyNames=yn(r.keyType,t,{...a,path:[...a.path,"propertyNames"]})),o.additionalProperties=yn(r.valueType,t,{...a,path:[...a.path,"additionalProperties"]});const u=s._zod.values;if(u){const f=[...u].filter(h=>typeof h=="string"||typeof h=="number");f.length>0&&(o.required=f)}},u2=(e,t,n,a)=>{const o=e._zod.def,r=yn(o.innerType,t,a),s=t.seen.get(e);t.target==="openapi-3.0"?(s.ref=o.innerType,n.nullable=!0):n.anyOf=[r,{type:"null"}]},m2=(e,t,n,a)=>{const o=e._zod.def;yn(o.innerType,t,a);const r=t.seen.get(e);r.ref=o.innerType},p2=(e,t,n,a)=>{const o=e._zod.def;yn(o.innerType,t,a);const r=t.seen.get(e);r.ref=o.innerType,n.default=JSON.parse(JSON.stringify(o.defaultValue))},f2=(e,t,n,a)=>{const o=e._zod.def;yn(o.innerType,t,a);const r=t.seen.get(e);r.ref=o.innerType,t.io==="input"&&(n._prefault=JSON.parse(JSON.stringify(o.defaultValue)))},h2=(e,t,n,a)=>{const o=e._zod.def;yn(o.innerType,t,a);const r=t.seen.get(e);r.ref=o.innerType;let s;try{s=o.catchValue(void 0)}catch{throw new Error("Dynamic catch values are not supported in JSON Schema")}n.default=s},g2=(e,t,n,a)=>{const o=e._zod.def,r=o.in._zod.traits.has("$ZodTransform"),s=t.io==="input"?r?o.out:o.in:o.out;yn(s,t,a);const c=t.seen.get(e);c.ref=s},v2=(e,t,n,a)=>{const o=e._zod.def;yn(o.innerType,t,a);const r=t.seen.get(e);r.ref=o.innerType,n.readOnly=!0},Z1=(e,t,n,a)=>{const o=e._zod.def;yn(o.innerType,t,a);const r=t.seen.get(e);r.ref=o.innerType},b2=(e,t,n,a)=>{const o=e._zod.innerType;yn(o,t,a);const r=t.seen.get(e);r.ref=o},y2=_e("ZodISODateTime",(e,t)=>{hM.init(e,t),mn.init(e,t)});function on(e){return kO(y2,e)}const S2=_e("ZodISODate",(e,t)=>{gM.init(e,t),mn.init(e,t)});function x2(e){return wO(S2,e)}const k2=_e("ZodISOTime",(e,t)=>{vM.init(e,t),mn.init(e,t)});function w2(e){return IO(k2,e)}const I2=_e("ZodISODuration",(e,t)=>{bM.init(e,t),mn.init(e,t)});function _2(e){return _O(I2,e)}const Y1=(e,t)=>{P1.init(e,t),e.name="ZodError",Object.defineProperties(e,{format:{value:n=>rj(e,n)},flatten:{value:n=>oj(e,n)},addIssue:{value:n=>{e.issues.push(n),e.message=JSON.stringify(e.issues,sg,2)}},addIssues:{value:n=>{e.issues.push(...n),e.message=JSON.stringify(e.issues,sg,2)}},isEmpty:{get(){return e.issues.length===0}}})},C2=_e("ZodError",Y1),Za=_e("ZodError",Y1,{Parent:Error}),R2=xv(Za),P2=kv(Za),A2=_m(Za),T2=Cm(Za),E2=cj(Za),j2=dj(Za),M2=uj(Za),O2=mj(Za),$2=pj(Za),N2=fj(Za),D2=hj(Za),H2=gj(Za),R0=new WeakMap;function Kc(e,t,n){const a=Object.getPrototypeOf(e);let o=R0.get(a);if(o||(o=new Set,R0.set(a,o)),!o.has(t)){o.add(t);for(const r in n){const s=n[r];Object.defineProperty(a,r,{configurable:!0,enumerable:!1,get(){const c=s.bind(this);return Object.defineProperty(this,r,{configurable:!0,writable:!0,enumerable:!0,value:c}),c},set(c){Object.defineProperty(this,r,{configurable:!0,writable:!0,enumerable:!0,value:c})}})}}}const sn=_e("ZodType",(e,t)=>(rn.init(e,t),Object.assign(e["~standard"],{jsonSchema:{input:Wu(e,"input"),output:Wu(e,"output")}}),e.toJSONSchema=GO(e,{}),e.def=t,e.type=t.type,Object.defineProperty(e,"_def",{value:t}),e.parse=(n,a)=>R2(e,n,a,{callee:e.parse}),e.safeParse=(n,a)=>A2(e,n,a),e.parseAsync=async(n,a)=>P2(e,n,a,{callee:e.parseAsync}),e.safeParseAsync=async(n,a)=>T2(e,n,a),e.spa=e.safeParseAsync,e.encode=(n,a)=>E2(e,n,a),e.decode=(n,a)=>j2(e,n,a),e.encodeAsync=async(n,a)=>M2(e,n,a),e.decodeAsync=async(n,a)=>O2(e,n,a),e.safeEncode=(n,a)=>$2(e,n,a),e.safeDecode=(n,a)=>N2(e,n,a),e.safeEncodeAsync=async(n,a)=>D2(e,n,a),e.safeDecodeAsync=async(n,a)=>H2(e,n,a),Kc(e,"ZodType",{check(...n){const a=this.def;return this.clone(Yo(a,{checks:[...a.checks??[],...n.map(o=>typeof o=="function"?{_zod:{check:o,def:{check:"custom"},onattach:[]}}:o)]}),{parent:!0})},with(...n){return this.check(...n)},clone(n,a){return Qo(this,n,a)},brand(){return this},register(n,a){return n.add(this,a),this},refine(n,a){return this.check(P$(n,a))},superRefine(n,a){return this.check(A$(n,a))},overwrite(n){return this.check(ll(n))},optional(){return E0(this)},exactOptional(){return h$(this)},nullable(){return j0(this)},nullish(){return E0(j0(this))},nonoptional(n){return x$(this,n)},array(){return p(this)},or(n){return vt([this,n])},and(n){return u$(this,n)},transform(n){return M0(this,aw(n))},default(n){return b$(this,n)},prefault(n){return S$(this,n)},catch(n){return w$(this,n)},pipe(n){return M0(this,n)},readonly(){return C$(this)},describe(n){const a=this.clone();return Yl.add(a,{description:n}),a},meta(...n){if(n.length===0)return Yl.get(this);const a=this.clone();return Yl.add(a,n[0]),a},isOptional(){return this.safeParse(void 0).success},isNullable(){return this.safeParse(null).success},apply(n){return n(this)}}),Object.defineProperty(e,"description",{get(){return Yl.get(e)?.description},configurable:!0}),e)),Q1=_e("_ZodString",(e,t)=>{wv.init(e,t),sn.init(e,t),e._zod.processJSONSchema=(a,o,r)=>ZO(e,a,o);const n=e._zod.bag;e.format=n.format??null,e.minLength=n.minimum??null,e.maxLength=n.maximum??null,Kc(e,"_ZodString",{regex(...a){return this.check(jO(...a))},includes(...a){return this.check($O(...a))},startsWith(...a){return this.check(NO(...a))},endsWith(...a){return this.check(DO(...a))},min(...a){return this.check(Ku(...a))},max(...a){return this.check(V1(...a))},length(...a){return this.check(K1(...a))},nonempty(...a){return this.check(Ku(1,...a))},lowercase(a){return this.check(MO(a))},uppercase(a){return this.check(OO(a))},trim(){return this.check(LO())},normalize(...a){return this.check(HO(...a))},toLowerCase(){return this.check(qO())},toUpperCase(){return this.check(UO())},slugify(){return this.check(zO())}})}),L2=_e("ZodString",(e,t)=>{wv.init(e,t),Q1.init(e,t),e.email=n=>e.check(nO(q2,n)),e.url=n=>e.check(rO(U2,n)),e.jwt=n=>e.check(xO(n$,n)),e.emoji=n=>e.check(sO(z2,n)),e.guid=n=>e.check(w0(P0,n)),e.uuid=n=>e.check(F1(Ql,n)),e.uuidv4=n=>e.check(aO(Ql,n)),e.uuidv6=n=>e.check(iO(Ql,n)),e.uuidv7=n=>e.check(oO(Ql,n)),e.nanoid=n=>e.check(lO(B2,n)),e.guid=n=>e.check(w0(P0,n)),e.cuid=n=>e.check(cO(F2,n)),e.cuid2=n=>e.check(dO(V2,n)),e.ulid=n=>e.check(uO(K2,n)),e.base64=n=>e.check(bO(X2,n)),e.base64url=n=>e.check(yO(e$,n)),e.xid=n=>e.check(mO(W2,n)),e.ksuid=n=>e.check(pO(G2,n)),e.ipv4=n=>e.check(fO(J2,n)),e.ipv6=n=>e.check(hO(Z2,n)),e.cidrv4=n=>e.check(gO(Y2,n)),e.cidrv6=n=>e.check(vO(Q2,n)),e.e164=n=>e.check(SO(t$,n)),e.datetime=n=>e.check(on(n)),e.date=n=>e.check(x2(n)),e.time=n=>e.check(w2(n)),e.duration=n=>e.check(_2(n))});function i(e){return tO(L2,e)}const mn=_e("ZodStringFormat",(e,t)=>{un.init(e,t),Q1.init(e,t)}),q2=_e("ZodEmail",(e,t)=>{rM.init(e,t),mn.init(e,t)}),P0=_e("ZodGUID",(e,t)=>{iM.init(e,t),mn.init(e,t)}),Ql=_e("ZodUUID",(e,t)=>{oM.init(e,t),mn.init(e,t)});function Pm(e){return F1(Ql,e)}const U2=_e("ZodURL",(e,t)=>{sM.init(e,t),mn.init(e,t)}),z2=_e("ZodEmoji",(e,t)=>{lM.init(e,t),mn.init(e,t)}),B2=_e("ZodNanoID",(e,t)=>{cM.init(e,t),mn.init(e,t)}),F2=_e("ZodCUID",(e,t)=>{dM.init(e,t),mn.init(e,t)}),V2=_e("ZodCUID2",(e,t)=>{uM.init(e,t),mn.init(e,t)}),K2=_e("ZodULID",(e,t)=>{mM.init(e,t),mn.init(e,t)}),W2=_e("ZodXID",(e,t)=>{pM.init(e,t),mn.init(e,t)}),G2=_e("ZodKSUID",(e,t)=>{fM.init(e,t),mn.init(e,t)}),J2=_e("ZodIPv4",(e,t)=>{yM.init(e,t),mn.init(e,t)}),Z2=_e("ZodIPv6",(e,t)=>{SM.init(e,t),mn.init(e,t)}),Y2=_e("ZodCIDRv4",(e,t)=>{xM.init(e,t),mn.init(e,t)}),Q2=_e("ZodCIDRv6",(e,t)=>{kM.init(e,t),mn.init(e,t)}),X2=_e("ZodBase64",(e,t)=>{wM.init(e,t),mn.init(e,t)}),e$=_e("ZodBase64URL",(e,t)=>{_M.init(e,t),mn.init(e,t)}),t$=_e("ZodE164",(e,t)=>{CM.init(e,t),mn.init(e,t)}),n$=_e("ZodJWT",(e,t)=>{PM.init(e,t),mn.init(e,t)}),X1=_e("ZodNumber",(e,t)=>{H1.init(e,t),sn.init(e,t),e._zod.processJSONSchema=(a,o,r)=>YO(e,a,o),Kc(e,"ZodNumber",{gt(a,o){return this.check(_0(a,o))},gte(a,o){return this.check(Mf(a,o))},min(a,o){return this.check(Mf(a,o))},lt(a,o){return this.check(I0(a,o))},lte(a,o){return this.check(jf(a,o))},max(a,o){return this.check(jf(a,o))},int(a){return this.check(A0(a))},safe(a){return this.check(A0(a))},positive(a){return this.check(_0(0,a))},nonnegative(a){return this.check(Mf(0,a))},negative(a){return this.check(I0(0,a))},nonpositive(a){return this.check(jf(0,a))},multipleOf(a,o){return this.check(C0(a,o))},step(a,o){return this.check(C0(a,o))},finite(){return this}});const n=e._zod.bag;e.minValue=Math.max(n.minimum??Number.NEGATIVE_INFINITY,n.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,e.maxValue=Math.min(n.maximum??Number.POSITIVE_INFINITY,n.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,e.isInt=(n.format??"").includes("int")||Number.isSafeInteger(n.multipleOf??.5),e.isFinite=!0,e.format=n.format??null});function d(e){return CO(X1,e)}const a$=_e("ZodNumberFormat",(e,t)=>{AM.init(e,t),X1.init(e,t)});function A0(e){return RO(a$,e)}const i$=_e("ZodBoolean",(e,t)=>{TM.init(e,t),sn.init(e,t),e._zod.processJSONSchema=(n,a,o)=>QO(e,n,a)});function I(e){return PO(i$,e)}const o$=_e("ZodNull",(e,t)=>{EM.init(e,t),sn.init(e,t),e._zod.processJSONSchema=(n,a,o)=>XO(e,n,a)});function cl(e){return AO(o$,e)}const r$=_e("ZodUnknown",(e,t)=>{jM.init(e,t),sn.init(e,t),e._zod.processJSONSchema=(n,a,o)=>t2()});function ce(){return TO(r$)}const s$=_e("ZodNever",(e,t)=>{MM.init(e,t),sn.init(e,t),e._zod.processJSONSchema=(n,a,o)=>e2(e,n,a)});function ew(e){return EO(s$,e)}const l$=_e("ZodArray",(e,t)=>{OM.init(e,t),sn.init(e,t),e._zod.processJSONSchema=(n,a,o)=>r2(e,n,a,o),e.element=t.element,Kc(e,"ZodArray",{min(n,a){return this.check(Ku(n,a))},nonempty(n){return this.check(Ku(1,n))},max(n,a){return this.check(V1(n,a))},length(n,a){return this.check(K1(n,a))},unwrap(){return this.element}})});function p(e,t){return BO(l$,e,t)}const tw=_e("ZodObject",(e,t)=>{NM.init(e,t),sn.init(e,t),e._zod.processJSONSchema=(n,a,o)=>s2(e,n,a,o),Tt(e,"shape",()=>t.shape),Kc(e,"ZodObject",{keyof(){return v(Object.keys(this._zod.def.shape))},catchall(n){return this.clone({...this._zod.def,catchall:n})},passthrough(){return this.clone({...this._zod.def,catchall:ce()})},loose(){return this.clone({...this._zod.def,catchall:ce()})},strict(){return this.clone({...this._zod.def,catchall:ew()})},strip(){return this.clone({...this._zod.def,catchall:void 0})},extend(n){return XE(this,n)},safeExtend(n){return ej(this,n)},merge(n){return tj(this,n)},pick(n){return YE(this,n)},omit(n){return QE(this,n)},partial(...n){return nj(iw,this,n[0])},required(...n){return aj(ow,this,n[0])}})});function l(e,t){const n={type:"object",shape:e??{},...nt(t)};return new tw(n)}function Of(e,t){return new tw({type:"object",shape:e,catchall:ew(),...nt(t)})}const nw=_e("ZodUnion",(e,t)=>{U1.init(e,t),sn.init(e,t),e._zod.processJSONSchema=(n,a,o)=>l2(e,n,a,o),e.options=t.options});function vt(e,t){return new nw({type:"union",options:e,...nt(t)})}const c$=_e("ZodDiscriminatedUnion",(e,t)=>{nw.init(e,t),DM.init(e,t)});function ot(e,t,n){return new c$({type:"union",options:t,discriminator:e,...nt(n)})}const d$=_e("ZodIntersection",(e,t)=>{HM.init(e,t),sn.init(e,t),e._zod.processJSONSchema=(n,a,o)=>c2(e,n,a,o)});function u$(e,t){return new d$({type:"intersection",left:e,right:t})}const T0=_e("ZodRecord",(e,t)=>{LM.init(e,t),sn.init(e,t),e._zod.processJSONSchema=(n,a,o)=>d2(e,n,a,o),e.keyType=t.keyType,e.valueType=t.valueType});function le(e,t,n){return!t||!t._zod?new T0({type:"record",keyType:i(),valueType:e,...nt(t)}):new T0({type:"record",keyType:e,valueType:t,...nt(n)})}const cg=_e("ZodEnum",(e,t)=>{qM.init(e,t),sn.init(e,t),e._zod.processJSONSchema=(a,o,r)=>n2(e,a,o),e.enum=t.entries,e.options=Object.values(t.entries);const n=new Set(Object.keys(t.entries));e.extract=(a,o)=>{const r={};for(const s of a)if(n.has(s))r[s]=t.entries[s];else throw new Error(`Key ${s} not found in enum`);return new cg({...t,checks:[],...nt(o),entries:r})},e.exclude=(a,o)=>{const r={...t.entries};for(const s of a)if(n.has(s))delete r[s];else throw new Error(`Key ${s} not found in enum`);return new cg({...t,checks:[],...nt(o),entries:r})}});function v(e,t){const n=Array.isArray(e)?Object.fromEntries(e.map(a=>[a,a])):e;return new cg({type:"enum",entries:n,...nt(t)})}const m$=_e("ZodLiteral",(e,t)=>{UM.init(e,t),sn.init(e,t),e._zod.processJSONSchema=(n,a,o)=>a2(e,n,a),e.values=new Set(t.values),Object.defineProperty(e,"value",{get(){if(t.values.length>1)throw new Error("This schema contains multiple valid literal values. Use `.values` instead.");return t.values[0]}})});function b(e,t){return new m$({type:"literal",values:Array.isArray(e)?e:[e],...nt(t)})}const p$=_e("ZodTransform",(e,t)=>{zM.init(e,t),sn.init(e,t),e._zod.processJSONSchema=(n,a,o)=>o2(e,n),e._zod.parse=(n,a)=>{if(a.direction==="backward")throw new w1(e.constructor.name);n.addIssue=r=>{if(typeof r=="string")n.issues.push(Sc(r,n.value,t));else{const s=r;s.fatal&&(s.continue=!1),s.code??(s.code="custom"),s.input??(s.input=n.value),s.inst??(s.inst=e),n.issues.push(Sc(s))}};const o=t.transform(n.value,n);return o instanceof Promise?o.then(r=>(n.value=r,n.fallback=!0,n)):(n.value=o,n.fallback=!0,n)}});function aw(e){return new p$({type:"transform",transform:e})}const iw=_e("ZodOptional",(e,t)=>{z1.init(e,t),sn.init(e,t),e._zod.processJSONSchema=(n,a,o)=>Z1(e,n,a,o),e.unwrap=()=>e._zod.def.innerType});function E0(e){return new iw({type:"optional",innerType:e})}const f$=_e("ZodExactOptional",(e,t)=>{BM.init(e,t),sn.init(e,t),e._zod.processJSONSchema=(n,a,o)=>Z1(e,n,a,o),e.unwrap=()=>e._zod.def.innerType});function h$(e){return new f$({type:"optional",innerType:e})}const g$=_e("ZodNullable",(e,t)=>{FM.init(e,t),sn.init(e,t),e._zod.processJSONSchema=(n,a,o)=>u2(e,n,a,o),e.unwrap=()=>e._zod.def.innerType});function j0(e){return new g$({type:"nullable",innerType:e})}const v$=_e("ZodDefault",(e,t)=>{VM.init(e,t),sn.init(e,t),e._zod.processJSONSchema=(n,a,o)=>p2(e,n,a,o),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function b$(e,t){return new v$({type:"default",innerType:e,get defaultValue(){return typeof t=="function"?t():C1(t)}})}const y$=_e("ZodPrefault",(e,t)=>{KM.init(e,t),sn.init(e,t),e._zod.processJSONSchema=(n,a,o)=>f2(e,n,a,o),e.unwrap=()=>e._zod.def.innerType});function S$(e,t){return new y$({type:"prefault",innerType:e,get defaultValue(){return typeof t=="function"?t():C1(t)}})}const ow=_e("ZodNonOptional",(e,t)=>{WM.init(e,t),sn.init(e,t),e._zod.processJSONSchema=(n,a,o)=>m2(e,n,a,o),e.unwrap=()=>e._zod.def.innerType});function x$(e,t){return new ow({type:"nonoptional",innerType:e,...nt(t)})}const k$=_e("ZodCatch",(e,t)=>{GM.init(e,t),sn.init(e,t),e._zod.processJSONSchema=(n,a,o)=>h2(e,n,a,o),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function w$(e,t){return new k$({type:"catch",innerType:e,catchValue:typeof t=="function"?t:()=>t})}const rw=_e("ZodPipe",(e,t)=>{B1.init(e,t),sn.init(e,t),e._zod.processJSONSchema=(n,a,o)=>g2(e,n,a,o),e.in=t.in,e.out=t.out});function M0(e,t){return new rw({type:"pipe",in:e,out:t})}const I$=_e("ZodPreprocess",(e,t)=>{rw.init(e,t),JM.init(e,t)}),_$=_e("ZodReadonly",(e,t)=>{ZM.init(e,t),sn.init(e,t),e._zod.processJSONSchema=(n,a,o)=>v2(e,n,a,o),e.unwrap=()=>e._zod.def.innerType});function C$(e){return new _$({type:"readonly",innerType:e})}const R$=_e("ZodLazy",(e,t)=>{YM.init(e,t),sn.init(e,t),e._zod.processJSONSchema=(n,a,o)=>b2(e,n,a,o),e.unwrap=()=>e._zod.def.getter()});function sw(e){return new R$({type:"lazy",getter:e})}const lw=_e("ZodCustom",(e,t)=>{QM.init(e,t),sn.init(e,t),e._zod.processJSONSchema=(n,a,o)=>i2(e,n)});function $f(e,t){return FO(lw,(()=>!0),t)}function P$(e,t={}){return VO(lw,e,t)}function A$(e,t){return KO(e,t)}function Ko(e){const t=sw(()=>vt([i(e),d(),I(),cl(),p(t),le(i(),t)]));return t}function T$(e,t){return new I$({type:"pipe",in:aw(e),out:t})}const ia={custom:"custom"},E$=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),j$=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]);let M$=class cw{state=new Uint32Array(E$);pending=new Uint8Array(64);pendingLength=0;byteLength=0;words=new Uint32Array(64);update(t){const n=typeof t=="string"?new TextEncoder().encode(t):t;if(!Number.isSafeInteger(this.byteLength+n.length))throw new RangeError("SHA-256 input is too large");this.byteLength+=n.length;let a=0;if(this.pendingLength){const o=Math.min(64-this.pendingLength,n.length);this.pending.set(n.subarray(0,o),this.pendingLength),this.pendingLength+=o,a+=o,this.pendingLength===64&&(this.compress(this.pending),this.pendingLength=0)}for(;a+64<=n.length;)this.compress(n.subarray(a,a+64)),a+=64;return a<n.length&&(this.pending.set(n.subarray(a)),this.pendingLength=n.length-a),this}clone(){const t=new cw;return t.state.set(this.state),t.pending.set(this.pending),t.pendingLength=this.pendingLength,t.byteLength=this.byteLength,t}digestHex(){const t=this.clone(),n=new Uint8Array(t.pendingLength<56?64:128);n.set(t.pending.subarray(0,t.pendingLength)),n[t.pendingLength]=128;const a=t.byteLength*8,o=new DataView(n.buffer);return o.setUint32(n.length-8,Math.floor(a/4294967296),!1),o.setUint32(n.length-4,a>>>0,!1),t.compress(n.subarray(0,64)),n.length===128&&t.compress(n.subarray(64)),Array.from(t.state,r=>r.toString(16).padStart(8,"0")).join("")}compress(t){const n=new DataView(t.buffer,t.byteOffset,64),a=this.state,o=this.words;for(let k=0;k<16;k+=1)o[k]=n.getUint32(k*4,!1);for(let k=16;k<64;k+=1){const _=o[k-15],P=o[k-2],E=wi(_,7)^wi(_,18)^_>>>3,A=wi(P,17)^wi(P,19)^P>>>10;o[k]=o[k-16]+E+o[k-7]+A>>>0}let r=a[0],s=a[1],c=a[2],m=a[3],u=a[4],f=a[5],h=a[6],x=a[7];for(let k=0;k<64;k+=1){const _=u&f^~u&h,P=r&s^r&c^s&c,E=wi(r,2)^wi(r,13)^wi(r,22),A=wi(u,6)^wi(u,11)^wi(u,25),$=x+A+_+j$[k]+o[k]>>>0,j=E+P>>>0;x=h,h=f,f=u,u=m+$>>>0,m=c,c=s,s=r,r=$+j>>>0}a[0]=a[0]+r>>>0,a[1]=a[1]+s>>>0,a[2]=a[2]+c>>>0,a[3]=a[3]+m>>>0,a[4]=a[4]+u>>>0,a[5]=a[5]+f>>>0,a[6]=a[6]+h>>>0,a[7]=a[7]+x>>>0}};function O$(e){return new M$().update(e).digestHex()}function wi(e,t){return e>>>t|e<<32-t}const $$=2e3,dw=25e7,T=i().trim().min(1).max(240),D=i().regex(/^[a-f0-9]{64}$/),ye=i().datetime({offset:!0}),Mn=le(i(),ce()).default({}),W=l({id:T,contentHash:D}).strict(),Qt=W.extend({revision:d().int().positive()}).strict(),bn=l({id:T,path:i().trim().min(1).max($$).refine(H$),contentHash:D,sizeBytes:d().int().nonnegative().max(dw),mediaType:i().trim().min(1).max(200),visibility:v(["policy","verifier","host_private"])}).strict(),ja=l({id:T,contentHash:D,mediaType:i().trim().min(1).max(200).nullable().default(null),sizeBytes:d().int().nonnegative().max(dw).nullable().default(null)}).strict(),Wc=v(["policy_failure","grader_failure","environment_failure","infrastructure_failure","timeout","cancelled"]);function N$(e){return`${JSON.stringify(dg(e),null,2)}
72
- `}function Iv(e){return O$(e)}function dt(e){return Iv(N$(e))}function D$(e,t){const{contentHash:n,...a}=e,o=dt(a);if(n!==o)throw new Error(`${t} contentHash is ${n}; expected ${o}.`)}function H$(e){const t=e.replaceAll("\\","/");return!t||t.startsWith("/")||t.includes("\0")?!1:!t.split("/").some(n=>!n||n==="."||n==="..")}function dg(e){return Array.isArray(e)?e.map(dg):!e||typeof e!="object"?e:Object.fromEntries(Object.entries(e).sort(([t],[n])=>t.localeCompare(n)).map(([t,n])=>[t,dg(n)]))}const Am=l({provider:T,model:T,revision:i().trim().min(1).max(500).nullable().default(null),artifactHash:D.nullable().default(null),tokenizerRevision:i().trim().min(1).max(500).nullable().default(null),chatTemplateHash:D.nullable().default(null)}).strict(),_v=["openpond","codex","claude-code","grok-build","opencode","anthropic","openai","xai","google","openrouter","deepseek","zai","moonshot","together","groq","custom-openai-compatible"],Nr=v(_v),Sn=l({providerId:Nr,modelId:i().trim().min(1).max(300)}),Tm=v(["active","preview","planned","deprecated"]),uw=v(["openpond-account","openpond-managed","codex-login","native-agent-login","chatgpt-subscription","local-byok","hosted-byok","custom"]),L$=v(["none","local_secret","env","openpond_account","codex_login","native_agent_login","chatgpt_subscription","hosted"]),O0=l({connected:I().default(!1),source:L$.default("none"),redacted:i().nullable().default(null),lastValidatedAt:i().nullable().default(null),lastError:i().nullable().default(null)}),ug=l({hostedOpChat:I().default(!1),localRuntime:I().default(!0),localByok:I().default(!1),hostedByok:I().default(!1)}),q$=v(["hosted","provider","manual","none"]),mg=l({chatCompletions:I().default(!0),streaming:I().default(!0),modelDiscovery:q$.default("none"),toolCalling:I().default(!1),reasoning:I().default(!1),imageInput:I().default(!1),structuredOutput:I().default(!1)}),U$=v(["hosted","provider","curated","manual","cache"]),pg=l({streaming:I().default(!0),toolCalling:I().default(!1),reasoning:I().default(!1),reasoningEfforts:p(v(["off","low","medium","high","xhigh","max"])).default([]),vision:I().default(!1),structuredOutput:I().default(!1)}),z$=l({id:i().trim().min(1).max(300),providerId:Nr,displayName:i().trim().min(1).max(300),contextWindow:d().int().positive().nullable().default(null),outputLimit:d().int().positive().nullable().default(null),lifecycleStatus:Tm.default("active"),source:U$,capabilities:pg.default(()=>pg.parse({})),raw:le(i(),ce()).optional()}),B$=l({providerId:Nr,models:p(z$).default([]),fetchedAt:i().nullable().default(null),lastError:i().nullable().default(null),source:v(["none","hosted","provider","curated","manual"]).default("none")}),F$=l({nativeMode:i().max(200).nullable().default(null),nativeOptions:le(i().max(200),i().max(300)).default({}),binaryPath:i().trim().min(1).max(4096).nullable().default(null),sourceHome:i().trim().min(1).max(4096).nullable().default(null),enabled:I().default(!1),baseUrl:i().trim().min(1).max(2048).nullable().default(null),defaultModel:i().trim().min(1).max(300).nullable().default(null),modelOverrides:p(i().trim().min(1).max(300)).max(500).default([]),updatedAt:i().nullable().default(null)}),V$=l({nativeMode:i().max(200).nullable().optional(),nativeOptions:le(i().max(200),i().max(300)).optional(),binaryPath:i().trim().min(1).max(4096).nullable().optional(),sourceHome:i().trim().min(1).max(4096).nullable().optional(),enabled:I().optional(),baseUrl:i().trim().min(1).max(2048).nullable().optional(),defaultModel:i().trim().min(1).max(300).nullable().optional(),modelOverrides:p(i().trim().min(1).max(300)).max(500).optional()}),K$=l({id:i().trim().min(1).max(300),displayName:i().trim().min(1).max(300),contextWindow:d().int().positive().nullable().optional(),outputLimit:d().int().positive().nullable().optional(),lifecycleStatus:Tm.optional(),capabilities:pg.partial().optional()}),W$=l({id:Nr,displayName:i().trim().min(1).max(160),lifecycleStatus:Tm.default("active"),credentialModes:p(uw).default([]),routing:ug,capabilities:mg,defaultEnabled:I().optional(),defaultBaseUrl:i().trim().min(1).max(2048).nullable().optional(),defaultModel:i().trim().min(1).max(300).nullable().optional(),modelCacheSource:v(["none","hosted","provider","curated","manual"]),models:p(K$).default([])});l({version:b(1).default(1),generatedAt:i().datetime(),providers:p(W$)});const G$=l({id:Nr,displayName:i().trim().min(1).max(160),lifecycleStatus:Tm.default("active"),credentialModes:p(uw).default([]),routing:ug.default(()=>ug.parse({})),capabilities:mg.default(()=>mg.parse({})),credential:O0.default(()=>O0.parse({})),enabled:I().default(!1),available:I().default(!1),defaultModel:i().trim().min(1).max(300).nullable().default(null),modelIds:p(i().trim().min(1).max(300)).max(1e3).default([]),lastError:i().nullable().default(null)}),$0=l({version:b(1).default(1),providers:le(i(),F$).default({}),statuses:le(i(),G$).default({}),modelCaches:le(i(),B$).default({}),updatedAt:i().nullable().default(null)});l({providers:le(i(),V$).optional()});l({source:v(["local_secret","env"]).default("local_secret"),value:i().min(1).max(2e4).optional(),envVar:i().trim().min(1).max(160).optional()}).superRefine((e,t)=>{e.source==="env"&&!e.envVar&&t.addIssue({code:"custom",path:["envVar"],message:"envVar is required when provider credential source is env."}),e.source==="local_secret"&&!e.value&&t.addIssue({code:"custom",path:["value"],message:"value is required when provider credential source is local_secret."})});l({source:v(["local_secret","env","chatgpt_subscription"]).optional()});l({modelId:i().trim().min(1).max(300).optional(),baseUrl:i().trim().min(1).max(2048).optional()});l({query:i().trim().max(200).optional(),refresh:I().default(!1),limit:d().int().positive().max(500).default(100)});l({query:i().trim().max(200).optional(),force:I().default(!1)});const J$=["coding","research","review","test","docs","planner","summarizer"];v(J$);const dl=i().trim().min(1).max(80).regex(/^[a-z][a-z0-9_-]*$/),mw=v(["none","worktree","copy_on_write"]),pw=v(["read_only","workspace_write","full_tools"]),fw=v(["disabled","parent_scoped"]),Em=v(["manual","balanced","proactive"]),Z$=v(["queued","running","completed","failed","cancelled","needs_resume"]),hw=["subagent.started","subagent.reported","subagent.completed","subagent.progress","subagent.failed","subagent.cancelled","subagent.cleanup","subagent.workspace_retained","subagent.workspace_retention_expiring","subagent.archived","subagent.message"];v(hw);const Y$=[{id:"coding",label:"Coding",description:"Make scoped code changes and return patch, diff, and test evidence.",defaultToolPolicy:"full_tools"},{id:"research",label:"Research",description:"Inspect docs, code, web or repo context and return cited findings.",defaultToolPolicy:"full_tools"},{id:"review",label:"Review",description:"Inspect diffs or implementation plans and return ranked findings.",defaultToolPolicy:"full_tools"},{id:"test",label:"Test",description:"Run or design validation in isolation and return command evidence.",defaultToolPolicy:"full_tools"},{id:"docs",label:"Docs",description:"Update or draft project documentation in an isolated target.",defaultToolPolicy:"full_tools"},{id:"planner",label:"Planner",description:"Decompose a goal into child assignments and context packs.",defaultToolPolicy:"full_tools"},{id:"summarizer",label:"Summarizer",description:"Compact transcripts, child results, and goal state for parent context.",defaultToolPolicy:"full_tools"}],Cv=l({id:dl,enabled:I().default(!0),modelRef:Sn.nullable().default(null),isolationMode:mw.default("none"),maxConcurrentRuns:d().int().min(1).max(16).default(1),toolPolicy:pw.default("read_only"),background:I().default(!0),peerMessages:fw.default("parent_scoped")}),xc=l({enabled:I().default(!0),workspaceDefaultsVersion:b(1).default(1),toolDefaultsVersion:b(1).default(1),delegationMode:Em.default("manual"),defaultModelRef:Sn.nullable().default(null),roles:p(Cv).max(64).default(()=>bw()),maxConcurrentRuns:d().int().min(1).max(32).default(4),maxConcurrentRunsPerProvider:d().int().min(1).max(32).nullable().default(2),maxConcurrentRunsPerWorkspaceTarget:d().int().min(1).max(32).nullable().default(1)}).transform(e=>({...e,roles:lN(e.roles)})),sc=l({kind:v(["session","turn","file","diff","artifact"]),id:i().trim().min(1).max(500),label:i().trim().min(1).max(500)}),Q$=l({kind:v(["retain_with_parent"]).default("retain_with_parent"),messageRetentionDays:d().int().min(1).max(3650).nullable().default(null),artifactRetentionDays:d().int().min(1).max(3650).nullable().default(null),cleanupAfterExpiry:I().default(!1)}).default(()=>({kind:"retain_with_parent",messageRetentionDays:null,artifactRetentionDays:null,cleanupAfterExpiry:!1})),X$=v(["orient","edit","validate","report"]),eN=l({command:i().trim().min(1).max(2e3),status:v(["passed","failed","unknown"]).default("unknown"),exitCode:d().int().nullable().default(null),outputSummary:i().trim().max(5e3).nullable().default(null),startedAt:i().nullable().default(null),completedAt:i().nullable().default(null)}),tN=l({phase:X$.default("orient"),inspectedFiles:p(i().trim().min(1).max(1e3)).max(500).default([]),inspectedResources:p(i().trim().min(1).max(1e3)).max(500).default([]),repeatedSearches:p(i().trim().min(1).max(1e3)).max(200).default([]),repeatedReads:p(i().trim().min(1).max(1e3)).max(200).default([]),repeatedCommands:p(i().trim().min(1).max(1e3)).max(200).default([]),changedFiles:p(i().trim().min(1).max(1e3)).max(500).default([]),patchRefs:p(sc).max(100).default([]),validationAttempts:p(eN).max(100).default([]),latestMeaningfulActivity:i().trim().max(5e3).nullable().default(null),currentBlocker:i().trim().max(5e3).nullable().default(null),updatedAt:i().nullable().default(null)}).default(()=>({phase:"orient",inspectedFiles:[],inspectedResources:[],repeatedSearches:[],repeatedReads:[],repeatedCommands:[],changedFiles:[],patchRefs:[],validationAttempts:[],latestMeaningfulActivity:null,currentBlocker:null,updatedAt:null})),nN=l({summary:i().trim().max(2e4).default(""),findings:p(i().trim().min(1).max(5e3)).max(200).default([]),artifacts:p(sc).max(200).default([]),patchRef:sc.nullable().default(null),diffRef:sc.nullable().default(null),testsRun:p(i().trim().min(1).max(2e3)).max(100).default([]),blockers:p(i().trim().min(1).max(5e3)).max(100).default([]),confidence:v(["low","medium","high"]).nullable().default(null),followUpNeeded:I().default(!1)}),gw=l({id:i().trim().min(1).max(200),parentSessionId:i().trim().min(1).max(200),parentTurnId:i().trim().min(1).max(200).nullable().default(null),childSessionId:i().trim().min(1).max(200).nullable().default(null),roleId:dl,objective:i().trim().min(1).max(5e4),modelRef:Sn.nullable().default(null),isolationMode:mw.default("none"),toolPolicy:pw.default("read_only"),background:I().default(!0),peerMessages:fw.default("parent_scoped"),status:Z$.default("queued"),progress:tN,evidenceRetention:Q$,createdAt:i(),startedAt:i().nullable().default(null),completedAt:i().nullable().default(null),updatedAt:i().nullable().default(null),error:i().nullable().default(null),report:nN.nullable().default(null),metadata:le(i(),ce()).optional().default({})}),vw=v(["cleanup","archive","cleanup_and_archive"]);l({action:vw,reason:i().trim().min(1).max(2e3).nullable().default(null)});l({action:vw,run:gw,workspaceCleanup:le(i(),ce()).nullable().default(null),sessionArchive:le(i(),ce()).nullable().default(null),nextStep:i()});const aN=v(["question","answer","handoff","artifact","status","blocker"]),iN=v(["normal","interrupt"]),oN=l({inputIds:p(i()).default([]),status:v(["pending","delivered","undelivered"]).default("pending"),deliveredRunIds:p(i().trim().min(1).max(200)).max(200).default([]),acknowledgedRunIds:p(i().trim().min(1).max(200)).max(200).default([]),deliveredParentSessionId:i().trim().min(1).max(200).nullable().default(null),acknowledgedParentSessionId:i().trim().min(1).max(200).nullable().default(null),wakeRequestedParentSessionId:i().trim().min(1).max(200).nullable().default(null),wakeQueuedParentSessionId:i().trim().min(1).max(200).nullable().default(null),wakeDeferredParentSessionId:i().trim().min(1).max(200).nullable().default(null),wakeParentReason:i().trim().min(1).max(1e3).nullable().default(null),wakeRequestedRunIds:p(i().trim().min(1).max(200)).max(200).default([]),wakeInterruptedRunIds:p(i().trim().min(1).max(200)).max(200).default([]),wakeDeferredRunIds:p(i().trim().min(1).max(200)).max(200).default([]),reason:i().trim().min(1).max(1e3).nullable().default(null)}),rN=l({id:i().trim().min(1).max(200),fromRunId:i().trim().min(1).max(200),toRunId:i().trim().min(1).max(200).nullable().default(null),toRole:dl.nullable().default(null),kind:aN,priority:iN.optional(),body:i().trim().min(1).max(5e4),refs:p(sc).max(100).default([]),delivery:oN.optional(),createdAt:i()});function bw(){return Y$.map(e=>Cv.parse({id:e.id,toolPolicy:e.defaultToolPolicy}))}function sN(){return xc.parse({})}function lN(e){const t=bw(),n=new Map(t.map(o=>[o.id,o])),a=[];for(const o of e??[]){const r=Cv.parse(o);n.has(r.id)?n.set(r.id,r):a.push(r)}return[...t.map(o=>n.get(o.id)??o),...a]}const cN=v(["task.inbox","task.input","task.wait","session.started","session.updated","session.title.updated","turn.started","assistant.delta","assistant.reasoning.delta","tool.started","tool.completed","skill.selected","skill.loaded","skill.load_failed","user_question.asked","user_question.answered","user_question.dismissed","approval.requested","approval.resolved","command.output","workspace_action","workspace_action_result","workspace.diff","create_improve.updated","session.context.updated","session.compaction.started","session.compaction.completed","session.compaction.failed","goal.continuation.started","goal.continuation.skipped","goal.continuation.failed","harness.refiner.queued","harness.refiner.started","harness.refiner.completed","harness.refiner.failed","turn.completed","turn.failed","turn.interrupted","session.closed",...hw,"diagnostic"]),N0=l({id:i(),sequence:d().int().positive().optional(),sessionId:i().optional(),turnId:i().optional(),name:cN,timestamp:i(),source:v(["ui_button","chat_action","terminal_command","hook","provider","server"]).optional(),action:i().optional(),appId:i().nullable().optional(),args:le(i(),ce()).optional(),status:v(["started","completed","failed","pending"]).optional(),output:i().optional(),error:i().optional(),relatedDeploymentId:i().optional(),data:ce().optional()}),dN=l({id:i().trim().min(1).max(80),label:i().trim().min(1).max(160),description:i().trim().max(500).nullable().optional().default(null)}),uN=l({id:i().trim().min(1),sessionId:i().trim().min(1),turnId:i().trim().min(1),toolCallId:i().trim().min(1),question:i().trim().min(1).max(2e3),reason:i().trim().max(1e3).nullable().optional().default(null),options:p(dN).max(5).default([]),allowFreeform:I().default(!0),status:v(["pending","answered","dismissed"]),answer:l({optionId:i().trim().min(1).nullable(),text:i().max(4e3)}).nullable(),createdAt:i(),answeredAt:i().nullable()}),mN=l({questionId:i().trim().min(1),action:v(["answer","dismiss"]),optionId:i().trim().min(1).nullable().optional().default(null),text:i().trim().max(4e3).optional().default("")});l({kind:v(["session","project","draft"]),id:i().trim().min(1).max(300)});v(["unknown","idle","running","success","failed"]);v(["none","idle","running","success","failed","unknown"]);function pN(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var Zn={},Gd={},Eo={},D0;function Gc(){if(D0)return Eo;D0=1;function e(s){return typeof s>"u"||s===null}function t(s){return typeof s=="object"&&s!==null}function n(s){return Array.isArray(s)?s:e(s)?[]:[s]}function a(s,c){if(c){const m=Object.keys(c);for(let u=0,f=m.length;u<f;u+=1){const h=m[u];s[h]=c[h]}}return s}function o(s,c){let m="";for(let u=0;u<c;u+=1)m+=s;return m}function r(s){return s===0&&Number.NEGATIVE_INFINITY===1/s}return Eo.isNothing=e,Eo.isObject=t,Eo.toArray=n,Eo.repeat=o,Eo.isNegativeZero=r,Eo.extend=a,Eo}var Nf,H0;function Jc(){if(H0)return Nf;H0=1;function e(n,a){let o="";const r=n.reason||"(unknown reason)";return n.mark?(n.mark.name&&(o+='in "'+n.mark.name+'" '),o+="("+(n.mark.line+1)+":"+(n.mark.column+1)+")",!a&&n.mark.snippet&&(o+=`
73
-
74
- `+n.mark.snippet),r+" "+o):r}function t(n,a){Error.call(this),this.name="YAMLException",this.reason=n,this.mark=a,this.message=e(this,!1),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack||""}return t.prototype=Object.create(Error.prototype),t.prototype.constructor=t,t.prototype.toString=function(a){return this.name+": "+e(this,a)},Nf=t,Nf}var Df,L0;function fN(){if(L0)return Df;L0=1;const e=Gc();function t(o,r,s,c,m){let u="",f="";const h=Math.floor(m/2)-1;return c-r>h&&(u=" ... ",r=c-h+u.length),s-c>h&&(f=" ...",s=c+h-f.length),{str:u+o.slice(r,s).replace(/\t/g,"→")+f,pos:c-r+u.length}}function n(o,r){return e.repeat(" ",r-o.length)+o}function a(o,r){if(r=Object.create(r||null),!o.buffer)return null;r.maxLength||(r.maxLength=79),typeof r.indent!="number"&&(r.indent=1),typeof r.linesBefore!="number"&&(r.linesBefore=3),typeof r.linesAfter!="number"&&(r.linesAfter=2);const s=/\r?\n|\r|\0/g,c=[0],m=[];let u,f=-1;for(;u=s.exec(o.buffer);)m.push(u.index),c.push(u.index+u[0].length),o.position<=u.index&&f<0&&(f=c.length-2);f<0&&(f=c.length-1);let h="";const x=Math.min(o.line+r.linesAfter,m.length).toString().length,k=r.maxLength-(r.indent+x+3);for(let P=1;P<=r.linesBefore&&!(f-P<0);P++){const E=t(o.buffer,c[f-P],m[f-P],o.position-(c[f]-c[f-P]),k);h=e.repeat(" ",r.indent)+n((o.line-P+1).toString(),x)+" | "+E.str+`
75
- `+h}const _=t(o.buffer,c[f],m[f],o.position,k);h+=e.repeat(" ",r.indent)+n((o.line+1).toString(),x)+" | "+_.str+`
76
- `,h+=e.repeat("-",r.indent+x+3+_.pos)+`^
77
- `;for(let P=1;P<=r.linesAfter&&!(f+P>=m.length);P++){const E=t(o.buffer,c[f+P],m[f+P],o.position-(c[f]-c[f+P]),k);h+=e.repeat(" ",r.indent)+n((o.line+P+1).toString(),x)+" | "+E.str+`
78
- `}return h.replace(/\n$/,"")}return Df=a,Df}var Hf,q0;function la(){if(q0)return Hf;q0=1;const e=Jc(),t=["kind","multi","resolve","construct","instanceOf","predicate","represent","representName","defaultStyle","styleAliases"],n=["scalar","sequence","mapping"];function a(r){const s={};return r!==null&&Object.keys(r).forEach(function(c){r[c].forEach(function(m){s[String(m)]=c})}),s}function o(r,s){if(s=s||{},Object.keys(s).forEach(function(c){if(t.indexOf(c)===-1)throw new e('Unknown option "'+c+'" is met in definition of "'+r+'" YAML type.')}),this.options=s,this.tag=r,this.kind=s.kind||null,this.resolve=s.resolve||function(){return!0},this.construct=s.construct||function(c){return c},this.instanceOf=s.instanceOf||null,this.predicate=s.predicate||null,this.represent=s.represent||null,this.representName=s.representName||null,this.defaultStyle=s.defaultStyle||null,this.multi=s.multi||!1,this.styleAliases=a(s.styleAliases||null),n.indexOf(this.kind)===-1)throw new e('Unknown kind "'+this.kind+'" is specified for "'+r+'" YAML type.')}return Hf=o,Hf}var Lf,U0;function yw(){if(U0)return Lf;U0=1;const e=Jc(),t=la();function n(r,s){const c=[];return r[s].forEach(function(m){let u=c.length;c.forEach(function(f,h){f.tag===m.tag&&f.kind===m.kind&&f.multi===m.multi&&(u=h)}),c[u]=m}),c}function a(){const r={scalar:{},sequence:{},mapping:{},fallback:{},multi:{scalar:[],sequence:[],mapping:[],fallback:[]}};function s(c){c.multi?(r.multi[c.kind].push(c),r.multi.fallback.push(c)):r[c.kind][c.tag]=r.fallback[c.tag]=c}for(let c=0,m=arguments.length;c<m;c+=1)arguments[c].forEach(s);return r}function o(r){return this.extend(r)}return o.prototype.extend=function(s){let c=[],m=[];if(s instanceof t)m.push(s);else if(Array.isArray(s))m=m.concat(s);else if(s&&(Array.isArray(s.implicit)||Array.isArray(s.explicit)))s.implicit&&(c=c.concat(s.implicit)),s.explicit&&(m=m.concat(s.explicit));else throw new e("Schema.extend argument should be a Type, [ Type ], or a schema definition ({ implicit: [...], explicit: [...] })");c.forEach(function(f){if(!(f instanceof t))throw new e("Specified list of YAML types (or a single Type object) contains a non-Type object.");if(f.loadKind&&f.loadKind!=="scalar")throw new e("There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported.");if(f.multi)throw new e("There is a multi type in the implicit list of a schema. Multi tags can only be listed as explicit.")}),m.forEach(function(f){if(!(f instanceof t))throw new e("Specified list of YAML types (or a single Type object) contains a non-Type object.")});const u=Object.create(o.prototype);return u.implicit=(this.implicit||[]).concat(c),u.explicit=(this.explicit||[]).concat(m),u.compiledImplicit=n(u,"implicit"),u.compiledExplicit=n(u,"explicit"),u.compiledTypeMap=a(u.compiledImplicit,u.compiledExplicit),u},Lf=o,Lf}var qf,z0;function Sw(){if(z0)return qf;z0=1;const e=la();return qf=new e("tag:yaml.org,2002:str",{kind:"scalar",construct:function(t){return t!==null?t:""}}),qf}var Uf,B0;function xw(){if(B0)return Uf;B0=1;const e=la();return Uf=new e("tag:yaml.org,2002:seq",{kind:"sequence",construct:function(t){return t!==null?t:[]}}),Uf}var zf,F0;function kw(){if(F0)return zf;F0=1;const e=la();return zf=new e("tag:yaml.org,2002:map",{kind:"mapping",construct:function(t){return t!==null?t:{}}}),zf}var Bf,V0;function ww(){if(V0)return Bf;V0=1;const e=yw();return Bf=new e({explicit:[Sw(),xw(),kw()]}),Bf}var Ff,K0;function Iw(){if(K0)return Ff;K0=1;const e=la();function t(o){if(o===null)return!0;const r=o.length;return r===1&&o==="~"||r===4&&(o==="null"||o==="Null"||o==="NULL")}function n(){return null}function a(o){return o===null}return Ff=new e("tag:yaml.org,2002:null",{kind:"scalar",resolve:t,construct:n,predicate:a,represent:{canonical:function(){return"~"},lowercase:function(){return"null"},uppercase:function(){return"NULL"},camelcase:function(){return"Null"},empty:function(){return""}},defaultStyle:"lowercase"}),Ff}var Vf,W0;function _w(){if(W0)return Vf;W0=1;const e=la();function t(o){if(o===null)return!1;const r=o.length;return r===4&&(o==="true"||o==="True"||o==="TRUE")||r===5&&(o==="false"||o==="False"||o==="FALSE")}function n(o){return o==="true"||o==="True"||o==="TRUE"}function a(o){return Object.prototype.toString.call(o)==="[object Boolean]"}return Vf=new e("tag:yaml.org,2002:bool",{kind:"scalar",resolve:t,construct:n,predicate:a,represent:{lowercase:function(o){return o?"true":"false"},uppercase:function(o){return o?"TRUE":"FALSE"},camelcase:function(o){return o?"True":"False"}},defaultStyle:"lowercase"}),Vf}var Kf,G0;function Cw(){if(G0)return Kf;G0=1;const e=Gc(),t=la();function n(u){return u>=48&&u<=57||u>=65&&u<=70||u>=97&&u<=102}function a(u){return u>=48&&u<=55}function o(u){return u>=48&&u<=57}function r(u){if(u===null)return!1;const f=u.length;let h=0,x=!1;if(!f)return!1;let k=u[h];if((k==="-"||k==="+")&&(k=u[++h]),k==="0"){if(h+1===f)return!0;if(k=u[++h],k==="b"){for(h++;h<f;h++){if(k=u[h],k!=="0"&&k!=="1")return!1;x=!0}return x&&isFinite(s(u))}if(k==="x"){for(h++;h<f;h++){if(!n(u.charCodeAt(h)))return!1;x=!0}return x&&isFinite(s(u))}if(k==="o"){for(h++;h<f;h++){if(!a(u.charCodeAt(h)))return!1;x=!0}return x&&isFinite(s(u))}}for(;h<f;h++){if(!o(u.charCodeAt(h)))return!1;x=!0}return x?isFinite(s(u)):!1}function s(u){let f=u,h=1,x=f[0];if((x==="-"||x==="+")&&(x==="-"&&(h=-1),f=f.slice(1),x=f[0]),f==="0")return 0;if(x==="0"){if(f[1]==="b")return h*parseInt(f.slice(2),2);if(f[1]==="x")return h*parseInt(f.slice(2),16);if(f[1]==="o")return h*parseInt(f.slice(2),8)}return h*parseInt(f,10)}function c(u){return s(u)}function m(u){return Object.prototype.toString.call(u)==="[object Number]"&&u%1===0&&!e.isNegativeZero(u)}return Kf=new t("tag:yaml.org,2002:int",{kind:"scalar",resolve:r,construct:c,predicate:m,represent:{binary:function(u){return u>=0?"0b"+u.toString(2):"-0b"+u.toString(2).slice(1)},octal:function(u){return u>=0?"0o"+u.toString(8):"-0o"+u.toString(8).slice(1)},decimal:function(u){return u.toString(10)},hexadecimal:function(u){return u>=0?"0x"+u.toString(16).toUpperCase():"-0x"+u.toString(16).toUpperCase().slice(1)}},defaultStyle:"decimal",styleAliases:{binary:[2,"bin"],octal:[8,"oct"],decimal:[10,"dec"],hexadecimal:[16,"hex"]}}),Kf}var Wf,J0;function Rw(){if(J0)return Wf;J0=1;const e=Gc(),t=la(),n=new RegExp("^(?:[-+]?(?:[0-9]+)(?:\\.[0-9]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$"),a=new RegExp("^(?:[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");function o(u){return u===null||!n.test(u)?!1:isFinite(parseFloat(u,10))?!0:a.test(u)}function r(u){let f=u.toLowerCase();const h=f[0]==="-"?-1:1;return"+-".indexOf(f[0])>=0&&(f=f.slice(1)),f===".inf"?h===1?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:f===".nan"?NaN:h*parseFloat(f,10)}const s=/^[-+]?[0-9]+e/;function c(u,f){if(isNaN(u))switch(f){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===u)switch(f){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===u)switch(f){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}else if(e.isNegativeZero(u))return"-0.0";const h=u.toString(10);return s.test(h)?h.replace("e",".e"):h}function m(u){return Object.prototype.toString.call(u)==="[object Number]"&&(u%1!==0||e.isNegativeZero(u))}return Wf=new t("tag:yaml.org,2002:float",{kind:"scalar",resolve:o,construct:r,predicate:m,represent:c,defaultStyle:"lowercase"}),Wf}var Gf,Z0;function Pw(){return Z0||(Z0=1,Gf=ww().extend({implicit:[Iw(),_w(),Cw(),Rw()]})),Gf}var Jf,Y0;function Aw(){return Y0||(Y0=1,Jf=Pw()),Jf}var Zf,Q0;function Tw(){if(Q0)return Zf;Q0=1;const e=la(),t=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),n=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:[Tt]|[ \\t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\\.([0-9]*))?(?:[ \\t]*(Z|([-+])([0-9][0-9]?)(?::([0-9][0-9]))?))?$");function a(s){return s===null?!1:t.exec(s)!==null||n.exec(s)!==null}function o(s){let c=0,m=null,u=t.exec(s);if(u===null&&(u=n.exec(s)),u===null)throw new Error("Date resolve error");const f=+u[1],h=+u[2]-1,x=+u[3];if(!u[4])return new Date(Date.UTC(f,h,x));const k=+u[4],_=+u[5],P=+u[6];if(u[7]){for(c=u[7].slice(0,3);c.length<3;)c+="0";c=+c}if(u[9]){const A=+u[10],$=+(u[11]||0);m=(A*60+$)*6e4,u[9]==="-"&&(m=-m)}const E=new Date(Date.UTC(f,h,x,k,_,P,c));return m&&E.setTime(E.getTime()-m),E}function r(s){return s.toISOString()}return Zf=new e("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:a,construct:o,instanceOf:Date,represent:r}),Zf}var Yf,X0;function Ew(){if(X0)return Yf;X0=1;const e=la();function t(n){return n==="<<"||n===null}return Yf=new e("tag:yaml.org,2002:merge",{kind:"scalar",resolve:t}),Yf}var Qf,eS;function jw(){if(eS)return Qf;eS=1;const e=la(),t=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=
79
- \r`;function n(s){if(s===null)return!1;let c=0;const m=s.length,u=t;for(let f=0;f<m;f++){const h=u.indexOf(s.charAt(f));if(!(h>64)){if(h<0)return!1;c+=6}}return c%8===0}function a(s){const c=s.replace(/[\r\n=]/g,""),m=c.length,u=t;let f=0;const h=[];for(let k=0;k<m;k++)k%4===0&&k&&(h.push(f>>16&255),h.push(f>>8&255),h.push(f&255)),f=f<<6|u.indexOf(c.charAt(k));const x=m%4*6;return x===0?(h.push(f>>16&255),h.push(f>>8&255),h.push(f&255)):x===18?(h.push(f>>10&255),h.push(f>>2&255)):x===12&&h.push(f>>4&255),new Uint8Array(h)}function o(s){let c="",m=0;const u=s.length,f=t;for(let x=0;x<u;x++)x%3===0&&x&&(c+=f[m>>18&63],c+=f[m>>12&63],c+=f[m>>6&63],c+=f[m&63]),m=(m<<8)+s[x];const h=u%3;return h===0?(c+=f[m>>18&63],c+=f[m>>12&63],c+=f[m>>6&63],c+=f[m&63]):h===2?(c+=f[m>>10&63],c+=f[m>>4&63],c+=f[m<<2&63],c+=f[64]):h===1&&(c+=f[m>>2&63],c+=f[m<<4&63],c+=f[64],c+=f[64]),c}function r(s){return Object.prototype.toString.call(s)==="[object Uint8Array]"}return Qf=new e("tag:yaml.org,2002:binary",{kind:"scalar",resolve:n,construct:a,predicate:r,represent:o}),Qf}var Xf,tS;function Mw(){if(tS)return Xf;tS=1;const e=la(),t=Object.prototype.hasOwnProperty,n=Object.prototype.toString;function a(r){if(r===null)return!0;const s=[],c=r;for(let m=0,u=c.length;m<u;m+=1){const f=c[m];let h=!1;if(n.call(f)!=="[object Object]")return!1;let x;for(x in f)if(t.call(f,x))if(!h)h=!0;else return!1;if(!h)return!1;if(s.indexOf(x)===-1)s.push(x);else return!1}return!0}function o(r){return r!==null?r:[]}return Xf=new e("tag:yaml.org,2002:omap",{kind:"sequence",resolve:a,construct:o}),Xf}var eh,nS;function Ow(){if(nS)return eh;nS=1;const e=la(),t=Object.prototype.toString;function n(o){if(o===null)return!0;const r=o,s=new Array(r.length);for(let c=0,m=r.length;c<m;c+=1){const u=r[c];if(t.call(u)!=="[object Object]")return!1;const f=Object.keys(u);if(f.length!==1)return!1;s[c]=[f[0],u[f[0]]]}return!0}function a(o){if(o===null)return[];const r=o,s=new Array(r.length);for(let c=0,m=r.length;c<m;c+=1){const u=r[c],f=Object.keys(u);s[c]=[f[0],u[f[0]]]}return s}return eh=new e("tag:yaml.org,2002:pairs",{kind:"sequence",resolve:n,construct:a}),eh}var th,aS;function $w(){if(aS)return th;aS=1;const e=la(),t=Object.prototype.hasOwnProperty;function n(o){if(o===null)return!0;const r=o;for(const s in r)if(t.call(r,s)&&r[s]!==null)return!1;return!0}function a(o){return o!==null?o:{}}return th=new e("tag:yaml.org,2002:set",{kind:"mapping",resolve:n,construct:a}),th}var nh,iS;function Rv(){return iS||(iS=1,nh=Aw().extend({implicit:[Tw(),Ew()],explicit:[jw(),Mw(),Ow(),$w()]})),nh}var oS;function hN(){if(oS)return Gd;oS=1;const e=Gc(),t=Jc(),n=fN(),a=Rv(),o=Object.prototype.hasOwnProperty,r=1,s=2,c=3,m=4,u=1,f=2,h=3,x=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,k=/[\x85\u2028\u2029]/,_=/[,\[\]{}]/,P=/^(?:!|!!|![0-9A-Za-z-]+!)$/,E=/^(?:!|[^,\[\]{}])(?:%[0-9a-f]{2}|[0-9a-z\-#;/?:@&=+$,_.!~*'()\[\]])*$/i;function A(g){return Object.prototype.toString.call(g)}function $(g){return g===10||g===13}function j(g){return g===9||g===32}function M(g){return g===9||g===32||g===10||g===13}function w(g){return g===44||g===91||g===93||g===123||g===125}function R(g){if(g>=48&&g<=57)return g-48;const B=g|32;return B>=97&&B<=102?B-97+10:-1}function O(g){return g===120?2:g===117?4:g===85?8:0}function N(g){return g>=48&&g<=57?g-48:-1}function F(g){switch(g){case 48:return"\0";case 97:return"\x07";case 98:return"\b";case 116:return" ";case 9:return" ";case 110:return`
80
- `;case 118:return"\v";case 102:return"\f";case 114:return"\r";case 101:return"\x1B";case 32:return" ";case 34:return'"';case 47:return"/";case 92:return"\\";case 78:return"…";case 95:return" ";case 76:return"\u2028";case 80:return"\u2029";default:return""}}function L(g){return g<=65535?String.fromCharCode(g):String.fromCharCode((g-65536>>10)+55296,(g-65536&1023)+56320)}function Y(g,B,ne){B==="__proto__"?Object.defineProperty(g,B,{configurable:!0,enumerable:!0,writable:!0,value:ne}):g[B]=ne}const re=new Array(256),ve=new Array(256);for(let g=0;g<256;g++)re[g]=F(g)?1:0,ve[g]=F(g);function oe(g,B){this.input=g,this.filename=B.filename||null,this.schema=B.schema||a,this.onWarning=B.onWarning||null,this.legacy=B.legacy||!1,this.json=B.json||!1,this.listener=B.listener||null,this.maxDepth=typeof B.maxDepth=="number"?B.maxDepth:100,this.maxTotalMergeKeys=typeof B.maxTotalMergeKeys=="number"?B.maxTotalMergeKeys:1e4,this.implicitTypes=this.schema.compiledImplicit,this.typeMap=this.schema.compiledTypeMap,this.length=g.length,this.position=0,this.line=0,this.lineStart=0,this.lineIndent=0,this.depth=0,this.totalMergeKeys=0,this.firstTabInLine=-1,this.documents=[],this.anchorMapTransactions=[]}function K(g,B){const ne={name:g.filename,buffer:g.input.slice(0,-1),position:g.position,line:g.line,column:g.position-g.lineStart};return ne.snippet=n(ne),new t(B,ne)}function H(g,B){throw K(g,B)}function de(g,B){g.onWarning&&g.onWarning.call(null,K(g,B))}function X(g,B,ne){const we=g.anchorMapTransactions;if(we.length!==0){const fe=we[we.length-1];o.call(fe,B)||(fe[B]={existed:o.call(g.anchorMap,B),value:g.anchorMap[B]})}g.anchorMap[B]=ne}function Z(g){g.anchorMapTransactions.push(Object.create(null))}function pe(g){const B=g.anchorMapTransactions.pop(),ne=g.anchorMapTransactions;if(ne.length===0)return;const we=ne[ne.length-1],fe=Object.keys(B);for(let Q=0,C=fe.length;Q<C;Q+=1){const G=fe[Q];o.call(we,G)||(we[G]=B[G])}}function ee(g){const B=g.anchorMapTransactions.pop(),ne=Object.keys(B);for(let we=ne.length-1;we>=0;we-=1){const fe=B[ne[we]];fe.existed?g.anchorMap[ne[we]]=fe.value:delete g.anchorMap[ne[we]]}}function me(g){return{position:g.position,line:g.line,lineStart:g.lineStart,lineIndent:g.lineIndent,firstTabInLine:g.firstTabInLine,tag:g.tag,anchor:g.anchor,kind:g.kind,result:g.result}}function be(g,B){g.position=B.position,g.line=B.line,g.lineStart=B.lineStart,g.lineIndent=B.lineIndent,g.firstTabInLine=B.firstTabInLine,g.tag=B.tag,g.anchor=B.anchor,g.kind=B.kind,g.result=B.result}const Me={YAML:function(B,ne,we){B.version!==null&&H(B,"duplication of %YAML directive"),we.length!==1&&H(B,"YAML directive accepts exactly one argument");const fe=/^([0-9]+)\.([0-9]+)$/.exec(we[0]);fe===null&&H(B,"ill-formed argument of the YAML directive");const Q=parseInt(fe[1],10),C=parseInt(fe[2],10);Q!==1&&H(B,"unacceptable YAML version of the document"),B.version=we[0],B.checkLineBreaks=C<2,C!==1&&C!==2&&de(B,"unsupported YAML version of the document")},TAG:function(B,ne,we){let fe;we.length!==2&&H(B,"TAG directive accepts exactly two arguments");const Q=we[0];fe=we[1],P.test(Q)||H(B,"ill-formed tag handle (first argument) of the TAG directive"),o.call(B.tagMap,Q)&&H(B,'there is a previously declared suffix for "'+Q+'" tag handle'),E.test(fe)||H(B,"ill-formed tag prefix (second argument) of the TAG directive");try{fe=decodeURIComponent(fe)}catch{H(B,"tag prefix is malformed: "+fe)}B.tagMap[Q]=fe}};function ke(g,B,ne,we){if(B<ne){const fe=g.input.slice(B,ne);if(we)for(let Q=0,C=fe.length;Q<C;Q+=1){const G=fe.charCodeAt(Q);G===9||G>=32&&G<=1114111||H(g,"expected valid JSON character")}else x.test(fe)&&H(g,"the stream contains non-printable characters");g.result+=fe}}function ue(g,B,ne,we){e.isObject(ne)||H(g,"cannot merge mappings; the provided source object is unacceptable");const fe=Object.keys(ne);for(let Q=0,C=fe.length;Q<C;Q+=1){const G=fe[Q];g.maxTotalMergeKeys!==-1&&++g.totalMergeKeys>g.maxTotalMergeKeys&&H(g,"merge keys exceeded maxTotalMergeKeys ("+g.maxTotalMergeKeys+")"),o.call(B,G)||(Y(B,G,ne[G]),we[G]=!0)}}function Ie(g,B,ne,we,fe,Q,C,G,se){if(Array.isArray(fe)){fe=Array.prototype.slice.call(fe);for(let te=0,ge=fe.length;te<ge;te+=1)Array.isArray(fe[te])&&H(g,"nested arrays are not supported inside keys"),typeof fe=="object"&&A(fe[te])==="[object Object]"&&(fe[te]="[object Object]")}if(typeof fe=="object"&&A(fe)==="[object Object]"&&(fe="[object Object]"),fe=String(fe),B===null&&(B={}),we==="tag:yaml.org,2002:merge")if(Array.isArray(Q))for(let te=0,ge=Q.length;te<ge;te+=1)ue(g,B,Q[te],ne);else ue(g,B,Q,ne);else!g.json&&!o.call(ne,fe)&&o.call(B,fe)&&(g.line=C||g.line,g.lineStart=G||g.lineStart,g.position=se||g.position,H(g,"duplicated mapping key")),Y(B,fe,Q),delete ne[fe];return B}function Le(g){const B=g.input.charCodeAt(g.position);B===10?g.position++:B===13?(g.position++,g.input.charCodeAt(g.position)===10&&g.position++):H(g,"a line break is expected"),g.line+=1,g.lineStart=g.position,g.firstTabInLine=-1}function Fe(g,B,ne){let we=0,fe=g.input.charCodeAt(g.position);for(;fe!==0;){for(;j(fe);)fe===9&&g.firstTabInLine===-1&&(g.firstTabInLine=g.position),fe=g.input.charCodeAt(++g.position);if(B&&fe===35)do fe=g.input.charCodeAt(++g.position);while(fe!==10&&fe!==13&&fe!==0);if($(fe))for(Le(g),fe=g.input.charCodeAt(g.position),we++,g.lineIndent=0;fe===32;)g.lineIndent++,fe=g.input.charCodeAt(++g.position);else break}return ne!==-1&&we!==0&&g.lineIndent<ne&&de(g,"deficient indentation"),we}function Xe(g){let B=g.position,ne=g.input.charCodeAt(B);return!!((ne===45||ne===46)&&ne===g.input.charCodeAt(B+1)&&ne===g.input.charCodeAt(B+2)&&(B+=3,ne=g.input.charCodeAt(B),ne===0||M(ne)))}function Ze(g,B){B===1?g.result+=" ":B>1&&(g.result+=e.repeat(`
81
- `,B-1))}function Be(g,B,ne){let we,fe,Q,C,G,se;const te=g.kind,ge=g.result;let Se=g.input.charCodeAt(g.position);if(M(Se)||w(Se)||Se===35||Se===38||Se===42||Se===33||Se===124||Se===62||Se===39||Se===34||Se===37||Se===64||Se===96)return!1;if(Se===63||Se===45){const xe=g.input.charCodeAt(g.position+1);if(M(xe)||ne&&w(xe))return!1}for(g.kind="scalar",g.result="",we=fe=g.position,Q=!1;Se!==0;){if(Se===58){const xe=g.input.charCodeAt(g.position+1);if(M(xe)||ne&&w(xe))break}else if(Se===35){const xe=g.input.charCodeAt(g.position-1);if(M(xe))break}else{if(g.position===g.lineStart&&Xe(g)||ne&&w(Se))break;if($(Se))if(C=g.line,G=g.lineStart,se=g.lineIndent,Fe(g,!1,-1),g.lineIndent>=B){Q=!0,Se=g.input.charCodeAt(g.position);continue}else{g.position=fe,g.line=C,g.lineStart=G,g.lineIndent=se;break}}Q&&(ke(g,we,fe,!1),Ze(g,g.line-C),we=fe=g.position,Q=!1),j(Se)||(fe=g.position+1),Se=g.input.charCodeAt(++g.position)}return ke(g,we,fe,!1),g.result?!0:(g.kind=te,g.result=ge,!1)}function Ge(g,B){let ne,we,fe=g.input.charCodeAt(g.position);if(fe!==39)return!1;for(g.kind="scalar",g.result="",g.position++,ne=we=g.position;(fe=g.input.charCodeAt(g.position))!==0;)if(fe===39)if(ke(g,ne,g.position,!0),fe=g.input.charCodeAt(++g.position),fe===39)ne=g.position,g.position++,we=g.position;else return!0;else $(fe)?(ke(g,ne,we,!0),Ze(g,Fe(g,!1,B)),ne=we=g.position):g.position===g.lineStart&&Xe(g)?H(g,"unexpected end of the document within a single quoted scalar"):(g.position++,j(fe)||(we=g.position));H(g,"unexpected end of the stream within a single quoted scalar")}function Ve(g,B){let ne,we,fe,Q=g.input.charCodeAt(g.position);if(Q!==34)return!1;for(g.kind="scalar",g.result="",g.position++,ne=we=g.position;(Q=g.input.charCodeAt(g.position))!==0;){if(Q===34)return ke(g,ne,g.position,!0),g.position++,!0;if(Q===92){if(ke(g,ne,g.position,!0),Q=g.input.charCodeAt(++g.position),$(Q))Fe(g,!1,B);else if(Q<256&&re[Q])g.result+=ve[Q],g.position++;else if((fe=O(Q))>0){let C=fe,G=0;for(;C>0;C--)Q=g.input.charCodeAt(++g.position),(fe=R(Q))>=0?G=(G<<4)+fe:H(g,"expected hexadecimal character");g.result+=L(G),g.position++}else H(g,"unknown escape sequence");ne=we=g.position}else $(Q)?(ke(g,ne,we,!0),Ze(g,Fe(g,!1,B)),ne=we=g.position):g.position===g.lineStart&&Xe(g)?H(g,"unexpected end of the document within a double quoted scalar"):(g.position++,j(Q)||(we=g.position))}H(g,"unexpected end of the stream within a double quoted scalar")}function U(g,B){let ne=!0,we,fe,Q;const C=g.tag;let G;const se=g.anchor;let te,ge,Se,xe;const Oe=Object.create(null);let Te,Ue,Ee,tt=g.input.charCodeAt(g.position);if(tt===91)te=93,xe=!1,G=[];else if(tt===123)te=125,xe=!0,G={};else return!1;for(g.anchor!==null&&X(g,g.anchor,G),tt=g.input.charCodeAt(++g.position);tt!==0;){if(Fe(g,!0,B),tt=g.input.charCodeAt(g.position),tt===te)return g.position++,g.tag=C,g.anchor=se,g.kind=xe?"mapping":"sequence",g.result=G,!0;if(ne?tt===44&&H(g,"expected the node content, but found ','"):H(g,"missed comma between flow collection entries"),Ue=Te=Ee=null,ge=Se=!1,tt===63){const ht=g.input.charCodeAt(g.position+1);M(ht)&&(ge=Se=!0,g.position++,Fe(g,!0,B))}we=g.line,fe=g.lineStart,Q=g.position,et(g,B,r,!1,!0),Ue=g.tag,Te=g.result,Fe(g,!0,B),tt=g.input.charCodeAt(g.position),(Se||g.line===we)&&tt===58&&(ge=!0,tt=g.input.charCodeAt(++g.position),Fe(g,!0,B),et(g,B,r,!1,!0),Ee=g.result),xe?Ie(g,G,Oe,Ue,Te,Ee,we,fe,Q):ge?G.push(Ie(g,null,Oe,Ue,Te,Ee,we,fe,Q)):G.push(Te),Fe(g,!0,B),tt=g.input.charCodeAt(g.position),tt===44?(ne=!0,tt=g.input.charCodeAt(++g.position)):ne=!1}H(g,"unexpected end of the stream within a flow collection")}function J(g,B){let ne,we=u,fe=!1,Q=!1,C=B,G=0,se=!1,te,ge=g.input.charCodeAt(g.position);if(ge===124)ne=!1;else if(ge===62)ne=!0;else return!1;for(g.kind="scalar",g.result="";ge!==0;)if(ge=g.input.charCodeAt(++g.position),ge===43||ge===45)u===we?we=ge===43?h:f:H(g,"repeat of a chomping mode identifier");else if((te=N(ge))>=0)te===0?H(g,"bad explicit indentation width of a block scalar; it cannot be less than one"):Q?H(g,"repeat of an indentation width identifier"):(C=B+te-1,Q=!0);else break;if(j(ge)){do ge=g.input.charCodeAt(++g.position);while(j(ge));if(ge===35)do ge=g.input.charCodeAt(++g.position);while(!$(ge)&&ge!==0)}for(;ge!==0;){for(Le(g),g.lineIndent=0,ge=g.input.charCodeAt(g.position);(!Q||g.lineIndent<C)&&ge===32;)g.lineIndent++,ge=g.input.charCodeAt(++g.position);if(!Q&&g.lineIndent>C&&(C=g.lineIndent),$(ge)){G++;continue}if(!Q&&C===0&&H(g,"missing indentation for block scalar"),g.lineIndent<C){we===h?g.result+=e.repeat(`
82
- `,fe?1+G:G):we===u&&fe&&(g.result+=`
83
- `);break}ne?j(ge)?(se=!0,g.result+=e.repeat(`
84
- `,fe?1+G:G)):se?(se=!1,g.result+=e.repeat(`
85
- `,G+1)):G===0?fe&&(g.result+=" "):g.result+=e.repeat(`
86
- `,G):g.result+=e.repeat(`
87
- `,fe?1+G:G),fe=!0,Q=!0,G=0;const Se=g.position;for(;!$(ge)&&ge!==0;)ge=g.input.charCodeAt(++g.position);ke(g,Se,g.position,!1)}return!0}function q(g,B){const ne=g.tag,we=g.anchor,fe=[];let Q=!1;if(g.firstTabInLine!==-1)return!1;g.anchor!==null&&X(g,g.anchor,fe);let C=g.input.charCodeAt(g.position);for(;C!==0&&(g.firstTabInLine!==-1&&(g.position=g.firstTabInLine,H(g,"tab characters must not be used in indentation")),C===45);){const G=g.input.charCodeAt(g.position+1);if(!M(G))break;if(Q=!0,g.position++,Fe(g,!0,-1)&&g.lineIndent<=B){fe.push(null),C=g.input.charCodeAt(g.position);continue}const se=g.line;if(et(g,B,c,!1,!0),fe.push(g.result),Fe(g,!0,-1),C=g.input.charCodeAt(g.position),(g.line===se||g.lineIndent>B)&&C!==0)H(g,"bad indentation of a sequence entry");else if(g.lineIndent<B)break}return Q?(g.tag=ne,g.anchor=we,g.kind="sequence",g.result=fe,!0):!1}function ie(g,B,ne){let we,fe,Q,C;const G=g.tag,se=g.anchor,te={},ge=Object.create(null);let Se=null,xe=null,Oe=null,Te=!1,Ue=!1;if(g.firstTabInLine!==-1)return!1;g.anchor!==null&&X(g,g.anchor,te);let Ee=g.input.charCodeAt(g.position);for(;Ee!==0;){!Te&&g.firstTabInLine!==-1&&(g.position=g.firstTabInLine,H(g,"tab characters must not be used in indentation"));const tt=g.input.charCodeAt(g.position+1),ht=g.line;if((Ee===63||Ee===58)&&M(tt))Ee===63?(Te&&(Ie(g,te,ge,Se,xe,null,fe,Q,C),Se=xe=Oe=null),Ue=!0,Te=!0,we=!0):Te?(Te=!1,we=!0):H(g,"incomplete explicit mapping pair; a key node is missed; or followed by a non-tabulated empty line"),g.position+=1,Ee=tt;else{if(fe=g.line,Q=g.lineStart,C=g.position,!et(g,ne,s,!1,!0))break;if(g.line===ht){for(Ee=g.input.charCodeAt(g.position);j(Ee);)Ee=g.input.charCodeAt(++g.position);if(Ee===58)Ee=g.input.charCodeAt(++g.position),M(Ee)||H(g,"a whitespace character is expected after the key-value separator within a block mapping"),Te&&(Ie(g,te,ge,Se,xe,null,fe,Q,C),Se=xe=Oe=null),Ue=!0,Te=!1,we=!1,Se=g.tag,xe=g.result;else if(Ue)H(g,"can not read an implicit mapping pair; a colon is missed");else return g.tag=G,g.anchor=se,!0}else if(Ue)H(g,"can not read a block mapping entry; a multiline key may not be an implicit key");else return g.tag=G,g.anchor=se,!0}if((g.line===ht||g.lineIndent>B)&&(Te&&(fe=g.line,Q=g.lineStart,C=g.position),et(g,B,m,!0,we)&&(Te?xe=g.result:Oe=g.result),Te||(Ie(g,te,ge,Se,xe,Oe,fe,Q,C),Se=xe=Oe=null),Fe(g,!0,-1),Ee=g.input.charCodeAt(g.position)),(g.line===ht||g.lineIndent>B)&&Ee!==0)H(g,"bad indentation of a mapping entry");else if(g.lineIndent<B)break}return Te&&Ie(g,te,ge,Se,xe,null,fe,Q,C),Ue&&(g.tag=G,g.anchor=se,g.kind="mapping",g.result=te),Ue}function he(g){let B=!1,ne=!1,we,fe,Q=g.input.charCodeAt(g.position);if(Q!==33)return!1;g.tag!==null&&H(g,"duplication of a tag property"),Q=g.input.charCodeAt(++g.position),Q===60?(B=!0,Q=g.input.charCodeAt(++g.position)):Q===33?(ne=!0,we="!!",Q=g.input.charCodeAt(++g.position)):we="!";let C=g.position;if(B){do Q=g.input.charCodeAt(++g.position);while(Q!==0&&Q!==62);g.position<g.length?(fe=g.input.slice(C,g.position),Q=g.input.charCodeAt(++g.position)):H(g,"unexpected end of the stream within a verbatim tag")}else{for(;Q!==0&&!M(Q);)Q===33&&(ne?H(g,"tag suffix cannot contain exclamation marks"):(we=g.input.slice(C-1,g.position+1),P.test(we)||H(g,"named tag handle cannot contain such characters"),ne=!0,C=g.position+1)),Q=g.input.charCodeAt(++g.position);fe=g.input.slice(C,g.position),_.test(fe)&&H(g,"tag suffix cannot contain flow indicator characters")}fe&&!E.test(fe)&&H(g,"tag name cannot contain such characters: "+fe);try{fe=decodeURIComponent(fe)}catch{H(g,"tag name is malformed: "+fe)}return B?g.tag=fe:o.call(g.tagMap,we)?g.tag=g.tagMap[we]+fe:we==="!"?g.tag="!"+fe:we==="!!"?g.tag="tag:yaml.org,2002:"+fe:H(g,'undeclared tag handle "'+we+'"'),!0}function Pe(g){let B=g.input.charCodeAt(g.position);if(B!==38)return!1;g.anchor!==null&&H(g,"duplication of an anchor property"),B=g.input.charCodeAt(++g.position);const ne=g.position;for(;B!==0&&!M(B)&&!w(B);)B=g.input.charCodeAt(++g.position);return g.position===ne&&H(g,"name of an anchor node must contain at least one character"),g.anchor=g.input.slice(ne,g.position),!0}function qe(g){let B=g.input.charCodeAt(g.position);if(B!==42)return!1;B=g.input.charCodeAt(++g.position);const ne=g.position;for(;B!==0&&!M(B)&&!w(B);)B=g.input.charCodeAt(++g.position);g.position===ne&&H(g,"name of an alias node must contain at least one character");const we=g.input.slice(ne,g.position);return o.call(g.anchorMap,we)||H(g,'unidentified alias "'+we+'"'),g.result=g.anchorMap[we],Fe(g,!0,-1),!0}function Je(g,B,ne,we){const fe=me(g);return Z(g),be(g,B),g.tag=null,g.anchor=null,g.kind=null,g.result=null,ie(g,ne,we)&&g.kind==="mapping"?(pe(g),!0):(ee(g),be(g,fe),!1)}function et(g,B,ne,we,fe){let Q,C,G=1,se=!1,te=!1,ge=null,Se,xe,Oe;g.depth>=g.maxDepth&&H(g,"nesting exceeded maxDepth ("+g.maxDepth+")"),g.depth+=1,g.listener!==null&&g.listener("open",g),g.tag=null,g.anchor=null,g.kind=null,g.result=null;const Te=Q=C=m===ne||c===ne;if(we&&Fe(g,!0,-1)&&(se=!0,g.lineIndent>B?G=1:g.lineIndent===B?G=0:g.lineIndent<B&&(G=-1)),G===1)for(;;){const Ue=g.input.charCodeAt(g.position),Ee=me(g);if(se&&(Ue===33&&g.tag!==null||Ue===38&&g.anchor!==null)||!he(g)&&!Pe(g))break;ge===null&&(ge=Ee),Fe(g,!0,-1)?(se=!0,C=Te,g.lineIndent>B?G=1:g.lineIndent===B?G=0:g.lineIndent<B&&(G=-1)):C=!1}if(C&&(C=se||fe),G===1||m===ne)if(r===ne||s===ne?xe=B:xe=B+1,Oe=g.position-g.lineStart,G===1)if(C&&(q(g,Oe)||ie(g,Oe,xe))||U(g,xe))te=!0;else{const Ue=g.input.charCodeAt(g.position);ge!==null&&Te&&!C&&Ue!==124&&Ue!==62&&Je(g,ge,ge.position-ge.lineStart,xe)||Q&&J(g,xe)||Ge(g,xe)||Ve(g,xe)?te=!0:qe(g)?(te=!0,(g.tag!==null||g.anchor!==null)&&H(g,"alias node should not have any properties")):Be(g,xe,r===ne)&&(te=!0,g.tag===null&&(g.tag="?")),g.anchor!==null&&X(g,g.anchor,g.result)}else G===0&&(te=C&&q(g,Oe));if(g.tag===null)g.anchor!==null&&X(g,g.anchor,g.result);else if(g.tag==="?"){g.result!==null&&g.kind!=="scalar"&&H(g,'unacceptable node kind for !<?> tag; it should be "scalar", not "'+g.kind+'"');for(let Ue=0,Ee=g.implicitTypes.length;Ue<Ee;Ue+=1)if(Se=g.implicitTypes[Ue],Se.resolve(g.result)){g.result=Se.construct(g.result),g.tag=Se.tag,g.anchor!==null&&X(g,g.anchor,g.result);break}}else if(g.tag!=="!"){if(o.call(g.typeMap[g.kind||"fallback"],g.tag))Se=g.typeMap[g.kind||"fallback"][g.tag];else{Se=null;const Ue=g.typeMap.multi[g.kind||"fallback"];for(let Ee=0,tt=Ue.length;Ee<tt;Ee+=1)if(g.tag.slice(0,Ue[Ee].tag.length)===Ue[Ee].tag){Se=Ue[Ee];break}}Se||H(g,"unknown tag !<"+g.tag+">"),g.result!==null&&Se.kind!==g.kind&&H(g,"unacceptable node kind for !<"+g.tag+'> tag; it should be "'+Se.kind+'", not "'+g.kind+'"'),Se.resolve(g.result,g.tag)?(g.result=Se.construct(g.result,g.tag),g.anchor!==null&&X(g,g.anchor,g.result)):H(g,"cannot resolve a node with !<"+g.tag+"> explicit tag")}return g.listener!==null&&g.listener("close",g),g.depth-=1,g.tag!==null||g.anchor!==null||te}function ut(g){const B=g.position;let ne=!1,we;for(g.version=null,g.checkLineBreaks=g.legacy,g.tagMap=Object.create(null),g.anchorMap=Object.create(null);(we=g.input.charCodeAt(g.position))!==0&&(Fe(g,!0,-1),we=g.input.charCodeAt(g.position),!(g.lineIndent>0||we!==37));){ne=!0,we=g.input.charCodeAt(++g.position);let fe=g.position;for(;we!==0&&!M(we);)we=g.input.charCodeAt(++g.position);const Q=g.input.slice(fe,g.position),C=[];for(Q.length<1&&H(g,"directive name must not be less than one character in length");we!==0;){for(;j(we);)we=g.input.charCodeAt(++g.position);if(we===35){do we=g.input.charCodeAt(++g.position);while(we!==0&&!$(we));break}if($(we))break;for(fe=g.position;we!==0&&!M(we);)we=g.input.charCodeAt(++g.position);C.push(g.input.slice(fe,g.position))}we!==0&&Le(g),o.call(Me,Q)?Me[Q](g,Q,C):de(g,'unknown document directive "'+Q+'"')}if(Fe(g,!0,-1),g.lineIndent===0&&g.input.charCodeAt(g.position)===45&&g.input.charCodeAt(g.position+1)===45&&g.input.charCodeAt(g.position+2)===45?(g.position+=3,Fe(g,!0,-1)):ne&&H(g,"directives end mark is expected"),et(g,g.lineIndent-1,m,!1,!0),Fe(g,!0,-1),g.checkLineBreaks&&k.test(g.input.slice(B,g.position))&&de(g,"non-ASCII line breaks are interpreted as content"),g.documents.push(g.result),g.position===g.lineStart&&Xe(g)){g.input.charCodeAt(g.position)===46&&(g.position+=3,Fe(g,!0,-1));return}g.position<g.length-1&&H(g,"end of the stream or a document separator is expected")}function _t(g,B){g=String(g),B=B||{},g.length!==0&&(g.charCodeAt(g.length-1)!==10&&g.charCodeAt(g.length-1)!==13&&(g+=`
88
- `),g.charCodeAt(0)===65279&&(g=g.slice(1)));const ne=new oe(g,B),we=g.indexOf("\0");for(we!==-1&&(ne.position=we,H(ne,"null byte is not allowed in input")),ne.input+="\0";ne.input.charCodeAt(ne.position)===32;)ne.lineIndent+=1,ne.position+=1;for(;ne.position<ne.length-1;)ut(ne);return ne.documents}function Ne(g,B,ne){B!==null&&typeof B=="object"&&typeof ne>"u"&&(ne=B,B=null);const we=_t(g,ne);if(typeof B!="function")return we;for(let fe=0,Q=we.length;fe<Q;fe+=1)B(we[fe])}function Ye(g,B){const ne=_t(g,B);if(ne.length!==0){if(ne.length===1)return ne[0];throw new t("expected a single document in the stream, but found more")}}return Gd.loadAll=Ne,Gd.load=Ye,Gd}var ah={},rS;function gN(){if(rS)return ah;rS=1;const e=Gc(),t=Jc(),n=Rv(),a=Object.prototype.toString,o=Object.prototype.hasOwnProperty,r=65279,s=9,c=10,m=13,u=32,f=33,h=34,x=35,k=37,_=38,P=39,E=42,A=44,$=45,j=58,M=61,w=62,R=63,O=64,N=91,F=93,L=96,Y=123,re=124,ve=125,oe={};oe[0]="\\0",oe[7]="\\a",oe[8]="\\b",oe[9]="\\t",oe[10]="\\n",oe[11]="\\v",oe[12]="\\f",oe[13]="\\r",oe[27]="\\e",oe[34]='\\"',oe[92]="\\\\",oe[133]="\\N",oe[160]="\\_",oe[8232]="\\L",oe[8233]="\\P";const K=["y","Y","yes","Yes","YES","on","On","ON","n","N","no","No","NO","off","Off","OFF"],H=/^[-+]?[0-9_]+(?::[0-9_]+)+(?:\.[0-9_]*)?$/;function de(C,G){if(G===null)return{};const se={},te=Object.keys(G);for(let ge=0,Se=te.length;ge<Se;ge+=1){let xe=te[ge],Oe=String(G[xe]);xe.slice(0,2)==="!!"&&(xe="tag:yaml.org,2002:"+xe.slice(2));const Te=C.compiledTypeMap.fallback[xe];Te&&o.call(Te.styleAliases,Oe)&&(Oe=Te.styleAliases[Oe]),se[xe]=Oe}return se}function X(C){let G,se;const te=C.toString(16).toUpperCase();if(C<=255)G="x",se=2;else if(C<=65535)G="u",se=4;else if(C<=4294967295)G="U",se=8;else throw new t("code point within a string may not be greater than 0xFFFFFFFF");return"\\"+G+e.repeat("0",se-te.length)+te}const Z=1,pe=2;function ee(C){this.schema=C.schema||n,this.indent=Math.max(1,C.indent||2),this.noArrayIndent=C.noArrayIndent||!1,this.skipInvalid=C.skipInvalid||!1,this.flowLevel=e.isNothing(C.flowLevel)?-1:C.flowLevel,this.styleMap=de(this.schema,C.styles||null),this.sortKeys=C.sortKeys||!1,this.lineWidth=C.lineWidth||80,this.noRefs=C.noRefs||!1,this.noCompatMode=C.noCompatMode||!1,this.condenseFlow=C.condenseFlow||!1,this.quotingType=C.quotingType==='"'?pe:Z,this.forceQuotes=C.forceQuotes||!1,this.replacer=typeof C.replacer=="function"?C.replacer:null,this.implicitTypes=this.schema.compiledImplicit,this.explicitTypes=this.schema.compiledExplicit,this.tag=null,this.result="",this.duplicates=[],this.usedDuplicates=null}function me(C,G){const se=e.repeat(" ",G);let te=0,ge="";const Se=C.length;for(;te<Se;){let xe;const Oe=C.indexOf(`
89
- `,te);Oe===-1?(xe=C.slice(te),te=Se):(xe=C.slice(te,Oe+1),te=Oe+1),xe.length&&xe!==`
90
- `&&(ge+=se),ge+=xe}return ge}function be(C,G){return`
91
- `+e.repeat(" ",C.indent*G)}function Me(C,G){for(let se=0,te=C.implicitTypes.length;se<te;se+=1)if(C.implicitTypes[se].resolve(G))return!0;return!1}function ke(C){return C===u||C===s}function ue(C){return C>=32&&C<=126||C>=161&&C<=55295&&C!==8232&&C!==8233||C>=57344&&C<=65533&&C!==r||C>=65536&&C<=1114111}function Ie(C){return ue(C)&&C!==r&&C!==m&&C!==c}function Le(C,G,se){const te=Ie(C),ge=te&&!ke(C);return(se?te:te&&C!==A&&C!==N&&C!==F&&C!==Y&&C!==ve)&&C!==x&&!(G===j&&!ge)||Ie(G)&&!ke(G)&&C===x||G===j&&ge}function Fe(C){return ue(C)&&C!==r&&!ke(C)&&C!==$&&C!==R&&C!==j&&C!==A&&C!==N&&C!==F&&C!==Y&&C!==ve&&C!==x&&C!==_&&C!==E&&C!==f&&C!==re&&C!==M&&C!==w&&C!==P&&C!==h&&C!==k&&C!==O&&C!==L}function Xe(C){return!ke(C)&&C!==j}function Ze(C,G){const se=C.charCodeAt(G);let te;return se>=55296&&se<=56319&&G+1<C.length&&(te=C.charCodeAt(G+1),te>=56320&&te<=57343)?(se-55296)*1024+te-56320+65536:se}function Be(C){return/^\n* /.test(C)}const Ge=1,Ve=2,U=3,J=4,q=5;function ie(C,G,se,te,ge,Se,xe,Oe){let Te,Ue=0,Ee=null,tt=!1,ht=!1;const xn=te!==-1;let xt=-1,Xn=Fe(Ze(C,0))&&Xe(Ze(C,C.length-1));if(G||xe)for(Te=0;Te<C.length;Ue>=65536?Te+=2:Te++){if(Ue=Ze(C,Te),!ue(Ue))return q;Xn=Xn&&Le(Ue,Ee,Oe),Ee=Ue}else{for(Te=0;Te<C.length;Ue>=65536?Te+=2:Te++){if(Ue=Ze(C,Te),Ue===c)tt=!0,xn&&(ht=ht||Te-xt-1>te&&C[xt+1]!==" ",xt=Te);else if(!ue(Ue))return q;Xn=Xn&&Le(Ue,Ee,Oe),Ee=Ue}ht=ht||xn&&Te-xt-1>te&&C[xt+1]!==" "}return!tt&&!ht?Xn&&!xe&&!ge(C)?Ge:Se===pe?q:Ve:se>9&&Be(C)?q:xe?Se===pe?q:Ve:ht?J:U}function he(C,G,se,te,ge){C.dump=(function(){if(G.length===0)return C.quotingType===pe?'""':"''";if(!C.noCompatMode&&(K.indexOf(G)!==-1||H.test(G)))return C.quotingType===pe?'"'+G+'"':"'"+G+"'";const Se=C.indent*Math.max(1,se),xe=C.lineWidth===-1?-1:Math.max(Math.min(C.lineWidth,40),C.lineWidth-Se),Oe=te||C.flowLevel>-1&&se>=C.flowLevel;function Te(Ue){return Me(C,Ue)}switch(ie(G,Oe,C.indent,xe,Te,C.quotingType,C.forceQuotes&&!te,ge)){case Ge:return G;case Ve:return"'"+G.replace(/'/g,"''")+"'";case U:return"|"+Pe(G,C.indent)+qe(me(G,Se));case J:return">"+Pe(G,C.indent)+qe(me(Je(G,xe),Se));case q:return'"'+ut(G)+'"';default:throw new t("impossible error: invalid scalar style")}})()}function Pe(C,G){const se=Be(C)?String(G):"",te=C[C.length-1]===`
92
- `,Se=te&&(C[C.length-2]===`
93
- `||C===`
94
- `)?"+":te?"":"-";return se+Se+`
95
- `}function qe(C){return C[C.length-1]===`
96
- `?C.slice(0,-1):C}function Je(C,G){const se=/(\n+)([^\n]*)/g;let te=(function(){let Oe=C.indexOf(`
97
- `);return Oe=Oe!==-1?Oe:C.length,se.lastIndex=Oe,et(C.slice(0,Oe),G)})(),ge=C[0]===`
98
- `||C[0]===" ",Se,xe;for(;xe=se.exec(C);){const Oe=xe[1],Te=xe[2];Se=Te[0]===" ",te+=Oe+(!ge&&!Se&&Te!==""?`
99
- `:"")+et(Te,G),ge=Se}return te}function et(C,G){if(C===""||C[0]===" ")return C;const se=/ [^ ]/g;let te,ge=0,Se,xe=0,Oe=0,Te="";for(;te=se.exec(C);)Oe=te.index,Oe-ge>G&&(Se=xe>ge?xe:Oe,Te+=`
100
- `+C.slice(ge,Se),ge=Se+1),xe=Oe;return Te+=`
101
- `,C.length-ge>G&&xe>ge?Te+=C.slice(ge,xe)+`
102
- `+C.slice(xe+1):Te+=C.slice(ge),Te.slice(1)}function ut(C){let G="",se=0;for(let te=0;te<C.length;se>=65536?te+=2:te++){se=Ze(C,te);const ge=oe[se];!ge&&ue(se)?(G+=C[te],se>=65536&&(G+=C[te+1])):G+=ge||X(se)}return G}function _t(C,G,se){let te="";const ge=C.tag;for(let Se=0,xe=se.length;Se<xe;Se+=1){let Oe=se[Se];C.replacer&&(Oe=C.replacer.call(se,String(Se),Oe)),(ne(C,G,Oe,!1,!1)||typeof Oe>"u"&&ne(C,G,null,!1,!1))&&(te!==""&&(te+=","+(C.condenseFlow?"":" ")),te+=C.dump)}C.tag=ge,C.dump="["+te+"]"}function Ne(C,G,se,te){let ge="";const Se=C.tag;for(let xe=0,Oe=se.length;xe<Oe;xe+=1){let Te=se[xe];C.replacer&&(Te=C.replacer.call(se,String(xe),Te)),(ne(C,G+1,Te,!0,!0,!1,!0)||typeof Te>"u"&&ne(C,G+1,null,!0,!0,!1,!0))&&((!te||ge!=="")&&(ge+=be(C,G)),C.dump&&c===C.dump.charCodeAt(0)?ge+="-":ge+="- ",ge+=C.dump)}C.tag=Se,C.dump=ge||"[]"}function Ye(C,G,se){let te="";const ge=C.tag,Se=Object.keys(se);for(let xe=0,Oe=Se.length;xe<Oe;xe+=1){let Te="";te!==""&&(Te+=", "),C.condenseFlow&&(Te+='"');const Ue=Se[xe];let Ee=se[Ue];C.replacer&&(Ee=C.replacer.call(se,Ue,Ee)),ne(C,G,Ue,!1,!1)&&(C.dump.length>1024&&(Te+="? "),Te+=C.dump+(C.condenseFlow?'"':"")+":"+(C.condenseFlow?"":" "),ne(C,G,Ee,!1,!1)&&(Te+=C.dump,te+=Te))}C.tag=ge,C.dump="{"+te+"}"}function g(C,G,se,te){let ge="";const Se=C.tag,xe=Object.keys(se);if(C.sortKeys===!0)xe.sort();else if(typeof C.sortKeys=="function")xe.sort(C.sortKeys);else if(C.sortKeys)throw new t("sortKeys must be a boolean or a function");for(let Oe=0,Te=xe.length;Oe<Te;Oe+=1){let Ue="";(!te||ge!=="")&&(Ue+=be(C,G));const Ee=xe[Oe];let tt=se[Ee];if(C.replacer&&(tt=C.replacer.call(se,Ee,tt)),!ne(C,G+1,Ee,!0,!0,!0))continue;const ht=C.tag!==null&&C.tag!=="?"||C.dump&&C.dump.length>1024;ht&&(C.dump&&c===C.dump.charCodeAt(0)?Ue+="?":Ue+="? "),Ue+=C.dump,ht&&(Ue+=be(C,G)),ne(C,G+1,tt,!0,ht)&&(C.dump&&c===C.dump.charCodeAt(0)?Ue+=":":Ue+=": ",Ue+=C.dump,ge+=Ue)}C.tag=Se,C.dump=ge||"{}"}function B(C,G,se){const te=se?C.explicitTypes:C.implicitTypes;for(let ge=0,Se=te.length;ge<Se;ge+=1){const xe=te[ge];if((xe.instanceOf||xe.predicate)&&(!xe.instanceOf||typeof G=="object"&&G instanceof xe.instanceOf)&&(!xe.predicate||xe.predicate(G))){if(se?xe.multi&&xe.representName?C.tag=xe.representName(G):C.tag=xe.tag:C.tag="?",xe.represent){const Oe=C.styleMap[xe.tag]||xe.defaultStyle;let Te;if(a.call(xe.represent)==="[object Function]")Te=xe.represent(G,Oe);else if(o.call(xe.represent,Oe))Te=xe.represent[Oe](G,Oe);else throw new t("!<"+xe.tag+'> tag resolver accepts not "'+Oe+'" style');C.dump=Te}return!0}}return!1}function ne(C,G,se,te,ge,Se,xe){C.tag=null,C.dump=se,B(C,se,!1)||B(C,se,!0);const Oe=a.call(C.dump),Te=te;te&&(te=C.flowLevel<0||C.flowLevel>G);const Ue=Oe==="[object Object]"||Oe==="[object Array]";let Ee,tt;if(Ue&&(Ee=C.duplicates.indexOf(se),tt=Ee!==-1),(C.tag!==null&&C.tag!=="?"||tt||C.indent!==2&&G>0)&&(ge=!1),tt&&C.usedDuplicates[Ee])C.dump="*ref_"+Ee;else{if(Ue&&tt&&!C.usedDuplicates[Ee]&&(C.usedDuplicates[Ee]=!0),Oe==="[object Object]")te&&Object.keys(C.dump).length!==0?(g(C,G,C.dump,ge),tt&&(C.dump="&ref_"+Ee+C.dump)):(Ye(C,G,C.dump),tt&&(C.dump="&ref_"+Ee+" "+C.dump));else if(Oe==="[object Array]")te&&C.dump.length!==0?(C.noArrayIndent&&!xe&&G>0?Ne(C,G-1,C.dump,ge):Ne(C,G,C.dump,ge),tt&&(C.dump="&ref_"+Ee+C.dump)):(_t(C,G,C.dump),tt&&(C.dump="&ref_"+Ee+" "+C.dump));else if(Oe==="[object String]")C.tag!=="?"&&he(C,C.dump,G,Se,Te);else{if(Oe==="[object Undefined]")return!1;if(C.skipInvalid)return!1;throw new t("unacceptable kind of an object to dump "+Oe)}if(C.tag!==null&&C.tag!=="?"){let ht=encodeURI(C.tag[0]==="!"?C.tag.slice(1):C.tag).replace(/!/g,"%21");C.tag[0]==="!"?ht="!"+ht:ht.slice(0,18)==="tag:yaml.org,2002:"?ht="!!"+ht.slice(18):ht="!<"+ht+">",C.dump=ht+" "+C.dump}}return!0}function we(C,G){const se=[],te=[];fe(C,se,te);const ge=te.length;for(let Se=0;Se<ge;Se+=1)G.duplicates.push(se[te[Se]]);G.usedDuplicates=new Array(ge)}function fe(C,G,se){if(C!==null&&typeof C=="object"){const te=G.indexOf(C);if(te!==-1)se.indexOf(te)===-1&&se.push(te);else if(G.push(C),Array.isArray(C))for(let ge=0,Se=C.length;ge<Se;ge+=1)fe(C[ge],G,se);else{const ge=Object.keys(C);for(let Se=0,xe=ge.length;Se<xe;Se+=1)fe(C[ge[Se]],G,se)}}}function Q(C,G){G=G||{};const se=new ee(G);se.noRefs||we(C,se);let te=C;return se.replacer&&(te=se.replacer.call({"":te},"",te)),ne(se,0,te,!0,!0)?se.dump+`
103
- `:""}return ah.dump=Q,ah}var sS;function vN(){if(sS)return Zn;sS=1;const e=hN(),t=gN();function n(a,o){return function(){throw new Error("Function yaml."+a+" is removed in js-yaml 4. Use yaml."+o+" instead, which is now safe by default.")}}return Zn.Type=la(),Zn.Schema=yw(),Zn.FAILSAFE_SCHEMA=ww(),Zn.JSON_SCHEMA=Pw(),Zn.CORE_SCHEMA=Aw(),Zn.DEFAULT_SCHEMA=Rv(),Zn.load=e.load,Zn.loadAll=e.loadAll,Zn.dump=t.dump,Zn.YAMLException=Jc(),Zn.types={binary:jw(),float:Rw(),map:kw(),null:Iw(),pairs:Ow(),set:$w(),timestamp:Tw(),bool:_w(),int:Cw(),merge:Ew(),omap:Mw(),seq:xw(),str:Sw()},Zn.safeLoad=n("safeLoad","load"),Zn.safeLoadAll=n("safeLoadAll","loadAll"),Zn.safeDump=n("safeDump","dump"),Zn}var bN=vN();const yN=pN(bN),{Type:Uae,Schema:zae,FAILSAFE_SCHEMA:Bae,JSON_SCHEMA:Fae,CORE_SCHEMA:Vae,DEFAULT_SCHEMA:Kae,load:Wae,loadAll:Gae,dump:Jae,YAMLException:Zae,types:Yae,safeLoad:Qae,safeLoadAll:Xae,safeDump:eie}=yN,Pv=3e3,Av=9999,tie="openpond.yaml",SN=["google","github","x"],Tv=new Set([22,2222,2375,2376,3108,5900,5901,6080,7818]),lS=p(i().trim().min(1).max(1e3)).max(50),kc=i().trim().min(1).max(4096).refine(Lw,{message:"path must be a relative workspace path"}),xN=i().trim().min(1).max(500).refine(e=>!e.includes("\0")&&!/\s/.test(e),"image ref must be a single OCI reference"),kN=i().trim().regex(/^sha256:[0-9a-f]{64}$/i),Nw=i().trim().min(1).max(500).refine(e=>e.startsWith("/")&&!e.includes("\0"),"workspaceRoot must be an absolute guest path"),wN=l({ref:xN,digest:kN.optional(),registrySecretRef:i().trim().min(1).max(500).optional(),platform:b("linux/amd64").optional(),workspaceRoot:Nw.optional()}).strict(),IN=l({context:kc.default("."),path:kc.default("Dockerfile"),target:i().trim().min(1).max(191).optional(),buildArgs:le(i().max(191),i().max(500)).optional(),registrySecretRefs:p(i().trim().min(1).max(500)).max(10).optional(),platform:b("linux/amd64").optional(),workspaceRoot:Nw.optional()}).strict(),_N=l({base:i().trim().min(1).max(120).optional(),snapshot:i().trim().min(1).max(191).optional(),image:wN.optional(),dockerfile:IN.optional()}).strict().superRefine((e,t)=>{[e.base,e.snapshot,e.image,e.dockerfile].filter(Boolean).length!==1&&t.addIssue({code:ia.custom,message:"runtime must declare exactly one of base, snapshot, image, or dockerfile"})}),Dw=l({cpu:d().positive().max(8).optional(),memoryGb:d().positive().max(32).optional(),diskGb:d().positive().max(100).optional()}).strict(),CN=l({provider:v(SN),scopes:p(i().trim().min(1).max(200)).max(100).default([]),capabilities:p(i().trim().min(1).max(200)).max(100).default([])}).strict(),RN=l({models:p(i().trim().min(1).max(200)).max(100).default([]),scopes:p(i().trim().min(1).max(200)).max(100).default([])}).strict(),PN=l({opchat:RN.optional()}).catchall(le(i(),ce())).default({}),AN=l({name:i().trim().regex(/^[A-Za-z_][A-Za-z0-9_-]*$/).max(63).optional(),mountPath:i().trim().min(1).max(256).optional(),storageGb:d().int().positive().max(100).optional(),deleteOnSandboxDelete:I().optional()}).strict(),TN=l({port:d().int().min(Pv).max(Av).refine(e=>!Tv.has(e),{message:"preview port is reserved"}),protocol:b("http").default("http"),label:i().trim().min(1).max(80).optional(),access:v(["private","public"]).default("private"),path:i().trim().min(1).max(512).refine(e=>e.startsWith("/"),{message:"preview path must start with /"}).default("/")}).strict(),Hw=l({command:i().trim().min(1).max(1e3),cwd:kc.optional(),timeoutSeconds:d().int().positive().max(86400).optional(),requiresStart:I().default(!1),ports:p(TN).max(20).default([]),artifactPaths:p(kc).max(100).default([])}).strict(),cS=Hw.extend({name:i().trim().min(1).max(80)}).strict(),EN=l({name:i().trim().min(1).max(80).optional(),service:i().trim().min(1).max(80).optional(),port:d().int().min(Pv).max(Av).refine(e=>!Tv.has(e),{message:"app MCP port is reserved"}),path:i().trim().min(1).max(512).refine(e=>e.startsWith("/"),{message:"app MCP path must start with /"}).default("/mcp")}).strict(),jN=l({name:i().trim().min(1).max(80).optional(),port:d().int().min(Pv).max(Av).refine(e=>!Tv.has(e),{message:"validation probe port is reserved"}),path:i().trim().min(1).max(512).refine(e=>e.startsWith("/"),{message:"validation probe path must start with /"}).default("/"),expectedStatus:d().int().min(100).max(599).default(200)}).strict(),MN=le(i(),ce()).refine(e=>e.type==="object","input schema must be a JSON schema object"),ON=l({name:i().trim().regex(/^[A-Za-z_][A-Za-z0-9_]*$/).max(191),required:I().default(!1),secret:I().default(!0),description:i().trim().max(500).optional()}).strict(),ih=i().trim().min(1).max(120),$N=l({name:i().trim().min(1).max(120),description:i().trim().max(500).optional(),cron:i().trim().min(1).max(500).optional(),rate:i().trim().min(1).max(500).optional(),once:ih.optional(),scheduleType:v(["rate","cron","once"]).optional(),scheduleExpression:i().trim().min(1).max(500).optional(),timezone:i().trim().min(1).max(100).optional(),enabled:I().default(!0),startAt:ih.optional(),endAt:ih.optional(),maxRuns:d().int().positive().nullable().optional(),runtimePolicy:v(["run_and_stop","run_and_archive","run_and_delete","use_existing_running"]).default("run_and_stop"),action:i().trim().min(1).max(120).optional(),actionName:i().trim().min(1).max(120).optional(),command:i().trim().min(1).max(2e3).optional(),target:l({kind:v(["start","action","service","command"]).optional(),name:i().trim().min(1).max(120).optional(),actionName:i().trim().min(1).max(120).optional(),command:i().trim().min(1).max(2e3).optional(),requiresStart:I().optional()}).strict().optional(),requiresStart:I().optional(),budget:l({maxUsd:i().trim().min(1).max(40).optional()}).strict().optional(),resources:Dw.optional(),quotas:le(i(),ce()).optional(),lifecycle:le(i(),ce()).optional(),retentionPolicy:le(i(),ce()).optional(),env:p(l({name:i().trim().regex(/^[A-Za-z_][A-Za-z0-9_]*$/).max(191),value:i().optional(),secretRef:i().optional()}).strict()).max(100).optional(),integrationLeases:p(le(i(),ce())).max(20).optional(),metadata:le(i(),ce()).optional()}).strict().superRefine((e,t)=>{[e.cron,e.rate,e.once,e.scheduleExpression].filter(c=>typeof c=="string"&&c.trim()).length!==1&&t.addIssue({code:ia.custom,path:["scheduleExpression"],message:"schedule must declare exactly one of cron, rate, once, or scheduleExpression"}),e.scheduleExpression&&!e.scheduleType&&t.addIssue({code:ia.custom,path:["scheduleType"],message:"scheduleType is required with scheduleExpression"});const a=e.command??e.target?.command??null,o=e.target?.name??null,r=e.actionName??e.action??e.target?.actionName??(e.target?.kind==="action"?o:null),s=e.target?.kind??(a?"command":"action");s==="action"&&!r&&t.addIssue({code:ia.custom,path:["action"],message:"schedule action target is required"}),s==="service"&&!o&&t.addIssue({code:ia.custom,path:["target","name"],message:"schedule service target name is required"}),s==="command"&&!a&&t.addIssue({code:ia.custom,path:["command"],message:"schedule command target is required"})}),NN=l({schemaVersion:b(1),name:i().trim().min(1).max(80).regex(/^[a-z0-9][a-z0-9-]*[a-z0-9]$/),version:i().trim().min(1).max(40),useCase:i().trim().min(1).max(80),description:i().trim().min(1).max(500),runtime:_N,resources:Dw.optional(),setup:l({commands:lS.default([])}).strict().default({commands:[]}),validation:l({commands:lS.min(1),probes:p(jN).max(20).default([])}).strict(),start:Hw,actions:p(cS).max(20).default([]),services:p(cS).max(20).default([]),schedules:p($N).max(20).default([]),mcp:l({endpoints:p(EN).max(10).default([])}).strict().default({endpoints:[]}),volumes:p(AN).max(5).default([]),integrations:l({requiredLeases:p(CN).max(20).default([])}).strict().default({requiredLeases:[]}),permissions:PN,inputs:l({schema:MN.default({type:"object"}),env:p(ON).max(100).default([])}).strict().default({schema:{type:"object"},env:[]}),artifacts:l({paths:p(kc).max(100).default([])}).strict().default({paths:[]}),network:l({egress:v(["restricted","allow","block"]).default("restricted")}).strict().default({egress:"restricted"})}).strict().superRefine((e,t)=>{HN(e,t),Ev(t,e.volumes.flatMap(n=>n.name?[n.name]:[]),"volume names must be unique","volumes"),LN(e,t),qN(e,t),UN(e,t),zN(e,t)}),DN=l({path:i(),message:i(),code:i()});function nie(e){return[{kind:"start",name:"start",...e.start,artifactPaths:rh(e.start,e)},...e.actions.map(t=>({kind:"action",name:t.name,command:t.command,cwd:t.cwd,timeoutSeconds:t.timeoutSeconds,requiresStart:t.requiresStart,ports:t.ports,artifactPaths:rh(t,e)})),...e.services.map(t=>({kind:"service",name:t.name,command:t.command,cwd:t.cwd,timeoutSeconds:t.timeoutSeconds,requiresStart:t.requiresStart,ports:t.ports,artifactPaths:rh(t,e)}))]}function Lw(e){return!e.includes("\0")&&!e.startsWith("/")&&!e.split(/[\\/]+/).some(t=>t===".."||t==="")}function Ev(e,t,n,a){const o=new Set;for(const r of t){if(o.has(r)){e.addIssue({code:ia.custom,path:[a],message:n});return}o.add(r)}}function HN(e,t){const n=["start",...e.actions.map(a=>a.name),...e.services.map(a=>a.name)];Ev(t,n,"start, action, and service names must be unique","actions")}function LN(e,t){const n=oh(e.inputs.schema.properties),a=new Set(e.volumes.map(o=>o.name).filter(o=>!!o));for(const[o,r]of Object.entries(n)){const s=oh(r),c=oh(s["x-openpond-upload"]??s.xOpenPondUpload),m=typeof c.targetPath=="string"&&c.targetPath.trim()?c.targetPath.trim():typeof c.path=="string"&&c.path.trim()?c.path.trim():"";if(!m)continue;const u=m.replace(/^workspace\//,"").replace(/^\/+/,"").replace(/\/+$/,"");if(!Lw(u)){t.addIssue({code:ia.custom,path:["inputs","schema","properties",o,"x-openpond-upload","targetPath"],message:"upload target must be a relative workspace path"});continue}const f=u.split("/");f[0]==="volumes"&&(!f[1]||!a.has(f[1]))&&t.addIssue({code:ia.custom,path:["inputs","schema","properties",o,"x-openpond-upload","targetPath"],message:"upload target references an undeclared volume"})}}function qN(e,t){Ev(t,e.inputs.env.map(n=>n.name),"env input names must be unique","inputs")}function UN(e,t){const n=new Map(e.services.map(o=>[o.name,new Set(o.ports.map(r=>r.port))])),a=new Set([...e.start.ports.map(o=>o.port),...e.services.flatMap(o=>o.ports.map(r=>r.port))]);for(const[o,r]of e.mcp.endpoints.entries()){if(r.service){const s=n.get(r.service);if(!s){t.addIssue({code:ia.custom,path:["mcp","endpoints",o,"service"],message:`app MCP service does not exist: ${r.service}`});continue}s.has(r.port)||t.addIssue({code:ia.custom,path:["mcp","endpoints",o,"port"],message:`app MCP port ${r.port} is not declared on service ${r.service}`});continue}a.has(r.port)||t.addIssue({code:ia.custom,path:["mcp","endpoints",o,"port"],message:`app MCP port ${r.port} is not declared on start or services`})}}function zN(e,t){const n=new Set(e.actions.map(o=>o.name)),a=new Set(e.services.map(o=>o.name));for(const[o,r]of e.schedules.entries()){const s=r.command??r.target?.command??null;if(r.target?.kind==="command"||s)continue;const c=r.actionName??r.action??r.target?.actionName??(r.target?.kind==="action"?r.target?.name:null);if(c&&!n.has(c)&&t.addIssue({code:ia.custom,path:["schedules",o,"action"],message:`schedule action target does not exist: ${c}`}),r.target?.kind==="service"){const m=r.target.name??"";m&&!a.has(m)&&t.addIssue({code:ia.custom,path:["schedules",o,"target","name"],message:`schedule service target does not exist: ${m}`})}}}function oh(e){return e&&typeof e=="object"&&!Array.isArray(e)?e:{}}function rh(e,t){return e.artifactPaths.length>0?e.artifactPaths:t.artifacts.paths}const BN=l({id:i(),name:i(),description:i().nullable(),scheduleType:i(),scheduleExpression:i(),enabled:I(),rawEnabled:I().optional(),syncStatus:i().nullable(),syncError:i().nullable().optional(),startAt:i().nullable(),endAt:i().nullable(),maxRuns:d().nullable(),executionCount:d().nullable(),lifecycleStatus:i().nullable(),lifecycleReason:i().nullable(),lastExecutionAt:i().nullable().optional(),lastExecutionStatus:i().nullable().optional(),lastRunNowAt:i().nullable().optional(),lastRunNowStatus:i().nullable().optional(),updatedAt:i(),deploymentId:i(),isProduction:I().optional(),payload:ce().optional()}).passthrough(),FN=l({total:d().int().nonnegative(),active:d().int().nonnegative(),paused:d().int().nonnegative(),enabled:d().int().nonnegative().optional(),disabled:d().int().nonnegative().optional(),nextRunAt:i().nullable().optional(),lastRunAt:i().nullable().optional(),schedules:p(BN).optional().default([]),truncated:I().optional()}).passthrough(),sh=l({name:i(),kind:v(["start","action","service"]),command:i(),cwd:i().nullable(),timeoutSeconds:d().nullable(),requiresStart:I(),ports:p(l({port:d(),protocol:i(),label:i().nullable(),access:i(),path:i()}).passthrough()).default([]),artifactPaths:p(i()).default([])}).passthrough(),VN=l({schemaVersion:b(1),source:b("openpond.yaml"),manifestName:i(),manifestVersion:i(),manifestUseCase:i(),manifestDescription:i(),manifestPath:i(),manifestHash:i(),inputSchema:le(i(),ce()).default({}),env:p(l({name:i(),required:I(),secret:I(),description:i().nullable()}).passthrough()).default([]),start:sh,actions:p(sh).default([]),services:p(sh).default([]),defaultActionName:i().nullable(),updatedAt:i()}).passthrough(),KN=l({id:i(),name:i(),description:i().nullable(),visibility:i().nullable().optional(),gitOwner:i().nullable().optional(),gitRepo:i().nullable().optional(),gitHost:i().nullable().optional(),defaultBranch:i().nullable().optional(),sandbox:I().optional().default(!1),sandboxActionRegistry:VN.nullable().optional(),sandboxManifestHash:i().nullable().optional(),sandboxManifestPath:i().nullable().optional(),sandboxManifestSyncedAt:i().nullable().optional(),sandboxManifestError:i().nullable().optional(),updatedAt:i().nullable().optional(),latestDeployment:l({id:i().optional(),status:i().optional(),deploymentDomain:i().nullable().optional(),createdAt:i().optional(),isProduction:I().nullable().optional(),gitBranch:i().nullable().optional()}).nullable().optional(),scheduleSummary:FN.nullable().optional()}),WN=l({detected:I(),rootPath:i(),manifestPath:i(),manifestHash:i().nullable().optional().default(null),manifest:le(i(),ce()).nullable().optional().default(null),normalizedManifest:NN.nullable().optional().default(null),valid:I().optional().default(!1),diagnostics:p(DN).optional().default([])}),GN=l({appId:i(),appName:i(),gitOwner:i().nullable(),gitRepo:i().nullable(),gitHost:i().nullable(),defaultBranch:i().nullable(),linkedAt:i()}),qw=l({teamId:i(),projectId:i(),projectSlug:i().nullable().optional().default(null),projectName:i().nullable().optional().default(null),sourceRepoUrl:i().nullable().optional().default(null),defaultBranch:i().nullable().optional().default(null),lastUploadedCommit:i().nullable().optional().default(null),lastUploadTransport:v(["git_head","snapshot","api_source_upload"]).nullable().optional().default(null),manifestPath:i().nullable().optional().default(null),manifestHash:i().nullable().optional().default(null),syncedAt:i().nullable().optional().default(null),linkedAt:i()}),JN=v(["github_repo","internal_repo","template","manual"]),ZN=l({id:i(),teamId:i(),name:i(),slug:i().nullable().optional().default(null),sourceType:JN.optional().default("manual"),sourceLabel:i().nullable().optional().default(null),defaultBranch:i().nullable().optional().default(null),internalRepoPath:i().nullable().optional().default(null),manifestPath:i().nullable().optional().default(null),manifestHash:i().nullable().optional().default(null),syncedAt:i().nullable().optional().default(null),organizationName:i().nullable().optional().default(null),organizationSlug:i().nullable().optional().default(null),createdAt:i().nullable().optional().default(null),updatedAt:i().nullable().optional().default(null)}),YN=l({id:i(),name:i(),path:i(),workspacePath:i(),repoPath:i().nullable(),source:v(["folder","git"]),sourceFolders:p(i().min(1)).min(1).optional(),hiddenFromDefaultSidebar:I().optional(),sandboxTemplate:WN.nullable().optional().default(null),linkedOpenPondApp:GN.nullable().optional().default(null),linkedSandboxProject:qw.nullable().optional().default(null),preferredSandboxAgentId:i().nullable().optional().default(null),createdAt:i(),updatedAt:i()});l({path:i().trim().min(1).optional(),sourceFolders:p(i().trim().min(1)).min(1).optional(),primaryFolder:i().trim().min(1).optional(),name:i().trim().min(1).max(120).optional(),createNew:I().optional(),baseDirectory:i().trim().min(1).max(4096).optional()}).superRefine((e,t)=>{if(e.createNew){(e.path||e.sourceFolders||e.primaryFolder)&&t.addIssue({code:"custom",message:"A new folder cannot be combined with existing source folders."}),e.name?.trim()||t.addIssue({code:"custom",path:["name"],message:"Project name is required when creating a new project."});return}e.path&&e.sourceFolders&&t.addIssue({code:"custom",message:"Use either path or source folders."}),!e.path?.trim()&&!e.sourceFolders?.length&&t.addIssue({code:"custom",path:["path"],message:"Project path is required."}),e.sourceFolders?.length&&!e.name?.trim()&&t.addIssue({code:"custom",path:["name"],message:"Project name is required."}),e.primaryFolder&&!e.sourceFolders?.length&&t.addIssue({code:"custom",path:["primaryFolder"],message:"Primary folder requires source folders."})});l({linkedSandboxProject:qw.nullable().optional(),preferredSandboxAgentId:i().nullable().optional(),hiddenFromDefaultSidebar:I().optional()});const QN=["connected_app_search","connected_app_read","connected_app_write"],lh="https://openpond.ai",jv=["slack","google","github","turnkey","x","microsoft_teams","mcp"],Mv={slack:[tn("slack.channel.bind","Bind channels","Bind Slack channels or threads to OpenPond profiles.","setup",!1),tn("slack.message.ingest","Ingest messages","Ingest Slack channel or thread activity into OpenPond context.","setup",!1)],microsoft_teams:[tn("microsoft_teams.channel.bind","Bind channels","Bind Teams channels or chats to OpenPond profiles.","setup",!1),tn("microsoft_teams.message.ingest","Ingest messages","Ingest Teams channel or chat activity into OpenPond context.","setup",!1)],google:[tn("google.drive.file.read","Read Drive files","Find and read Google Drive files.","read",!0),tn("google.drive.file.write","Write Drive files","Create or update approved Google Drive files.","write",!0),tn("google.docs.read","Read Docs","Read Google Docs content and structure.","read",!0),tn("google.docs.write","Edit Docs","Apply approved Google Docs edits.","write",!0),tn("google.comments.read","Read comments","Read Google file comments.","read",!0),tn("google.comments.write","Write comments","Create or resolve approved Google comments.","write",!0)],github:[tn("github.repo.read","Read repositories","Read repository metadata and file context.","read",!0),tn("github.issue.read","Read issues","Read GitHub issues and comments.","read",!0),tn("github.issue.write","Update issues","Create or update approved GitHub issue content.","write",!0),tn("github.pull_request.read","Read pull requests","Read pull request metadata, diffs, checks, and reviews.","read",!0),tn("github.pull_request.write","Update pull requests","Create approved comments or pull request updates.","write",!0)],turnkey:[tn("turnkey.wallets.read","Read Agent Wallet","Read the connected OpenPond Agent Wallet address and metadata.","read",!0),tn("turnkey.balances.read","Read wallet balances","Read balances for the connected OpenPond Agent Wallet.","read",!0),tn("turnkey.activities.read","Read wallet activity","Read recent Turnkey activity for the connected OpenPond Agent Wallet.","read",!0)],x:[tn("x.profile.read","Read profile","Read the connected X profile.","read",!0),tn("x.search.read","Search X","Search public X posts when granted.","read",!0),tn("x.mentions.read","Read mentions","Read mentions for the connected X account.","read",!0),tn("x.post.write","Post","Create approved X posts.","write",!0),tn("x.reply.write","Reply","Create approved X replies.","write",!0)],mcp:[tn("mcp.tool.discover","Discover tools","Discover team-scoped MCP tools.","tooling",!1),tn("mcp.tool.call","Call tools","Call approved MCP tools through the team endpoint.","tooling",!1)]},Ov={slack:[],microsoft_teams:[],google:[Kt("google.drive.search","search","Search Drive","Search Google Drive files by grounded query.",["google.drive.file.read"]),Kt("google.drive.read_file","read","Read Drive file","Read Drive file metadata or exported content by stable ref.",["google.drive.file.read"],{requiredKeys:["ref"]}),Kt("google.docs.read","read","Read Google Doc","Read Google Docs content and structure by stable ref.",["google.docs.read"],{requiredKeys:["ref"]}),Kt("google.comments.read","read","Read comments","Read comments for a grounded Google file ref.",["google.comments.read"],{requiredKeys:["ref"]}),Kt("google.docs.update","write","Update Google Doc","Apply an explicitly approved Google Docs edit and return readback verification.",["google.docs.write"],{requiredKeys:["ref","patch"]}),Kt("google.comments.create","write","Create comment","Create an explicitly approved Google file comment and return readback verification.",["google.comments.write"],{requiredKeys:["ref","body"]}),Kt("google.comments.resolve","write","Resolve comment","Resolve an explicitly approved Google comment and return readback verification.",["google.comments.write"],{requiredKeys:["ref","commentId"]})],github:[Kt("github.repo.search","search","Search repositories","Search accessible repositories by owner, name, or topic.",["github.repo.read"]),Kt("github.issue.search","search","Search issues","Search accessible GitHub issues.",["github.issue.read"]),Kt("github.pull_request.search","search","Search pull requests","Search accessible GitHub pull requests.",["github.pull_request.read"]),Kt("github.repo.read","read","Read repository","Read grounded repository metadata or file context.",["github.repo.read"],{requiredKeys:["ref"]}),Kt("github.issue.read","read","Read issue","Read a grounded GitHub issue and comments.",["github.issue.read"],{requiredKeys:["ref"]}),Kt("github.pull_request.read","read","Read pull request","Read a grounded pull request, checks, reviews, or diff summary.",["github.pull_request.read"],{requiredKeys:["ref"]}),Kt("github.issue.create","write","Create issue","Create an explicitly approved GitHub issue and return readback verification.",["github.issue.write"],{requiredKeys:["repo","title","body"]}),Kt("github.issue.comment","write","Comment on issue","Create an explicitly approved GitHub issue comment and return readback verification.",["github.issue.write"],{requiredKeys:["ref","body"]}),Kt("github.issue.update","write","Update issue","Apply an explicitly approved issue metadata/content update and return readback verification.",["github.issue.write"],{requiredKeys:["ref"]}),Kt("github.pull_request.comment","write","Comment on pull request","Create an explicitly approved pull request comment and return readback verification.",["github.pull_request.write"],{requiredKeys:["ref","body"]}),Kt("github.pull_request.update","write","Update pull request","Apply an explicitly approved pull request metadata update and return readback verification.",["github.pull_request.write"],{requiredKeys:["ref"]})],turnkey:[Kt("turnkey.wallets.read","read","Read Agent Wallet","Read the address and metadata for the connected OpenPond Agent Wallet.",["turnkey.wallets.read"]),Kt("turnkey.balances.read","read","Read wallet balances","Read supported-network balances for the connected OpenPond Agent Wallet.",["turnkey.balances.read"]),Kt("turnkey.activities.read","read","Read wallet activity","Read recent Turnkey activity for the connected OpenPond Agent Wallet.",["turnkey.activities.read"])],x:[Kt("x.profile.read","read","Read profile","Read the connected X account profile.",["x.profile.read"]),Kt("x.post.read","read","Read post","Read a public X post by stable ref, status URL, or post id.",["x.search.read"],{requiredKeys:["ref"]}),Kt("x.search.posts","search","Search recent posts","Search public X posts from the X recent-search window by grounded query.",["x.search.read"]),Kt("x.mentions.search","search","Search mentions","Search mentions for the connected X account.",["x.mentions.read"]),Kt("x.mention.read","read","Read mention","Read a grounded mention or post ref.",["x.mentions.read"],{requiredKeys:["ref"]}),Kt("x.post.create","write","Create post","Create an explicitly approved X post and return readback verification.",["x.post.write"],{requiredKeys:["text"]}),Kt("x.reply.create","write","Create reply","Create an explicitly approved X reply and return readback verification.",["x.reply.write"],{requiredKeys:["inReplyToRef","text"]})],mcp:[]},XN={google:["# Google Connected App","","Use Google only through server-provided connected app tools. Never ask for or infer OAuth tokens.","Before reading or editing, identify the exact Drive file, Doc, Sheet, Slide, or comment thread. If the target is ambiguous, ask a short clarification or search first.","Use only declared Google operation ids: google.drive.search, google.drive.read_file, google.docs.read, google.comments.read, google.docs.update, google.comments.create, google.comments.resolve.","For writes, require explicit user intent, summarize the planned change, and verify the target identity before applying updates.","After a write, read back the changed object or relevant range and report the result with the provider file name or stable reference.","Prefer narrow reads over broad Drive scans. Do not expose private file ids unless the tool result already presents them as stable refs."].join(`
104
- `),github:["# GitHub Connected App","","Use GitHub only through server-provided connected app tools. Repository, issue, and pull request identity must be grounded before action.","Use only declared GitHub operation ids: github.repo.search, github.issue.search, github.pull_request.search, github.repo.read, github.issue.read, github.pull_request.read, github.issue.create, github.issue.comment, github.issue.update, github.pull_request.comment, github.pull_request.update.","For reads, name the owner/repo and issue or pull request number when available. If several targets match, ask or inspect before proceeding.","For writes, require explicit user intent and avoid destructive repository changes. Create issues only when the user clearly asks to submit or file a new issue. Prefer comments, labels, or metadata updates unless a stronger operation is clearly requested.","Do not claim CI, review, branch, or PR state changed until a tool result confirms it.","Keep local workspace git operations separate from connected GitHub operations unless the user explicitly asks to bridge them."].join(`
105
- `),turnkey:["# Turnkey Agent Wallet Connected App","","Use Turnkey only through server-provided connected app tools. Never ask for, expose, or infer API keys, P-256 credentials, wallet private keys, or lease material.","Use only declared Turnkey read operation ids: turnkey.wallets.read, turnkey.balances.read, and turnkey.activities.read.","Turnkey connected-app access is read-only. Do not claim that a transaction was created, signed, approved, rejected, or sent.","Use turnkey.wallets.read for the Agent Wallet address and metadata, turnkey.balances.read for supported-network balances, and turnkey.activities.read for recent Turnkey activity.","Report the wallet address and network with balance results, and distinguish an empty balance from a failed provider read."].join(`
106
- `),x:["# X Connected App","","Use X only through server-provided connected app tools. Distinguish profile, recent search, mention, post, and reply operations.","Use only declared X operation ids: x.profile.read, x.post.read, x.search.posts, x.mentions.search, x.mention.read, x.post.create, x.reply.create.","For x.com, twitter.com, or stable status URLs, first parse the status/post id and read the post with connected_app_read using operation x.post.read and ref set to the original URL, stable ref, or id. Do not open a browser before trying the X connector.","Use x.search.posts for discovery, related public posts, replies, quote-post searches, and conversation scans. It uses X API recent search, so report zero-result searches as zero recent public posts returned by X.","For conversation or reply collection, dedupe by returned post id/ref. Do not repeat the same search call unless the result exposes a usable cursor or next token; if pagination is unavailable, state that coverage is limited to returned recent-search results.","Reads can summarize recent public posts, connected-account profile details, and mentions when the capability is available.","Writes require explicit user intent for the exact post or reply. Do not publish drafts, jokes, endorsements, or replies unless the user clearly approves the content.","Before posting or replying, preserve account identity, quote the proposed content in summary form, and respect provider limits and policy boundaries.","After a write, verify the returned post or reply ref before reporting success."].join(`
107
- `),microsoft_teams:["# Microsoft Teams Connected App","","Microsoft Teams is currently an ingestion/native binding surface only. Do not expose Teams OAuth reads, replies, file operations, or sandbox leases.","Native Teams setup can bind chats or channels to OpenPond profiles and ingest activity into OpenPond context.","If the user asks for Teams actions beyond ingestion or binding status, explain that the connector is not available yet rather than inventing tool access."].join(`
108
- `),slack:["# Slack Connected App","","Slack is currently an ingestion/native binding surface only. Do not expose Slack OAuth reads, replies, file operations, or sandbox leases.","Native Slack setup can bind channels or threads to OpenPond profiles and ingest activity into OpenPond context.","If the user asks for Slack actions beyond ingestion or binding status, explain that the connector is not available yet rather than inventing tool access."].join(`
109
- `),mcp:["# OpenPond MCP Connected App","","Use OpenPond MCP only through server-provided tool discovery and call paths. Do not invent MCP tools or endpoints.","Treat MCP as team-scoped tooling, not an OAuth connector. Tool availability must come from server-confirmed discovery results.","Before calling an MCP tool, match the requested operation to the tool name, description, input schema, and allowed team context.","For writes or side effects, require explicit user intent and report only confirmed tool results."].join(`
110
- `)},aie=jv.map(e=>{const t=zw(e),n=XN[e];return{...t,provider:e,body:n,sourceHash:`connected-app-skill:${e}:${yD(n)}`,charCount:n.length}});function eD(e){const t=$v(e.provider);if(!t)return{ok:!1,error:`Connected app provider is not supported: ${e.provider}`};if(!t.leasePolicy.leaseable)return{ok:!1,error:`Connected app provider ${e.provider} is not leaseable for cloud connector execution.`};const n=fD(e.operation);if(e.toolName!==n)return{ok:!1,error:`Connected app tool ${e.toolName} does not match ${e.operation} operation.`};const a=e.operation==="write"?"write":"read",o=new Set(t.capabilities.filter(c=>c.access===a&&c.leaseable).map(c=>c.id)),r=e.capabilityIds.filter(c=>!o.has(c));if(r.length>0)return{ok:!1,error:`Connected app capability ${r[0]} is not allowed for ${e.provider} ${e.operation}.`};const s=nD(e);return s.ok?{ok:!0,request:e}:s}function tD(e){const t=Mm(e);return t?Ov[t]:[]}function nD(e){const t=rD(e.args),n=tD(e.provider).filter(s=>s.operation===e.operation);if(n.length===0)return{ok:!1,error:`Connected app provider ${e.provider} does not declare ${e.operation} operations.`};if(!t)return e.operation==="write"?{ok:!1,error:`Connected app ${e.provider} write calls require a provider operation id.`}:{ok:!0,request:e};const a=n.find(s=>s.id===t);if(!a)return{ok:!1,error:`Connected app operation ${t} is not allowed for ${e.provider} ${e.operation}.`};const o=e.capabilityIds.filter(s=>!a.capabilityIds.includes(s));if(o.length>0)return{ok:!1,error:`Connected app operation ${a.id} does not allow capability ${o[0]}.`};const r=lD(e.args,e.operation);for(const s of a.input?.requiredKeys??[]){const c=r[s];if(c==null||typeof c=="string"&&!c.trim())return{ok:!1,error:`Connected app operation ${a.id} requires input.${s}.`}}return{ok:!0,request:e}}const aD=[{id:"slack",providerFamily:"slack",setupSurface:"native_bot",statusSource:"native_binding",label:"Slack",shortLabel:"Slack",kind:"native",category:"Chat",description:"Bind Slack channels or threads for ingestion into OpenPond profiles.",icon:"/connected-apps/slack.svg",installLabel:"Continue to Slack details"},{id:"google",providerFamily:"google",setupSurface:"oauth_connector",statusSource:"integration_connection",label:"Google",shortLabel:"Google",kind:"oauth",category:"Productivity",description:"Docs, Drive files, and comments for sandbox workflows.",icon:"/connected-apps/google.svg",installLabel:"Continue to Google details"},{id:"github",providerFamily:"github",setupSurface:"oauth_connector",statusSource:"integration_connection",label:"GitHub",shortLabel:"GitHub",kind:"oauth",category:"Developer tools",description:"Access repositories, issues, and pull requests.",icon:"/connected-apps/github.svg",installLabel:"Continue to GitHub details"},{id:"x",providerFamily:"x",setupSurface:"oauth_connector",statusSource:"integration_connection",label:"X",shortLabel:"X",kind:"oauth",category:"Productivity",description:"User profile, mentions, and approved reply access.",icon:"/connected-apps/x.svg",installLabel:"Continue to X details"},{id:"turnkey",providerFamily:"turnkey",setupSurface:"wallet_connector",statusSource:"integration_connection",label:"Turnkey Agent Wallet",shortLabel:"Turnkey",kind:"wallet",category:"Wallet",description:"Read your OpenPond Agent Wallet address, balances, and activity through policy-bound Turnkey access.",icon:"/connected-apps/turnkey.svg",installLabel:"Manage OpenPond wallet"},{id:"microsoft_teams",providerFamily:"microsoft_teams",setupSurface:"native_bot",statusSource:"native_binding",label:"Teams",shortLabel:"Teams",kind:"native",category:"Chat",description:"Bind Teams chats or channels for ingestion into OpenPond profiles.",icon:"/connected-apps/microsoft.svg",installLabel:"Continue to Teams details"},{id:"mcp",providerFamily:"mcp",setupSurface:"mcp_endpoint",statusSource:"mcp_endpoint",label:"OpenPond MCP",shortLabel:"MCP",kind:"mcp",category:"Tools",description:"Expose workspace tools through a team-scoped MCP endpoint.",icon:"/connected-apps/openpond-mcp.svg",installLabel:"Open MCP settings"}],jm=aD,iD=jv.map(e=>{const t=jm.filter(a=>a.providerFamily===e),n=t[0];return{id:e,label:lc(e),shortLabel:n.shortLabel,category:n.category,icon:n.icon,description:n.description,setupSurfaces:t,capabilities:Mv[e],skills:mD(e),tools:pD(e),operations:Ov[e],leasePolicy:hD(e)}});function Uw(e){const t=oD(e);return t?jm.find(n=>n.id===t)??null:null}function $v(e){const t=Mm(e);return t?iD.find(n=>n.id===t)??null:null}function iie(e){const t=Uw(e.appId),n=dD(e.baseUrl),a=t?.kind==="mcp"?"/sandboxes/mcp":"/sandboxes/apps",o=new URL(a,n);t?.kind!=="mcp"&&o.searchParams.set("app",t?.deepLinkAppId??e.appId);const r=e.teamId?.trim();return r&&o.searchParams.set("teamId",r),o.toString()}function oD(e){const t=e?.trim().toLowerCase().replace(/[-\s]+/g,"_");return t?t==="teams"||t==="microsoft"?"microsoft_teams":jm.some(n=>n.id===t)?t:null:null}function Mm(e){const t=e?.trim().toLowerCase().replace(/[-\s]+/g,"_");return t?t==="teams"||t==="microsoft"?"microsoft_teams":jv.includes(t)?t:Uw(t)?.providerFamily??null:null}function ch(e={}){const t=gD(e.connections??[]);return jm.map(n=>{const a=$v(n.providerFamily),o=n.statusSource==="integration_connection"?t.filter(c=>c.provider===n.providerFamily):[],r=o.some(c=>c.status==="active"),s=vD(n,r);return{...n,providerLabel:a.label,setupSurfaceLabel:uD(n.setupSurface),status:s,statusLabel:bD(n,s,o),connections:o,connected:r,capabilities:dS(n,a.capabilities),capabilityLabels:dS(n,a.capabilities).map(c=>c.label),leasePolicy:a.leasePolicy}})}function tn(e,t,n,a,o){return{id:e,label:t,description:n,access:a,leaseable:o}}function Kt(e,t,n,a,o,r){return{id:e,operation:t,label:n,description:a,capabilityIds:o,...r?{input:r}:{},requiresReadback:t==="write",requiresRuntimeLease:!1}}function rD(e){return sD(e.operation)}function sD(e){return typeof e=="string"&&e.trim()?e.trim():null}function lD(e,t){return t==="write"?cD(e.input)?e.input:{}:e}function cD(e){return!!e&&typeof e=="object"&&!Array.isArray(e)}function dD(e){const t=e?.trim();if(!t)return lh;try{const n=new URL(t);return n.protocol!=="http:"&&n.protocol!=="https:"?lh:(n.pathname="/",n.search="",n.hash="",n.toString())}catch{return lh}}function lc(e){return e==="microsoft_teams"?"Microsoft Teams":e==="mcp"?"OpenPond MCP":e==="x"?"X":e[0].toUpperCase()+e.slice(1)}function uD(e){return e==="native_bot"?"Native app":e==="oauth_connector"?"OAuth connector":e==="wallet_connector"?"Wallet connector":"MCP endpoint"}function mD(e){return[zw(e)]}function zw(e){return{name:`${e}-connected-app`,description:`Use ${lc(e)} safely through connected app tools.`,path:`integration_skills/${e}.md`}}function pD(e){if(e==="mcp")return[];const t=Mv[e],n=Ov[e],a=t.filter(s=>s.access==="read").map(s=>s.id),o=t.filter(s=>s.access==="write").map(s=>s.id),r=[];return n.some(s=>s.operation==="search")&&r.push({name:"connected_app_search",description:`Search ${lc(e)} through a server-owned connected app connector.`,capabilityIds:a,write:!1}),n.some(s=>s.operation==="read")&&r.push({name:"connected_app_read",description:`Read a grounded ${lc(e)} object through a server-owned connected app connector.`,capabilityIds:a,write:!1}),o.length>0&&n.some(s=>s.operation==="write")&&r.push({name:"connected_app_write",description:`Perform an explicitly approved ${lc(e)} write through a server-owned connected app connector.`,capabilityIds:o,write:!0}),r}function fD(e){return e==="search"?"connected_app_search":e==="read"?"connected_app_read":"connected_app_write"}function hD(e){const t=Mv[e].filter(a=>a.leaseable).map(a=>a.id),n=e!=="mcp"&&t.length>0;return{leaseable:n,defaultTtlSeconds:n?e==="turnkey"?300:3600:null,allowedCapabilityIds:t,requiresProxy:n}}function dS(e,t){return e.setupSurface==="native_bot"?t.filter(n=>n.access==="setup"):e.setupSurface==="mcp_endpoint"?t:t.filter(n=>n.access!=="setup")}function gD(e){return e.flatMap(t=>{const n=Mm(t.provider);return n?[{id:t.id??null,teamId:t.teamId?.trim()||null,provider:n,accountLabel:t.providerAccountName??null,workspaceLabel:t.providerWorkspaceName??null,scopes:Array.isArray(t.scopes)?t.scopes:[],capabilities:Array.isArray(t.capabilities)?t.capabilities:[],status:t.status?.trim().toLowerCase()||"active"}]:[]})}function vD(e,t){return e.statusSource==="integration_connection"?t?"connected":"disconnected":"setup_available"}function bD(e,t,n){if(t==="connected"){const a=n.filter(o=>o.status==="active").length;return a>1?`${a} connected`:"Connected"}return t==="disconnected"?"Not connected":e.statusSource==="native_binding"?"Bot setup":"Configure"}function yD(e){let t=5381;for(let n=0;n<e.length;n+=1)t=(t<<5)+t^e.charCodeAt(n);return(t>>>0).toString(36)}const SD=v(["slack","microsoft_teams","github","google","turnkey","x","mcp"]),xD=v(["search","read","write"]),kD=v(QN);l({provider:SD,operation:xD,toolName:kD,sessionId:i().trim().min(1).max(200),turnId:i().trim().min(1).max(200),toolCallId:i().trim().min(1).max(300),userPrompt:i().max(2e5),connectionIds:p(i().trim().min(1).max(300)).min(1).max(8),capabilityIds:p(i().trim().min(1).max(200)).min(1).max(64),args:le(i(),ce()).default({})}).strict().superRefine((e,t)=>{const n=eD(e);n.ok||t.addIssue({code:ia.custom,message:n.error})});l({ok:I(),output:i().nullable().optional(),data:ce().optional()}).strict();const wD="local_path:";function Bw(e){return`${wD}${e.trim()}`}l({appId:i(),source:v(["openpond","github","local_git","local_folder","unknown"]),workspacePath:i(),repoPath:i(),initialized:I(),remoteUrl:i().nullable(),expectedRemoteUrl:i().nullable(),currentBranch:i().nullable(),headCommit:i().nullable().optional().default(null),upstreamBranch:i().nullable().optional().default(null),ahead:d().int().nonnegative().optional().default(0),behind:d().int().nonnegative().optional().default(0),diverged:I().optional().default(!1),linkedSourceHeadCommit:i().nullable().optional().default(null),aheadOfLinkedSource:d().int().nonnegative().optional().default(0),behindLinkedSource:d().int().nonnegative().optional().default(0),divergedFromLinkedSource:I().optional().default(!1),linkedSourceComparisonError:i().nullable().optional().default(null),lastFetchAt:i().nullable().optional().default(null),defaultBranch:i().nullable(),branches:p(i()),dirty:I(),changedFilesCount:d(),untrackedFilesCount:d(),error:i().nullable(),updatedAt:i()});const ID=l({path:i(),status:i(),additions:d(),deletions:d(),patch:i(),content:i().nullable().optional().default(null)}),_D=l({appId:i(),repoPath:i(),initialized:I(),dirty:I(),filesChanged:d(),additions:d(),deletions:d(),repoFiles:p(i()).optional().default([]),files:p(ID),error:i().nullable(),updatedAt:i()});l({branch:i().trim().min(1).max(160)});l({path:i().trim().min(1),content:i()});const uS=l({line:d().int().nonnegative(),character:d().int().nonnegative()}),CD=l({start:uS,end:uS}),RD=l({path:i(),range:CD,severity:v(["error","warning","info","hint"]),message:i(),source:i().nullable().optional().default(null),code:i().nullable().optional().default(null)}),Fw=l({id:i(),root:i(),status:v(["connected","unavailable","error"]),message:i().nullable().optional().default(null)});l({path:i().trim().min(1),content:i().optional(),waitForDiagnostics:I().optional().default(!0)});l({appId:i(),path:i(),diagnostics:p(RD),servers:p(Fw),updatedAt:i()});const PD=l({operation:v(["hover","definition","references","documentSymbol"]),path:i().trim().min(1),content:i().optional(),line:d().int().nonnegative().optional(),character:d().int().nonnegative().optional()});l({appId:i(),operation:PD.shape.operation,path:i(),results:ce(),servers:p(Fw),updatedAt:i()});const AD=l({pinned:I().optional(),archived:I().optional(),order:d().optional()}),TD=le(i(),AD),Vw=v(["local","sandbox"]),ED=v(["pinned","saved_for_later"]),Kw=l({id:i().min(1),workspaceKind:Vw,workspaceId:i().min(1),workspaceName:i().min(1),path:i().min(1),status:ED,order:d().int().nonnegative().nullable().default(null),sourceSessionId:i().min(1).nullable().default(null),available:I().default(!0),createdAt:i().min(1),updatedAt:i().min(1)});l({items:p(Kw)});l({workspaceKind:Vw,workspaceId:i().trim().min(1),workspaceName:i().trim().min(1),path:i().trim().min(1),status:v(["pinned","saved_for_later","none"]),order:d().int().nonnegative().nullable().optional(),sourceSessionId:i().trim().min(1).nullable().optional()});v(["pin","save_for_later","remove","list"]);function jD(e){let t=e.trim().replaceAll("\\","/");if(t=t.replace(/^(?:workspace|sandbox):file:/,""),t=t.replace(/^\/workspace\/app\//,""),t=t.replace(/^\.\//,""),!t||t.startsWith("/"))throw new Error("File path must be relative to the workspace.");const n=t.split("/").filter(a=>a&&a!==".");if(n.some(a=>a===".."))throw new Error("File path cannot leave the workspace.");if(n.length===0)throw new Error("File path is required.");return n.join("/")}function oie(e){return["sidebar-file",e.workspaceKind,encodeURIComponent(e.workspaceId),encodeURIComponent(jD(e.path))].join(":")}const MD=l({id:i(),name:i(),type:i(),status:i(),isActive:I().nullable(),price:i().nullable(),currency:i().nullable(),credits:i().nullable()}).passthrough(),OD=l({reachable:I(),authenticated:I().nullable(),apiBase:i(),latencyMs:d(),status:d().nullable(),service:i().nullable(),checkedAt:i(),error:i().nullable()}),$D=l({id:i().nullable(),email:i().nullable(),name:i().nullable(),handle:i().nullable(),image:i().nullable(),timezone:i().nullable(),isAdmin:I().nullable(),isVerified:I().nullable(),dailyAgentAppId:i().nullable(),dailyAgentDeploymentId:i().nullable(),credits:i().nullable()}),ND=l({handle:i(),baseUrl:i().nullable().optional()}),DD=l({state:v(["signed_out","signed_in","loading","switching","auth_error"]),activeProfile:ND.nullable(),label:i(),email:i().nullable(),avatarUrl:i().nullable(),environment:i().nullable(),baseUrl:i().nullable(),apiBaseUrl:i().nullable(),chatApiBaseUrl:i().nullable().optional().default(null),creditsLabel:i().nullable(),profile:$D.nullable(),products:p(MD),apiHealth:OD.nullable(),accounts:p(l({handle:i(),baseUrl:i().nullable(),apiBaseUrl:i().nullable().optional().default(null),chatApiBaseUrl:i().nullable().optional(),environment:i().nullable(),isActive:I(),authHealth:v(["signed_out","signed_in","auth_error","unknown"]),displayLabel:i().nullable(),email:i().nullable().optional().default(null),avatarUrl:i().nullable(),apiKeyHint:i().nullable().optional(),apiKeyAccess:l({ownerType:v(["user","team","organization","service"]).nullable(),teamId:i().nullable(),scopes:p(i())}).nullable().optional().default(null)})),error:i().nullable()}),mS=l({asOf:i().nullable(),refreshing:I(),lastRefreshError:i().nullable(),source:v(["fresh","cache","empty"])}),HD=l({available:I(),binaryPath:i().nullable(),version:i().nullable(),authHealth:v(["unknown","signed_in","signed_out","auth_error"]),account:l({type:i(),email:i().nullable(),planType:i().nullable(),label:i().nullable()}).nullable().default(null),appServer:l({status:v(["idle","starting","ready","error"]),lastError:i().nullable()})}),Nv="gpt-5.6-sol",Ws="openpond-chat",Tr="openpond",wc=Ws,Dv="default",Hv="high",Om="ask",ul=Nr,Lv=v(["default","auto-review","full-access"]),Zc=v(["ask","full-access","disabled"]),$m=v(["off","low","medium","high","xhigh","max"]),Yc=v(["sandbox_app","local_project","sandbox","sandbox_template"]);v(["openpond"]);const LD=v(["provider_usage","provider_tokenizer","model_family","heuristic"]),qD=l({provider:ul,model:i().min(1),usedTokens:d().int().nonnegative(),maxContextTokens:d().int().positive(),usableContextTokens:d().int().positive(),percentFull:d().min(0).max(100),source:LD,updatedAtEventId:i().nullable()}),fg=l({pinned:I().default(!1),projects:I().default(!1),cloudProjects:I().default(!1),chats:I().default(!1),savedForLater:I().default(!0)}),UD=v(["auto","off"]),zD=v(["typescript","python","rust"]),Ww=v(["auto","disabled","custom"]),eo=l({mode:Ww.default("auto"),customCommand:i().trim().max(4096).default("")}),Gu=l({languageServers:UD.default("auto"),diagnosticsWhileEditing:I().default(!0),checkOnSave:I().default(!0),languages:l({typescript:eo.optional().default(()=>eo.parse({})),python:eo.optional().default(()=>eo.parse({})),rust:eo.optional().default(()=>eo.parse({}))}).optional().default(()=>({typescript:eo.parse({}),python:eo.parse({}),rust:eo.parse({})}))}),BD=l({language:zD,label:i(),mode:Ww,status:v(["found","missing","disabled","error"]),command:i().nullable(),message:i().nullable()});l({settings:Gu,languages:p(BD),updatedAt:i()});const FD=l({id:i(),root:i(),status:v(["starting","connected","unavailable","error"]),message:i().nullable().optional().default(null),openedDocuments:d().int().nonnegative(),pendingRequests:d().int().nonnegative(),lastUsedAt:i(),stderrTail:i()});l({clients:p(FD),maxClients:d().int().positive(),idleTimeoutMs:d().int().positive(),updatedAt:i()});const hg=l({autoEnabled:I().default(!0),triggerPercent:d().int().min(50).max(95).default(85),summaryModel:v(["same_model"]).default("same_model")}),gg=l({defaultModelRef:Sn.nullable().default(null),creationMode:v(["defaults","customize"]).default("customize"),autoApproveEvidence:I().default(!1)}),pS=l({defaultChatProvider:ul.default(Tr),defaultChatModel:i().min(1).default(wc),defaultChatModelRef:Sn.nullable().optional(),subagents:xc.optional().default(()=>xc.parse({})),codexPermissionMode:Lv.default(Dv),codexReasoningEffort:$m.default(Hv),openPondCommandAccessMode:Zc.default(Om),defaultBranchPrefix:i().trim().max(48).default("feat/"),defaultNewProjectDirectory:i().trim().max(4096).default(""),defaultTeamId:i().trim().max(191).nullable().default(null),advancedWorkspaceControls:I().default(!1),steerActiveResponses:I().default(!0),contextCompaction:hg.optional().default(()=>hg.parse({})),training:gg.optional().default(()=>gg.parse({})),sidebarWidth:d().int().min(244).max(560).default(332),diffPanelWidth:d().int().min(320).max(2400).default(560),sidebarSectionsCollapsed:fg.optional().default(()=>fg.parse({})),editor:Gu.optional().default(()=>Gu.parse({}))}),VD="default",Gw=[{id:"default",name:"Balanced",source:"built_in",description:"Clear, useful, and concise.",content:`You are OpenPond Chat, a clear and useful AI assistant.
111
- Be concise, accurate, and direct.
112
- Do not use emojis.
113
- Ask only when missing information would materially change the answer.
114
- Prioritize practical next steps.`},{id:"pragmatic",name:"Pragmatic",source:"built_in",description:"Direct, practical, and engineering-minded.",content:`You are a pragmatic AI assistant with strong engineering judgment.
115
- Be direct, concrete, and outcome-focused.
116
- Do not use emojis.
117
- Prefer simple working solutions over clever abstractions.
118
- Call out weak assumptions plainly.`},{id:"friendly",name:"Friendly",source:"built_in",description:"Warm, conversational, and approachable.",content:`You are a friendly AI assistant.
119
- Use a warm, conversational tone without filler.
120
- Do not use emojis.
121
- Explain decisions clearly and keep the user moving.
122
- Be patient when clarifying tradeoffs.`},{id:"formal",name:"Formal",source:"built_in",description:"Polished, careful, and professional.",content:`You are a formal AI assistant.
123
- Use precise, professional language.
124
- Do not use emojis.
125
- Structure answers clearly and avoid casual phrasing.
126
- State uncertainty and assumptions explicitly.`},{id:"technical",name:"Technical",source:"built_in",description:"Precise, detailed, and implementation-focused.",content:`You are a technical AI assistant.
127
- Prioritize correctness, implementation detail, and edge cases.
128
- Do not use emojis.
129
- Use concise explanations, but include necessary specifics.
130
- Surface risks, constraints, and verification steps.`}],qv=i().trim().min(1).max(120),KD=l({id:qv,name:i(),source:v(["built_in","custom"]).default("custom"),description:i(),content:i()}),fS=l({activeTemplateId:qv.default(VD),customized:I().default(!1),soul:i(),soulPath:i().nullable(),updatedAt:i().nullable(),templates:p(KD).default(()=>[...Gw])}),WD=l({id:i(),host:i(),port:d(),startedAt:i(),storePath:i(),version:i(),runtimeVersion:i()}),Uv=v(["chat","work","development"]);v(["chat","models","console","development"]);const GD="work",We=i().trim().min(1).nullable(),Ya=le(i(),ce()).default({}),JD=v(["direct_prompt_create","context_backed_create","create_as_agent","workflow_suggestion","local_extend","hosted_create","local_import","direct_prompt_improve","context_backed_improve","hosted_improve","lab_create","lab_improve","training"]),Jw=v(["/create","/edit","openpond extend","create_as_agent","suggest_workflow","local_import","lab_create","lab_improve","training"]),ZD=v(["create","improve","import","promote"]),YD=v(["planning","awaiting_questions","awaiting_plan_approval","paused","applying_source","running_checks","evaluating","awaiting_promotion","opening_pull_request","pull_request_open","reconciling_release","released","rejected","ready","ready_local","pushing_hosted","running_hosted_checks","published_hosted","blocked","failed","cancelled"]),Jd=v(["always_require_plan_approval","approval_already_granted"]);v(["local_profile","hosted_profile","promote_local_to_hosted","managed_artifact"]);const QD=ot("kind",[l({kind:b("local"),sourceAuthority:b("local_profile"),activeProfile:i().trim().min(1).nullable(),repoPath:We,sourcePath:We,localHead:We,confirmationPolicy:Jd.default("always_require_plan_approval")}),l({kind:b("hosted"),sourceAuthority:b("hosted_profile"),teamId:We,projectId:We,activeProfile:i().trim().min(1).nullable(),sourceRef:We,baseSha:We,confirmationPolicy:Jd.default("always_require_plan_approval")}),l({kind:b("promote_local_to_hosted"),sourceAuthority:b("promote_local_to_hosted"),teamId:We,projectId:We,activeProfile:i().trim().min(1).nullable(),repoPath:We,sourcePath:We,localHead:We,hostedHead:We,sourceRef:We,confirmationPolicy:Jd.default("always_require_plan_approval")}),l({kind:b("managed_artifact"),sourceAuthority:b("managed_artifact"),activeProfile:i().trim().min(1).nullable(),confirmationPolicy:Jd.default("always_require_plan_approval")})]),XD=l({id:We,kind:v(["user","system","automation"]).default("user"),label:We}),eH=l({profileId:i().trim().min(1),conversationId:We,originTurnId:We,projectId:We,targetProject:l({id:We,name:We,workspacePath:We,sourceRef:We,baseSha:We}).nullable()}),Xl=l({messageIds:p(i().trim().min(1)).default([]),conversationExcerpts:p(l({messageId:We,role:i().trim().min(1).nullable(),excerpt:i().trim().min(1),reason:i().trim().min(1).nullable()})).default([]),attachments:p(l({id:We,name:i().trim().min(1),mediaType:We,ref:We})).default([]),apps:p(l({id:i().trim().min(1),name:i().trim().min(1),connectionId:We,required:I().default(!1)})).default([]),tools:p(l({name:i().trim().min(1),inputSummary:We,outputSummary:We,artifactRefs:p(i().trim().min(1)).default([]),sideEffects:p(i().trim().min(1)).default([])})).default([]),signalRefs:p(i().trim().min(1)).default([]),evalRefs:p(i().trim().min(1)).default([]),targetRepoAssumptions:p(i().trim().min(1)).default([])}),fs={id:We,displayName:We},zv=ot("kind",[l({kind:b("unselected"),...fs}),l({kind:b("agent"),...fs,defaultActionKey:We}),l({kind:b("skill"),...fs,skillName:We}),l({kind:b("extension"),...fs,slot:We}),l({kind:b("model"),...fs,trainingPlanId:We,trainingJobId:We,artifactId:We}),l({kind:b("configuration"),...fs,key:We})]),vg=v(["agent","skill","extension","model","configuration"]),tH=l({schemaVersion:b("openpond.createImprove.evidenceSnapshot.v1"),id:i().trim().min(1),contentHash:i().trim().min(8),consent:l({status:v(["granted","denied","revoked"]),scope:v(["metadata_only","selected_turns","full_session","direct_intent"]),reviewedBy:We,reviewedAt:i().trim().min(1)}),sources:p(l({kind:v(["signal","conversation","direct_correction","manual_intent","artifact"]),id:i().trim().min(1),sourceHash:i().trim().min(8),excerptRef:We})).min(1),reviewerIntent:i().trim().min(1),createdAt:i().trim().min(1),metadata:Ya}),Zw=l({schemaVersion:b("openpond.createImprove.tasksetRef.v1"),id:i().trim().min(1),revision:d().int().positive(),contentHash:i().trim().min(8),evidenceSnapshotIds:p(i().trim().min(1)).min(1),policyBoundary:l({policyVisibleFields:p(i().trim().min(1)).default([]),privilegedFields:p(i().trim().min(1)).default([]),hiddenGraderRefs:p(i().trim().min(1)).default([]),connectedAppScopes:p(i().trim().min(1)).default([])}),targetRecommendation:l({kind:vg,rationale:p(i().trim().min(1)).min(1),confidence:d().min(0).max(1)}),authoringSplitRefs:p(i().trim().min(1)).default([]),privateSplitRefs:p(i().trim().min(1)).default([]),approvedBy:We,approvedAt:i().trim().min(1),metadata:Ya}),nH=l({kind:v(["npm_package","runtime_tool","setup_command","secret","integration","volume","target_project","external_service"]),name:i().trim().min(1),status:v(["declared","required","blocked","satisfied"]).default("declared"),detail:We,metadata:Ya}),aH=l({mode:v(["chat","direct_action","chat_and_direct_actions"]),label:i().trim().min(1),detail:i().trim().min(1),defaultActionKey:We,directActionHint:We,artifactPolicy:i().trim().min(1)}),iH=l({schemaVersion:b("openpond.createImprove.plan.v1"),id:i().trim().min(1),runId:i().trim().min(1),status:v(["draft","pending_approval","approved","rejected","cancelled","superseded"]).default("pending_approval"),objective:i().trim().min(1),summary:i().trim().min(1),capturedContextSummary:i().trim().min(1),defaultChatAction:l({key:We,label:We,required:I().default(!0)}),sourcePlan:p(l({path:i().trim().min(1),operation:v(["create","update","delete","inspect"]),reason:i().trim().min(1)})).default([]),requirements:p(nH).default([]),checks:p(l({name:i().trim().min(1),command:i().trim().min(1),required:I().default(!0)})).default([]),approvalId:We,approvedAt:We,editedFromPlanId:We,metadata:Ya,createdAt:i().trim().min(1),updatedAt:i().trim().min(1)}),oH=l({id:i().trim().min(1),label:i().trim().min(1),value:i().trim().min(1),description:We,metadata:Ya}),rH=l({value:i().trim().min(1),label:We,detail:We,answeredAt:i().trim().min(1),metadata:Ya}),sH=l({id:i().trim().min(1),kind:v(["single_choice","free_text"]).default("single_choice"),title:i().trim().min(1),prompt:i().trim().min(1),required:I().default(!0),status:v(["pending","answered","skipped"]).default("pending"),options:p(oH).default([]),answer:rH.nullable().default(null),metadata:Ya}),lH=l({schemaVersion:b("openpond.createImprove.workflowCapture.v1"),id:i().trim().min(1),runId:i().trim().min(1),command:Jw,objective:i().trim().min(1),conversationExcerpts:Xl.shape.conversationExcerpts,attachments:Xl.shape.attachments,apps:Xl.shape.apps,tools:Xl.shape.tools,sideEffects:p(i().trim().min(1)).default([]),profileActions:p(i().trim().min(1)).default([]),externalProviders:p(i().trim().min(1)).default([]),environmentVariables:p(i().trim().min(1)).default([]),files:p(i().trim().min(1)).default([]),schedules:p(i().trim().min(1)).default([]),webhooks:p(i().trim().min(1)).default([]),channelTargets:p(i().trim().min(1)).default([]),outputArtifacts:p(i().trim().min(1)).default([]),targetRepoAssumptions:p(i().trim().min(1)).default([]),traceRefs:p(i().trim().min(1)).default([]),metadata:Ya,createdAt:i().trim().min(1)}),Yw=l({provider:b("github"),number:d().int().positive(),url:i().url(),state:v(["open","merged","closed"]),baseBranch:i().trim().min(1),headBranch:i().trim().min(1),mergeCommit:We,openedAt:i().trim().min(1),updatedAt:i().trim().min(1)}),cH=l({baseBranch:i().trim().min(1),baseCommit:i().trim().min(1),branch:i().trim().min(1),headCommit:We,remoteName:i().trim().min(1).default("origin"),remoteUrl:We,worktreePath:We,changedPaths:p(i().trim().min(1)).default([]),diffStat:We,pullRequest:Yw.nullable().default(null)}),dH=l({id:i().trim().min(1),target:zv,status:v(["draft","authored","checking","evaluated","accepted","rejected","failed"]),git:cH.nullable().default(null),parentCandidateId:We.default(null),tasksetRef:Zw.nullable().default(null),authoringModelRef:We.default(null),allowedPaths:p(i().trim().min(1)).default([]),sourceRefs:p(i().trim().min(1)).default([]),artifactRefs:p(i().trim().min(1)).default([]),checkRefs:p(i().trim().min(1)).default([]),evaluationReceiptRefs:p(i().trim().min(1)).default([]),createdAt:i().trim().min(1),updatedAt:i().trim().min(1),metadata:Ya}),uH=l({id:i().trim().min(1),candidateId:We,target:zv,evaluatorKind:v(["agent_sdk","taskset","extension","skill","configuration","checks"]).default("checks"),subject:v(["active","candidate","post_release","standalone"]).default("standalone"),sourceCommit:We.default(null),sourceBranch:We.default(null),tasksetId:We.default(null),tasksetHash:We.default(null),taskAttemptRefs:p(i().trim().min(1)).default([]),status:v(["pending","passed","failed","blocked"]),publishGate:v(["passed","failed","not_applicable"]).default("not_applicable"),summaryCounts:l({total:d().int().nonnegative(),passed:d().int().nonnegative(),failed:d().int().nonnegative()}).nullable().default(null),evalRefs:p(i().trim().min(1)).default([]),artifactRefs:p(i().trim().min(1)).default([]),summary:We,createdAt:i().trim().min(1),metadata:Ya}),mH=l({mode:v(["foreground","background"]).default("background"),pauseAllowed:I().default(!0),cancellationAllowed:I().default(!0)}),pH=l({mode:v(["single","bounded","until_evals_pass"]).default("single"),maximumAttempts:d().int().min(1).max(20).default(1),currentAttempt:d().int().min(0).max(20).default(0)}),fH=l({kind:v(["candidate_authoring","local_apply","hosted_turn","training_job","evaluation","pull_request","release"]),id:i().trim().min(1),status:We,metadata:Ya}),hH=l({status:v(["not_requested","pending","released","rejected","rolled_back"]),profileCommit:We,profileTag:We,releaseReceiptRef:We,pullRequest:Yw.nullable().default(null),updatedAt:We}),Qc=l({schemaVersion:b("openpond.createImprove.run.v1"),id:i().trim().min(1),revision:d().int().nonnegative(),operation:ZD,surface:JD,command:Jw,objective:i().trim().min(1),state:YD,adapter:QD,actor:XD,scope:eH,context:Xl,target:zv,evidenceSnapshots:p(tH).default([]),tasksetRef:Zw.nullable().default(null),targetSelection:l({status:v(["open","recommended","confirmed"]),preselectedKind:vg.nullable(),confirmedKind:vg.nullable()}).nullable().default(null),plan:iH.nullable(),workflowCapture:lH.nullable(),executionPolicy:mH.default({mode:"background",pauseAllowed:!0,cancellationAllowed:!0}),iterationPolicy:pH.default({mode:"single",maximumAttempts:1,currentAttempt:0}),approvalIds:p(i().trim().min(1)).default([]),questionIds:p(i().trim().min(1)).default([]),questions:p(sH).default([]),candidates:p(dH).default([]),evaluationReceipts:p(uH).default([]),checkRefs:p(i().trim().min(1)).default([]),sourceRefs:p(i().trim().min(1)).default([]),externalExecutionRefs:p(fH).default([]),localProfileCommit:We,hostedSourceCommit:We,hostedSourceRef:We,releaseOutcome:hH.default({status:"not_requested",profileCommit:null,profileTag:null,releaseReceiptRef:null,pullRequest:null,updatedAt:null}),blockedReason:We,appliedActionIds:p(i().trim().min(1)).max(200).default([]),metadata:Ya,createdAt:i().trim().min(1),updatedAt:i().trim().min(1)}),Ii={runId:i().trim().min(1),expectedRevision:d().int().nonnegative(),actionId:i().trim().min(1)};ot("type",[l({...Ii,type:b("answer_question"),questionId:i().trim().min(1),value:i().trim().min(1)}),l({...Ii,type:b("approve_plan")}),l({...Ii,type:b("revise_plan"),revision:i().trim().min(1)}),l({...Ii,type:b("cancel"),reason:We.optional().default(null)}),l({...Ii,type:b("pause")}),l({...Ii,type:b("resume")}),l({...Ii,type:b("open_pull_request"),candidateId:i().trim().min(1)}),l({...Ii,type:b("apply_candidate"),candidateId:i().trim().min(1)}),l({...Ii,type:b("reject_candidate"),candidateId:i().trim().min(1),reason:We.optional().default(null)}),l({...Ii,type:b("reconcile_pull_request"),candidateId:i().trim().min(1)})]);l({schemaVersion:b("openpond.createImprove.runList.v1"),runs:p(Qc),generatedAt:i().trim().min(1)});function rie(e){const t=aH.safeParse(e?.actionShape);return t.success?t.data:null}const Bi=l({source:v(["local","github","openpond_git"]),repositoryId:i().trim().min(1),profileId:i().trim().min(1)}),gH=l({ref:Bi,revision:i().nullable(),sourceHash:i()}),ml=le(i(),ce()).default({}),Ua=d().int().nonnegative(),Nm=i().trim().min(1).max(1e5),Qw=l({kind:v(["personal","team"]),id:T}).strict(),vH=l({name:T,release:W.nullable(),revision:Ua}).strict();l({schemaVersion:b("openpond.harnessWorkspace.v1"),id:T,ownerScope:Qw,name:i().trim().min(1).max(240),location:v(["local","hosted"]),sourceRevision:i().trim().min(1).max(500),revision:Ua,dirty:I(),currentChannel:vH,createdAt:ye,updatedAt:ye,metadata:ml}).strict();const Gs=v(["runtime","memory","prompt","skill","agent","product","taskset","training"]),Xw=v(["text_instruction","memory","dependency_selection","executable_code","business_logic","financial_logic","permission","connected_app","publication","deployment","training","model_binding","team_or_global"]),eI=l({id:T,route:Gs,operation:v(["create","update","delete"]),target:i().trim().min(1).max(2e3),summary:i().trim().min(1).max(2e3),content:i().max(1e6).nullable(),contentHash:D.nullable(),effects:p(Xw).min(1).max(20)}).strict().superRefine((e,t)=>{if(e.operation==="delete"){(e.content!==null||e.contentHash!==null)&&t.addIssue({code:"custom",message:"delete edits cannot include replacement content",path:["content"]});return}if(e.content===null||e.contentHash===null){t.addIssue({code:"custom",message:"create and update edits require content and contentHash",path:["content"]});return}const n=dt(e.content);e.contentHash!==n&&t.addIssue({code:"custom",message:`edit contentHash is ${e.contentHash}; expected ${n}`,path:["contentHash"]})}),tI=l({workspaceId:T,revision:Ua,sourceRevision:i().trim().min(1).max(500),channelRevision:Ua}).strict(),so=l({id:T,revision:Ua,contentHash:D}).strict(),bH=l({schemaVersion:b("openpond.harnessTurnSnapshot.v1"),workspaceId:T,workspaceRevision:Ua,sourceRevision:i().trim().min(1).max(500),channelName:T,channelRevision:Ua,harnessRelease:W,toolCatalogHash:D.nullable().optional(),overlay:so.nullable().optional().default(null)}).strict(),yH=l({schemaVersion:b("openpond.harnessRunOverlay.v1"),id:T,runId:T,baseHarnessRelease:W,workspace:tI,revision:Ua,status:v(["active","frozen","abandoned"]),edits:p(eI).max(1e3),createdAt:ye,updatedAt:ye,metadata:ml}).strict();yH.extend({contentHash:D}).strict();const nI=l({kind:v(["tool_event","recovery","validation","user_turn","work_output","work_receipt"]),id:T,contentHash:D.nullable()}).strict(),aI=l({id:T,kind:v(["dependency","schema","package","file_render","skill","prompt","business_formula","targeted_evaluation","observed_recovery","memory","component_activation"]),description:Nm,required:I()}).strict(),SH=l({schemaVersion:b("openpond.harnessImprovementProposal.v1"),id:T,overlay:so,baseHarnessRelease:W,expectedWorkspace:tI,requestedScope:v(["personal","team","global"]),route:Gs,risk:v(["low","review","restricted"]),effects:p(Xw).min(1).max(20),evidence:p(nI).min(1).max(1e3),edits:p(eI).min(1).max(1e3),validationPlan:p(aI).min(1).max(100),expectedOutcome:Nm,createdAt:ye,metadata:ml}).strict().superRefine((e,t)=>{const n=new Set(e.effects);for(const[a,o]of e.edits.entries()){o.route!==e.route&&t.addIssue({code:"custom",message:"every edit route must match the proposal route",path:["edits",a,"route"]});for(const r of o.effects)n.has(r)||t.addIssue({code:"custom",message:`edit effect ${r} is missing from proposal effects`,path:["edits",a,"effects"]})}new Set(e.validationPlan.map(a=>a.id)).size!==e.validationPlan.length&&t.addIssue({code:"custom",message:"validation plan ids must be unique",path:["validationPlan"]})});SH.extend({contentHash:D}).strict();const xH=l({schemaVersion:b("openpond.harnessTargetedValidationReceipt.v1"),id:T,proposal:W,validationId:T,kind:aI.shape.kind,status:v(["passed","failed","blocked","skipped"]),summary:Nm,evidenceRefs:p(nI).max(1e3),createdAt:ye,metadata:ml}).strict();xH.extend({contentHash:D}).strict();const kH=v(["advanced","retained","conflict","rolled_back"]),wH=l({schemaVersion:b("openpond.harnessAdvanceReceipt.v1"),id:T,workspaceId:T,ownerScope:Qw,proposal:W.nullable(),expectedWorkspaceRevision:Ua,observedWorkspaceRevision:Ua,previousChannelRevision:Ua,nextChannelRevision:Ua,previousRelease:W.nullable(),nextRelease:W.nullable(),validationReceipts:p(W).max(100),decision:kH,reason:Nm,rollbackOf:W.nullable(),createdAt:ye,metadata:ml}).strict().superRefine((e,t)=>{const n=e.nextChannelRevision===e.previousChannelRevision+1;["advanced","rolled_back"].includes(e.decision)!==n&&t.addIssue({code:"custom",message:"only successful advancement or rollback increments the channel revision",path:["nextChannelRevision"]}),e.decision==="rolled_back"&&e.rollbackOf===null&&t.addIssue({code:"custom",message:"rollback receipts require rollbackOf",path:["rollbackOf"]}),e.decision!=="rolled_back"&&e.rollbackOf!==null&&t.addIssue({code:"custom",message:"rollbackOf is only valid for rollback receipts",path:["rollbackOf"]})});wH.extend({contentHash:D}).strict();const IH=l({schemaVersion:b("openpond.harnessOverlayMergeReceipt.v1"),id:T,workspaceId:T,baseHarnessRelease:W,leftOverlay:so,rightOverlay:so,decision:v(["merged","conflict"]),mergedOverlay:so.nullable(),conflictTargets:p(i().trim().min(1).max(2e3)).max(1e3),requiresRevalidation:b(!0),createdAt:ye,metadata:ml}).strict().superRefine((e,t)=>{e.decision==="merged"!=(e.mergedOverlay!==null)&&t.addIssue({code:"custom",message:"merged decisions require a merged overlay; conflicts cannot provide one",path:["mergedOverlay"]}),e.decision==="conflict"!=e.conflictTargets.length>0&&t.addIssue({code:"custom",message:"conflict decisions require conflict targets and merged decisions cannot include them",path:["conflictTargets"]})});IH.extend({contentHash:D}).strict();const lo=i().trim().min(1).max(1e5),_H=v(["no_action","harness_maintenance","runtime","product","taskset","model_improvement"]),CH=v(["none","runtime_service","product_team","human_review","evaluation_system","training_system"]),iI=v(["observation","trigger","route_decision","refiner_outcome","proposal","validation","apply_receipt","harness_advance","rollback","work_outcome","taskset","evaluation","training_qualification","model_candidate"]),Bv=l({kind:v(["personal","team"]),id:T}).strict(),oI=l({policy:W,state:v(["authorized","revoked","deleted","expired"]),checkedAt:ye}).strict(),Ic=l({evidence:W,kind:iI,sourceRef:T,sourcePolicy:oI,occurrenceKey:D,occurredAt:ye}).strict(),RH=l({evidence:W,sourcePolicy:oI.nullable(),reason:v(["outside_scope","before_watermark","duplicate","resolved","revoked","deleted","expired","sensitive","unverified","budget"])}).strict(),hS=l({cursor:D,throughCreatedAt:ye}).strict(),PH=l({fingerprint:D,recurrenceFamily:i().trim().min(1).max(1e3),statement:lo,candidateDisposition:v(["observe","confirm"]).optional(),independentOccurrences:d().int().positive().max(1e6),unresolvedOccurrences:d().int().positive().max(1e6)}).strict().refine(e=>e.unresolvedOccurrences<=e.independentOccurrences,"unresolved occurrences cannot exceed independent occurrences"),rI=v(["harness","runtime","product","retrieval","tools","evaluation","model"]),AH=l({layer:rI,status:v(["not_applicable","unresolved","resolved","blocked"]),reason:lo,evidenceRefs:p(W).max(1e3)}).strict(),TH=l({schemaVersion:b("openpond.harnessEvaluationReviewReceipt.v1"),id:T,ownerScope:Bv,workspaceRef:T,harnessRelease:W,previousWatermark:hS.nullable(),nextWatermark:hS,selectedEvidence:p(Ic).max(1e4),excludedEvidence:p(RH).max(1e4),claim:PH.nullable(),classification:_H,triage:p(AH).max(16),reason:lo,nextAuthority:CH,maxEstimatedCostUsd:d().finite().nonnegative(),tasksetProposal:W.nullable(),evaluation:W.nullable(),trainingQualification:W.nullable(),policyVersion:T,createdAt:ye,metadata:Mn}).strict().superRefine((e,t)=>{const n=e.selectedEvidence.map(a=>`${a.evidence.id}:${a.evidence.contentHash}`);new Set(n).size!==n.length&&t.addIssue({code:"custom",message:"selected review evidence must be unique",path:["selectedEvidence"]}),e.selectedEvidence.some(a=>a.sourcePolicy.state!=="authorized")&&t.addIssue({code:"custom",message:"selected review evidence must be authorized at review time",path:["selectedEvidence"]}),e.classification==="no_action"?(e.nextAuthority!=="none"&&t.addIssue({code:"custom",message:"no-action review receipts require no next authority",path:["nextAuthority"]}),(e.tasksetProposal||e.evaluation||e.trainingQualification)&&t.addIssue({code:"custom",message:"no-action review receipts cannot carry downstream refs"})):(!e.claim||e.selectedEvidence.length===0)&&t.addIssue({code:"custom",message:"actionable review receipts require a claim and selected evidence"}),e.classification==="runtime"&&e.nextAuthority!=="runtime_service"&&t.addIssue({code:"custom",message:"runtime classifications route to runtime-service authority",path:["nextAuthority"]}),e.classification==="product"&&e.nextAuthority!=="product_team"&&t.addIssue({code:"custom",message:"product classifications route to product-team authority",path:["nextAuthority"]}),e.classification==="taskset"&&e.nextAuthority!=="human_review"&&t.addIssue({code:"custom",message:"Taskset classifications require human review"}),e.classification==="model_improvement"&&(!e.evaluation||!e.trainingQualification||!["human_review","training_system"].includes(e.nextAuthority))&&t.addIssue({code:"custom",message:"model-improvement classifications require Evaluation and qualification refs plus explicit authority"})});TH.extend({contentHash:D}).strict();l({id:T,evidence:W,kind:iI,sourceRef:T,occurredAt:ye,payload:le(i(),ce())}).strict();const EH=l({schemaVersion:b("openpond.harnessEvaluationReviewModelDecision.v2"),decision:b("no_action"),reason:lo,ignoredEvidence:p(l({id:T,reason:i().trim().min(1).max(2e3)}).strict()).max(1e3)}).strict(),jH=l({schemaVersion:b("openpond.harnessEvaluationReviewModelDecision.v2"),decision:b("review"),classification:v(["harness_maintenance","runtime","product","taskset"]),selectedEvidenceIds:p(T).min(1).max(1e3),ignoredEvidence:p(l({id:T,reason:i().trim().min(1).max(2e3)}).strict()).max(1e3),recurrenceFamily:i().trim().min(1).max(1e3),statement:lo,triageLayer:rI,expectedOutcome:lo,counterevidence:i().trim().max(1e4),confidence:d().min(0).max(1),candidateDisposition:v(["observe","confirm"]).nullable(),reason:lo}).strict().superRefine((e,t)=>{e.classification==="harness_maintenance"!==(e.candidateDisposition!==null)&&t.addIssue({code:"custom",message:"Harness maintenance requires a candidate disposition; external routes require null",path:["candidateDisposition"]})}),MH=l({schemaVersion:b("openpond.harnessEvaluationReviewModelDecision.v2"),decision:b("resolve_candidate"),candidateId:T,candidateFingerprint:D,selectedEvidenceIds:p(T).min(1).max(1e3),ignoredEvidence:p(l({id:T,reason:i().trim().min(1).max(2e3)}).strict()).max(1e3),confidence:d().min(0).max(1),reason:lo}).strict();ot("decision",[EH,jH,MH]);l({schemaVersion:b("openpond.harnessEvaluationReviewNavigationDecision.v1"),selectedEvidenceIds:p(T).min(1).max(50),reason:lo}).strict();const Xc=l({name:i().trim().min(1).max(64).regex(/^[a-zA-Z][a-zA-Z0-9_-]*$/),description:i().trim().min(1).max(2e3),inputSchema:le(i(),ce()),inputSchemaHash:D,sideEffect:v(["read","write"]),timeoutMs:d().int().positive().max(36e5)}).strict(),Fv=l({id:T,required:I(),scopes:p(i().trim().min(1).max(500)).max(100).default([]),portability:v(["portable","host_adapter","local_only","hosted_only"])}).strict(),OH=l({portable:I(),blockers:p(i().trim().min(1).max(2e3)).max(1e3),localOnlyAssetRefs:p(T).max(1e4),hostPrivateAssetRefs:p(T).max(1e4)}).strict(),$H=l({schemaVersion:b("openpond.agentSnapshot.v2"),id:T,sourceRelease:W.nullable(),instructions:p(bn).max(1e4),skills:p(bn).max(1e4),agents:p(bn).max(1e4),toolDeclarations:p(Xc).max(200),capabilityRequirements:p(Fv).max(200),dependencyLock:bn,portability:OH,metadata:Mn}).strict(),NH=$H.extend({contentHash:D}).strict(),sI=l({create:b(!0),reset:b(!0),step:b(!0),collect:b(!0),destroy:b(!0),resetScope:v(["task","attempt"])}).strict(),lI=l({visibleEvidence:p(T).max(1e3),privilegedEvidence:p(T).max(1e3),privateVerifierIsolation:I()}).strict(),DH=l({schemaVersion:b("openpond.harnessRelease.v2"),id:T,agentSnapshot:W,program:bn,tools:p(Xc).max(200),lifecycle:sI,graderInterface:lI,files:p(bn).max(1e5),metadata:Mn}).strict(),HH=DH.extend({contentHash:D}).strict(),LH=l({id:T,turn:d().int().nonnegative(),kind:v(["message","tool_call","terminal"]),name:T.nullable(),arguments:le(i(),ce()),content:i().max(1e6).nullable()}).strict(),qH=l({actionId:T,turn:d().int().nonnegative(),terminal:I(),output:le(i(),ce()),artifactRefs:p(ja).max(1e5)}).strict(),UH=l({sequence:d().int().nonnegative(),type:v(["created","reset","action","observation","terminal","failure","collected","destroyed"]),payloadHash:D,metadata:Mn}).strict();l({schemaVersion:b("openpond.harnessTrace.v1"),manifest:W,taskId:T,seed:i().trim().min(1).max(500),events:p(UH).max(1e6),actions:p(LH).max(1e5),observations:p(qH).max(1e5),terminal:I(),failureClass:Wc.nullable(),output:le(i(),ce()),contentHash:D}).strict();const Dm=i().trim().min(1).max(1e5),ed=le(i(),ce()).default({}),zH=v(["completed_tool_batch","before_model_step","turn_completed","turn_paused"]),cI=l({kind:zH,eventSequence:d().int().nonnegative(),occurredAt:ye}).strict(),dI=l({id:T,sequence:d().int().nonnegative().nullable(),contentHash:D}).strict(),BH=v(["tool_failure","retry","recovery","validation","user_turn","reusable_success","completion_detour"]),FH=v(["open","recovered","terminal"]),VH=l({name:i().trim().min(1).max(500),invocationKey:D}).strict(),KH=l({schemaVersion:b("openpond.improvementObservation.v1"),id:T,runRef:T,turnId:T,harnessRelease:W,overlay:so.nullable(),eventRefs:p(dI).min(1).max(100),kind:BH,state:FH,tool:VH.nullable(),deterministicClass:i().trim().min(1).max(500).nullable(),summary:Dm,createdAt:ye,metadata:ed}).strict().superRefine((e,t)=>{new Set(e.eventRefs.map(n=>n.id)).size!==e.eventRefs.length&&t.addIssue({code:"custom",message:"observation event refs must be unique",path:["eventRefs"]}),["tool_failure","retry","recovery","completion_detour"].includes(e.kind)&&e.tool===null&&t.addIssue({code:"custom",message:`${e.kind} observations require a tool identity`,path:["tool"]})});KH.extend({contentHash:D}).strict();const WH=l({schemaVersion:b("openpond.refinementTriggerPolicy.v1"),maxEstimatedCostUsd:d().finite().nonnegative(),cooldownMs:d().int().nonnegative(),maxPendingPlans:d().int().min(1).max(100),maxEvidenceEvents:d().int().min(1).max(1e3),maxProposalEdits:d().int().min(1).max(1e3),maxProposalBytes:d().int().min(1).max(1e7)}).strict(),GH=v(["no_action","route_deterministically","queue_refiner"]),JH=l({schemaVersion:b("openpond.refinementTriggerDecision.v1"),id:T,runRef:T,turnId:T,harnessRelease:W,overlay:so.nullable(),observations:p(W).max(100),decision:GH,deterministicRoute:Gs.nullable(),suggestedRoutes:p(Gs).max(8),reason:Dm,deduplicationKey:D,policy:WH,estimatedMaxCostUsd:d().finite().nonnegative(),pendingPlanCount:d().int().nonnegative(),boundary:cI,cooldownUntil:ye.nullable(),createdAt:ye,metadata:ed}).strict().superRefine((e,t)=>{e.estimatedMaxCostUsd>e.policy.maxEstimatedCostUsd&&t.addIssue({code:"custom",message:"estimated Refiner cost exceeds the trigger policy budget",path:["estimatedMaxCostUsd"]}),e.pendingPlanCount>e.policy.maxPendingPlans&&t.addIssue({code:"custom",message:"pending plan count exceeds the trigger policy limit",path:["pendingPlanCount"]}),e.observations.length>e.policy.maxEvidenceEvents&&t.addIssue({code:"custom",message:"trigger observations exceed the evidence budget",path:["observations"]}),e.decision==="route_deterministically"&&e.deterministicRoute===null&&t.addIssue({code:"custom",message:"deterministic decisions require a route",path:["deterministicRoute"]}),e.decision!=="route_deterministically"&&e.deterministicRoute!==null&&t.addIssue({code:"custom",message:"only deterministic decisions may declare a deterministic route",path:["deterministicRoute"]}),e.decision==="no_action"&&e.suggestedRoutes.length>0&&t.addIssue({code:"custom",message:"no-action decisions cannot suggest routes",path:["suggestedRoutes"]}),e.decision!=="no_action"&&e.observations.length===0&&t.addIssue({code:"custom",message:"actionable trigger decisions require observations",path:["observations"]})});JH.extend({contentHash:D}).strict();const ZH=v(["runtime_service","refiner_model","human_review","evaluation_system","training_system"]),YH=l({schemaVersion:b("openpond.improvementRouteDecision.v1"),id:T,trigger:W,route:Gs,authority:ZH,automatic:I(),reason:Dm,createdAt:ye,metadata:ed}).strict().superRefine((e,t)=>{e.automatic&&["human_review","evaluation_system","training_system"].includes(e.authority)&&t.addIssue({code:"custom",message:`${e.authority} routes cannot be marked automatic`,path:["automatic"]}),e.route==="training"&&e.automatic&&e.authority!=="training_system"&&t.addIssue({code:"custom",message:"automatic training routes require training-system authority",path:["authority"]})});YH.extend({contentHash:D}).strict();const QH=l({schemaVersion:b("openpond.harnessRefinerOutcome.v1"),id:T,trigger:W,decision:v(["no_action","proposed"]),proposal:W.nullable(),reason:Dm,evidenceRefs:p(W).max(100),estimatedCostUsd:d().finite().nonnegative(),createdAt:ye,metadata:ed}).strict().superRefine((e,t)=>{e.decision==="proposed"!=(e.proposal!==null)&&t.addIssue({code:"custom",message:"proposed Refiner outcomes require a proposal; no-action outcomes cannot include one",path:["proposal"]})});QH.extend({contentHash:D}).strict();const XH=v(["applied","retained","declined","conflict","rolled_back"]),eL=l({schemaVersion:b("openpond.improvementApplyReceipt.v1"),id:T,proposal:W,beforeOverlay:so,afterOverlay:so.nullable(),decision:XH,boundary:cI,validationRefs:p(W).max(100),outcomeEvidenceRefs:p(dI).max(1e3),rollbackOf:W.nullable(),createdAt:ye,metadata:ed}).strict().superRefine((e,t)=>{e.decision==="applied"!=(e.afterOverlay!==null)&&t.addIssue({code:"custom",message:"applied receipts require an after-overlay; other decisions cannot include one",path:["afterOverlay"]}),e.decision==="rolled_back"!=(e.rollbackOf!==null)&&t.addIssue({code:"custom",message:"only rollback receipts require rollbackOf",path:["rollbackOf"]})});eL.extend({contentHash:D}).strict();const tL=v(["memory","prompt","skill","agent"]),nL=v(["runtime","product","taskset","training"]),aL=l({id:i().trim().min(1).max(120).regex(/^[a-z0-9][a-z0-9._-]*$/),text:i().trim().min(1).max(1e4)}).strict(),uI=l({schemaVersion:b("openpond.refinerReviewProfile.v1"),id:i().trim().min(1).max(120).regex(/^[a-z0-9][a-z0-9._-]*$/),version:i().trim().min(1).max(120),name:i().trim().min(1).max(200),objective:i().trim().min(1).max(1e4),instructions:p(aL).max(100),allowedProposalRoutes:p(tL).max(4),allowedExternalRoutes:p(nL).max(4)}).strict().superRefine((e,t)=>{const n=e.instructions.map(a=>a.id);new Set(n).size!==n.length&&t.addIssue({code:"custom",message:"instruction IDs must be unique",path:["instructions"]}),new Set(e.allowedProposalRoutes).size!==e.allowedProposalRoutes.length&&t.addIssue({code:"custom",message:"proposal routes must be unique",path:["allowedProposalRoutes"]}),new Set(e.allowedExternalRoutes).size!==e.allowedExternalRoutes.length&&t.addIssue({code:"custom",message:"external routes must be unique",path:["allowedExternalRoutes"]})}),gS=l({schemaVersion:b("openpond.refinerRelease.v1"),id:i().trim().min(1).max(240),coreVersion:i().trim().min(1).max(120),coreHash:D,profile:uI,profileHash:D,composedPromptHash:D,createdAt:ye,contentHash:D}).strict(),iL=l({schemaVersion:b("openpond.refinerBinding.v1"),channel:b("active"),revision:d().int().nonnegative(),release:W,updatedAt:ye}).strict(),oL=l({schemaVersion:b("openpond.refinerTransitionReceipt.v1"),id:i().trim().min(1).max(240),operation:v(["initialize","update","activate","rollback"]),bindingChanged:I(),previousRelease:W.nullable(),nextRelease:W,actor:i().trim().min(1).max(240),reason:i().trim().min(1).max(1e4),authoringSkillHash:D.nullable(),validation:l({valid:I(),messages:p(i().max(2e3)).max(100)}).strict(),createdAt:ye,contentHash:D}).strict(),rL=l({schemaVersion:b("openpond.localHarnessRefinerDecision.v1"),decision:b("no_action"),reason:i().trim().min(1).max(1e4)}).strip(),sL=l({schemaVersion:b("openpond.localHarnessRefinerDecision.v1"),decision:b("route"),route:v(["runtime","product","taskset","training"]),summary:i().trim().min(1).max(2e3),expectedOutcome:i().trim().min(1).max(1e4),reason:i().trim().min(1).max(1e4)}).strip(),lL=l({schemaVersion:b("openpond.localHarnessRefinerDecision.v1"),decision:b("propose"),route:v(["memory","prompt","skill","agent"]),operation:v(["create","update","delete"]),target:i().trim().min(1).max(2e3),summary:i().trim().min(1).max(2e3),createContent:i().min(1).max(2e4).nullable(),find:i().min(1).max(8e3).nullable(),replace:i().max(8e3).nullable(),expectedOutcome:i().trim().min(1).max(1e4),reason:i().trim().min(1).max(1e4)}).strip().superRefine((e,t)=>{e.operation==="create"&&(e.createContent===null||e.find!==null||e.replace!==null)&&t.addIssue({code:"custom",message:"create proposals require createContent and null find/replace",path:["createContent"]}),e.operation==="update"&&(e.createContent!==null||e.find===null||e.replace===null)&&t.addIssue({code:"custom",message:"update proposals require one exact find/replace edit and null createContent",path:["find"]}),e.operation==="delete"&&(e.createContent!==null||e.find!==null||e.replace!==null)&&t.addIssue({code:"custom",message:"delete proposals require null createContent/find/replace",path:["createContent"]})}),cL=ot("decision",[rL,sL,lL]),dL=cL,Vv=l({kind:v(["single_deterministic","recurrent_independent"]),supportingEvidenceIds:p(i().trim().min(1).max(2e3)).min(1).max(100),counterevidence:p(i().trim().min(1).max(2e3)).max(20)}).strict().superRefine((e,t)=>{new Set(e.supportingEvidenceIds).size!==e.supportingEvidenceIds.length&&t.addIssue({code:"custom",message:"supporting evidence IDs must be unique",path:["supportingEvidenceIds"]}),e.kind==="recurrent_independent"&&e.supportingEvidenceIds.length<2&&t.addIssue({code:"custom",message:"recurrent independent evidence requires at least two supplied incidents",path:["supportingEvidenceIds"]})}),uL=l({schemaVersion:b("openpond.localHarnessRefinerDecision.v2"),decision:b("no_action"),reason:i().trim().min(1).max(1e4)}).strict(),mL=l({schemaVersion:b("openpond.localHarnessRefinerDecision.v2"),decision:b("route"),route:v(["runtime","product","taskset","training"]),summary:i().trim().min(1).max(2e3),evidenceBasis:Vv,expectedOutcome:i().trim().min(1).max(1e4),reason:i().trim().min(1).max(1e4)}).strict(),pL=l({schemaVersion:b("openpond.localHarnessRefinerDecision.v2"),decision:b("propose"),route:v(["memory","prompt","skill","agent"]),operation:v(["create","update","delete"]),target:i().trim().min(1).max(2e3),summary:i().trim().min(1).max(2e3),evidenceBasis:Vv,createContent:i().min(1).max(2e4).nullable(),find:i().min(1).max(8e3).nullable(),replace:i().max(8e3).nullable(),expectedOutcome:i().trim().min(1).max(1e4),reason:i().trim().min(1).max(1e4)}).strict().superRefine((e,t)=>{e.operation==="create"&&(e.createContent===null||e.find!==null||e.replace!==null)&&t.addIssue({code:"custom",message:"create proposals require createContent and null find/replace",path:["createContent"]}),e.operation==="update"&&(e.createContent!==null||e.find===null||e.replace===null)&&t.addIssue({code:"custom",message:"update proposals require one exact find/replace edit and null createContent",path:["find"]}),e.operation==="delete"&&(e.createContent!==null||e.find!==null||e.replace!==null)&&t.addIssue({code:"custom",message:"delete proposals require null createContent/find/replace",path:["createContent"]})}),mI=ot("decision",[uL,mL,pL]);vt([dL,mI]);const Kv=l({memory:I(),prompt:I(),skill:I(),agent:I()}).strict(),pI=v(["memory","instruction","skill","agent"]),vS=l({path:i().trim().min(1).max(2e3),kind:pI,content:i().max(6e4),loaded:I()}).strict(),bS=l({path:i().trim().min(1).max(2e3),kind:pI,loaded:I()}).strict(),fL=l({capabilities:Kv,trigger:le(i(),ce()),observations:p(le(i(),ce())).max(20),admissibleEvidenceIds:p(i().trim().min(1).max(2e3)).max(1e4),reviewPacket:l({currentTurn:l({id:i().trim().min(1).max(2e3),status:i().trim().min(1).max(100).nullable(),error:i().max(2100).nullable(),prompt:i().max(8100).nullable(),assistantOutput:i().max(8100).nullable(),assistantOutputLinkCount:d().int().nonnegative()}).strict(),priorConversation:p(l({turnId:i().trim().min(1).max(2e3),status:i().trim().min(1).max(100).nullable(),prompt:i().max(3100).nullable(),assistantOutput:i().max(3100).nullable()}).strict()).max(3),timeline:p(le(i(),ce())).max(60),artifacts:p(le(i(),ce())).max(30),artifactDiagnostics:p(le(i(),ce())).max(20),executionProfile:l({modelRequestCount:d().int().nonnegative(),failedModelRequestCount:d().int().nonnegative(),promptTokens:d().int().nonnegative(),completionTokens:d().int().nonnegative(),totalTokens:d().int().nonnegative(),toolFailureCount:d().int().nonnegative(),retryCount:d().int().nonnegative(),recoveryCount:d().int().nonnegative()}).strict(),priorIncidents:p(le(i(),ce())).max(3),truncation:l({timelineEventCount:d().int().nonnegative(),includedTimelineEventCount:d().int().nonnegative(),timelineTruncated:I()}).strict()}).strict(),runtimeActivation:l({admittedRelease:W,currentRelease:W,rebasedOntoCurrent:I(),admittedSourceFiles:p(vS).max(100),admittedSourceCatalog:p(bS).max(1e3)}).strict(),sourceFiles:p(vS).max(100),sourceCatalog:p(bS).max(1e3),additionalEvidence:ce().nullable().optional()}).strict(),hL=l({id:i().trim().min(1).max(240),revision:d().int().nonnegative(),contentHash:D}).strict();l({schemaVersion:b("openpond.hostedHarnessRefinerRequest.v2"),requestId:i().trim().min(1).max(240),idempotencyKey:i().trim().min(1).max(240),evidenceHash:D,harness:l({admittedRelease:W,currentRelease:W,overlay:hL,workspace:l({id:i().trim().min(1).max(240),revision:d().int().nonnegative(),sourceRevision:D,channelRevision:d().int().nonnegative()}).strict(),capabilities:Kv}).strict(),evidence:fL}).strict();const gL=l({promptTokens:d().int().nonnegative(),completionTokens:d().int().nonnegative(),totalTokens:d().int().nonnegative()}).strict();l({schemaVersion:b("openpond.hostedHarnessRefinerResponse.v2"),requestId:i().trim().min(1).max(240),evidenceHash:D,admittedRelease:W,currentRelease:W,decision:mI,serviceRevision:i().trim().min(1).max(240),usage:gL}).strict();const vL=i().trim().min(1).max(2e3),Wv=i().trim().min(1).max(1e5),bL=v(["create","update","delete"]),yL=v(["memory","prompt","skill","agent"]),SL=v(["runtime","product","taskset","training"]),xL=v(["no_action","routed","applied","retained","failed"]),kL=v(["not_applicable","pending","passed","rejected","failed"]),wL=v(["not_applicable","pending","passed","failed"]),IL=l({schemaVersion:b("openpond.harnessRefinerActivityReceipt.v1"),id:T,runRef:T,turnId:T,result:xL,decision:v(["no_action","route","propose"]).nullable(),route:Gs.nullable(),operation:bL.nullable(),target:i().trim().min(1).max(2e3).nullable(),summary:vL,evidenceBasis:Vv.nullable(),critiqueStatus:kL,validationStatus:wL,trigger:W,outcome:W.nullable(),proposal:W.nullable(),applyReceipt:W.nullable(),inputHarness:W,outputHarness:W.nullable(),createdAt:ye}).strict().superRefine((e,t)=>{const n=e.result==="applied"||e.result==="retained";e.result==="no_action"?yS(t,e,{decision:"no_action",route:null,operation:null,target:null,evidenceBasis:null,proposal:null,applyReceipt:null,outputHarness:null,critiqueStatus:"not_applicable",validationStatus:"not_applicable"}):e.result==="routed"?((e.decision!=="route"||!SL.safeParse(e.route).success||e.operation!==null||e.target!==null||e.evidenceBasis===null||e.proposal!==null||e.applyReceipt!==null||e.outputHarness!==null)&&t.addIssue({code:"custom",message:"routed activity requires an external route and evidence basis without proposal state"}),yS(t,e,{critiqueStatus:"not_applicable",validationStatus:"not_applicable"})):n?((e.decision!=="propose"||!yL.safeParse(e.route).success||e.operation===null||e.target===null||e.evidenceBasis===null||e.proposal===null||e.applyReceipt===null)&&t.addIssue({code:"custom",message:"applied and retained activity requires complete proposal state"}),e.result==="applied"&&e.outputHarness===null&&t.addIssue({code:"custom",message:"applied activity requires the advanced Harness release",path:["outputHarness"]}),e.result==="applied"&&(e.critiqueStatus!=="passed"||e.validationStatus!=="passed")&&t.addIssue({code:"custom",message:"applied activity requires passed critique and validation"}),e.result==="retained"&&e.outputHarness!==null&&t.addIssue({code:"custom",message:"retained activity cannot report a new Harness release",path:["outputHarness"]})):(e.decision!==null||e.route!==null||e.operation!==null||e.target!==null||e.evidenceBasis!==null||e.outcome!==null||e.proposal!==null||e.applyReceipt!==null||e.outputHarness!==null)&&t.addIssue({code:"custom",message:"failed activity cannot claim a decision, route, proposal, or release transition"}),e.result!=="failed"&&e.outcome===null&&t.addIssue({code:"custom",message:"terminal Refiner decisions require an outcome reference",path:["outcome"]})});IL.extend({contentHash:D}).strict();const _L=v(["unresolved","confirmed","resolved","rejected","expired"]),CL=l({kind:v(["applied_change","later_success","manual_rejection","source_revoked","expired"]),reason:Wv,evidenceRefs:p(W).max(1e3),resolvedAt:ye}).strict(),RL=l({schemaVersion:b("openpond.harnessRefinementCandidate.v1"),id:T,ownerScope:Bv,workspaceRef:T,fingerprint:D,recurrenceFamily:i().trim().min(1).max(1e3),statement:Wv,status:_L,occurrences:p(Ic).max(1e3),counterevidence:p(Ic).max(1e3),sourceReviews:p(W).min(1).max(100),relatedHarnessReleases:p(W).max(100),firstSeenAt:ye,lastSeenAt:ye,lastReviewedAt:ye,expiresAt:ye,resolution:CL.nullable(),createdAt:ye,updatedAt:ye}).strict().superRefine((e,t)=>{yr(t,e.occurrences,"occurrences"),yr(t,e.counterevidence,"counterevidence"),yr(t,e.sourceReviews,"sourceReviews"),yr(t,e.relatedHarnessReleases,"relatedHarnessReleases");const n=new Set(e.occurrences.map(o=>o.occurrenceKey));e.counterevidence.some(o=>n.has(o.occurrenceKey))&&t.addIssue({code:"custom",message:"supporting occurrences and counterevidence must be disjoint",path:["counterevidence"]});const a=e.status==="unresolved"||e.status==="confirmed";a&&e.occurrences.length===0&&t.addIssue({code:"custom",message:"actionable candidates require at least one supporting occurrence",path:["occurrences"]}),a&&[...e.occurrences,...e.counterevidence].some(o=>o.sourcePolicy.state!=="authorized")&&t.addIssue({code:"custom",message:"actionable candidates may contain only currently authorized evidence",path:["occurrences"]}),a!==(e.resolution===null)&&t.addIssue({code:"custom",message:"only resolved, rejected, or expired candidates require a resolution",path:["resolution"]}),e.status==="expired"&&e.resolution?.kind!=="expired"&&t.addIssue({code:"custom",message:"expired candidates require an expired resolution",path:["resolution","kind"]}),e.status==="rejected"&&e.resolution&&!["manual_rejection","source_revoked"].includes(e.resolution.kind)&&t.addIssue({code:"custom",message:"rejected candidates require a rejection or revocation resolution",path:["resolution","kind"]}),e.status==="resolved"&&e.resolution&&!["applied_change","later_success"].includes(e.resolution.kind)&&t.addIssue({code:"custom",message:"resolved candidates require applied-change or later-success evidence",path:["resolution","kind"]}),jL(t,e)});RL.extend({contentHash:D}).strict();const PL=v(["created","merged","rejected","expired","reopened","resolved"]),AL=l({schemaVersion:b("openpond.harnessRefinementCandidateLifecycleReceipt.v1"),id:T,candidateId:T,decision:PL,beforeCandidate:W.nullable(),afterCandidate:W,review:W,addedEvidence:p(Ic).max(1e3),removedEvidence:p(W).max(1e3),reason:Wv,createdAt:ye}).strict().superRefine((e,t)=>{e.decision==="created"!=(e.beforeCandidate===null)&&t.addIssue({code:"custom",message:"only candidate creation omits the previous candidate reference",path:["beforeCandidate"]}),e.beforeCandidate&&e.beforeCandidate.contentHash===e.afterCandidate.contentHash&&t.addIssue({code:"custom",message:"candidate lifecycle transitions must change candidate content",path:["afterCandidate"]}),["created","reopened"].includes(e.decision)&&e.addedEvidence.length===0&&t.addIssue({code:"custom",message:`${e.decision} candidate transitions require added evidence`,path:["addedEvidence"]}),e.addedEvidence.some(a=>a.sourcePolicy.state!=="authorized")&&t.addIssue({code:"custom",message:"candidate transitions may add only authorized evidence",path:["addedEvidence"]}),yr(t,e.addedEvidence,"addedEvidence"),yr(t,e.removedEvidence,"removedEvidence");const n=new Set(e.removedEvidence.map(a=>bg(a)));e.addedEvidence.some(a=>n.has(bg(a.evidence)))&&t.addIssue({code:"custom",message:"candidate lifecycle evidence cannot be added and removed together",path:["removedEvidence"]})});AL.extend({contentHash:D}).strict();const TL=l({schemaVersion:b("openpond.harnessCrossRunRefinementRequest.v1"),id:T,ownerScope:Bv,workspaceRef:T,candidate:W,candidateFingerprint:D,review:W,admittedHarness:W,evidence:p(Ic).min(1).max(1e3),capabilities:Kv,deduplicationKey:D,createdAt:ye}).strict().superRefine((e,t)=>{e.evidence.some(a=>a.sourcePolicy.state!=="authorized")&&t.addIssue({code:"custom",message:"cross-run refinement requires currently authorized evidence",path:["evidence"]}),yr(t,e.evidence,"evidence"),Object.values(e.capabilities).some(Boolean)||t.addIssue({code:"custom",message:"cross-run refinement requires at least one available Harness capability",path:["capabilities"]});const n=EL(e);e.deduplicationKey!==n&&t.addIssue({code:"custom",message:`cross-run refinement deduplicationKey is ${e.deduplicationKey}; expected ${n}`,path:["deduplicationKey"]})});TL.extend({contentHash:D}).strict();function EL(e){return dt({schemaVersion:"openpond.harnessCrossRunRefinementIdentity.v1",workspaceRef:e.workspaceRef,candidateFingerprint:e.candidateFingerprint,admittedHarness:e.admittedHarness})}function yS(e,t,n){for(const[a,o]of Object.entries(n))t[a]!==o&&e.addIssue({code:"custom",message:`${a} must be ${String(o)}`,path:[a]})}function yr(e,t,n){const a=t.map(o=>bg(o));new Set(a).size!==a.length&&e.addIssue({code:"custom",message:`${n} references must be unique`,path:[n]})}function bg(e){if(!e||typeof e!="object"||Array.isArray(e))return String(e);const t=e;if(typeof t.occurrenceKey=="string")return t.occurrenceKey;const n=t.evidence;if(n&&typeof n=="object"&&!Array.isArray(n)){const a=n;return`${String(a.id)}:${String(a.contentHash)}`}return`${String(t.id)}:${String(t.contentHash)}`}function jL(e,t){const n=[["firstSeenAt",t.firstSeenAt],["lastSeenAt",t.lastSeenAt],["lastReviewedAt",t.lastReviewedAt],["updatedAt",t.updatedAt],["expiresAt",t.expiresAt]];for(let a=1;a<n.length;a+=1){const o=n[a-1],r=n[a];Date.parse(o[1])<=Date.parse(r[1])||e.addIssue({code:"custom",message:`${r[0]} must not precede ${o[0]}`,path:[r[0]]})}Date.parse(t.createdAt)>Date.parse(t.updatedAt)&&e.addIssue({code:"custom",message:"updatedAt must not precede createdAt",path:["updatedAt"]})}const ML=25*1024*1024,OL=l({path:bn.shape.path,base64:i().max(Math.ceil(ML/3)*4)}).strict(),fI=l({schemaVersion:b("openpond.harnessSourcePackage.v1"),agentSnapshot:NH,harnessRelease:HH,files:p(OL).max(1e4)}).strict();fI.extend({contentHash:D}).strict();fI.extend({schemaVersion:b("openpond.harnessPolicySourcePackage.v1"),contentHash:D}).strict();l({schemaVersion:b("openpond.harnessSourceSelection.v1"),mode:v(["taskset_owned","selected_release"]),harnessRelease:W,sourcePackageHash:D.nullable()}).strict().superRefine((e,t)=>{e.mode==="selected_release"!=(e.sourcePackageHash!==null)&&t.addIssue({code:"custom",path:["sourcePackageHash"],message:"Only a selected release binds a source package."})});l({path:i().min(1).max(2e3),offset:d().int().nonnegative().default(0),length:d().int().positive().max(65536).default(16384)}).strict();const hI=i().regex(/^[a-z][a-z0-9_-]{0,119}$/),gI=i().min(1).max(2e3).refine(e=>!e.includes("\\")&&!e.includes(":")&&!e.startsWith("/")&&e.split("/").every(t=>t!==""&&t!=="."&&t!==".."),"workflow references require portable relative paths"),$L=l({id:hI,label:i().trim().min(1).max(240),description:i().max(4e3),inputSchema:le(i(),ce()),invocation:ot("kind",[l({kind:b("instructions"),instructions:i().min(1).max(1e5).refine(e=>!!e.trim())}).strict(),l({kind:b("agent_action"),actionId:i().trim().min(1).max(240)}).strict()]),skillPaths:p(gI).max(100)}).strict();l({schemaVersion:b("openpond.profileWorkflows.v1"),workflows:p($L).max(1e3)}).strict();const NL=l({id:i().trim().min(1).max(240),agentId:i().regex(/^[a-zA-Z0-9_-]{1,240}$/),sourceActionId:i().trim().min(1).max(240),inputSchema:le(i(),ce())}).strict();l({schemaVersion:b("openpond.profileWorkflowActions.v1"),actions:p(NL).max(200)}).strict();const DL=l({schemaVersion:b("openpond.profileWorkflowBinding.v1"),profileId:i().trim().min(1).max(240),sourceRevision:i().trim().min(1).max(240),harnessRelease:W,catalogHash:D,workflowId:hI}).strict(),HL=l({schemaVersion:b("openpond.profileComponentBinding.v1"),profileId:i().trim().min(1).max(240),sourceRevision:i().trim().min(1).max(240),harnessRelease:W,target:ot("kind",[l({kind:b("profile")}).strict(),l({kind:b("skill"),skillPath:gI}).strict(),l({kind:b("agent_action"),actionId:i().trim().min(1).max(240)}).strict()])}).strict(),Gv=Symbol.for("yaml.alias"),LL=Symbol.for("yaml.document"),Rr=Symbol.for("yaml.map"),vI=Symbol.for("yaml.pair"),Jv=Symbol.for("yaml.scalar"),td=Symbol.for("yaml.seq"),Fi=Symbol.for("yaml.node.type"),pl=e=>!!e&&typeof e=="object"&&e[Fi]===Gv,Hm=e=>!!e&&typeof e=="object"&&e[Fi]===LL,bI=e=>!!e&&typeof e=="object"&&e[Fi]===Rr,Wn=e=>!!e&&typeof e=="object"&&e[Fi]===vI,jn=e=>!!e&&typeof e=="object"&&e[Fi]===Jv,Zv=e=>!!e&&typeof e=="object"&&e[Fi]===td;function Ta(e){if(e&&typeof e=="object")switch(e[Fi]){case Rr:case td:return!0}return!1}function Yn(e){if(e&&typeof e=="object")switch(e[Fi]){case Gv:case Rr:case Jv:case td:return!0}return!1}const yI=e=>(jn(e)||Ta(e))&&!!e.anchor,hr=Symbol("break visit"),qL=Symbol("skip children"),cc=Symbol("remove node");function Lm(e,t){const n=UL(t);Hm(e)?_s(null,e.contents,n,Object.freeze([e]))===cc&&(e.contents=null):_s(null,e,n,Object.freeze([]))}Lm.BREAK=hr;Lm.SKIP=qL;Lm.REMOVE=cc;function _s(e,t,n,a){const o=zL(e,t,n,a);if(Yn(o)||Wn(o))return BL(e,a,o),_s(e,o,n,a);if(typeof o!="symbol"){if(Ta(t)){a=Object.freeze(a.concat(t));for(let r=0;r<t.items.length;++r){const s=_s(r,t.items[r],n,a);if(typeof s=="number")r=s-1;else{if(s===hr)return hr;s===cc&&(t.items.splice(r,1),r-=1)}}}else if(Wn(t)){a=Object.freeze(a.concat(t));const r=_s("key",t.key,n,a);if(r===hr)return hr;r===cc&&(t.key=null);const s=_s("value",t.value,n,a);if(s===hr)return hr;s===cc&&(t.value=null)}}return o}function UL(e){return typeof e=="object"&&(e.Collection||e.Node||e.Value)?Object.assign({Alias:e.Node,Map:e.Node,Scalar:e.Node,Seq:e.Node},e.Value&&{Map:e.Value,Scalar:e.Value,Seq:e.Value},e.Collection&&{Map:e.Collection,Seq:e.Collection},e):e}function zL(e,t,n,a){if(typeof n=="function")return n(e,t,a);if(bI(t))return n.Map?.(e,t,a);if(Zv(t))return n.Seq?.(e,t,a);if(Wn(t))return n.Pair?.(e,t,a);if(jn(t))return n.Scalar?.(e,t,a);if(pl(t))return n.Alias?.(e,t,a)}function BL(e,t,n){const a=t[t.length-1];if(Ta(a))a.items[e]=n;else if(Wn(a))e==="key"?a.key=n:a.value=n;else if(Hm(a))a.contents=n;else{const o=pl(a)?"alias":"scalar";throw new Error(`Cannot replace node with ${o} parent`)}}function SI(e){if(/[\x00-\x19\s,[\]{}]/.test(e)){const n=`Anchor must not contain whitespace or control characters: ${JSON.stringify(e)}`;throw new Error(n)}return!0}function ec(e,t,n,a){if(a&&typeof a=="object")if(Array.isArray(a))for(let o=0,r=a.length;o<r;++o){const s=a[o],c=ec(e,a,String(o),s);c===void 0?delete a[o]:c!==s&&(a[o]=c)}else if(a instanceof Map)for(const o of Array.from(a.keys())){const r=a.get(o),s=ec(e,a,o,r);s===void 0?a.delete(o):s!==r&&a.set(o,s)}else if(a instanceof Set)for(const o of Array.from(a)){const r=ec(e,a,o,o);r===void 0?a.delete(o):r!==o&&(a.delete(o),a.add(r))}else for(const[o,r]of Object.entries(a)){const s=ec(e,a,o,r);s===void 0?delete a[o]:s!==r&&(a[o]=s)}return e.call(t,n,a)}function ui(e,t,n){if(Array.isArray(e))return e.map((a,o)=>ui(a,String(o),n));if(e&&typeof e.toJSON=="function"){if(!n||!yI(e))return e.toJSON(t,n);const a={aliasCount:0,count:1,res:void 0};n.anchors.set(e,a),n.onCreate=r=>{a.res=r,delete n.onCreate};const o=e.toJSON(t,n);return n.onCreate&&n.onCreate(o),o}return typeof e=="bigint"&&!n?.keep?Number(e):e}class Yv{constructor(t){Object.defineProperty(this,Fi,{value:t})}clone(){const t=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return this.range&&(t.range=this.range.slice()),t}toJS(t,{mapAsMap:n,maxAliasCount:a,onAnchor:o,reviver:r}={}){if(!Hm(t))throw new TypeError("A document argument is required");const s={anchors:new Map,doc:t,keep:!0,mapAsMap:n===!0,mapKeyWarned:!1,maxAliasCount:typeof a=="number"?a:100},c=ui(this,"",s);if(typeof o=="function")for(const{count:m,res:u}of s.anchors.values())o(u,m);return typeof r=="function"?ec(r,{"":c},"",c):c}}class FL extends Yv{constructor(t){super(Gv),this.source=t,Object.defineProperty(this,"tag",{set(){throw new Error("Alias nodes cannot have tags")}})}resolve(t,n){if(n?.maxAliasCount===0)throw new ReferenceError("Alias resolution is disabled");let a;n?.aliasResolveCache?a=n.aliasResolveCache:(a=[],Lm(t,{Node:(r,s)=>{(pl(s)||yI(s))&&a.push(s)}}),n&&(n.aliasResolveCache=a));let o;for(const r of a){if(r===this)break;r.anchor===this.source&&(o=r)}return o}toJSON(t,n){if(!n)return{source:this.source};const{anchors:a,doc:o,maxAliasCount:r}=n,s=this.resolve(o,n);if(!s){const m=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw new ReferenceError(m)}let c=a.get(s);if(c||(ui(s,null,n),c=a.get(s)),c?.res===void 0){const m="This should not happen: Alias anchor was not resolved?";throw new ReferenceError(m)}if(r>=0&&(c.count+=1,c.aliasCount===0&&(c.aliasCount=Iu(o,s,a)),c.count*c.aliasCount>r)){const m="Excessive alias count indicates a resource exhaustion attack";throw new ReferenceError(m)}return c.res}toString(t,n,a){const o=`*${this.source}`;if(t){if(SI(this.source),t.options.verifyAliasOrder&&!t.anchors.has(this.source)){const r=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw new Error(r)}if(t.implicitKey)return`${o} `}return o}}function Iu(e,t,n){if(pl(t)){const a=t.resolve(e),o=n&&a&&n.get(a);return o?o.count*o.aliasCount:0}else if(Ta(t)){let a=0;for(const o of t.items){const r=Iu(e,o,n);r>a&&(a=r)}return a}else if(Wn(t)){const a=Iu(e,t.key,n),o=Iu(e,t.value,n);return Math.max(a,o)}return 1}const xI=e=>!e||typeof e!="function"&&typeof e!="object";class hn extends Yv{constructor(t){super(Jv),this.value=t}toJSON(t,n){return n?.keep?this.value:ui(this.value,t,n)}toString(){return String(this.value)}}hn.BLOCK_FOLDED="BLOCK_FOLDED";hn.BLOCK_LITERAL="BLOCK_LITERAL";hn.PLAIN="PLAIN";hn.QUOTE_DOUBLE="QUOTE_DOUBLE";hn.QUOTE_SINGLE="QUOTE_SINGLE";function VL(e,t,n){return n.find(a=>a.identify?.(e)&&!a.format)}function Ju(e,t,n){if(Hm(e)&&(e=e.contents),Yn(e))return e;if(Wn(e)){const h=n.schema[Rr].createNode?.(n.schema,null,n);return h.items.push(e),h}(e instanceof String||e instanceof Number||e instanceof Boolean||typeof BigInt<"u"&&e instanceof BigInt)&&(e=e.valueOf());const{aliasDuplicateObjects:a,onAnchor:o,onTagObj:r,schema:s,sourceObjects:c}=n;let m;if(a&&e&&typeof e=="object"){if(m=c.get(e),m)return m.anchor??(m.anchor=o(e)),new FL(m.anchor);m={anchor:null,node:null},c.set(e,m)}let u=VL(e,t,s.tags);if(!u){if(e&&typeof e.toJSON=="function"&&(e=e.toJSON()),!e||typeof e!="object"){const h=new hn(e);return m&&(m.node=h),h}u=e instanceof Map?s[Rr]:Symbol.iterator in Object(e)?s[td]:s[Rr]}r&&(r(u),delete n.onTagObj);const f=u?.createNode?u.createNode(n.schema,e,n):typeof u?.nodeClass?.from=="function"?u.nodeClass.from(n.schema,e,n):new hn(e);return u.default||(f.tag=u.tag),m&&(m.node=f),f}function SS(e,t,n){let a=n;for(let o=t.length-1;o>=0;--o){const r=t[o];if(typeof r=="number"&&Number.isInteger(r)&&r>=0){const s=[];s[r]=a,a=s}else a=new Map([[r,a]])}return Ju(a,void 0,{aliasDuplicateObjects:!1,keepUndefined:!1,onAnchor:()=>{throw new Error("This should not happen, please report a bug.")},schema:e,sourceObjects:new Map})}const KL=e=>e==null||typeof e=="object"&&!!e[Symbol.iterator]().next().done;class kI extends Yv{constructor(t,n){super(t),Object.defineProperty(this,"schema",{value:n,configurable:!0,enumerable:!1,writable:!0})}clone(t){const n=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return t&&(n.schema=t),n.items=n.items.map(a=>Yn(a)||Wn(a)?a.clone(t):a),this.range&&(n.range=this.range.slice()),n}addIn(t,n){if(KL(t))this.add(n);else{const[a,...o]=t,r=this.get(a,!0);if(Ta(r))r.addIn(o,n);else if(r===void 0&&this.schema)this.set(a,SS(this.schema,o,n));else throw new Error(`Expected YAML collection at ${a}. Remaining path: ${o}`)}}deleteIn(t){const[n,...a]=t;if(a.length===0)return this.delete(n);const o=this.get(n,!0);if(Ta(o))return o.deleteIn(a);throw new Error(`Expected YAML collection at ${n}. Remaining path: ${a}`)}getIn(t,n){const[a,...o]=t,r=this.get(a,!0);return o.length===0?!n&&jn(r)?r.value:r:Ta(r)?r.getIn(o,n):void 0}hasAllNullValues(t){return this.items.every(n=>{if(!Wn(n))return!1;const a=n.value;return a==null||t&&jn(a)&&a.value==null&&!a.commentBefore&&!a.comment&&!a.tag})}hasIn(t){const[n,...a]=t;if(a.length===0)return this.has(n);const o=this.get(n,!0);return Ta(o)?o.hasIn(a):!1}setIn(t,n){const[a,...o]=t;if(o.length===0)this.set(a,n);else{const r=this.get(a,!0);if(Ta(r))r.setIn(o,n);else if(r===void 0&&this.schema)this.set(a,SS(this.schema,o,n));else throw new Error(`Expected YAML collection at ${a}. Remaining path: ${o}`)}}}const WL=e=>e.replace(/^(?!$)(?: $)?/gm,"#");function _c(e,t){return/^\n+$/.test(e)?e.substring(1):t?e.replace(/^(?! *$)/gm,t):e}const Cs=(e,t,n)=>e.endsWith(`
131
- `)?_c(n,t):n.includes(`
132
- `)?`
133
- `+_c(n,t):(e.endsWith(" ")?"":" ")+n,wI="flow",yg="block",_u="quoted";function qm(e,t,n="flow",{indentAtStart:a,lineWidth:o=80,minContentWidth:r=20,onFold:s,onOverflow:c}={}){if(!o||o<0)return e;o<r&&(r=0);const m=Math.max(1+r,1+o-t.length);if(e.length<=m)return e;const u=[],f={};let h=o-t.length;typeof a=="number"&&(a>o-Math.max(2,r)?u.push(0):h=o-a);let x,k,_=!1,P=-1,E=-1,A=-1;n===yg&&(P=xS(e,P,t.length),P!==-1&&(h=P+m));for(let j;j=e[P+=1];){if(n===_u&&j==="\\"){switch(E=P,e[P+1]){case"x":P+=3;break;case"u":P+=5;break;case"U":P+=9;break;default:P+=1}A=P}if(j===`
134
- `)n===yg&&(P=xS(e,P,t.length)),h=P+t.length+m,x=void 0;else{if(j===" "&&k&&k!==" "&&k!==`
135
- `&&k!==" "){const M=e[P+1];M&&M!==" "&&M!==`
136
- `&&M!==" "&&(x=P)}if(P>=h)if(x)u.push(x),h=x+m,x=void 0;else if(n===_u){for(;k===" "||k===" ";)k=j,j=e[P+=1],_=!0;const M=P>A+1?P-2:E-1;if(f[M])return e;u.push(M),f[M]=!0,h=M+m,x=void 0}else _=!0}k=j}if(_&&c&&c(),u.length===0)return e;s&&s();let $=e.slice(0,u[0]);for(let j=0;j<u.length;++j){const M=u[j],w=u[j+1]||e.length;M===0?$=`
137
- ${t}${e.slice(0,w)}`:(n===_u&&f[M]&&($+=`${e[M]}\\`),$+=`
138
- ${t}${e.slice(M+1,w)}`)}return $}function xS(e,t,n){let a=t,o=t+1,r=e[o];for(;r===" "||r===" ";)if(t<o+n)r=e[++t];else{do r=e[++t];while(r&&r!==`
139
- `);a=t,o=t+1,r=e[o]}return a}const Um=(e,t)=>({indentAtStart:t?e.indent.length:e.indentAtStart,lineWidth:e.options.lineWidth,minContentWidth:e.options.minContentWidth}),zm=e=>/^(%|---|\.\.\.)/m.test(e);function GL(e,t,n){if(!t||t<0)return!1;const a=t-n,o=e.length;if(o<=a)return!1;for(let r=0,s=0;r<o;++r)if(e[r]===`
140
- `){if(r-s>a)return!0;if(s=r+1,o-s<=a)return!1}return!0}function dc(e,t){const n=JSON.stringify(e);if(t.options.doubleQuotedAsJSON)return n;const{implicitKey:a}=t,o=t.options.doubleQuotedMinMultiLineLength,r=t.indent||(zm(e)?" ":"");let s="",c=0;for(let m=0,u=n[m];u;u=n[++m])if(u===" "&&n[m+1]==="\\"&&n[m+2]==="n"&&(s+=n.slice(c,m)+"\\ ",m+=1,c=m,u="\\"),u==="\\")switch(n[m+1]){case"u":{s+=n.slice(c,m);const f=n.substr(m+2,4);switch(f){case"0000":s+="\\0";break;case"0007":s+="\\a";break;case"000b":s+="\\v";break;case"001b":s+="\\e";break;case"0085":s+="\\N";break;case"00a0":s+="\\_";break;case"2028":s+="\\L";break;case"2029":s+="\\P";break;default:f.substr(0,2)==="00"?s+="\\x"+f.substr(2):s+=n.substr(m,6)}m+=5,c=m+1}break;case"n":if(a||n[m+2]==='"'||n.length<o)m+=1;else{for(s+=n.slice(c,m)+`
141
-
142
- `;n[m+2]==="\\"&&n[m+3]==="n"&&n[m+4]!=='"';)s+=`
143
- `,m+=2;s+=r,n[m+2]===" "&&(s+="\\"),m+=1,c=m+1}break;default:m+=1}return s=c?s+n.slice(c):n,a?s:qm(s,r,_u,Um(t,!1))}function Sg(e,t){if(t.options.singleQuote===!1||t.implicitKey&&e.includes(`
144
- `)||/[ \t]\n|\n[ \t]/.test(e))return dc(e,t);const n=t.indent||(zm(e)?" ":""),a="'"+e.replace(/'/g,"''").replace(/\n+/g,`$&
145
- ${n}`)+"'";return t.implicitKey?a:qm(a,n,wI,Um(t,!1))}function Rs(e,t){const{singleQuote:n}=t.options;let a;if(n===!1)a=dc;else{const o=e.includes('"'),r=e.includes("'");o&&!r?a=Sg:r&&!o?a=dc:a=n?Sg:dc}return a(e,t)}let xg;try{xg=new RegExp(`(^|(?<!
146
- ))
147
- +(?!
148
- |$)`,"g")}catch{xg=/\n+(?!\n|$)/g}function Cu({comment:e,type:t,value:n},a,o,r){const{blockQuote:s,commentString:c,lineWidth:m}=a.options;if(!s||/\n[\t ]+$/.test(n))return Rs(n,a);const u=a.indent||(a.forceBlockIndent||zm(n)?" ":""),f=s==="literal"?!0:s==="folded"||t===hn.BLOCK_FOLDED?!1:t===hn.BLOCK_LITERAL?!0:!GL(n,m,u.length);if(!n)return f?`|
149
- `:`>
150
- `;let h,x;for(x=n.length;x>0;--x){const w=n[x-1];if(w!==`
151
- `&&w!==" "&&w!==" ")break}let k=n.substring(x);const _=k.indexOf(`
152
- `);_===-1?h="-":n===k||_!==k.length-1?(h="+",r&&r()):h="",k&&(n=n.slice(0,-k.length),k[k.length-1]===`
153
- `&&(k=k.slice(0,-1)),k=k.replace(xg,`$&${u}`));let P=!1,E,A=-1;for(E=0;E<n.length;++E){const w=n[E];if(w===" ")P=!0;else if(w===`
154
- `)A=E;else break}let $=n.substring(0,A<E?A+1:E);$&&(n=n.substring($.length),$=$.replace(/\n+/g,`$&${u}`));let M=(P?u?"2":"1":"")+h;if(e&&(M+=" "+c(e.replace(/ ?[\r\n]+/g," ")),o&&o()),!f){const w=n.replace(/\n+/g,`
155
- $&`).replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,"$1$2").replace(/\n+/g,`$&${u}`);let R=!1;const O=Um(a,!0);s!=="folded"&&t!==hn.BLOCK_FOLDED&&(O.onOverflow=()=>{R=!0});const N=qm(`${$}${w}${k}`,u,yg,O);if(!R)return`>${M}
156
- ${u}${N}`}return n=n.replace(/\n+/g,`$&${u}`),`|${M}
157
- ${u}${$}${n}${k}`}function JL(e,t,n,a){const{type:o,value:r}=e,{actualString:s,implicitKey:c,indent:m,indentStep:u,inFlow:f}=t;if(c&&r.includes(`
158
- `)||f&&/[[\]{},]/.test(r))return Rs(r,t);if(/^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(r))return c||f||!r.includes(`
159
- `)?Rs(r,t):Cu(e,t,n,a);if(!c&&!f&&o!==hn.PLAIN&&r.includes(`
160
- `))return Cu(e,t,n,a);if(zm(r)){if(m==="")return t.forceBlockIndent=!0,Cu(e,t,n,a);if(c&&m===u)return Rs(r,t)}const h=r.replace(/\n+/g,`$&
161
- ${m}`);if(s){const x=P=>P.default&&P.tag!=="tag:yaml.org,2002:str"&&P.test?.test(h),{compat:k,tags:_}=t.doc.schema;if(_.some(x)||k?.some(x))return Rs(r,t)}return c?h:qm(h,m,wI,Um(t,!1))}function ZL(e,t,n,a){const{implicitKey:o,inFlow:r}=t,s=typeof e.value=="string"?e:Object.assign({},e,{value:String(e.value)});let{type:c}=e;c!==hn.QUOTE_DOUBLE&&/[\x00-\x08\x0b-\x1f\x7f-\x9f\u{D800}-\u{DFFF}]/u.test(s.value)&&(c=hn.QUOTE_DOUBLE);const m=f=>{switch(f){case hn.BLOCK_FOLDED:case hn.BLOCK_LITERAL:return o||r?Rs(s.value,t):Cu(s,t,n,a);case hn.QUOTE_DOUBLE:return dc(s.value,t);case hn.QUOTE_SINGLE:return Sg(s.value,t);case hn.PLAIN:return JL(s,t,n,a);default:return null}};let u=m(c);if(u===null){const{defaultKeyType:f,defaultStringType:h}=t.options,x=o&&f||h;if(u=m(x),u===null)throw new Error(`Unsupported default string type ${x}`)}return u}function YL(e,t){const n=Object.assign({blockQuote:!0,commentString:WL,defaultKeyType:null,defaultStringType:"PLAIN",directives:null,doubleQuotedAsJSON:!1,doubleQuotedMinMultiLineLength:40,falseStr:"false",flowCollectionPadding:!0,indentSeq:!0,lineWidth:80,minContentWidth:20,nullStr:"null",simpleKeys:!1,singleQuote:null,trailingComma:!1,trueStr:"true",verifyAliasOrder:!0},e.schema.toStringOptions,t);let a;switch(n.collectionStyle){case"block":a=!1;break;case"flow":a=!0;break;default:a=null}return{anchors:new Set,doc:e,flowCollectionPadding:n.flowCollectionPadding?" ":"",indent:"",indentStep:typeof n.indent=="number"?" ".repeat(n.indent):" ",inFlow:a,options:n}}function QL(e,t){if(t.tag){const o=e.filter(r=>r.tag===t.tag);if(o.length>0)return o.find(r=>r.format===t.format)??o[0]}let n,a;if(jn(t)){a=t.value;let o=e.filter(r=>r.identify?.(a));if(o.length>1){const r=o.filter(s=>s.test);r.length>0&&(o=r)}n=o.find(r=>r.format===t.format)??o.find(r=>!r.format)}else a=t,n=e.find(o=>o.nodeClass&&a instanceof o.nodeClass);if(!n){const o=a?.constructor?.name??(a===null?"null":typeof a);throw new Error(`Tag not resolved for ${o} value`)}return n}function XL(e,t,{anchors:n,doc:a}){if(!a.directives)return"";const o=[],r=(jn(e)||Ta(e))&&e.anchor;r&&SI(r)&&(n.add(r),o.push(`&${r}`));const s=e.tag??(t.default?null:t.tag);return s&&o.push(a.directives.tagString(s)),o.join(" ")}function Zu(e,t,n,a){if(Wn(e))return e.toString(t,n,a);if(pl(e)){if(t.doc.directives)return e.toString(t);if(t.resolvedAliases?.has(e))throw new TypeError("Cannot stringify circular structure without alias nodes");t.resolvedAliases?t.resolvedAliases.add(e):t.resolvedAliases=new Set([e]),e=e.resolve(t.doc)}let o;const r=Yn(e)?e:t.doc.createNode(e,{onTagObj:m=>o=m});o??(o=QL(t.doc.schema.tags,r));const s=XL(r,o,t);s.length>0&&(t.indentAtStart=(t.indentAtStart??0)+s.length+1);const c=typeof o.stringify=="function"?o.stringify(r,t,n,a):jn(r)?ZL(r,t,n,a):r.toString(t,n,a);return s?jn(r)||c[0]==="{"||c[0]==="["?`${s} ${c}`:`${s}
162
- ${t.indent}${c}`:c}function eq({key:e,value:t},n,a,o){const{allNullValues:r,doc:s,indent:c,indentStep:m,options:{commentString:u,indentSeq:f,simpleKeys:h}}=n;let x=Yn(e)&&e.comment||null;if(h){if(x)throw new Error("With simple keys, key nodes cannot have comments");if(Ta(e)||!Yn(e)&&typeof e=="object"){const O="With simple keys, collection cannot be used as a key value";throw new Error(O)}}let k=!h&&(!e||x&&t==null&&!n.inFlow||Ta(e)||(jn(e)?e.type===hn.BLOCK_FOLDED||e.type===hn.BLOCK_LITERAL:typeof e=="object"));n=Object.assign({},n,{allNullValues:!1,implicitKey:!k&&(h||!r),indent:c+m});let _=!1,P=!1,E=Zu(e,n,()=>_=!0,()=>P=!0);if(!k&&!n.inFlow&&E.length>1024){if(h)throw new Error("With simple keys, single line scalar must not span more than 1024 characters");k=!0}if(n.inFlow){if(r||t==null)return _&&a&&a(),E===""?"?":k?`? ${E}`:E}else if(r&&!h||t==null&&k)return E=`? ${E}`,x&&!_?E+=Cs(E,n.indent,u(x)):P&&o&&o(),E;_&&(x=null),k?(x&&(E+=Cs(E,n.indent,u(x))),E=`? ${E}
163
- ${c}:`):(E=`${E}:`,x&&(E+=Cs(E,n.indent,u(x))));let A,$,j;Yn(t)?(A=!!t.spaceBefore,$=t.commentBefore,j=t.comment):(A=!1,$=null,j=null,t&&typeof t=="object"&&(t=s.createNode(t))),n.implicitKey=!1,!k&&!x&&jn(t)&&(n.indentAtStart=E.length+1),P=!1,!f&&m.length>=2&&!n.inFlow&&!k&&Zv(t)&&!t.flow&&!t.tag&&!t.anchor&&(n.indent=n.indent.substring(2));let M=!1;const w=Zu(t,n,()=>M=!0,()=>P=!0);let R=" ";if(x||A||$){if(R=A?`
164
- `:"",$){const O=u($);R+=`
165
- ${_c(O,n.indent)}`}w===""&&!n.inFlow?R===`
166
- `&&j&&(R=`
167
-
168
- `):R+=`
169
- ${n.indent}`}else if(!k&&Ta(t)){const O=w[0],N=w.indexOf(`
170
- `),F=N!==-1,L=n.inFlow??t.flow??t.items.length===0;if(F||!L){let Y=!1;if(F&&(O==="&"||O==="!")){let re=w.indexOf(" ");O==="&"&&re!==-1&&re<N&&w[re+1]==="!"&&(re=w.indexOf(" ",re+1)),(re===-1||N<re)&&(Y=!0)}Y||(R=`
171
- ${n.indent}`)}}else(w===""||w[0]===`
172
- `)&&(R="");return E+=R+w,n.inFlow?M&&a&&a():j&&!M?E+=Cs(E,n.indent,u(j)):P&&o&&o(),E}function tq(e,t){(e==="debug"||e==="warn")&&console.warn(t)}const Zd="<<",dh={identify:e=>e===Zd||typeof e=="symbol"&&e.description===Zd,default:"key",tag:"tag:yaml.org,2002:merge",test:/^<<$/,resolve:()=>Object.assign(new hn(Symbol(Zd)),{addToJSMap:II}),stringify:()=>Zd},nq=(e,t)=>(dh.identify(t)||jn(t)&&(!t.type||t.type===hn.PLAIN)&&dh.identify(t.value))&&e?.doc.schema.tags.some(n=>n.tag===dh.tag&&n.default);function II(e,t,n){const a=_I(e,n);if(Zv(a))for(const o of a.items)uh(e,t,o);else if(Array.isArray(a))for(const o of a)uh(e,t,o);else uh(e,t,a)}function uh(e,t,n){const a=_I(e,n);if(!bI(a))throw new Error("Merge sources must be maps or map aliases");const o=a.toJSON(null,e,Map);for(const[r,s]of o)t instanceof Map?t.has(r)||t.set(r,s):t instanceof Set?t.add(r):Object.prototype.hasOwnProperty.call(t,r)||Object.defineProperty(t,r,{value:s,writable:!0,enumerable:!0,configurable:!0});return t}function _I(e,t){return e&&pl(t)?t.resolve(e.doc,e):t}function CI(e,t,{key:n,value:a}){if(Yn(n)&&n.addToJSMap)n.addToJSMap(e,t,a);else if(nq(e,n))II(e,t,a);else{const o=ui(n,"",e);if(t instanceof Map)t.set(o,ui(a,o,e));else if(t instanceof Set)t.add(o);else{const r=aq(n,o,e),s=ui(a,r,e);r in t?Object.defineProperty(t,r,{value:s,writable:!0,enumerable:!0,configurable:!0}):t[r]=s}}return t}function aq(e,t,n){if(t===null)return"";if(typeof t!="object")return String(t);if(Yn(e)&&n?.doc){const a=YL(n.doc,{});a.anchors=new Set;for(const r of n.anchors.keys())a.anchors.add(r.anchor);a.inFlow=!0,a.inStringifyKey=!0;const o=e.toString(a);if(!n.mapKeyWarned){let r=JSON.stringify(o);r.length>40&&(r=r.substring(0,36)+'..."'),tq(n.doc.options.logLevel,`Keys with collection values will be stringified due to JS Object restrictions: ${r}. Set mapAsMap: true to use object keys.`),n.mapKeyWarned=!0}return o}return JSON.stringify(t)}function Qv(e,t,n){const a=Ju(e,void 0,n),o=Ju(t,void 0,n);return new co(a,o)}class co{constructor(t,n=null){Object.defineProperty(this,Fi,{value:vI}),this.key=t,this.value=n}clone(t){let{key:n,value:a}=this;return Yn(n)&&(n=n.clone(t)),Yn(a)&&(a=a.clone(t)),new co(n,a)}toJSON(t,n){const a=n?.mapAsMap?new Map:{};return CI(n,a,this)}toString(t,n,a){return t?.doc?eq(this,t,n,a):JSON.stringify(this)}}function RI(e,t,n){return(t.inFlow??e.flow?oq:iq)(e,t,n)}function iq({comment:e,items:t},n,{blockItemPrefix:a,flowChars:o,itemIndent:r,onChompKeep:s,onComment:c}){const{indent:m,options:{commentString:u}}=n,f=Object.assign({},n,{indent:r,type:null});let h=!1;const x=[];for(let _=0;_<t.length;++_){const P=t[_];let E=null;if(Yn(P))!h&&P.spaceBefore&&x.push(""),Yu(n,x,P.commentBefore,h),P.comment&&(E=P.comment);else if(Wn(P)){const $=Yn(P.key)?P.key:null;$&&(!h&&$.spaceBefore&&x.push(""),Yu(n,x,$.commentBefore,h))}h=!1;let A=Zu(P,f,()=>E=null,()=>h=!0);E&&(A+=Cs(A,r,u(E))),h&&E&&(h=!1),x.push(a+A)}let k;if(x.length===0)k=o.start+o.end;else{k=x[0];for(let _=1;_<x.length;++_){const P=x[_];k+=P?`
173
- ${m}${P}`:`
174
- `}}return e?(k+=`
175
- `+_c(u(e),m),c&&c()):h&&s&&s(),k}function oq({items:e},t,{flowChars:n,itemIndent:a}){const{indent:o,indentStep:r,flowCollectionPadding:s,options:{commentString:c}}=t;a+=r;const m=Object.assign({},t,{indent:a,inFlow:!0,type:null});let u=!1,f=0;const h=[];for(let _=0;_<e.length;++_){const P=e[_];let E=null;if(Yn(P))P.spaceBefore&&h.push(""),Yu(t,h,P.commentBefore,!1),P.comment&&(E=P.comment);else if(Wn(P)){const $=Yn(P.key)?P.key:null;$&&($.spaceBefore&&h.push(""),Yu(t,h,$.commentBefore,!1),$.comment&&(u=!0));const j=Yn(P.value)?P.value:null;j?(j.comment&&(E=j.comment),j.commentBefore&&(u=!0)):P.value==null&&$?.comment&&(E=$.comment)}E&&(u=!0);let A=Zu(P,m,()=>E=null);u||(u=h.length>f||A.includes(`
176
- `)),_<e.length-1?A+=",":t.options.trailingComma&&(t.options.lineWidth>0&&(u||(u=h.reduce(($,j)=>$+j.length+2,2)+(A.length+2)>t.options.lineWidth)),u&&(A+=",")),E&&(A+=Cs(A,a,c(E))),h.push(A),f=h.length}const{start:x,end:k}=n;if(h.length===0)return x+k;if(!u){const _=h.reduce((P,E)=>P+E.length+2,2);u=t.options.lineWidth>0&&_>t.options.lineWidth}if(u){let _=x;for(const P of h)_+=P?`
177
- ${r}${o}${P}`:`
178
- `;return`${_}
179
- ${o}${k}`}else return`${x}${s}${h.join(" ")}${s}${k}`}function Yu({indent:e,options:{commentString:t}},n,a,o){if(a&&o&&(a=a.replace(/^\n+/,"")),a){const r=_c(t(a),e);n.push(r.trimStart())}}function Sr(e,t){const n=jn(t)?t.value:t;for(const a of e)if(Wn(a)&&(a.key===t||a.key===n||jn(a.key)&&a.key.value===n))return a}class ys extends kI{static get tagName(){return"tag:yaml.org,2002:map"}constructor(t){super(Rr,t),this.items=[]}static from(t,n,a){const{keepUndefined:o,replacer:r}=a,s=new this(t),c=(m,u)=>{if(typeof r=="function")u=r.call(n,m,u);else if(Array.isArray(r)&&!r.includes(m))return;(u!==void 0||o)&&s.items.push(Qv(m,u,a))};if(n instanceof Map)for(const[m,u]of n)c(m,u);else if(n&&typeof n=="object")for(const m of Object.keys(n))c(m,n[m]);return typeof t.sortMapEntries=="function"&&s.items.sort(t.sortMapEntries),s}add(t,n){let a;Wn(t)?a=t:!t||typeof t!="object"||!("key"in t)?a=new co(t,t?.value):a=new co(t.key,t.value);const o=Sr(this.items,a.key),r=this.schema?.sortMapEntries;if(o){if(!n)throw new Error(`Key ${a.key} already set`);jn(o.value)&&xI(a.value)?o.value.value=a.value:o.value=a.value}else if(r){const s=this.items.findIndex(c=>r(a,c)<0);s===-1?this.items.push(a):this.items.splice(s,0,a)}else this.items.push(a)}delete(t){const n=Sr(this.items,t);return n?this.items.splice(this.items.indexOf(n),1).length>0:!1}get(t,n){const o=Sr(this.items,t)?.value;return(!n&&jn(o)?o.value:o)??void 0}has(t){return!!Sr(this.items,t)}set(t,n){this.add(new co(t,n),!0)}toJSON(t,n,a){const o=a?new a:n?.mapAsMap?new Map:{};n?.onCreate&&n.onCreate(o);for(const r of this.items)CI(n,o,r);return o}toString(t,n,a){if(!t)return JSON.stringify(this);for(const o of this.items)if(!Wn(o))throw new Error(`Map items must all be pairs; found ${JSON.stringify(o)} instead`);return!t.allNullValues&&this.hasAllNullValues(!1)&&(t=Object.assign({},t,{allNullValues:!0})),RI(this,t,{blockItemPrefix:"",flowChars:{start:"{",end:"}"},itemIndent:t.indent||"",onChompKeep:a,onComment:n})}}class PI extends kI{static get tagName(){return"tag:yaml.org,2002:seq"}constructor(t){super(td,t),this.items=[]}add(t){this.items.push(t)}delete(t){const n=Yd(t);return typeof n!="number"?!1:this.items.splice(n,1).length>0}get(t,n){const a=Yd(t);if(typeof a!="number")return;const o=this.items[a];return!n&&jn(o)?o.value:o}has(t){const n=Yd(t);return typeof n=="number"&&n<this.items.length}set(t,n){const a=Yd(t);if(typeof a!="number")throw new Error(`Expected a valid index, not ${t}.`);const o=this.items[a];jn(o)&&xI(n)?o.value=n:this.items[a]=n}toJSON(t,n){const a=[];n?.onCreate&&n.onCreate(a);let o=0;for(const r of this.items)a.push(ui(r,String(o++),n));return a}toString(t,n,a){return t?RI(this,t,{blockItemPrefix:"- ",flowChars:{start:"[",end:"]"},itemIndent:(t.indent||"")+" ",onChompKeep:a,onComment:n}):JSON.stringify(this)}static from(t,n,a){const{replacer:o}=a,r=new this(t);if(n&&Symbol.iterator in Object(n)){let s=0;for(let c of n){if(typeof o=="function"){const m=n instanceof Set?c:String(s++);c=o.call(n,m,c)}r.items.push(Ju(c,void 0,a))}}return r}}function Yd(e){let t=jn(e)?e.value:e;return t&&typeof t=="string"&&(t=Number(t)),typeof t=="number"&&Number.isInteger(t)&&t>=0?t:null}function rq(e,t,n){const{replacer:a}=n,o=new PI(e);o.tag="tag:yaml.org,2002:pairs";let r=0;if(t&&Symbol.iterator in Object(t))for(let s of t){typeof a=="function"&&(s=a.call(t,String(r++),s));let c,m;if(Array.isArray(s))if(s.length===2)c=s[0],m=s[1];else throw new TypeError(`Expected [key, value] tuple: ${s}`);else if(s&&s instanceof Object){const u=Object.keys(s);if(u.length===1)c=u[0],m=s[c];else throw new TypeError(`Expected tuple with one key, not ${u.length} keys`)}else c=s;o.items.push(Qv(c,m,n))}return o}class Xv extends PI{constructor(){super(),this.add=ys.prototype.add.bind(this),this.delete=ys.prototype.delete.bind(this),this.get=ys.prototype.get.bind(this),this.has=ys.prototype.has.bind(this),this.set=ys.prototype.set.bind(this),this.tag=Xv.tag}toJSON(t,n){if(!n)return super.toJSON(t);const a=new Map;n?.onCreate&&n.onCreate(a);for(const o of this.items){let r,s;if(Wn(o)?(r=ui(o.key,"",n),s=ui(o.value,r,n)):r=ui(o,"",n),a.has(r))throw new Error("Ordered maps must not include duplicate keys");a.set(r,s)}return a}static from(t,n,a){const o=rq(t,n,a),r=new this;return r.items=o.items,r}}Xv.tag="tag:yaml.org,2002:omap";class eb extends ys{constructor(t){super(t),this.tag=eb.tag}add(t){let n;Wn(t)?n=t:t&&typeof t=="object"&&"key"in t&&"value"in t&&t.value===null?n=new co(t.key,null):n=new co(t,null),Sr(this.items,n.key)||this.items.push(n)}get(t,n){const a=Sr(this.items,t);return!n&&Wn(a)?jn(a.key)?a.key.value:a.key:a}set(t,n){if(typeof n!="boolean")throw new Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof n}`);const a=Sr(this.items,t);a&&!n?this.items.splice(this.items.indexOf(a),1):!a&&n&&this.items.push(new co(t))}toJSON(t,n){return super.toJSON(t,n,Set)}toString(t,n,a){if(!t)return JSON.stringify(this);if(this.hasAllNullValues(!0))return super.toString(Object.assign({},t,{allNullValues:!0}),n,a);throw new Error("Set items must all have null values")}static from(t,n,a){const{replacer:o}=a,r=new this(t);if(n&&Symbol.iterator in Object(n))for(let s of n)typeof o=="function"&&(s=o.call(n,s,s)),r.items.push(Qv(s,null,a));return r}}eb.tag="tag:yaml.org,2002:set";new Set("0123456789ABCDEFabcdef");new Set("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-#;/?:@&=+$_.!~*'()");new Set(",[]{}");new Set(` ,[]{}
180
- \r `);const Qu=i().min(1).max(2e3).refine(e=>!e.includes("\\")&&!e.includes(":")&&!e.startsWith("/")&&e.split("/").every(t=>t!==""&&t!=="."&&t!==".."),"source paths must be portable relative paths");i().regex(/^[a-z][a-z0-9_-]{0,119}$/);const sq={type:"object",properties:{},additionalProperties:!1};l({name:i().trim().min(1).max(240).optional(),description:i().max(4e3).optional(),skillPaths:p(Qu).max(100).optional(),assetPaths:p(Qu).max(100).optional()}).strict();l({actionId:i().trim().min(1).max(240),name:i().trim().min(1).max(240),description:i().max(4e3).default(""),inputSchema:le(i(),ce()).default(sq),skillPaths:p(Qu).max(100).default([]),assetPaths:p(Qu).max(100).default([])}).strict();const AI=v(["openpond.lab"]),Cc=l({id:i(),experience:Uv.default(GD),provider:ul,modelRef:Sn.nullable().optional(),openPondCommandAccessMode:Zc.default(Om),systemKind:AI.nullable().optional(),hiddenFromDefaultSidebar:I().optional(),parentSessionId:i().nullable().optional(),parentTurnId:i().nullable().optional(),subagentRunId:i().nullable().optional(),subagentRoleId:dl.nullable().optional(),subagentDelegationMode:Em.nullable().optional(),title:i(),appId:i().nullable(),appName:i().nullable(),workspaceKind:Yc.optional(),workspaceId:i().nullable().optional(),workspaceName:i().nullable().optional(),localProjectId:i().nullable().optional(),cloudProjectId:i().nullable().optional(),cloudTeamId:i().nullable().optional(),currentProfile:Bi.nullable().optional(),profileWorkflowBinding:DL.nullable().optional(),profileComponentBinding:HL.nullable().optional(),metadata:le(i(),ce()).optional(),cwd:i().nullable(),codexThreadId:i().nullable(),nativeAgent:l({provider:v(["claude-code","grok-build","opencode"]),instanceId:i().min(1),sessionId:i().min(1),cwd:i().min(1)}).nullable().optional(),createdAt:i(),updatedAt:i(),status:v(["idle","active","failed","closed"]),runtimeSeconds:d().int().nonnegative().optional(),runtimeRunningSince:i().nullable().optional(),pinned:I(),savedForLater:I().optional(),archived:I(),order:d()});l({id:i(),sessionId:i(),providerTurnId:i().nullable(),modelRef:Sn.nullable().optional(),prompt:i(),startedAt:i(),completedAt:i().nullable(),status:v(["in_progress","completed","failed","interrupted"]),error:i().nullable(),metadata:le(i(),ce()).optional().default({}),createImproveRun:Qc.nullable().optional().default(null),profileSnapshot:gH.nullable().optional(),harnessSnapshot:bH.nullable().optional()});const lq=l({id:i(),sessionId:i(),turnId:i().nullable(),providerRequestId:vt([i(),d()]),kind:v(["command","file_change","permissions","user_input","create_plan","subagent_patch_apply","legacy_exec","legacy_patch"]),title:i(),detail:i(),status:v(["pending","accepted","accepted_for_session","declined","cancelled"]),createdAt:i()}),cq=l({key:v(["files","diffs","checks","deploys","sources","schedules","tool_runs","logs","app_config"]),label:i(),status:v(["placeholder","available","error"]),summary:i()}),TI=l({id:i().trim().min(1).max(191),agentId:i().trim().min(1).max(191).optional().nullable(),sourcePath:i().trim().min(1).max(2e3).optional().nullable(),sourceActionId:i().trim().min(1).max(191).optional().nullable(),name:i().trim().min(1).max(191).optional().nullable(),label:i().trim().min(1).max(160).optional().nullable(),description:i().trim().max(1e3).optional().nullable(),visibility:i().trim().max(80).optional().nullable(),inputSchema:vt([i().trim().max(191),le(i(),ce())]).optional().nullable(),outputSchema:vt([i().trim().max(191),le(i(),ce())]).optional().nullable(),approvalPolicy:le(i(),ce()).optional().nullable(),artifactPolicy:le(i(),ce()).optional().nullable(),setupRequirements:p(le(i(),ce())).optional(),mcp:le(i(),ce()).optional().nullable(),schedulePolicy:le(i(),ce()).optional().nullable(),trace:le(i(),ce()).optional().nullable(),implementation:le(i(),ce()).optional().nullable(),invokesModel:I().optional()}),dq=l({command:v(["inspect","build","validate","eval","traces","run"]),status:v(["passed","failed"]),checkedAt:i(),exitCode:d().nullable().optional(),sourceHead:i().nullable().optional()}),uq=l({id:i(),name:i(),path:i(),enabled:I()}),mq=l({name:i(),description:i(),path:i(),scope:b("profile"),enabled:I(),sourcePath:i(),charCount:d(),sourceHash:i(),validationStatus:v(["valid","warning","error"]),validationMessages:p(i()),resourceFiles:p(i()).optional().default([])}),pq=l({id:i(),name:i(),path:i(),agentId:i().nullable(),sourcePath:i()}),EI=l({path:i(),originalPath:i().nullable().optional(),indexStatus:i().nullable(),worktreeStatus:i().nullable(),status:i(),category:v(["added","modified","deleted","renamed","untracked","changed"])}),fq=l({isRepo:I(),branch:i().nullable(),head:i().nullable(),shortHead:i().nullable(),dirty:I(),upstream:i().nullable(),ahead:d().nullable(),behind:d().nullable(),remoteUrl:i().nullable(),files:p(EI),fileCount:d().int().nonnegative().optional(),error:i().nullable()}),hq=l({actionCount:d(),generatedAt:i().nullable(),manifestPath:i().nullable(),registryPath:i().nullable(),stale:I(),error:i().nullable()}),gq=l({skillCount:d(),generatedAt:i().nullable(),stale:I(),error:i().nullable()}),kS=l({ref:i(),source:v(["action_catalog","source_upload_metadata"]),actionId:i().nullable(),kind:i().nullable(),label:i(),status:i(),required:I(),blocking:I()}),vq=l({status:v(["ready","setup_required","blocked"]),requirementCount:d(),blockingCount:d(),optionalMissingCount:d(),readyCount:d(),requirements:p(kS),blockingRequirements:p(kS)}),bq=l({changedAgents:p(i()),newAgents:p(i()),deletedAgents:p(i()),changedSkills:p(i()).optional().default([]),changedActions:p(i()),changedExtensions:p(i()),setupChanges:p(i()),envRequirementChanges:p(i()),files:p(EI),fileCount:d().int().nonnegative().optional()}),yq=l({status:i(),agentId:i().nullable().optional(),deployPlanStatus:i().nullable().optional(),canRun:I().nullable().optional(),canDeploy:I().nullable().optional(),sourceRef:i().nullable().optional(),sourceCommitSha:i().nullable().optional(),manifestHash:i().nullable().optional(),manifestPath:i().nullable().optional(),setupCommands:p(i()).optional(),validationCommands:p(i()).optional(),requiredChecks:p(i()).optional(),evalNames:p(i()).optional(),blockedReasons:p(i()).optional(),staleReasons:p(i()).optional(),runtimeId:i().nullable().optional(),sandboxId:i().nullable().optional(),traceArtifactRefs:p(i()).optional(),evalResultArtifactRefs:p(i()).optional(),validatorArtifactRefs:p(i()).optional(),checkedAt:i().nullable().optional(),error:i().nullable().optional()}),Sq=l({status:i(),agentId:i().nullable().optional(),runtimeAgentId:i().nullable().optional(),projectId:i().nullable().optional(),sourceRoot:i().nullable().optional(),sourceRef:i().nullable().optional(),sourceCommitSha:i().nullable().optional(),manifestHash:i().nullable().optional(),manifestPath:i().nullable().optional(),manifestSyncedAt:i().nullable().optional(),fileCount:d().nullable().optional(),totalBytes:d().nullable().optional(),generatedManifestPath:i().nullable().optional(),synthesizedOpenPondYaml:I().nullable().optional(),uploadMetadataPath:i().nullable().optional(),setupCommands:p(i()).optional(),validationCommands:p(i()).optional(),materializedAt:i().nullable().optional(),error:i().nullable().optional()}),xq=l({status:i(),agentId:i().nullable().optional(),snapshotId:i().nullable().optional(),sourceRef:i().nullable().optional(),sourceCommitSha:i().nullable().optional(),manifestHash:i().nullable().optional(),manifestPath:i().nullable().optional(),buildStatus:i().nullable().optional(),validationStatus:i().nullable().optional(),evalStatus:i().nullable().optional(),publishedAt:i().nullable().optional(),error:i().nullable().optional()}),kq=l({status:i(),agentId:i().nullable().optional(),runId:i().nullable().optional(),runtimeId:i().nullable().optional(),sandboxId:i().nullable().optional(),sourceRef:i().nullable().optional(),sourceCommitSha:i().nullable().optional(),manifestHash:i().nullable().optional(),setupGateStatus:i().nullable().optional(),setupRequirementRefs:p(i()).optional(),artifactRefs:p(i()).optional(),traceArtifactRefs:p(i()).optional(),evalArtifactRefs:p(i()).optional(),startedAt:i().nullable().optional(),completedAt:i().nullable().optional(),error:i().nullable().optional()}),wq=l({teamId:i().nullable(),projectId:i().nullable(),sourceRef:i().nullable(),sourceCommitSha:i().nullable(),lastPushedAt:i().nullable(),lastPushedLocalHead:i().nullable(),lastPushedHostedHead:i().nullable(),promotionStatus:i().nullable().optional().default(null),hostedRunStatus:i().nullable().optional().default(null),hostedRunAgentId:i().nullable().optional().default(null),hostedRunId:i().nullable().optional().default(null),hostedRunAt:i().nullable().optional().default(null),hostedSourceMaterialization:Sq.nullable().optional().default(null),hostedSourceCheck:yq.nullable().optional().default(null),hostedPublish:xq.nullable().optional().default(null),hostedRun:kq.nullable().optional().default(null)}),Iq=l({state:v(["none","ready","dirty","pending_commit","error"]),message:i(),agentCount:d(),actionCount:d(),defaultAction:i().nullable(),checkFresh:I(),checkStaleReason:i().nullable(),localHead:i().nullable(),hostedHead:i().nullable()}),jI=l({mode:v(["none","local"]),repoPath:i().nullable(),activeProfile:i().nullable(),sourcePath:i().nullable(),manifestPath:i().nullable(),agents:p(uq),skills:p(mq).optional().default([]),evals:p(pq).optional().default([]),git:fq.nullable(),catalog:hq,skillCatalog:gq.optional().default({skillCount:0,generatedAt:null,stale:!0,error:null}),actionCatalog:p(TI),sourceSetupRequirements:p(le(i(),ce())),setupGate:vq,diff:bq,hosted:wq.nullable(),summary:Iq,lastCheck:dq.nullable(),error:i().nullable()}),_q=l({ref:Bi,name:i(),repoPath:i(),sourcePath:i().nullable(),state:jI}),Cq=l({lastUsed:Bi.nullable(),profiles:p(_q)});function Rq(){return{lastUsed:null,profiles:[]}}function Pq(){return{mode:"none",repoPath:null,activeProfile:null,sourcePath:null,manifestPath:null,agents:[],skills:[],evals:[],git:null,catalog:{actionCount:0,generatedAt:null,manifestPath:null,registryPath:null,stale:!0,error:null},skillCatalog:{skillCount:0,generatedAt:null,stale:!0,error:null},actionCatalog:[],sourceSetupRequirements:[],setupGate:{status:"ready",requirementCount:0,blockingCount:0,optionalMissingCount:0,readyCount:0,requirements:[],blockingRequirements:[]},diff:{changedAgents:[],newAgents:[],deletedAgents:[],changedSkills:[],changedActions:[],changedExtensions:[],setupChanges:[],envRequirementChanges:[],files:[]},hosted:null,summary:{state:"none",message:"No active OpenPond profile.",agentCount:0,actionCount:0,defaultAction:null,checkFresh:!1,checkStaleReason:"No active profile.",localHead:null,hostedHead:null},lastCheck:null,error:null}}const Aq=l({name:i(),description:i(),path:i(),sourcePath:i(),enabled:I(),charCount:d().int().nonnegative(),sourceHash:i(),validationStatus:v(["valid","error"]),validationMessages:p(i()),resourceFiles:p(i()),updatedAt:i().nullable()}),Tq=v(["codex","profile","extension"]);l({skillName:i(),scope:Tq,path:i(),byteSize:d().int().nonnegative(),isBinary:I(),content:i().nullable()});const Eq=[{name:"openpond-taskset-authoring",description:"Create, improve, inspect, test, or prepare an OpenPond Taskset from a capability, Profile Agent, consented evidence, or imported data.",path:"skills/openpond-taskset-authoring/SKILL.md",scope:"profile",enabled:!0,sourcePath:"bundled://openpond",charCount:0,sourceHash:"bundled",validationStatus:"valid",validationMessages:[],resourceFiles:["references/task-design.md","references/graders-and-rewards.md","references/method-selection.md","references/privacy-and-provenance.md"]},{name:"openpond-skill-authoring",description:"Create, copy, adapt, review, or update OpenPond Profile skill packages from slash commands or ordinary authoring requests.",path:"skills/openpond-skill-authoring/SKILL.md",scope:"profile",enabled:!0,sourcePath:"bundled://openpond",charCount:0,sourceHash:"bundled",validationStatus:"valid",validationMessages:[],resourceFiles:["references/skill-package-layout.md","references/copying-and-adaptation.md","references/validation-and-repair.md","scripts/validate-skill.mjs"]},{name:"openpond-agent-authoring",description:"Create, improve, review, or repair source-backed OpenPond Profile Agents and Agent SDK projects.",path:"skills/openpond-agent-authoring/SKILL.md",scope:"profile",enabled:!0,sourcePath:"bundled://openpond",charCount:0,sourceHash:"bundled",validationStatus:"valid",validationMessages:[],resourceFiles:["references/profile-layout.md","references/action-and-chat-design.md","references/integrations-and-setup.md","references/validation-and-repair.md"]},{name:"openpond-refiner-authoring",description:"Inspect, extend, validate, activate, or roll back the OpenPond Refiner Review Profile without changing the Refiner Core.",path:"skills/openpond-refiner-authoring/SKILL.md",scope:"profile",enabled:!0,sourcePath:"bundled://openpond",charCount:0,sourceHash:"bundled",validationStatus:"valid",validationMessages:[],resourceFiles:["references/review-profile.md","references/core-boundary.md","references/validation-and-activation.md"]}],jq=l({name:i(),description:i(),relativePath:i(),sourcePath:i(),charCount:d().int().nonnegative(),sourceHash:i(),resourceFiles:p(i()),validationStatus:v(["valid","error"]),validationMessages:p(i())}),MI=l({id:i(),source:b("github"),owner:i(),repo:i(),repositoryUrl:i().url(),requestedRef:i(),resolvedCommit:i(),sourcePath:i(),readmePath:i().nullable(),installedAt:i(),updatedAt:i(),packageHash:i(),skills:p(jq),validationStatus:v(["valid","error"]),validationMessages:p(i())});MI.omit({installedAt:!0,updatedAt:!0,sourcePath:!0}).extend({sourcePath:cl()});const Mq=l({rootPath:i(),registryPath:i(),extensions:p(MI),error:i().nullable()});l({source:i().trim().min(1),ref:i().trim().min(1).optional()});const Oq=l({latestSequence:d().int().nonnegative(),oldestSequence:d().int().nonnegative(),totalEvents:d().int().nonnegative(),limit:d().int().nonnegative(),hasMoreBefore:I()});l({server:WD,account:DD,codex:HD,configuration:l({rawRevision:i(),effectiveRevision:i(),sources:p(l({layer:i(),path:i(),revision:i()})),provenance:le(i(),l({layer:i(),path:i(),revision:i()}))}).optional(),preferences:pS.optional().default(()=>pS.parse({})),providers:$0.optional().default(()=>$0.parse({})),personalization:fS.optional().default(()=>fS.parse({soul:Gw[0].content,soulPath:null,updatedAt:null})),apps:p(KN),localProjects:p(YN).optional().default([]),cloudProjects:p(ZN).optional().default([]),profile:jI.optional().default(Pq),profileLibrary:Cq.optional().default(Rq),codexPersonalSkills:p(Aq).optional().default([]),extensionCatalog:Mq.optional().default({rootPath:"",registryPath:"",extensions:[],error:null}),codexHistorySessions:p(Cc).optional().default([]),sidebarAppPreferences:TD,sidebarFileBookmarks:p(Kw).optional().default([]),appsError:i().nullable(),appsMeta:mS,accountMeta:mS,sessions:p(Cc),events:p(N0),eventWindow:Oq.optional(),approvals:p(lq),placeholders:p(cq),diagnostics:p(N0)});const tb=v(["openpond_hosted","local_byok","codex_app_server","unknown"]),OI=v(["provider_usage","codex_context_usage","missing"]),$q=v(["provider_usage_body","provider_response_headers"]),Nq=v(["chat_turn","tool_loop","slash_command","create_improve_planner","harness_refiner","context_compaction","subagent","codex_context","other"]),Dq=v(["foreground","tool_loop","compaction","subagent","refiner","other"]),$I=v(["user_facing","background","system"]),NI=v(["started","completed","failed","interrupted"]),nb=v(["composer_selection","prompt_parse","server_parser","model_tool","api"]),DI=v(["chat","settings","goal","create_improve","compaction","system"]),HI=v(["direct_chat","tool_loop","slash_command","planner","summary","scan","subagent","other"]),Hq=l({surface:DI,workflowKind:HI,sessionId:i().trim().min(1).nullable().default(null),turnId:i().trim().min(1).nullable().default(null),goalId:i().trim().min(1).nullable().default(null),subagentRunId:i().trim().min(1).nullable().default(null),subagentRoleId:i().trim().min(1).nullable().default(null),createImproveRunId:i().trim().min(1).nullable().default(null),commandName:i().trim().min(1).max(160).nullable().default(null),commandSource:nb.nullable().default(null),appId:i().trim().min(1).nullable().default(null),workspaceKind:Yc.nullable().default(null),workspaceId:i().trim().min(1).nullable().default(null),localProjectId:i().trim().min(1).nullable().default(null),cloudProjectId:i().trim().min(1).nullable().default(null),sourceEventSequence:d().int().nonnegative().nullable().default(null)}),Lq=l({surface:DI.optional(),workflowKind:HI.optional(),goalId:i().trim().min(1).nullable().optional(),subagentRunId:i().trim().min(1).nullable().optional(),subagentRoleId:i().trim().min(1).nullable().optional(),createImproveRunId:i().trim().min(1).nullable().optional(),commandName:i().trim().min(1).max(160).nullable().optional(),commandSource:nb.nullable().optional()}).strict(),Dr=i().trim().min(1).max(160),qq=l({id:i().trim().min(1),requestId:i().trim().min(1),requestOrdinal:d().int().nonnegative(),sessionId:i().trim().min(1).nullable(),turnId:i().trim().min(1).nullable(),provider:Dr,model:i().trim().min(1),route:tb,source:OI,requestKind:Nq,visibility:$I,status:NI,startedAt:i().trim().min(1),completedAt:i().trim().min(1).nullable(),durationMs:d().int().nonnegative().nullable(),firstTokenMs:d().int().nonnegative().nullable(),promptTokens:d().int().nonnegative().nullable(),cachedPromptTokens:d().int().nonnegative().nullable(),uncachedPromptTokens:d().int().nonnegative().nullable(),cacheWritePromptTokens:d().int().nonnegative().nullable(),cacheTelemetrySource:$q.nullable(),completionTokens:d().int().nonnegative().nullable(),totalTokens:d().int().nonnegative().nullable(),errorType:i().trim().min(1).max(160).nullable(),errorMessage:i().trim().min(1).max(2e3).nullable(),attribution:Hq}),LI=l({from:i().trim().min(1),to:i().trim().min(1),bucket:v(["day","all_time"])}),ab=vt([b("all"),$I]),ib=v(["all","started","completed","failed","interrupted","missing"]),Uq=l({range:v(["7d","30d","90d","all"]).default("30d"),visibility:ab.default("all"),status:ib.default("all"),provider:Dr.optional(),model:i().trim().min(1).optional()});Uq.extend({sessionId:i().trim().min(1).optional(),turnId:i().trim().min(1).optional(),limit:d().int().positive().max(500).default(100)});l({sessionId:i().trim().min(1)});const Hr=l({requests:d().int().nonnegative(),promptTokens:d().int().nonnegative().nullable(),cacheTelemetryRequests:d().int().nonnegative(),cacheHitRequests:d().int().nonnegative(),cachedPromptTokens:d().int().nonnegative().nullable(),uncachedPromptTokens:d().int().nonnegative().nullable(),cacheWritePromptTokens:d().int().nonnegative().nullable(),cacheHitRate:d().min(0).max(1).nullable(),cacheRequestHitRate:d().min(0).max(1).nullable(),cacheTelemetryCoverage:d().min(0).max(1),completionTokens:d().int().nonnegative().nullable(),totalTokens:d().int().nonnegative().nullable(),averageLatencyMs:d().nonnegative().nullable(),p95LatencyMs:d().nonnegative().nullable(),averageFirstTokenMs:d().nonnegative().nullable(),p95FirstTokenMs:d().nonnegative().nullable(),failures:d().int().nonnegative(),failureRate:d().nonnegative(),firstSeenAt:i().trim().min(1),lastSeenAt:i().trim().min(1)}),zq=Hr.extend({provider:Dr,model:i().trim().min(1),route:tb}),Bq=Hr.extend({sessionId:i().trim().min(1),title:i().trim().min(1).nullable(),workspaceKind:Yc.nullable(),workspaceId:i().trim().min(1).nullable()}),Fq=Hr.extend({commandName:i().trim().min(1),commandSource:nb.nullable()}),Vq=Hr.extend({route:tb}),Kq=Hr.extend({status:NI}),Wq=Hr.extend({source:OI}),Gq=Hr.extend({cohort:Dq}),Jq=l({date:i().trim().min(1),totalTokens:d().int().nonnegative(),requests:d().int().nonnegative(),models:p(l({provider:Dr,model:i().trim().min(1),totalTokens:d().int().nonnegative(),requests:d().int().nonnegative()}))}),Zq=l({requests:d().int().nonnegative(),completedRequests:d().int().nonnegative(),failedRequests:d().int().nonnegative(),missingUsageRequests:d().int().nonnegative(),promptTokens:d().int().nonnegative().nullable(),cacheTelemetryRequests:d().int().nonnegative(),cacheHitRequests:d().int().nonnegative(),cachedPromptTokens:d().int().nonnegative().nullable(),uncachedPromptTokens:d().int().nonnegative().nullable(),cacheWritePromptTokens:d().int().nonnegative().nullable(),cacheHitRate:d().min(0).max(1).nullable(),cacheRequestHitRate:d().min(0).max(1).nullable(),cacheTelemetryCoverage:d().min(0).max(1),completionTokens:d().int().nonnegative().nullable(),totalTokens:d().int().nonnegative().nullable(),averageLatencyMs:d().nonnegative().nullable(),p95LatencyMs:d().nonnegative().nullable(),averageFirstTokenMs:d().nonnegative().nullable(),p95FirstTokenMs:d().nonnegative().nullable(),failureRate:d().nonnegative(),activeModelCount:d().int().nonnegative(),peakDailyTokens:d().int().nonnegative(),longestRequestMs:d().int().nonnegative().nullable(),activeDays:d().int().nonnegative(),currentStreakDays:d().int().nonnegative(),longestStreakDays:d().int().nonnegative()});l({generatedAt:i().trim().min(1),range:LI,filters:l({visibility:ab,status:ib,provider:Dr.nullable(),model:i().trim().min(1).nullable()}),totals:Zq,daily:p(Jq),models:p(zq),threads:p(Bq),commands:p(Fq),routes:p(Vq),statuses:p(Kq),sources:p(Wq),cohorts:p(Gq)});l({generatedAt:i().trim().min(1),range:LI,filters:l({visibility:ab,status:ib,provider:Dr.nullable(),model:i().trim().min(1).nullable(),sessionId:i().trim().min(1).nullable(),turnId:i().trim().min(1).nullable()}),limit:d().int().positive(),hasMore:I(),records:p(qq)});const Yq=l({turnId:i().trim().min(1),requests:d().int().nonnegative(),cacheTelemetryRequests:d().int().nonnegative(),cachedPromptTokens:d().int().nonnegative().nullable(),uncachedPromptTokens:d().int().nonnegative().nullable(),cacheWritePromptTokens:d().int().nonnegative().nullable(),cacheHitRate:d().min(0).max(1).nullable(),cacheTelemetryCoverage:d().min(0).max(1),providers:p(Dr)});l({generatedAt:i().trim().min(1),sessionId:i().trim().min(1),turns:p(Yq)});const Qq=v(["usage_spike","model_usage_spike","latency_regression","failure_cluster","missing_usage_frames"]);l({type:Qq,title:i().trim().min(1),summary:i().trim().min(1),severity:v(["nit","concern","blocker"]),payload:le(i(),ce()).default({})});const Xq=v(["slack","microsoft_teams","github","google","turnkey","x","mcp"]),eU=v(["slack","microsoft_teams","github","google","turnkey","x","mcp"]),tU=v(["native_bot","oauth_connector","wallet_connector","mcp_endpoint"]),nU=l({kind:b("integration"),provider:Xq,appIds:p(eU).min(1).max(4),setupSurfaces:p(tU).min(1).max(4),connectionIds:p(i().trim().min(1)).max(8).optional(),capabilities:p(i().trim().min(1)).max(64).optional()}).strict(),xr={maxAttachments:10,maxAttachmentBytes:12*1024*1024,maxAttachmentBase64Chars:Math.ceil(12*1024*1024*4/3)+16,maxTextChars:2e5},aU=v(["image","text","file"]),iU=l({sessionId:i().trim().min(1).max(200),turnId:i().trim().min(1).max(200),attachmentId:i().trim().min(1).max(200),storageName:i().trim().min(1).max(240),contentType:i().trim().min(1).max(160)}),oU=l({sessionId:i().trim().min(1).max(200),turnId:i().trim().min(1).max(200),attachmentId:i().trim().min(1).max(200),storageName:i().trim().min(1).max(1024),contentType:i().trim().min(1).max(160)}),qI=l({id:i().trim().min(1),name:i().trim().min(1).max(240),mediaType:i().trim().min(1).max(160),sizeBytes:d().int().nonnegative().max(xr.maxAttachmentBytes),kind:aU,lineCount:d().int().nonnegative().max(xr.maxAttachmentBytes+1).optional(),relativePath:i().trim().min(1).max(1024).optional(),text:i().max(xr.maxTextChars).optional(),contentsBase64:i().max(xr.maxAttachmentBase64Chars).optional()}),rU=qI.omit({text:!0,contentsBase64:!0}).extend({imagePreview:iU.optional(),filePreview:oU.optional()});l({experience:Uv.optional(),provider:ul.default(Tr),modelRef:Sn.optional(),openPondCommandAccessMode:Zc.optional(),systemKind:AI.nullable().optional(),hiddenFromDefaultSidebar:I().optional(),parentSessionId:i().trim().min(1).max(200).nullable().optional(),parentTurnId:i().trim().min(1).max(200).nullable().optional(),subagentRunId:i().trim().min(1).max(200).nullable().optional(),subagentRoleId:dl.nullable().optional(),subagentDelegationMode:Em.nullable().optional(),appId:i().nullable().optional(),appName:i().nullable().optional(),workspaceKind:Yc.optional(),workspaceId:i().nullable().optional(),workspaceName:i().nullable().optional(),localProjectId:i().nullable().optional(),cloudProjectId:i().nullable().optional(),cloudTeamId:i().nullable().optional(),currentProfile:Bi.nullable().optional(),profileWorkflowBinding:Cc.shape.profileWorkflowBinding,profileComponentBinding:Cc.shape.profileComponentBinding,metadata:le(i(),ce()).optional(),cwd:i().nullable().optional(),title:i().optional(),autoTitlePrompt:i().trim().min(1).max(2e4).optional()});l({teamId:i().trim().min(1),projectName:i().trim().min(1).max(120).optional(),branch:i().trim().min(1).max(120).optional(),chatSessionId:i().trim().min(1).max(200).optional(),displayPrompt:i().trim().min(1).max(2e3).optional()});l({branch:i().trim().min(1).max(120).optional()});l({prompt:i().min(1),workflowInput:ce().optional(),metadata:le(i(),ce()).optional(),usageAttribution:Lq.optional().nullable(),cwd:i().nullable().optional(),model:i().nullable().optional(),modelRef:Sn.optional(),mentionedAppIds:p(i().trim().min(1)).max(8).optional(),mentionedConnectedApps:p(nU).max(8).optional(),openPondActionCatalog:p(TI).max(100).optional(),attachments:p(qI).max(xr.maxAttachments).optional(),createImproveRun:Qc.optional().nullable(),approvalPolicy:v(["untrusted","on-failure","on-request","never"]).default("on-request"),sandbox:v(["read-only","workspace-write","danger-full-access"]).default("workspace-write"),codexPermissionMode:Lv.default("default"),codexReasoningEffort:$m.optional()});l({prompt:i().min(1),error:i().min(1),target:v(["cloud_workspace","hybrid_sandbox"])});l({reason:v(["manual"]).default("manual"),model:i().nullable().optional(),modelRef:Sn.optional()});l({experience:Uv.optional(),provider:ul.optional(),modelRef:Sn.nullable().optional(),openPondCommandAccessMode:Zc.optional(),pinned:I().optional(),savedForLater:I().optional(),archived:I().optional(),order:d().optional(),title:i().optional(),parentSessionId:i().trim().min(1).max(200).nullable().optional(),parentTurnId:i().trim().min(1).max(200).nullable().optional(),subagentRunId:i().trim().min(1).max(200).nullable().optional(),subagentRoleId:dl.nullable().optional(),subagentDelegationMode:Em.nullable().optional(),appId:i().nullable().optional(),appName:i().nullable().optional(),workspaceKind:Yc.optional(),workspaceId:i().nullable().optional(),workspaceName:i().nullable().optional(),localProjectId:i().nullable().optional(),cloudProjectId:i().nullable().optional(),cloudTeamId:i().nullable().optional(),currentProfile:Bi.nullable().optional(),metadata:le(i(),ce()).optional(),cwd:i().nullable().optional()});l({command:i().trim().min(1),cwd:i().trim().min(1).max(4096).nullable().optional(),timeoutSeconds:d().int().min(1).max(3600).optional()});l({appIds:p(i()).min(1)});l({expectedRevision:i().optional(),defaultChatProvider:ul.optional(),defaultChatModel:i().min(1).optional(),defaultChatModelRef:Sn.nullable().optional(),subagents:xc.optional(),codexPermissionMode:Lv.optional(),codexReasoningEffort:$m.optional(),openPondCommandAccessMode:Zc.optional(),defaultBranchPrefix:i().trim().max(48).optional(),defaultNewProjectDirectory:i().trim().max(4096).optional(),defaultTeamId:i().trim().max(191).nullable().optional(),advancedWorkspaceControls:I().optional(),steerActiveResponses:I().optional(),contextCompaction:hg.optional(),training:gg.optional(),sidebarWidth:d().int().min(244).max(560).optional(),diffPanelWidth:d().int().min(320).max(2400).optional(),sidebarSectionsCollapsed:fg.optional(),editor:Gu.optional()});l({message:i().trim().min(1).max(4e3),surface:i().trim().min(1).max(120).default("app"),stack:i().max(12e3).nullable().optional(),context:le(i(),ce()).optional()}).strict();l({activeTemplateId:qv,templateName:i().trim().min(1).max(80),soul:i().trim().min(1).max(8e3),saveAsNew:I().optional().default(!1)});l({decision:v(["accept","acceptForSession","decline","cancel"]),answers:le(i().min(1).max(2e3),i().trim().min(1).max(8e3)).optional()});l({branch:i().trim().min(1).max(240).nullable().optional(),surface:v(["desktop","terminal"])});l({handle:i().min(1),baseUrl:i().nullable().optional()});l({handle:i().min(1),baseUrl:i().nullable().optional()});l({handle:i().min(1).optional(),apiKey:i().min(1),baseUrl:i().nullable().optional(),apiBaseUrl:i().nullable().optional(),chatApiBaseUrl:i().nullable().optional(),environment:i().nullable().optional(),setActive:I().optional()});l({handle:i().min(1),currentBaseUrl:i().nullable().optional(),apiKey:i().min(1).optional(),baseUrl:i().nullable().optional(),apiBaseUrl:i().nullable().optional(),chatApiBaseUrl:i().nullable().optional(),environment:i().nullable().optional(),setActive:I().optional()});l({appId:i(),exists:I(),configPath:i().nullable().optional(),envVar:i().nullable(),toolName:i().nullable(),version:vt([i(),d()]).nullable(),source:v(["hosted_env","local_file","defaults","missing"]),currentConfig:le(i(),ce()).nullable(),defaults:le(i(),ce()).nullable(),schema:le(i(),ce()).nullable(),error:i().nullable().optional(),updatedAt:i()}).passthrough();const Xu=v(["create_sandbox_template_scaffold","resource_read","resource_search","list_files","read_files","search_files","preview_write_files","preview_write_file","preview_edit_file","preview_delete_file","write_files","write_file","edit_file","delete_file","workspace_status","validate_sandbox_template","build_sandbox_template","run_sandbox_template","git_init","git_status","git_diff","git_fetch","git_commit","git_push","publish_openpond_repo","sandbox_create","sandbox_templates","sandbox_template_launch","sandbox_status","sandbox_start","sandbox_list_files","sandbox_read_file","sandbox_search_files","sandbox_upload_file","sandbox_write_file","sandbox_edit_file","sandbox_delete_file","sandbox_mkdir","sandbox_move_file","sandbox_exec","sandbox_git_status","sandbox_git_diff","sandbox_git_export_patch","sandbox_git_apply_patch_local","sandbox_git_branch","sandbox_git_commit","sandbox_git_pull","sandbox_git_push","sandbox_preserve_source","sandbox_promote_source","sandbox_run_action","sandbox_open_port","sandbox_snapshot_catalog","sandbox_snapshot_create","sandbox_snapshot_update","sandbox_snapshot_validate","sandbox_snapshot_publish","sandbox_replays","sandbox_replay_start","sandbox_replay_get","sandbox_replay_logs","sandbox_replay_artifacts","sandbox_replay_cancel","sandbox_logs","sandbox_receipts","sandbox_prepare_agent","sandbox_save_agent_package","sandbox_save_output","work_agent_package_install","work_output_delete","work_output_read","sandbox_schedule_create","sandbox_stop"]);l({action:Xu,args:le(i(),ce()).optional().default({}),source:v(["ui_button","chat_action","terminal_command","hook"]).default("chat_action")});l({ok:I(),action:Xu,appId:i().nullable().optional(),output:i(),data:ce().optional()});const nd=l({id:i().trim().min(1).max(200),title:i().trim().min(1).max(240),sourceTaskId:i().trim().min(1).max(200),sourceTurnId:i().trim().min(1).max(200),revision:d().int().positive().default(1),createdAt:i().datetime()}),ad=l({kind:v(["structural","visual","test","user_review"]),status:v(["passed","failed","not_run"]),label:i().trim().min(1).max(240),detail:i().trim().max(4e3).nullable().optional(),ref:i().trim().max(4096).nullable().optional()}),UI=l({kind:b("local"),path:i().trim().min(1).max(4096),deviceId:i().trim().min(1).max(200)}),zI=l({kind:b("managed"),fileId:i().trim().min(1).max(200),downloadPath:i().trim().min(1).max(4096)}),sU=l({kind:b("external"),provider:i().trim().min(1).max(120),resourceId:i().trim().min(1).max(500),url:i().url().nullable()}),BI=nd.extend({kind:b("file"),contentType:i().trim().min(1).max(200),sizeBytes:d().int().nonnegative(),sha256:i().regex(/^[a-f0-9]{64}$/),location:ot("kind",[UI,zI,sU]),validation:p(ad).max(32).default([])}),lU=nd.extend({kind:b("source_change"),projectId:i().trim().min(1).max(200),ref:i().trim().min(1).max(500),url:i().url().nullable(),validation:p(ad).max(32).default([])}),cU=nd.extend({kind:b("deployment"),deploymentId:i().trim().min(1).max(200),url:i().url(),validation:p(ad).max(32).default([])}),dU=nd.extend({kind:b("external_resource"),provider:i().trim().min(1).max(120),resourceId:i().trim().min(1).max(500),url:i().url(),contentType:i().trim().min(1).max(200).nullable(),validation:p(ad).max(32).default([])}),FI=l({id:i().trim().min(1).max(191),label:i().trim().min(1).max(160).nullable(),description:i().trim().max(1e3).nullable(),inputSchema:le(i(),ce()).nullable(),outputSchema:le(i(),ce()).nullable(),schedulePolicy:le(i(),ce()).nullable()}),VI=l({base:i().trim().min(1).max(200),resources:le(i(),ce()),modelPolicy:le(i(),ce()).nullable(),setup:le(i(),ce()).nullable()}),uU=l({id:i().trim().min(1).max(200),kind:v(["sdk_validation","sdk_eval"]),status:v(["passed","failed"]),summary:i().trim().min(1).max(2e3),artifactPath:i().trim().min(1).max(4096),artifactSha256:i().regex(/^[a-f0-9]{64}$/)}),mU=l({path:i().trim().min(1).max(4096),sizeBytes:d().int().nonnegative(),sha256:i().regex(/^[a-f0-9]{64}$/),contentsBase64:i()});l({schema:b("openpond.agent-package.v1"),agentId:i().trim().min(1).max(191),versionId:i().trim().min(1).max(200),digest:i().regex(/^[a-f0-9]{64}$/),title:i().trim().min(1).max(240),source:l({files:p(mU).min(1).max(1e3),totalSizeBytes:d().int().nonnegative()}),manifest:le(i(),ce()),actions:p(FI).min(1).max(256),runtimeRequirements:VI,receipts:p(uU).min(2).max(64)});const pU=nd.extend({kind:b("agent_package"),agentId:i().trim().min(1).max(191),versionId:i().trim().min(1).max(200),digest:i().regex(/^[a-f0-9]{64}$/),packageFileId:i().trim().min(1).max(200),manifestFileId:i().trim().min(1).max(200),actions:p(FI).min(1).max(256),runtimeRequirements:VI,validationReceiptIds:p(i().trim().min(1).max(200)).min(1).max(32),evalReceiptIds:p(i().trim().min(1).max(200)).min(1).max(32),sourceFileCount:d().int().positive(),sourceSizeBytes:d().int().nonnegative(),location:ot("kind",[UI,zI]),validation:p(ad).max(32).default([])}),sie=ot("kind",[BI,lU,cU,dU,pU]);l({outputs:p(BI)});const fU=v(["sandbox_template","sandbox","generic_git","plain_folder"]),hU=v(["sandbox_template"]).nullable();l({productKind:fU,actions:l({files:I(),git:I(),sandboxRuntime:I(),sandboxTemplate:I()}),checks:l({validate:Xu.nullable(),build:Xu.nullable(),postEdit:hU}),ui:l({showSandboxTemplateActions:I(),showSandboxRuntimeActions:I()})});const gU=l({id:i(),name:i(),dnsName:i().nullable(),os:i().nullable(),online:I(),active:I(),isSelf:I(),tailscaleIps:p(i()),lastSeen:i().nullable()}),vU=l({installed:I(),running:I(),version:i().nullable(),backendState:i().nullable(),tailnetName:i().nullable(),magicDnsSuffix:i().nullable(),machineName:i().nullable(),dnsName:i().nullable(),authUrl:i().nullable(),tailscaleIps:p(i()),health:p(i()),error:i().nullable(),peers:p(gU)}),bU=l({enabled:I(),reachable:I(),targetUrl:i().nullable(),httpsUrl:i().nullable(),httpsHost:i().nullable(),httpsPort:d().nullable(),setupUrl:i().nullable(),configText:i().nullable(),error:i().nullable()}),yU=l({localUrl:i(),localWebUrl:i(),remoteUrl:i().nullable(),remoteWebUrl:i().nullable(),tokenHash:i(),tailscaleUpCommand:i(),serveCommand:i(),disableCommand:i(),operatorCommand:i(),webUiAvailable:I(),updatedAt:i(),tailscale:vU,serve:bU});l({message:i(),status:yU});const KI=v(["github","openpond_git"]),WI=v(["private","public"]),SU=v(["actions","workflows","instructions","prompts","goals","evals","examples","tasksets","extensions"]),xU=l({agentIds:p(i().trim().min(1)).max(100),skillNames:p(i().trim().min(1)).max(200),optionalContent:p(SU).max(20).default([])}),GI=l({provider:KI,owner:i().trim().min(1).max(191).nullable().optional(),repository:i().trim().min(1).max(191),visibility:WI.default("private")}),kU=l({ref:Bi,selection:xU,target:GI}),wU=l({path:i(),sizeBytes:d().int().nonnegative(),category:i()});l({sourceHash:i(),sourceRevision:i().nullable(),clean:I(),blockedReasons:p(i()),warnings:p(i()),files:p(wU),excludedFiles:p(i()),target:GI,replacesExisting:I()});kU.extend({expectedSourceHash:i().trim().min(1),confirmed:b(!0)});l({provider:KI,owner:i(),repository:i(),visibility:WI,remoteUrl:i(),webUrl:i(),revision:i()});const IU=v(["cron","rate"]),JI=v(["queued","running","succeeded","failed","skipped"]),ob=l({id:i(),localProjectId:i(),localProjectName:i(),agentRootPath:i(),agentName:i(),scheduleName:i(),scheduleType:IU,scheduleExpression:i(),timezone:i().nullable(),targetAction:i(),input:le(i(),ce()).optional().default({}),enabledByDefault:I(),enabled:I(),sourceHash:i(),manifestHash:i().nullable(),agentVersionId:i().nullable().optional(),agentPackageDigest:i().nullable().optional(),nextRunAt:i().nullable(),lastRunAt:i().nullable(),lastRunStatus:JI.nullable(),lastRunId:i().nullable(),lastError:i().nullable(),createdAt:i(),updatedAt:i()}),ZI=l({id:i(),scheduleId:i(),definitionSnapshot:ob.optional(),configurationSnapshot:le(i(),ce()).optional(),inputSnapshot:le(i(),ce()).optional(),localProjectId:i(),scheduleName:i(),scheduledFor:i(),trigger:v(["schedule","manual"]),status:JI,targetAction:i(),agentVersionId:i().nullable().optional(),agentPackageDigest:i().nullable().optional(),startedAt:i().nullable(),completedAt:i().nullable(),exitCode:d().int().nullable(),stdout:i().nullable(),stderr:i().nullable(),result:le(i(),ce()).nullable(),traceArtifactRef:i().nullable(),error:i().nullable(),createdAt:i(),updatedAt:i()});l({schedules:p(ob),scheduler:l({running:I(),nextTickAt:i().nullable(),lastSyncAt:i().nullable(),scanRunning:I()})});l({runs:p(ZI)});l({enabled:I().optional()});l({input:le(i(),ce()).optional()});l({schedule:ob,run:ZI});const _U=v(["sunday","monday","tuesday","wednesday","thursday","friday","saturday"]),fl=l({version:b(1),kind:v(["once","daily","weekdays","weekly","monthly"]),timeZone:i().trim().min(1).max(100),startDate:i().regex(/^\d{4}-\d{2}-\d{2}$/),localTime:i().regex(/^([01]\d|2[0-3]):([0-5]\d)$/),weekdays:p(_U).min(1).max(7).optional(),dayOfMonth:d().int().min(1).max(31).optional(),end:ot("kind",[l({kind:b("never")}),l({kind:b("on_date"),date:i().regex(/^\d{4}-\d{2}-\d{2}$/)}),l({kind:b("after_occurrences"),occurrences:d().int().min(1).max(1e5)})])}).superRefine((e,t)=>{e.kind==="weekly"&&!e.weekdays?.length&&t.addIssue({code:"custom",message:"Weekly recurrence requires at least one weekday.",path:["weekdays"]}),e.kind==="monthly"&&e.dayOfMonth===void 0&&t.addIssue({code:"custom",message:"Monthly recurrence requires a day of month.",path:["dayOfMonth"]})}),CU=l({id:i(),expression:i().nullable(),timeZone:i(),recurrence:fl.nullable(),configurationVersion:d().int(),enabled:I(),nextRunAt:i().nullable(),lastTriggeredAt:i().nullable(),delivery:le(i(),ce()).default({})}),RU=l({id:i(),definitionKey:i(),version:d().int(),name:i(),prompt:i(),modelId:i(),schedules:p(CU)}),PU=l({id:i(),definitionId:i(),scheduleId:i().nullable(),definitionName:i(),definitionVersion:d().int(),conversationId:i(),triggerKind:v(["manual","schedule","webhook","retry"]),status:i(),notificationStatus:i(),deliveryStatus:i(),deliveryError:i().nullable(),createdAt:i()});l({definitions:p(RU),runs:p(PU),asOf:i(),webBaseUrl:i().url().optional()});l({clientRequestId:i().trim().min(1).max(191),sourceTurnId:i().trim().min(1).max(191).nullable().optional(),targetSessionId:i().trim().min(1).max(191).nullable().optional(),name:i().trim().min(1).max(180),prompt:i().trim().min(1).max(2e4),recurrence:fl,modelId:i().trim().min(1).max(191).default("openpond-chat")});vt([l({enabled:I()}),l({name:i().trim().min(1).max(180),prompt:i().trim().min(1).max(2e4),recurrence:fl})]);const YI=v(["queued","running","succeeded","failed"]),QI=l({id:i(),sessionId:i(),sessionTitle:i(),sourceTurnId:i().nullable(),name:i(),prompt:i(),profileRef:Bi.optional(),profileWorkflowId:i().optional(),profileMigrationError:i().nullable().optional(),recurrence:fl,enabled:I(),nextRunAt:i().nullable(),lastRunAt:i().nullable(),lastRunStatus:YI.nullable(),lastRunId:i().nullable(),lastError:i().nullable(),scheduledRunCount:d().int().nonnegative(),createdAt:i(),updatedAt:i()}),AU=l({definitionSnapshot:QI.optional(),configurationSnapshot:le(i(),ce()).optional(),id:i(),workflowId:i(),sessionId:i(),scheduledFor:i(),trigger:v(["schedule","manual"]),status:YI,turnId:i().nullable(),error:i().nullable(),createdAt:i(),startedAt:i().nullable(),completedAt:i().nullable(),updatedAt:i()});l({sessionId:i().trim().min(1).max(191),sourceTurnId:i().trim().min(1).max(191).nullable().optional(),name:i().trim().min(1).max(180),prompt:i().trim().min(1).max(2e4),recurrence:fl});vt([l({enabled:I()}),l({name:i().trim().min(1).max(180),prompt:i().trim().min(1).max(2e4),recurrence:fl})]);l({workflows:p(QI),runs:p(AU),asOf:i()});const rb=le(i(),ce());l({userId:i(),role:v(["owner","admin","member"]),name:i(),handle:i().nullable(),image:i().nullable()});const TU=l({userId:i(),role:v(["owner","admin","member"]),name:i(),handle:i().nullable(),image:i().nullable(),lastReadSequence:d().int().nonnegative()}),EU=l({id:i(),messageId:i(),refType:v(["hosted_ai_thread","goal","openpond_session","project","agent_run","message_reply"]),refId:i(),preview:rb,createdAt:i()}),XI=l({id:i(),messageId:i().nullable(),clientAttachmentId:i(),kind:b("image"),name:i(),mediaType:v(["image/png","image/jpeg","image/webp","image/gif"]),sizeBytes:d().int().positive(),status:v(["pending","ready","failed"]),createdAt:i(),readyAt:i().nullable()});l({attachment:XI,uploadUrl:i().url().nullable(),uploadHeaders:le(i(),i()),expiresAt:i().nullable()});l({url:i().url(),expiresAt:i()});const sb=l({id:i(),threadId:i(),teamId:i(),clientRequestId:i().nullable(),authorType:v(["user","agent","system"]),authorUserId:i().nullable(),authorAgentId:i().nullable(),sequence:d().int().nonnegative(),kind:v(["text","system","command_result"]),body:i(),metadata:rb,editedAt:i().nullable(),deletedAt:i().nullable(),createdAt:i(),refs:p(EU),attachments:p(XI)}),jU=l({id:i(),teamId:i(),kind:v(["general","dm","group","channel"]),title:i().nullable(),createdByUserId:i(),lastMessageId:i().nullable(),lastMessageSequence:d().int().nonnegative(),lastMessageAt:i(),createdAt:i(),updatedAt:i(),unreadCount:d().int().nonnegative(),pinnedAt:i().nullable(),mutedAt:i().nullable(),archivedAt:i().nullable(),participants:p(TU),lastMessage:sb.nullable()});l({thread:jU,messages:p(sb),hasMoreBefore:I()});l({threadId:i(),mutedAt:i().nullable()});const MU=v(["pending","running","completed","failed","interrupted","cancelled"]),wS=l({id:i(),conversationId:i(),threadId:i(),teamId:i(),requestedByUserId:i(),executorUserId:i().nullable(),providerId:i(),modelId:i(),clientRequestId:i(),baseMessageSequence:d().int().nonnegative(),status:MU,partialBody:i().nullable(),userMessageId:i(),assistantMessageId:i().nullable(),errorCode:i().nullable(),cancelledByUserId:i().nullable(),leaseExpiresAt:i().nullable(),heartbeatAt:i().nullable(),createdAt:i(),updatedAt:i()}),OU=l({id:i(),conversationId:i(),sequence:d().int().nonnegative(),role:v(["user","assistant","system","action"]),body:i(),createdByUserId:i().nullable(),createdAt:i()});l({conversationId:i(),parentThreadId:i(),parentMessageId:i(),teamId:i(),title:i().nullable(),providerId:i().nullable(),modelId:i(),createdByUserId:i(),messages:p(OU),turns:p(wS),activeTurn:wS.nullable(),createdAt:i(),updatedAt:i()});const e_=l({id:d().int().nonnegative(),teamId:i(),threadId:i(),conversationId:i().nullable(),type:v(["thread.created","message.created","message.updated","message.deleted","read.updated","ai_thread.created","ai_turn.updated"]),payload:rb,createdAt:i()});l({events:p(e_),cursor:d().int().nonnegative(),hasMore:I()});l({httpUrl:i().min(1),realtimeUrl:i().min(1),region:i().min(1),token:i().min(1),expiresAt:i().min(1),teamId:i().min(1),userId:i().min(1)});const lb=le(i(),ce()),Va=i().nullable(),$U=v(["draft","published","archived"]),cb=v(["owner","admin","member"]),t_=v(["active","left"]),n_=v(["mentions","all","none"]),a_=v(["public_preview","members"]),NU=v(["members","admins"]),DU=l({canPreview:I(),canJoin:I(),canLeave:I(),canRead:I(),canPost:I(),canUpload:I(),canMention:I(),canManage:I(),requiresRulesAcceptance:I(),currentRulesVersionId:i().nullable()}),i_=l({id:i(),communityId:i(),version:d().int().positive(),title:i(),requiresReacceptance:I(),publishedAt:i()}),HU=i_.extend({bodyMarkdown:i(),contentHash:i()}),LU=l({role:cb,status:t_,notificationMode:n_}),qU=l({id:i(),communityId:i(),userId:i(),role:cb,status:t_,notificationMode:n_,joinedAt:i(),leftAt:Va,createdAt:i(),updatedAt:i()}),o_=l({id:i(),slug:i(),displayName:i(),description:i(),imageUrl:i().nullable(),status:$U,visibility:v(["public","private"]),joinPolicy:v(["open","closed"]),historyVisibility:a_,featuredAt:Va,publishedAt:Va,archivedAt:Va,memberCount:d().int().nonnegative(),membership:LU.nullable(),capabilities:DU,currentRules:i_.nullable()});l({items:p(o_),nextCursor:i().nullable()});const r_=l({lastReadSequence:d().int().nonnegative(),lastReadAt:Va.optional(),mutedAt:Va,pinnedAt:Va}),db=l({id:i(),communityId:i(),chatThreadId:i().nullable(),slug:i(),displayName:i(),topic:i(),position:d().int().nonnegative(),visibility:a_,postingPolicy:NU,isDefault:I(),archivedAt:Va,lastMessageSequence:d().int().nonnegative(),unreadCount:d().int().nonnegative(),readState:r_.nullable()});o_.omit({currentRules:!0}).extend({currentRules:HU.nullable(),channels:p(db),previewMessageLimit:d().int().positive()});const UU=l({id:i(),messageId:i(),refType:v(["hosted_ai_thread","goal","openpond_session","project","agent_run","message_reply"]),refId:i(),preview:lb,createdAt:i()}),s_=l({id:i(),messageId:i().nullable(),clientAttachmentId:i(),kind:b("image"),name:i(),mediaType:v(["image/png","image/jpeg","image/webp","image/gif"]),sizeBytes:d().int().positive(),status:v(["pending","ready","failed"]),createdAt:i(),readyAt:Va});l({attachment:s_,uploadUrl:i().url().nullable(),uploadHeaders:le(i(),i()),expiresAt:Va});l({url:i().url(),expiresAt:i()});const l_=l({id:i(),threadId:i(),teamId:cl(),clientRequestId:i().nullable(),authorType:v(["user","agent","system"]),authorUserId:i().nullable(),authorAgentId:i().nullable(),sequence:d().int().nonnegative(),kind:v(["text","system","command_result"]),body:i(),metadata:lb,editedAt:Va,deletedAt:Va,createdAt:i(),refs:p(UU),attachments:p(s_)});l({messages:p(l_),hasMoreBefore:I(),channelId:i(),readState:r_.omit({lastReadAt:!0}).nullable(),preview:I()});const zU=l({userId:i(),handle:i().nullable(),name:i().nullable(),role:cb});l({items:p(zU),nextCursor:i().nullable()});const c_=l({id:d().int().nonnegative(),communityId:i(),channelId:i(),threadId:i(),type:v(["thread.created","message.created","message.updated","message.deleted","read.updated"]),payload:lb,createdAt:i()});l({events:p(c_),cursor:d().int().nonnegative(),hasMore:I()});l({httpUrl:i().min(1),realtimeUrl:i().min(1),region:i().min(1),token:i().min(1),expiresAt:i().min(1),communityId:i().min(1),userId:i().min(1),channel:i().min(1)});l({membership:qU,channels:p(db)});l({channels:p(db)});var Rc=i().trim().min(1).max(500),BU=i().regex(/^[a-f0-9]{64}$/),em=l({id:Rc,revision:d().int().positive(),contentHash:BU}).strict(),FU=l({schemaVersion:b("openpond.hostedTasksetSummary.v1"),id:Rc,teamId:Rc,release:em,name:i().min(1).max(500),description:i().max(2e4),taskCount:d().int().nonnegative(),buildIntent:i().min(1).max(100),methodHint:i().min(1).max(100).nullable(),packageBytes:d().int().nonnegative().nullable(),storedBytes:d().int().nonnegative().nullable(),createdAt:i().datetime({offset:!0})}).strict();l({afterId:i().trim().min(1).max(2e3).optional(),limit:d().int().min(1).max(100).default(30),modelProjectId:Rc.optional(),projectId:Rc.optional(),search:i().trim().max(100).optional(),sort:v(["id","name","updated"]).default("id")}).strict();l({items:p(FU).max(100),nextCursor:i().trim().min(1).max(2e3).nullable()}).strict();l({code:i().min(1),message:i().min(1)}).strict();const VU=l({candidateId:i().min(1).max(240),frozenRevision:d().int().positive(),frozenHash:i().regex(/^[a-f0-9]{64}$/),harnessRelease:W,protectedClosureHash:i().regex(/^[a-f0-9]{64}$/)}).strict(),IS=i().trim().min(1).max(240),KU=i().trim().min(1).max(1e3).refine(e=>!/[\\:\0]/.test(e)&&e.split("/").every(t=>t&&t!=="."&&t!==".."&&!t.startsWith(".env")),"Metric modules must use a safe relative path."),id=l({schemaVersion:b("openpond.tasksetMetricPolicy.v1"),primaryMetric:IS,aggregation:v(["mean_score","pass_rate","weighted_mean","custom"]),missingReward:v(["zero","exclude"]),taskWeights:le(IS,d().positive().max(1e6)).optional(),customAggregator:l({module:KU,exportName:i().trim().regex(/^[A-Za-z_$][A-Za-z0-9_$]*$/),contentHash:D,timeoutMs:d().int().positive().max(3e5),networkPolicy:b("none")}).strict().nullable()}).strict().superRefine((e,t)=>{e.aggregation==="custom"!=(e.customAggregator!==null)&&t.addIssue({code:"custom",path:["customAggregator"],message:"Only custom aggregation requires a content-hashed module."}),(e.aggregation==="weighted_mean"?!e.taskWeights||!Object.keys(e.taskWeights).length:e.taskWeights!==void 0)&&t.addIssue({code:"custom",path:["taskWeights"],message:"Only weighted means require explicit positive task weights."})}),WU=l({schemaVersion:b("openpond.tasksetMetricResult.v1"),runManifest:W,tasksetRelease:W,policy:id,policyHash:D,receiptRefs:p(W).min(1).max(1e6),includedCount:d().int().nonnegative(),missingRewardCount:d().int().nonnegative(),excludedCount:d().int().nonnegative(),value:d().min(0).max(1).nullable()}).strict(),ub=WU.extend({contentHash:D}).strict(),Xt=T,No=D,d_=l({id:Xt,revision:d().int().positive(),contentHash:No}).strict(),mb=l({kind:b("owner_attested_local"),ownerActorId:Xt,teamId:Xt,executionHash:No,configurationHash:No,retainedAttemptHash:No,traceHash:No,publicationCutoffHash:No}).strict(),GU=mb.omit({publicationCutoffHash:!0,kind:!0}).extend({kind:b("native_local")}).strict(),JU=l({origin:mb,executionId:Xt,receiptId:Xt,taskId:Xt,targetId:Xt,familyKey:Xt,split:v(["train","validation","test","frozen_eval"]),input:le(i(),ce()),policyVisibleContext:le(i(),ce()),output:i().nullable(),error:i().nullable(),events:p(le(i(),ce())).max(1e3),coverage:l({sourceEventCount:d().int().nonnegative().max(2e4),publishedEventCount:d().int().nonnegative().max(1e3),traceLimited:I(),artifactsIncluded:b(!1)}).strict()}).strict().superRefine((e,t)=>{(e.events.length!==e.coverage.publishedEventCount||e.coverage.sourceEventCount<e.events.length||e.coverage.traceLimited!==e.coverage.sourceEventCount>e.events.length)&&t.addIssue({code:"custom",message:"Publication coverage must describe its actual retained event population."}),dt(e.events)!==e.origin.publicationCutoffHash&&t.addIssue({code:"custom",message:"Published trace cutoff changed."})}),ZU=l({schemaVersion:b("openpond.humanLocalEvidenceExport.v1"),actorId:Xt,scope:Xt,projectId:Xt,dataset:d_,graderId:Xt,compiledGraderHash:No,attempts:p(JU).min(1).max(2),sealedAt:ye}).strict().superRefine((e,t)=>{e.attempts.some(n=>n.origin.ownerActorId!==e.actorId||n.origin.teamId!==e.scope)&&t.addIssue({code:"custom",message:"Local publication belongs to another actor/workspace."})}),YU=ZU.safeExtend({contentHash:No}).strict().superRefine((e,t)=>{const{contentHash:n,...a}=e;dt(a)!==n&&t.addIssue({code:"custom",message:"Local evidence export bytes changed."})}),u_=l({endpoint:b("export_local"),scope:Xt,projectId:Xt,graderId:Xt,selections:p(l({executionId:Xt,receiptId:Xt}).strict()).min(1).max(2)}).strict(),QU=l({endpoint:b("publish_local"),scope:Xt,projectId:Xt,operationId:Xt,audience:p(Xt).max(100),workspaceVisible:I(),evidence:YU}).strict(),XU=u_.omit({endpoint:!0}).extend({endpoint:b("share_local"),operationId:Xt,audience:p(Xt).max(100),workspaceVisible:I()}).strict(),ez=l({endpoint:b("local_publications"),scope:Xt,executionId:Xt}).strict(),tz=l({endpoint:b("revoke_local"),scope:Xt,publication:d_}).strict();var m_=(e,t)=>()=>{try{return t||e((t={exports:{}}).exports,t),t.exports}catch(n){throw t=0,n}},nz=m_((e,t)=>{"use strict";t.exports=function n(a,o){if(a===o)return!0;if(a&&o&&typeof a=="object"&&typeof o=="object"){if(a.constructor!==o.constructor)return!1;var r,s,c;if(Array.isArray(a)){if(r=a.length,r!=o.length)return!1;for(s=r;s--!==0;)if(!n(a[s],o[s]))return!1;return!0}if(a.constructor===RegExp)return a.source===o.source&&a.flags===o.flags;if(a.valueOf!==Object.prototype.valueOf)return a.valueOf()===o.valueOf();if(a.toString!==Object.prototype.toString)return a.toString()===o.toString();if(c=Object.keys(a),r=c.length,r!==Object.keys(o).length)return!1;for(s=r;s--!==0;)if(!Object.prototype.hasOwnProperty.call(o,c[s]))return!1;for(s=r;s--!==0;){var m=c[s];if(!n(a[m],o[m]))return!1}return!0}return a!==a&&o!==o}}),az=m_(e=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0});var t=nz();t.code='require("ajv/dist/runtime/equal").default',e.default=t}),_S=zt,CS={type:["object","boolean"],properties:{$schema:{const:"https://json-schema.org/draft/2020-12/schema"},$ref:{type:"string"},$comment:{type:"string"},$defs:{$ref:"#/$defs/schemaMap"},properties:{$ref:"#/$defs/schemaMap"},dependentSchemas:{$ref:"#/$defs/schemaMap"},allOf:{$ref:"#/$defs/schemaArray"},anyOf:{$ref:"#/$defs/schemaArray"},oneOf:{$ref:"#/$defs/schemaArray"},prefixItems:{$ref:"#/$defs/schemaArray"},items:{$ref:"#"},additionalProperties:{$ref:"#"},not:{$ref:"#"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},contains:{$ref:"#"},unevaluatedProperties:{$ref:"#"},unevaluatedItems:{$ref:"#"},propertyNames:{$ref:"#"},type:{anyOf:[{$ref:"#/$defs/schemaType"},{type:"array",items:{$ref:"#/$defs/schemaType"},minItems:1,uniqueItems:!0}]},enum:{type:"array",minItems:1},const:!0,default:!0,title:{type:"string"},description:{type:"string"},examples:{type:"array"},readOnly:{type:"boolean"},writeOnly:{type:"boolean"},deprecated:{type:"boolean"},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/$defs/natural"},minLength:{$ref:"#/$defs/natural"},maxItems:{$ref:"#/$defs/natural"},minItems:{$ref:"#/$defs/natural"},maxContains:{$ref:"#/$defs/natural"},minContains:{$ref:"#/$defs/natural"},maxProperties:{$ref:"#/$defs/natural"},minProperties:{$ref:"#/$defs/natural"},uniqueItems:{type:"boolean"},required:{$ref:"#/$defs/stringArray"},dependentRequired:{type:"object",additionalProperties:{$ref:"#/$defs/stringArray"}},contentEncoding:{type:"string"},contentMediaType:{type:"string"}}},iz=Object.prototype.hasOwnProperty,oz=az().default,Rt={validate:zt};function Pa(e,{instancePath:t="",parentData:n,parentDataProperty:a,rootData:o=e,dynamicAnchors:r={}}={}){let s=null,c=0,m=Pa.evaluated;if(m.dynamicProps&&(m.props=void 0),m.dynamicItems&&(m.items=void 0),c===0)if(e&&typeof e=="object"&&!Array.isArray(e))for(let f in e){let h=c;Rt.validate(e[f],{instancePath:t+"/"+f.replace(/~/g,"~0").replace(/\//g,"~1"),parentData:e,parentDataProperty:f,rootData:o,dynamicAnchors:r})||(s=s===null?Rt.validate.errors:s.concat(Rt.validate.errors),c=s.length);var u=h===c;if(!u)break}else return Pa.errors=[{instancePath:t,schemaPath:"#/type",keyword:"type",params:{type:"object"}}],!1;return Pa.errors=s,c===0}Pa.evaluated={props:!0,dynamicProps:!1,dynamicItems:!1};function qn(e,{instancePath:t="",parentData:n,parentDataProperty:a,rootData:o=e,dynamicAnchors:r={}}={}){let s=null,c=0,m=qn.evaluated;if(m.dynamicProps&&(m.props=void 0),m.dynamicItems&&(m.items=void 0),c===0)if(Array.isArray(e)){if(e.length>32)return qn.errors=[{instancePath:t,schemaPath:"#/maxItems",keyword:"maxItems",params:{limit:32}}],!1;if(e.length<1)return qn.errors=[{instancePath:t,schemaPath:"#/minItems",keyword:"minItems",params:{limit:1}}],!1;{var u=!0;let f=e.length;for(let h=0;h<f;h++){let x=c;Rt.validate(e[h],{instancePath:t+"/"+h,parentData:e,parentDataProperty:h,rootData:o,dynamicAnchors:r})||(s=s===null?Rt.validate.errors:s.concat(Rt.validate.errors),c=s.length);var u=x===c;if(!u)break}}}else return qn.errors=[{instancePath:t,schemaPath:"#/type",keyword:"type",params:{type:"array"}}],!1;return qn.errors=s,c===0}qn.evaluated={items:!0,dynamicProps:!1,dynamicItems:!1};var rz={enum:["array","boolean","integer","null","number","object","string"]};function Ei(e,{instancePath:t="",parentData:n,parentDataProperty:a,rootData:o=e,dynamicAnchors:r={}}={}){let s=null,c=0,m=Ei.evaluated;return m.dynamicProps&&(m.props=void 0),m.dynamicItems&&(m.items=void 0),e==="array"||e==="boolean"||e==="integer"||e==="null"||e==="number"||e==="object"||e==="string"?(Ei.errors=s,c===0):(Ei.errors=[{instancePath:t,schemaPath:"#/enum",keyword:"enum",params:{allowedValues:rz.enum}}],!1)}Ei.evaluated={dynamicProps:!1,dynamicItems:!1};function Bt(e,{instancePath:t="",parentData:n,parentDataProperty:a,rootData:o=e,dynamicAnchors:r={}}={}){let s=null,c=0,m=Bt.evaluated;return m.dynamicProps&&(m.props=void 0),m.dynamicItems&&(m.items=void 0),typeof e=="number"&&!(e%1)&&!isNaN(e)&&isFinite(e)?typeof e=="number"&&isFinite(e)&&(e<0||isNaN(e))?(Bt.errors=[{instancePath:t,schemaPath:"#/minimum",keyword:"minimum",params:{comparison:">=",limit:0}}],!1):(Bt.errors=s,c===0):(Bt.errors=[{instancePath:t,schemaPath:"#/type",keyword:"type",params:{type:"integer"}}],!1)}Bt.evaluated={dynamicProps:!1,dynamicItems:!1};function qa(e,{instancePath:t="",parentData:n,parentDataProperty:a,rootData:o=e,dynamicAnchors:r={}}={}){let s=null,c=0,m=qa.evaluated;if(m.dynamicProps&&(m.props=void 0),m.dynamicItems&&(m.items=void 0),c===0)if(Array.isArray(e)){var u=!0;let f=e.length;for(let h=0;h<f;h++){let x=c;if(typeof e[h]!="string")return qa.errors=[{instancePath:t+"/"+h,schemaPath:"#/items/type",keyword:"type",params:{type:"string"}}],!1;var u=x===c;if(!u)break}if(u){let h=e.length,x;if(h>1){let k={};for(;h--;){let _=e[h];if(typeof _=="string"){if(typeof k[_]=="number")return x=k[_],qa.errors=[{instancePath:t,schemaPath:"#/uniqueItems",keyword:"uniqueItems",params:{i:h,j:x}}],!1;k[_]=h}}}}}else return qa.errors=[{instancePath:t,schemaPath:"#/type",keyword:"type",params:{type:"array"}}],!1;return qa.errors=s,c===0}qa.evaluated={items:!0,dynamicProps:!1,dynamicItems:!1};function zt(e,{instancePath:t="",parentData:n,parentDataProperty:a,rootData:o=e,dynamicAnchors:r={}}={}){let s=null,c=0,m=zt.evaluated;if(m.dynamicProps&&(m.props=void 0),m.dynamicItems&&(m.items=void 0),!(e&&typeof e=="object"&&!Array.isArray(e))&&typeof e!="boolean")return zt.errors=[{instancePath:t,schemaPath:"#/type",keyword:"type",params:{type:CS.type}}],!1;if(c===0&&e&&typeof e=="object"&&!Array.isArray(e)){let k=c;for(let _ in e)if(!iz.call(CS.properties,_))return zt.errors=[{instancePath:t,schemaPath:"#/additionalProperties",keyword:"additionalProperties",params:{additionalProperty:_}}],!1;if(k===c){if(e.$schema!==void 0){let _=c;if(e.$schema!=="https://json-schema.org/draft/2020-12/schema")return zt.errors=[{instancePath:t+"/$schema",schemaPath:"#/properties/%24schema/const",keyword:"const",params:{allowedValue:"https://json-schema.org/draft/2020-12/schema"}}],!1;var u=_===c}else var u=!0;if(u){if(e.$ref!==void 0){let P=c;if(typeof e.$ref!="string")return zt.errors=[{instancePath:t+"/$ref",schemaPath:"#/properties/%24ref/type",keyword:"type",params:{type:"string"}}],!1;var u=P===c}else var u=!0;if(u){if(e.$comment!==void 0){let E=c;if(typeof e.$comment!="string")return zt.errors=[{instancePath:t+"/$comment",schemaPath:"#/properties/%24comment/type",keyword:"type",params:{type:"string"}}],!1;var u=E===c}else var u=!0;if(u){if(e.$defs!==void 0){let A=c;Pa(e.$defs,{instancePath:t+"/$defs",parentData:e,parentDataProperty:"$defs",rootData:o,dynamicAnchors:r})||(s=s===null?Pa.errors:s.concat(Pa.errors),c=s.length);var u=A===c}else var u=!0;if(u){if(e.properties!==void 0){let $=c;Pa(e.properties,{instancePath:t+"/properties",parentData:e,parentDataProperty:"properties",rootData:o,dynamicAnchors:r})||(s=s===null?Pa.errors:s.concat(Pa.errors),c=s.length);var u=$===c}else var u=!0;if(u){if(e.dependentSchemas!==void 0){let j=c;Pa(e.dependentSchemas,{instancePath:t+"/dependentSchemas",parentData:e,parentDataProperty:"dependentSchemas",rootData:o,dynamicAnchors:r})||(s=s===null?Pa.errors:s.concat(Pa.errors),c=s.length);var u=j===c}else var u=!0;if(u){if(e.allOf!==void 0){let M=c;qn(e.allOf,{instancePath:t+"/allOf",parentData:e,parentDataProperty:"allOf",rootData:o,dynamicAnchors:r})||(s=s===null?qn.errors:s.concat(qn.errors),c=s.length);var u=M===c}else var u=!0;if(u){if(e.anyOf!==void 0){let w=c;qn(e.anyOf,{instancePath:t+"/anyOf",parentData:e,parentDataProperty:"anyOf",rootData:o,dynamicAnchors:r})||(s=s===null?qn.errors:s.concat(qn.errors),c=s.length);var u=w===c}else var u=!0;if(u){if(e.oneOf!==void 0){let R=c;qn(e.oneOf,{instancePath:t+"/oneOf",parentData:e,parentDataProperty:"oneOf",rootData:o,dynamicAnchors:r})||(s=s===null?qn.errors:s.concat(qn.errors),c=s.length);var u=R===c}else var u=!0;if(u){if(e.prefixItems!==void 0){let O=c;qn(e.prefixItems,{instancePath:t+"/prefixItems",parentData:e,parentDataProperty:"prefixItems",rootData:o,dynamicAnchors:r})||(s=s===null?qn.errors:s.concat(qn.errors),c=s.length);var u=O===c}else var u=!0;if(u){if(e.items!==void 0){let N=c;Rt.validate(e.items,{instancePath:t+"/items",parentData:e,parentDataProperty:"items",rootData:o,dynamicAnchors:r})||(s=s===null?Rt.validate.errors:s.concat(Rt.validate.errors),c=s.length);var u=N===c}else var u=!0;if(u){if(e.additionalProperties!==void 0){let F=c;Rt.validate(e.additionalProperties,{instancePath:t+"/additionalProperties",parentData:e,parentDataProperty:"additionalProperties",rootData:o,dynamicAnchors:r})||(s=s===null?Rt.validate.errors:s.concat(Rt.validate.errors),c=s.length);var u=F===c}else var u=!0;if(u){if(e.not!==void 0){let L=c;Rt.validate(e.not,{instancePath:t+"/not",parentData:e,parentDataProperty:"not",rootData:o,dynamicAnchors:r})||(s=s===null?Rt.validate.errors:s.concat(Rt.validate.errors),c=s.length);var u=L===c}else var u=!0;if(u){if(e.if!==void 0){let Y=c;Rt.validate(e.if,{instancePath:t+"/if",parentData:e,parentDataProperty:"if",rootData:o,dynamicAnchors:r})||(s=s===null?Rt.validate.errors:s.concat(Rt.validate.errors),c=s.length);var u=Y===c}else var u=!0;if(u){if(e.then!==void 0){let re=c;Rt.validate(e.then,{instancePath:t+"/then",parentData:e,parentDataProperty:"then",rootData:o,dynamicAnchors:r})||(s=s===null?Rt.validate.errors:s.concat(Rt.validate.errors),c=s.length);var u=re===c}else var u=!0;if(u){if(e.else!==void 0){let ve=c;Rt.validate(e.else,{instancePath:t+"/else",parentData:e,parentDataProperty:"else",rootData:o,dynamicAnchors:r})||(s=s===null?Rt.validate.errors:s.concat(Rt.validate.errors),c=s.length);var u=ve===c}else var u=!0;if(u){if(e.contains!==void 0){let oe=c;Rt.validate(e.contains,{instancePath:t+"/contains",parentData:e,parentDataProperty:"contains",rootData:o,dynamicAnchors:r})||(s=s===null?Rt.validate.errors:s.concat(Rt.validate.errors),c=s.length);var u=oe===c}else var u=!0;if(u){if(e.unevaluatedProperties!==void 0){let K=c;Rt.validate(e.unevaluatedProperties,{instancePath:t+"/unevaluatedProperties",parentData:e,parentDataProperty:"unevaluatedProperties",rootData:o,dynamicAnchors:r})||(s=s===null?Rt.validate.errors:s.concat(Rt.validate.errors),c=s.length);var u=K===c}else var u=!0;if(u){if(e.unevaluatedItems!==void 0){let H=c;Rt.validate(e.unevaluatedItems,{instancePath:t+"/unevaluatedItems",parentData:e,parentDataProperty:"unevaluatedItems",rootData:o,dynamicAnchors:r})||(s=s===null?Rt.validate.errors:s.concat(Rt.validate.errors),c=s.length);var u=H===c}else var u=!0;if(u){if(e.propertyNames!==void 0){let de=c;Rt.validate(e.propertyNames,{instancePath:t+"/propertyNames",parentData:e,parentDataProperty:"propertyNames",rootData:o,dynamicAnchors:r})||(s=s===null?Rt.validate.errors:s.concat(Rt.validate.errors),c=s.length);var u=de===c}else var u=!0;if(u){if(e.type!==void 0){let X=e.type,Z=c,pe=c,ee=!1,me=c;Ei(X,{instancePath:t+"/type",parentData:e,parentDataProperty:"type",rootData:o,dynamicAnchors:r})||(s=s===null?Ei.errors:s.concat(Ei.errors),c=s.length);var h=me===c;ee=ee||h;let be=c;if(c===be)if(Array.isArray(X))if(X.length<1){let ke={instancePath:t+"/type",schemaPath:"#/properties/type/anyOf/1/minItems",keyword:"minItems",params:{limit:1}};s===null?s=[ke]:s.push(ke),c++}else{var f=!0;let ke=X.length;for(let ue=0;ue<ke;ue++){let Ie=c;Ei(X[ue],{instancePath:t+"/type/"+ue,parentData:X,parentDataProperty:ue,rootData:o,dynamicAnchors:r})||(s=s===null?Ei.errors:s.concat(Ei.errors),c=s.length);var f=Ie===c;if(!f)break}if(f){let ue=X.length,Ie;if(ue>1){e:for(;ue--;)for(Ie=ue;Ie--;)if(oz(X[ue],X[Ie])){let Le={instancePath:t+"/type",schemaPath:"#/properties/type/anyOf/1/uniqueItems",keyword:"uniqueItems",params:{i:ue,j:Ie}};s===null?s=[Le]:s.push(Le),c++;break e}}}}else{let ke={instancePath:t+"/type",schemaPath:"#/properties/type/anyOf/1/type",keyword:"type",params:{type:"array"}};s===null?s=[ke]:s.push(ke),c++}var h=be===c;if(ee=ee||h,ee)c=pe,s!==null&&(pe?s.length=pe:s=null);else{let ke={instancePath:t+"/type",schemaPath:"#/properties/type/anyOf",keyword:"anyOf",params:{}};return s===null?s=[ke]:s.push(ke),c++,zt.errors=s,!1}var u=Z===c}else var u=!0;if(u){if(e.enum!==void 0){let Z=e.enum,pe=c;if(c===pe)if(Array.isArray(Z)){if(Z.length<1)return zt.errors=[{instancePath:t+"/enum",schemaPath:"#/properties/enum/minItems",keyword:"minItems",params:{limit:1}}],!1}else return zt.errors=[{instancePath:t+"/enum",schemaPath:"#/properties/enum/type",keyword:"type",params:{type:"array"}}],!1;var u=pe===c}else var u=!0;if(u){if(e.title!==void 0){let pe=c;if(typeof e.title!="string")return zt.errors=[{instancePath:t+"/title",schemaPath:"#/properties/title/type",keyword:"type",params:{type:"string"}}],!1;var u=pe===c}else var u=!0;if(u){if(e.description!==void 0){let ee=c;if(typeof e.description!="string")return zt.errors=[{instancePath:t+"/description",schemaPath:"#/properties/description/type",keyword:"type",params:{type:"string"}}],!1;var u=ee===c}else var u=!0;if(u){if(e.examples!==void 0){let me=c;if(!Array.isArray(e.examples))return zt.errors=[{instancePath:t+"/examples",schemaPath:"#/properties/examples/type",keyword:"type",params:{type:"array"}}],!1;var u=me===c}else var u=!0;if(u){if(e.readOnly!==void 0){let be=c;if(typeof e.readOnly!="boolean")return zt.errors=[{instancePath:t+"/readOnly",schemaPath:"#/properties/readOnly/type",keyword:"type",params:{type:"boolean"}}],!1;var u=be===c}else var u=!0;if(u){if(e.writeOnly!==void 0){let Me=c;if(typeof e.writeOnly!="boolean")return zt.errors=[{instancePath:t+"/writeOnly",schemaPath:"#/properties/writeOnly/type",keyword:"type",params:{type:"boolean"}}],!1;var u=Me===c}else var u=!0;if(u){if(e.deprecated!==void 0){let ke=c;if(typeof e.deprecated!="boolean")return zt.errors=[{instancePath:t+"/deprecated",schemaPath:"#/properties/deprecated/type",keyword:"type",params:{type:"boolean"}}],!1;var u=ke===c}else var u=!0;if(u){if(e.multipleOf!==void 0){let ue=e.multipleOf,Ie=c;if(c===Ie)if(typeof ue=="number"&&isFinite(ue)){if(ue<=0||isNaN(ue))return zt.errors=[{instancePath:t+"/multipleOf",schemaPath:"#/properties/multipleOf/exclusiveMinimum",keyword:"exclusiveMinimum",params:{comparison:">",limit:0}}],!1}else return zt.errors=[{instancePath:t+"/multipleOf",schemaPath:"#/properties/multipleOf/type",keyword:"type",params:{type:"number"}}],!1;var u=Ie===c}else var u=!0;if(u){if(e.maximum!==void 0){let Ie=e.maximum,Le=c;if(!(typeof Ie=="number"&&isFinite(Ie)))return zt.errors=[{instancePath:t+"/maximum",schemaPath:"#/properties/maximum/type",keyword:"type",params:{type:"number"}}],!1;var u=Le===c}else var u=!0;if(u){if(e.exclusiveMaximum!==void 0){let Le=e.exclusiveMaximum,Fe=c;if(!(typeof Le=="number"&&isFinite(Le)))return zt.errors=[{instancePath:t+"/exclusiveMaximum",schemaPath:"#/properties/exclusiveMaximum/type",keyword:"type",params:{type:"number"}}],!1;var u=Fe===c}else var u=!0;if(u){if(e.minimum!==void 0){let Fe=e.minimum,Xe=c;if(!(typeof Fe=="number"&&isFinite(Fe)))return zt.errors=[{instancePath:t+"/minimum",schemaPath:"#/properties/minimum/type",keyword:"type",params:{type:"number"}}],!1;var u=Xe===c}else var u=!0;if(u){if(e.exclusiveMinimum!==void 0){let Xe=e.exclusiveMinimum,Ze=c;if(!(typeof Xe=="number"&&isFinite(Xe)))return zt.errors=[{instancePath:t+"/exclusiveMinimum",schemaPath:"#/properties/exclusiveMinimum/type",keyword:"type",params:{type:"number"}}],!1;var u=Ze===c}else var u=!0;if(u){if(e.maxLength!==void 0){let Ze=c;Bt(e.maxLength,{instancePath:t+"/maxLength",parentData:e,parentDataProperty:"maxLength",rootData:o,dynamicAnchors:r})||(s=s===null?Bt.errors:s.concat(Bt.errors),c=s.length);var u=Ze===c}else var u=!0;if(u){if(e.minLength!==void 0){let Be=c;Bt(e.minLength,{instancePath:t+"/minLength",parentData:e,parentDataProperty:"minLength",rootData:o,dynamicAnchors:r})||(s=s===null?Bt.errors:s.concat(Bt.errors),c=s.length);var u=Be===c}else var u=!0;if(u){if(e.maxItems!==void 0){let Ge=c;Bt(e.maxItems,{instancePath:t+"/maxItems",parentData:e,parentDataProperty:"maxItems",rootData:o,dynamicAnchors:r})||(s=s===null?Bt.errors:s.concat(Bt.errors),c=s.length);var u=Ge===c}else var u=!0;if(u){if(e.minItems!==void 0){let Ve=c;Bt(e.minItems,{instancePath:t+"/minItems",parentData:e,parentDataProperty:"minItems",rootData:o,dynamicAnchors:r})||(s=s===null?Bt.errors:s.concat(Bt.errors),c=s.length);var u=Ve===c}else var u=!0;if(u){if(e.maxContains!==void 0){let U=c;Bt(e.maxContains,{instancePath:t+"/maxContains",parentData:e,parentDataProperty:"maxContains",rootData:o,dynamicAnchors:r})||(s=s===null?Bt.errors:s.concat(Bt.errors),c=s.length);var u=U===c}else var u=!0;if(u){if(e.minContains!==void 0){let J=c;Bt(e.minContains,{instancePath:t+"/minContains",parentData:e,parentDataProperty:"minContains",rootData:o,dynamicAnchors:r})||(s=s===null?Bt.errors:s.concat(Bt.errors),c=s.length);var u=J===c}else var u=!0;if(u){if(e.maxProperties!==void 0){let q=c;Bt(e.maxProperties,{instancePath:t+"/maxProperties",parentData:e,parentDataProperty:"maxProperties",rootData:o,dynamicAnchors:r})||(s=s===null?Bt.errors:s.concat(Bt.errors),c=s.length);var u=q===c}else var u=!0;if(u){if(e.minProperties!==void 0){let ie=c;Bt(e.minProperties,{instancePath:t+"/minProperties",parentData:e,parentDataProperty:"minProperties",rootData:o,dynamicAnchors:r})||(s=s===null?Bt.errors:s.concat(Bt.errors),c=s.length);var u=ie===c}else var u=!0;if(u){if(e.uniqueItems!==void 0){let he=c;if(typeof e.uniqueItems!="boolean")return zt.errors=[{instancePath:t+"/uniqueItems",schemaPath:"#/properties/uniqueItems/type",keyword:"type",params:{type:"boolean"}}],!1;var u=he===c}else var u=!0;if(u){if(e.required!==void 0){let Pe=c;qa(e.required,{instancePath:t+"/required",parentData:e,parentDataProperty:"required",rootData:o,dynamicAnchors:r})||(s=s===null?qa.errors:s.concat(qa.errors),c=s.length);var u=Pe===c}else var u=!0;if(u){if(e.dependentRequired!==void 0){let qe=e.dependentRequired,Je=c;if(c===Je)if(qe&&typeof qe=="object"&&!Array.isArray(qe))for(let ut in qe){let _t=c;qa(qe[ut],{instancePath:t+"/dependentRequired/"+ut.replace(/~/g,"~0").replace(/\//g,"~1"),parentData:qe,parentDataProperty:ut,rootData:o,dynamicAnchors:r})||(s=s===null?qa.errors:s.concat(qa.errors),c=s.length);var x=_t===c;if(!x)break}else return zt.errors=[{instancePath:t+"/dependentRequired",schemaPath:"#/properties/dependentRequired/type",keyword:"type",params:{type:"object"}}],!1;var u=Je===c}else var u=!0;if(u){if(e.contentEncoding!==void 0){let Je=c;if(typeof e.contentEncoding!="string")return zt.errors=[{instancePath:t+"/contentEncoding",schemaPath:"#/properties/contentEncoding/type",keyword:"type",params:{type:"string"}}],!1;var u=Je===c}else var u=!0;if(u)if(e.contentMediaType!==void 0){let Je=c;if(typeof e.contentMediaType!="string")return zt.errors=[{instancePath:t+"/contentMediaType",schemaPath:"#/properties/contentMediaType/type",keyword:"type",params:{type:"string"}}],!1;var u=Je===c}else var u=!0}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}return zt.errors=s,c===0}zt.evaluated={props:!0,dynamicProps:!1,dynamicItems:!1};const RS="https://json-schema.org/draft/2020-12/schema",sz=1048576,lz=32768,cz=new Set(["properties","$defs","dependentSchemas"]),dz=new Set(["allOf","anyOf","oneOf","prefixItems"]),uz=new Set(["items","additionalProperties","not","if","then","else","contains","unevaluatedProperties","unevaluatedItems","propertyNames"]);function Qa(e,t=sz){const n=[{value:e,depth:0}],a=new Set;let o=0;for(;n.length;){const r=n.pop();if(r.exit){a.delete(r.value);continue}if(++o>1e5||r.depth>48)throw new Error("task_json_complexity_exceeded");if(r.value===null||typeof r.value=="string"||typeof r.value=="boolean"||typeof r.value=="number"&&Number.isFinite(r.value))continue;if(typeof r.value!="object")throw new Error("task_json_value_invalid");if(a.has(r.value))throw new Error("task_json_cycle");a.add(r.value),n.push({...r,exit:!0});const s=Object.getPrototypeOf(r.value);if(!Array.isArray(r.value)&&s!==Object.prototype&&s!==null)throw new Error("task_json_object_invalid");if(Object.getOwnPropertySymbols(r.value).length)throw new Error("task_json_symbol_invalid");if(Object.hasOwn(r.value,"toJSON"))throw new Error("task_json_serializer_invalid");if(Array.isArray(r.value)&&(r.value.length>1e4||Object.keys(r.value).length!==r.value.length))throw new Error("task_json_array_invalid");for(const[c,m]of Object.entries(Object.getOwnPropertyDescriptors(r.value))){if(m.get||m.set)throw new Error("task_json_accessor_invalid");if(Array.isArray(r.value)&&c!=="length"&&(!/^(0|[1-9]\d*)$/u.test(c)||Number(c)>=r.value.length))throw new Error("task_json_array_invalid");m.enumerable&&n.push({value:m.value,depth:r.depth+1})}}if(new TextEncoder().encode(JSON.stringify(e)).byteLength>t)throw new Error("task_json_size_exceeded")}function pb(e){try{return mz(e),{valid:!0,issues:[]}}catch(t){return{valid:!1,issues:[{path:"",code:"task_schema_invalid",message:t instanceof Error?t.message:"Task schema is invalid."}]}}}function mz(e){if(Qa(e,lz),tc(e,e,new Set,0,{remaining:2048}),!_S(e)){const t=_S.errors?.[0];throw new Error(`Task schema ${t?.instancePath||"/"} violates ${t?.keyword??"schema"}.`)}}function tc(e,t,n,a,o){if(--o.remaining<0)throw new Error("Task schema reference expansion exceeds the validation budget.");if(typeof e=="boolean")return;if(!e||typeof e!="object"||Array.isArray(e))throw new Error("A task schema must be an object or boolean.");if(a>24||n.has(e))throw new Error("Recursive or deeply nested task schemas are not supported.");const r=new Set(n).add(e),s=e;if(s.$schema!==void 0&&s.$schema!==RS)throw new Error(`Task schemas must use ${RS}.`);for(const[c,m]of Object.entries(s))if(c==="$ref"){if(typeof m!="string"||!m.startsWith("#/$defs/"))throw new Error("Task schema references must be local JSON pointers into $defs.");let u=t;for(const f of m.slice(2).split("/")){if(/~(?![01])/u.test(f))throw new Error("Invalid task schema JSON pointer.");const h=f.replaceAll("~1","/").replaceAll("~0","~");if(!u||typeof u!="object"||!Object.hasOwn(u,h))throw new Error(`Task schema reference ${m} is missing.`);u=u[h]}tc(u,t,r,a+1,o)}else if(cz.has(c)){if(!m||typeof m!="object"||Array.isArray(m))throw new Error(`Invalid schema map ${c}.`);for(const u of Object.values(m))tc(u,t,r,a+1,o)}else if(dz.has(c)){if(!Array.isArray(m)||m.length>32)throw new Error(`Schema ${c} must contain at most 32 alternatives.`);for(const u of m)tc(u,t,r,a+1,o)}else uz.has(c)&&tc(m,t,r,a+1,o)}const p_=l({taskId:T,input:le(i(),ce()),policyVisibleContext:le(i(),ce()),expectedOutput:le(i(),ce()).nullable().optional(),tags:p(T).max(100).optional()}).strict(),Js=l({schemaVersion:b("openpond.humanTaskProposal.v1"),tasks:p(p_).min(1).max(1e3),contentHash:D}).strict().superRefine((e,t)=>{const{contentHash:n,...a}=e;n!==dt(a)&&t.addIssue({code:"custom",message:"Task proposal content hash differs."}),new Set(e.tasks.map(o=>o.taskId)).size!==e.tasks.length&&t.addIssue({code:"custom",message:"Each task may be proposed once."});try{Qa(e,1048576)}catch{t.addIssue({code:"custom",message:"Task proposal exceeds retained data bounds."})}}),PS=l({schemaVersion:b("openpond.humanTaskProposal.v1"),tasks:p(p_).min(1).max(1e3),contentHash:D,referenceRedacted:b(!0).optional()}).strict().superRefine((e,t)=>{e.referenceRedacted?e.tasks.some(n=>n.expectedOutput!==void 0)&&t.addIssue({code:"custom",message:"Redacted proposals cannot include reference outputs."}):Js.safeParse(e).success||t.addIssue({code:"custom",message:"Task proposal integrity differs."})});function lie(e){const t={schemaVersion:"openpond.humanTaskProposal.v1",tasks:e};return Js.parse({...t,contentHash:dt(t)})}const ze=T,_n=l({id:ze,revision:d().int().positive(),contentHash:D}).strict(),pz=ot("kind",[l({id:ze,label:i().trim().min(1).max(500),instructions:i().max(2e4),required:I(),allowAbstain:I(),requireRationale:I().optional(),anchors:p(l({value:vt([d(),i(),I()]),description:i().min(1).max(2e3)}).strict()).max(100).optional(),kind:b("score"),minimum:d().finite(),maximum:d().finite(),step:d().positive().finite()}).strict().refine(e=>e.minimum<e.maximum&&e.step<=e.maximum-e.minimum,"Use an increasing raw score range and a step within that range."),l({id:ze,label:i().trim().min(1).max(500),instructions:i().max(2e4),required:I(),allowAbstain:I(),requireRationale:I().optional(),anchors:p(l({value:vt([d(),i(),I()]),description:i().min(1).max(2e3)}).strict()).max(100).optional(),kind:b("category"),options:p(i().trim().min(1).max(500)).min(2).max(100)}).strict().refine(e=>new Set(e.options).size===e.options.length,"Category options must be unique."),l({id:ze,label:i().trim().min(1).max(500),instructions:i().max(2e4),required:I(),allowAbstain:I(),requireRationale:I().optional(),anchors:p(l({value:vt([d(),i(),I()]),description:i().min(1).max(2e3)}).strict()).max(100).optional(),kind:b("boolean")}).strict(),l({id:ze,label:i().trim().min(1).max(500),instructions:i().max(2e4),required:I(),allowAbstain:I(),requireRationale:I().optional(),anchors:p(l({value:vt([d(),i(),I()]),description:i().min(1).max(2e3)}).strict()).max(100).optional(),kind:b("text"),minimumLength:d().int().nonnegative().max(2e4).optional(),maximumLength:d().int().positive().max(2e4)}).strict(),l({id:ze,label:i().trim().min(1).max(500),instructions:i().max(2e4),required:I(),allowAbstain:I(),requireRationale:I().optional(),anchors:p(l({value:vt([d(),i(),I()]),description:i().min(1).max(2e3)}).strict()).max(100).optional(),kind:b("preference"),requireStrength:I().optional(),allowTie:I()}).strict()]),od=l({schemaVersion:b("openpond.humanForm.v1"),mode:v(["individual","pairwise"]),instructions:i().max(2e4),criteria:p(pz).min(1).max(100)}).strict().superRefine((e,t)=>{e.criteria.forEach((n,a)=>{n.kind==="text"&&(n.minimumLength??0)>n.maximumLength&&t.addIssue({code:"custom",path:["criteria",a,"minimumLength"],message:"Minimum text length must not exceed maximum length."});const o=new Set;n.anchors?.forEach((r,s)=>{const c=r.value,m=n.kind==="score"?typeof c=="number"&&Number.isFinite(c)&&c>=n.minimum&&c<=n.maximum&&Math.abs((c-n.minimum)/n.step-Math.round((c-n.minimum)/n.step))<1e-8:n.kind==="category"?typeof c=="string"&&n.options.includes(c):n.kind==="boolean"?typeof c=="boolean":n.kind==="preference"?["A","B",...n.allowTie?["tie"]:[]].includes(String(c)):typeof c=="string",u=JSON.stringify(c);(!m||o.has(u))&&t.addIssue({code:"custom",path:["criteria",a,"anchors",s,"value"],message:"Each anchor must describe a unique valid raw value."}),o.add(u)})}),new Set(e.criteria.map(n=>n.id)).size!==e.criteria.length&&t.addIssue({code:"custom",path:["criteria"],message:"Criterion IDs must be unique."}),e.mode==="individual"&&e.criteria.some(n=>n.kind==="preference")&&t.addIssue({code:"custom",path:["criteria"],message:"Preferences require an explicit pair."})}),fz=l({localSource:vt([mb,GU]).optional(),recordedSource:l({id:ze,snapshotHash:D,boundaryId:ze,boundaryRevisionHash:D}).strict().optional(),experimentId:ze,attemptId:ze,taskId:ze,targetId:ze,output:_n,trace:_n.nullable(),familyKey:ze,split:v(["train","validation","test","frozen_eval"])}).strict(),fb=l({publication:_n.optional(),dataset:_n,grader:_n,graderBinding:l({id:ze,version:i().min(1).max(100),contentHash:D}).strict(),rubric:_n,attempts:p(fz).max(2),taskIds:p(ze).min(1).max(1e3).optional()}).strict().superRefine((e,t)=>{!e.attempts.length&&!e.taskIds?.length&&t.addIssue({code:"custom",message:"Select retained attempts or exact tasks."}),e.taskIds&&new Set(e.taskIds).size!==e.taskIds.length&&t.addIssue({code:"custom",path:["taskIds"],message:"Select each task once."}),e.attempts.length===2&&(e.attempts[0].attemptId===e.attempts[1].attemptId||e.attempts[0].taskId!==e.attempts[1].taskId||e.attempts[0].familyKey!==e.attempts[1].familyKey||e.attempts[0].split!==e.attempts[1].split)&&t.addIssue({code:"custom",path:["attempts"],message:"A/B review requires distinct attempts of the same task, family and split."})}),Zs=l({criterionId:ze,value:vt([d().finite(),I(),i().max(2e4),cl()]),abstain:I(),note:i().max(2e4),strength:v(["slight","moderate","strong"]).optional()}).strict(),f_=l({approval:v(["none","manager"]),minimumRaters:d().int().min(1).max(100),managerIds:p(ze).max(100),reviewerIds:p(ze).max(100),queueClaim:I(),teamVisible:I(),distinctManager:I().optional(),independentRaters:I().optional(),blindPair:I().optional()}).strict().superRefine((e,t)=>{e.approval==="none"&&e.minimumRaters!==1&&t.addIssue({code:"custom",path:["minimumRaters"],message:"Multi-rater review requires explicit adjudication."})}),h_=l({taskProposal:Js.optional(),id:ze,revision:d().int().positive(),actorId:ze,generation:d().int().positive(),evidenceHash:D,formHash:D,answers:p(Zs).max(100),note:i().max(2e4),submittedAt:ye,supersedes:ze.nullable(),contentHash:D}).strict(),nc=l({taskProposalHash:D.optional(),id:ze,revision:d().int().positive(),actorId:ze,outcome:v(["accept","reject","request_changes"]),submissions:p(l({id:ze,contentHash:D}).strict()).min(1).max(100),answers:p(Zs).max(100),note:i().max(2e4),decidedAt:ye,contentHash:D}).strict(),tm=l({schemaVersion:b("openpond.humanReview.v1"),id:ze,revision:d().int().positive(),scope:ze,projectId:ze,createdBy:ze,kind:v(["author","execute","grade"]),dueAt:ye.optional(),title:i().trim().min(1).max(500),authorPublication:l({proposalHash:D,dataset:_n,operationId:ze,publishedBy:ze,publishedAt:ye}).strict().nullable(),evidence:fb,form:od,policy:f_,status:v(["queued","assigned","in_progress","submitted","returned","accepted","rejected","cancelled"]),assigneeId:ze.nullable(),generation:d().int().positive(),drafts:p(l({taskProposal:Js.optional(),actorId:ze,generation:d().int().positive(),answers:p(Zs).max(100),note:i().max(2e4),updatedAt:ye}).strict()).max(100),submissions:p(h_).max(1e3),decisions:p(nc).max(1e3),audit:p(l({actorId:ze,action:v(["claim","reassign","cancel"]),priorAssigneeId:ze.nullable(),assigneeId:ze.nullable(),generation:d().int().positive(),note:i().max(2e4),occurredAt:ye}).strict()).max(1e3),execution:l({executionId:ze.nullable(),operationId:ze,boundBy:ze,configurationHash:D,generation:d().int().positive(),result:_n.nullable()}).strict().nullable(),createdAt:ye,updatedAt:ye,contentHash:D}).strict(),_i={operationId:ze,id:ze,expectedRevision:d().int().nonnegative()},hz=ot("action",[l({..._i,action:b("create"),projectId:ze,kind:tm.shape.kind,title:tm.shape.title,dueAt:ye.optional(),evidence:fb,form:od,policy:f_,assigneeId:ze.nullable()}).strict(),l({..._i,action:b("claim")}).strict(),l({..._i,action:b("bind_author_publication"),proposalHash:D,dataset:_n}).strict(),l({..._i,action:b("reserve_execution"),generation:d().int().positive(),runOperationId:ze,configurationHash:D}).strict(),l({..._i,action:b("bind_execution"),generation:d().int().positive(),executionId:ze,runOperationId:ze,configurationHash:D}).strict(),l({..._i,action:b("reassign"),assigneeId:ze.nullable(),note:i().trim().min(1).max(2e4)}).strict(),l({..._i,action:b("cancel"),note:i().max(2e4)}).strict(),l({..._i,action:b("save_draft"),taskProposal:Js.optional(),generation:d().int().positive(),answers:p(Zs).max(100),note:i().max(2e4)}).strict(),l({..._i,action:b("submit"),taskProposal:Js.optional(),generation:d().int().positive(),evidenceHash:D,formHash:D,executionResult:_n.optional(),answers:p(Zs).max(100),note:i().max(2e4)}).strict(),l({..._i,action:b("decide"),taskProposalHash:D.optional(),outcome:nc.shape.outcome,submissions:nc.shape.submissions,answers:nc.shape.answers,note:nc.shape.note}).strict()]),gz=ot("endpoint",[l({endpoint:b("command"),scope:ze,command:hz}).strict(),l({endpoint:b("get"),scope:ze,id:ze,revision:d().int().positive().optional()}).strict(),l({endpoint:b("inbox"),scope:ze,projectId:ze.optional(),view:v(["mine","team","approval"]),status:v(["active","history"]),afterId:ze.optional(),limit:d().int().min(1).max(100)}).strict()]),g_=tm.omit({evidence:!0,drafts:!0,submissions:!0}).extend({drafts:p(tm.shape.drafts.element.omit({taskProposal:!0}).extend({taskProposal:PS.optional()})).max(100),submissions:p(h_.omit({taskProposal:!0}).extend({taskProposal:PS.optional()})).max(1e3),evidence:fb.nullable(),evidenceHash:D,formHash:D,permissions:l({owner:I(),manager:I(),reviewer:I(),claim:I()}).strict()}).strict(),vz=l({items:p(g_).max(100),nextCursor:ze.nullable(),actionCount:d().int().nonnegative(),approvalAvailable:I()}).strict(),v_=l({endpoint:b("snapshot"),scope:ze,projectId:ze,graderId:ze,selections:p(l({executionId:ze,receiptId:ze}).strict()).min(1).max(2)}).strict(),bz=l({endpoint:b("snapshot_tasks"),scope:ze,projectId:ze,graderId:ze,dataset:_n,taskIds:p(ze).min(1).max(1e3).optional(),all:b(!0).optional()}).strict().refine(e=>!!e.all!=!!e.taskIds,"Choose an exact selected task list or the server-frozen full Dataset."),yz=l({endpoint:b("inspect"),scope:ze,id:ze,slot:d().int().min(0).max(1).optional(),afterId:i().min(1).max(500).optional()}).strict(),Sz=l({endpoint:b("results"),scope:ze,executionId:ze,selection:p(_n).max(1e4).optional()}).strict(),xz=l({endpoint:b("members"),scope:ze}).strict(),kz=l({endpoint:b("execute"),scope:ze,id:ze,expectedRevision:d().int().positive(),generation:d().int().positive(),operationId:ze,configuration:ce()}).strict(),wz=l({endpoint:b("execution"),scope:ze,id:ze,action:v(["status","result","cancel"])}).strict(),Iz=v_.omit({endpoint:!0}).extend({endpoint:b("publish_evidence"),operationId:ze,audience:p(ze).max(100),workspaceVisible:I()}).strict(),_z=l({endpoint:b("publication_access"),scope:ze,projectId:ze}).strict(),Cz=l({endpoint:b("revoke_publication"),scope:ze,publication:_n}).strict(),Rz=l({endpoint:b("publish_author"),scope:ze,id:ze,expectedRevision:d().int().positive(),operationId:ze,proposalHash:D,workspaceId:ze.optional(),expectedWorkspaceRevision:d().int().positive().optional()}).strict(),Pz=l({endpoint:b("author_tasks"),scope:ze,id:ze,includeReference:b(!0).optional()}).strict(),Az=l({endpoint:b("graders"),scope:ze,projectId:ze,dataset:_n}).strict(),cie=p(l({id:ze,name:i(),version:i(),contentHash:D,mode:v(["individual","pairwise"])}).strict()).max(1e3),Tz=vt([tz,ez,u_,QU,XU,_z,Rz,Pz,Az,Iz,Cz,kz,wz,gz,v_,bz,yz,Sz,xz]),Ez=p(l({origin:b("owner_attested_local").optional(),coverage:l({sourceEventCount:d().int().nonnegative(),publishedEventCount:d().int().nonnegative(),traceLimited:I(),artifactsIncluded:b(!1)}).strict().optional(),reviewId:ze,reviewRevision:d().int().positive(),evidenceHash:D,slot:i(),input:ce(),output:ce(),error:i().nullable(),events:p(le(i(),ce())),eventCount:d().int().nonnegative(),evidenceLimited:I(),nextEventCursor:i().nullable(),slotIndex:d().int().nonnegative(),executionId:ze.optional(),receiptId:ze.optional()}).strict()).max(1e3),Xa=v(["train","validation","test","frozen_eval"]),jz=l({path:i().trim().min(1).max(2e3).refine(Oz),mediaType:i().trim().min(1).max(200),schemaRef:bn.nullable().default(null),maxBytes:d().int().positive().max(25e7).nullable().default(null),metadata:Mn}).strict(),Mz=l({policyVisibleFields:p(T).max(1e3).default([]),privilegedFields:p(T).max(1e3).default([]),hiddenGraderRefs:p(T).max(1e3).default([]),connectedAppScopes:p(T).max(100).default([])}).strict(),b_=l({protocolVersion:b("openpond.environment.v1"),kind:v(["text","agent","work","custom_program"]),entrypoint:i().trim().min(1).max(1e3),stateful:I(),deterministicSeeds:I(),lifecycle:p(v(["create","reset","step","collect","destroy"])).min(5).max(5),networkPolicy:v(["none","declared_read_only","declared_scoped"]),defaultTimeoutMs:d().int().positive().max(36e5)}).strict(),Bm=l({id:T,version:i().trim().min(1).max(100),weight:d().nonnegative().max(1e3).default(1),hardGate:I().default(!1),rewardEligible:I().default(!1),privileged:I().default(!1)}),y_=Bm.extend({kind:v(["content","schema","artifact","runtime_event","state"]),config:le(i(),ce())}).strict(),S_=Bm.extend({kind:b("model_judge"),rubricRef:bn,calibrationStatus:v(["pending","passed","failed"]),model:l({providerId:T,modelId:T,revision:i().trim().min(1).max(500).nullable()}).strict().optional(),temperature:d().min(0).max(2).optional()}).strict(),x_=v(["isolated_javascript","sandbox_process"]),k_=Bm.extend({kind:b("custom_verifier"),runtime:x_.optional(),verifierRef:bn,exportName:i().trim().min(1).max(240).optional(),timeoutMs:d().int().positive().max(3e5),networkPolicy:b("none")}).strict(),w_=Bm.extend({kind:b("human"),rubricRef:bn,reviewerRole:i().trim().min(1).max(500),form:od.optional()}).strict(),I_=vt([y_,S_,k_,w_]),hb=l({id:T,clusterKey:T,split:Xa,input:le(i(),ce()),expectedOutput:le(i(),ce()).nullable(),policyVisibleContext:le(i(),ce()).default({}),privilegedContextRef:T.nullable(),artifactRefs:p(bn).max(1e3).default([]),requiredOutputs:p(jz).max(1e3).optional(),tags:p(T).max(100).default([])}).strict(),__=l({schemaVersion:b("openpond.tasksetRelease.v2"),id:T,revision:d().int().positive(),policy:Mz,environment:b_,environmentRelease:l({id:T,contentHash:D}).strict().optional(),tools:p(Xc).max(200),capabilities:p(Fv).max(200),tasks:p(hb).min(1).max(1e6),graders:p(I_).min(1).max(1e3),verifierSetRelease:l({id:T,contentHash:D}).strict().optional(),metrics:id.optional(),metadata:Mn}).strict(),C_=__.extend({contentHash:D}).strict();function Oz(e){const t=e.replaceAll("\\","/");return!t||t.startsWith("/")||t.includes("\0")?!1:!t.split("/").some(n=>!n||n==="."||n==="..")}const $z=i().min(1).max(2e3).refine(e=>!e.includes("\\")&&!e.includes(":")&&!e.startsWith("/")&&e.split("/").every(t=>t!==""&&t!=="."&&t!==".."),"Evaluation paths must be portable and relative."),gb=ot("kind",[l({kind:b("profile")}).strict(),l({kind:b("workflow"),workflowId:T}).strict(),l({kind:b("skill"),skillPath:$z}).strict(),l({kind:b("agent_action"),actionId:T}).strict()]),Nz=l({taskId:T,seed:i().min(1).max(500),fixtureId:T.nullable()}).strict(),AS=i().min(1).max(200).refine(e=>!["__proto__","prototype","constructor"].includes(e),"Use an ordinary field name."),TS=v(["input","output","expectedOutput","evaluatorContext"]),Dz=p(l({graderId:T,fields:p(l({destination:TS,path:p(AS).min(1).max(20),source:TS,sourcePath:p(AS).max(20)}).strict()).max(100)}).strict()).max(100),Hz=l({execution:W,originalEvidence:W,members:p(l({caseId:T,seed:i().min(1).max(500),fixtureId:D,sourceId:T,snapshotHash:D,boundaryRevisionHash:D}).strict()).min(1).max(500)}).strict(),Lz=l({release:W.extend({revision:vt([d().int().positive(),i().min(1).max(200)])}).strict(),feedbackKey:i().min(1).max(240),configurationHash:D,output:v(["boolean","score","category"]),categories:p(i().min(1).max(120)).max(50)}).strict(),qz=l({schemaVersion:b("openpond.profileExternalDatasetBinding.v1"),dataset:W.extend({revision:d().int().positive()}).strict(),packageHash:D,profileId:T,target:gb,declaredProfileCatalogHash:D.nullable(),protectedProfileClosureHash:D,recordedOrigin:Hz.optional(),gradingSource:l({pass:W,evidence:W}).strict().optional(),split:Xa,population:p(Nz).min(1).max(1e4),evaluators:p(Lz).min(1).max(100),fieldMappingsHash:D,fieldMappings:Dz,environmentHash:D,privateDatasetClosureHash:D,criterion:l({minimumPassRate:d().min(0).max(1),requireComplete:I()}).strict()}).strict().superRefine((e,t)=>{e.recordedOrigin&&(e.recordedOrigin.members.length!==e.population.length||e.recordedOrigin.members.some((n,a)=>n.caseId!==e.population[a].taskId||n.seed!==e.population[a].seed||n.fixtureId!==n.snapshotHash||e.population[a].fixtureId!==null))&&t.addIssue({code:"custom",message:"Recorded-to-rerun mapping must preserve every exact ordered cutoff and seed while admitting new target attempts."}),dt(e.fieldMappings)!==e.fieldMappingsHash&&t.addIssue({code:"custom",message:"Field mappings differ from their sealed hash."}),new Set(e.fieldMappings.map(n=>n.graderId)).size!==e.fieldMappings.length&&t.addIssue({code:"custom",message:"Field mappings must name each grader once."}),new Set(e.population.map(n=>JSON.stringify([n.taskId,n.seed,n.fixtureId]))).size!==e.population.length&&t.addIssue({code:"custom",message:"External Dataset population must be unique."}),new Set(e.evaluators.map(n=>n.feedbackKey)).size!==e.evaluators.length&&t.addIssue({code:"custom",message:"External Dataset feedback keys must be unique."});for(const n of e.evaluators)n.output==="category"!=n.categories.length>0&&t.addIssue({code:"custom",message:"Only category grading declares categories."})}),Wo=qz.safeExtend({contentHash:D}).strict();function kg(e){const t=Wo.parse(e),{contentHash:n,...a}=t;if(dt(a)!==n)throw new Error("External Dataset binding integrity failed.");return t}const R_=l({id:T,label:i().trim().min(1).max(240),description:i().max(4e3),target:gb,tasksetRelease:W,split:Xa,taskIds:p(T).min(1).max(1e5),seeds:p(i().trim().min(1).max(500)).min(1).max(100),criterion:l({minimumPassRate:d().min(0).max(1),requireComplete:I()}).strict()}).strict().superRefine((e,t)=>{new Set(e.taskIds).size!==e.taskIds.length&&t.addIssue({code:"custom",path:["taskIds"],message:"Evaluation task identities must be unique."}),new Set(e.seeds).size!==e.seeds.length&&t.addIssue({code:"custom",path:["seeds"],message:"Evaluation seeds must be unique."})}),P_=l({id:T,label:i().trim().min(1).max(240),scope:v(["component","profile"]),definitionIds:p(T).min(1).max(1e3)}).strict();l({schemaVersion:b("openpond.profileEvaluations.v1"),definitions:p(R_).max(1e3),suites:p(P_).max(100)}).strict();const Ys=l({profileId:T,sourceRevision:i().trim().min(1).max(240),harnessRelease:W,catalogHash:D,definitionId:T,definitionHash:D,target:gb,environmentHash:D,externalDatasetBinding:Wo.optional(),sourceCandidate:VU.optional()}).strict();class pi extends Error{code;status;constructor(t,n=422,a){super(a?`${t}: ${a}`:t),this.code=t,this.status=n,this.name="LearningDomainError"}}const Uz=l({schemaVersion:b("openpond.modelJudgeTransportPolicy.v1"),responseFormat:b("judgment_json_schema"),reasoningEffort:v(["off","low","medium","high","xhigh","max"]),maximumOutputTokens:d().int().positive().max(1e6)}).strict(),zz=l({schemaVersion:b("openpond.modelJudgeReceipt.v1"),providerId:i().trim().min(1).max(200),modelId:i().trim().min(1).max(500),modelRevision:i().trim().min(1).max(500).nullable(),responseId:i().trim().min(1).max(500).nullable(),requestHash:D,responseHash:D,inputTokens:d().int().nonnegative().nullable(),outputTokens:d().int().nonnegative().nullable(),costUsd:d().finite().nonnegative().nullable(),transportPolicy:Uz.optional(),effectiveRequestHash:D.optional(),finishReason:i().trim().min(1).max(200).nullable().optional(),reasoningTokens:d().int().nonnegative().nullable().optional()}).strict(),Bz=l({schemaVersion:b("openpond.graderEvidence.v1"),graderId:T,graderVersion:i().trim().min(1).max(100),status:v(["scored","pending","unavailable","failed"]).optional(),score:d().min(0).max(1).nullable(),passed:I(),rewardEligible:I(),failureClass:Wc.nullable(),feedback:p(i().max(2e4)).max(1e3),visibleEvidenceRefs:p(T).max(1e4),privilegedEvidenceRefs:p(T).max(1e4),modelJudgeReceipt:zz.optional()}).strict(),A_=Bz.extend({contentHash:D}).strict(),Fz=l({score:d().min(0).max(1).nullable(),passed:I(),rewardEligible:I(),failureClass:Wc.nullable(),gradingStatus:v(["scored","pending","unscorable","not_configured"])}).strict(),T_=Fz.extend({schemaVersion:b("openpond.taskGrade.v1"),taskHash:D,evidenceHash:D,graderSetHash:D,components:p(A_).max(1e3),contentHash:D}).strict(),Qd={id:!0,version:!0,weight:!0,hardGate:!0,rewardEligible:!0,privileged:!0},rd=i().regex(/^[a-z][a-z0-9_]{0,79}$/);function Vz(e){return e.feedbackKey??`reward_${dt(e.id).slice(0,24)}`}const Kz=vt([y_.omit(Qd),S_.omit(Qd),k_.omit(Qd),w_.omit(Qd),l({kind:b("learned_model"),modelVersion:W,inputContract:bn}).strict()]),E_=l({schemaVersion:b("openpond.rewardRelease.v1"),id:T,revision:d().int().positive(),name:i().trim().min(1).max(500),description:i().max(1e4),feedbackKey:rd.optional(),implementation:Kz,rawScore:l({minimum:d().finite(),maximum:d().finite()}).strict(),assets:p(bn).max(1e3),fixtureSetRef:bn.optional(),calibrationCheckRef:W.extend({revision:d().int().positive()}).optional()}).strict().superRefine((e,t)=>{if(e.fixtureSetRef&&(e.fixtureSetRef.visibility!=="verifier"||!e.assets.some(n=>dt(n)===dt(e.fixtureSetRef)))&&t.addIssue({code:"custom",path:["fixtureSetRef"],message:"Reward fixtures must be included as a private verifier asset."}),e.rawScore.minimum>=e.rawScore.maximum&&t.addIssue({code:"custom",path:["rawScore"],message:"A raw score contract requires minimum < maximum."}),e.implementation.kind!=="learned_model"&&(e.rawScore.minimum!==0||e.rawScore.maximum!==1)&&t.addIssue({code:"custom",path:["rawScore"],message:"Portable graders currently return scores in [0, 1]."}),e.implementation.kind==="schema"){const n=pb(e.implementation.config.jsonSchema);n.valid||t.addIssue({code:"custom",path:["implementation","config","jsonSchema"],message:n.issues[0].message})}}),sd=E_.safeExtend({contentHash:D}).strict(),Xo=W.extend({revision:d().int().positive()}).strict(),Wz=ot("kind",[l({kind:b("identity")}).strict(),l({kind:b("linear"),minimum:d().finite(),maximum:d().finite(),direction:v(["higher","lower"])}).strict()]),vb=l({graderId:T,reward:Xo,role:v(["training","evaluation"]),normalization:Wz,weight:d().nonnegative().max(1e3),required:I(),hardGate:I(),privileged:I(),fixtureRefs:p(W).max(1e3)}).strict(),Gz=l({schemaVersion:b("openpond.rewardBinding.v1"),id:T,revision:d().int().positive(),name:i().trim().min(1).max(500).optional(),description:i().max(1e4).optional(),recipeRef:Xo.optional(),sources:p(vb).max(100),aggregation:b("weighted_mean"),unscorable:b("exclude_optional_require_all_required")}).strict().superRefine((e,t)=>{new Set(e.sources.map(n=>n.graderId)).size!==e.sources.length&&t.addIssue({code:"custom",path:["sources"],message:"Bound grader identities must be unique."}),e.sources.length&&!e.sources.some(n=>n.weight>0)&&t.addIssue({code:"custom",path:["sources"],message:"A configured binding needs at least one positively weighted source."});for(const[n,a]of e.sources.entries())a.hardGate&&!a.required&&t.addIssue({code:"custom",path:["sources",n],message:"A hard gate must be required."}),a.normalization.kind==="linear"&&a.normalization.minimum>=a.normalization.maximum&&t.addIssue({code:"custom",path:["sources",n,"normalization"],message:"Linear normalization requires minimum < maximum."})}),Fm=Gz.safeExtend({contentHash:D}).strict(),j_=l({graderId:T,reward:Xo,role:v(["training","evaluation"]),status:v(["scored","pending","unavailable","failed"]),rawScore:d().finite().nullable(),normalizedScore:d().min(0).max(1).nullable(),passed:I().nullable(),evidenceHashes:p(D).max(1e3),graderEvidence:A_.optional(),message:i().max(2e4).nullable()}).strict(),Jz=l({schemaVersion:b("openpond.rewardComposition.v1"),binding:Xo,taskHash:D,outputHash:D,results:p(j_).max(100),training:l({status:v(["scored","pending","unscorable","not_configured"]),score:d().min(0).max(1).nullable(),passed:I().nullable()}).strict(),evaluation:l({status:v(["scored","pending","unscorable","not_configured"]),score:d().min(0).max(1).nullable(),passed:I().nullable()}).strict()}).strict(),Pc=Jz.extend({contentHash:D}).strict();function Zz(e){Qa(e);const t=E_.parse(e);return sd.parse({...t,contentHash:dt(t)})}const ld=l({harnessRelease:W,agentSnapshot:W,sourcePackageHash:D}).strict(),mh=i().trim().min(1).max(200),bb=l({sessionId:mh,turnId:mh,source:ld,admissionHash:D,modelConfigurationHash:D,traceHash:D,runtimeEventRefs:p(mh).max(1e4),startedAt:ye,completedAt:ye,outputHash:D,partialOutputAvailable:I()}).strict().superRefine((e,t)=>{new Set(e.runtimeEventRefs).size!==e.runtimeEventRefs.length&&t.addIssue({code:"custom",path:["runtimeEventRefs"],message:"Native event references must be unique."}),Date.parse(e.completedAt)<Date.parse(e.startedAt)&&t.addIssue({code:"custom",path:["completedAt"],message:"Native completion precedes its start."})}),Yz=l({schemaVersion:b("openpond.nativeHarnessExperimentAttempt.v1"),taskId:i().min(1).max(500),status:v(["completed","cancelled","timed_out","policy_failure"]),output:i().max(8388608).nullable(),error:i().max(2e3).nullable(),messages:p(ce()).max(4002),collected:I(),environmentCleanupComplete:b(!0),snapshot:cl(),native:bb}).strict().superRefine((e,t)=>{const n=e.status==="completed";(n!==e.collected||n!==(e.output!==null)||n!==(e.error===null))&&t.addIssue({code:"custom",message:"Native status, output, collection and error must agree."}),n&&(e.native.partialOutputAvailable||e.native.outputHash!==dt(e.output))&&t.addIssue({code:"custom",path:["native","outputHash"],message:"Native output differs from its retained evidence."})});Yz.extend({contentHash:D}).strict();const M_=d().finite().nonnegative(),O_=ot("kind",[l({kind:b("model"),modelId:T,configurationHash:D}).strict(),l({kind:b("harness"),source:Ys,model:l({modelId:T,configurationHash:D}).strict()}).strict(),l({kind:b("agent"),source:ld,model:l({modelId:T,configurationHash:D}).strict()}).strict(),l({kind:b("fixture"),configurationHash:D}).strict()]),$_=l({release:W.extend({revision:vt([d().int().positive(),i().trim().min(1).max(200)])}).strict(),feedbackKey:rd,configurationHash:D.optional(),output:v(["boolean","score","category"]),categories:p(i().trim().min(1).max(500)).max(100)}).strict().superRefine((e,t)=>{e.output==="category"!=e.categories.length>0&&t.addIssue({code:"custom",path:["categories"],message:"Only category feedback declares categories."}),new Set(e.categories).size!==e.categories.length&&t.addIssue({code:"custom",path:["categories"],message:"Feedback categories must be unique."})}),yb=l({caseId:T,seed:i().trim().min(1).max(500),fixtureId:T.nullable()}).strict();function Ac(e){const t=yb.parse(e);return JSON.stringify([t.caseId,t.seed,t.fixtureId])}function Qz(e,t,n){return`human-projection-${dt({originalManifest:e,selectionHash:t,rulesHash:n}).slice(0,48)}`}const Xz=l({schemaVersion:b("openpond.experimentManifest.v1"),id:T,name:i().trim().min(1).max(500),teamId:T,operationId:T,maximumCostUsd:M_.nullable(),dataset:W.extend({revision:d().int().positive()}).strict(),target:O_,execution:l({packageHash:D,runtimeTargetHash:D,metricPolicyHash:D,compatibility:l({protocol:b("openpond.evaluation-execution.v1"),targetKind:v(["model","agent","harness","fixture"])}).strict().optional()}).strict().optional(),lineage:l({definition:W.extend({revision:d().int().positive()}).strict().nullable(),execution:W,scoringPassId:T.nullable(),humanProjection:l({originalManifest:W,selectionHash:D,rulesHash:D}).strict().optional()}).strict().optional(),evaluators:p($_).max(100),population:p(yb).min(1).max(1e4),createdAt:ye}).strict().superRefine((e,t)=>{if(e.execution?.compatibility&&e.execution.compatibility.targetKind!==e.target.kind&&t.addIssue({code:"custom",path:["execution","compatibility"],message:"Execution compatibility differs from its admitted target kind."}),e.lineage){const n=e.lineage.scoringPassId??e.lineage.execution.id,a=e.lineage.humanProjection;a?(a.originalManifest.id!==n||a.originalManifest.id.startsWith("human-projection-")||e.id!==Qz(a.originalManifest,a.selectionHash,a.rulesHash))&&t.addIssue({code:"custom",path:["lineage","humanProjection"],message:"Human view must bind its original execution or scoring pass and deterministic selection identity."}):e.id!==n&&t.addIssue({code:"custom",path:["lineage"],message:"Experiment identity must match its execution or independent scoring pass."})}new Set(e.population.map(Ac)).size!==e.population.length&&t.addIssue({code:"custom",path:["population"],message:"Experiment cases must be unique."}),new Set(e.evaluators.map(n=>n.feedbackKey)).size!==e.evaluators.length&&t.addIssue({code:"custom",path:["evaluators"],message:"Experiment feedback keys must be unique."})}),uo=Xz.extend({contentHash:D}).strict(),e4=l({feedbackKey:rd,evaluator:$_.shape.release,status:v(["scored","unavailable","failed","pending"]),value:vt([I(),d().finite(),i().max(500)]).nullable(),passed:I().nullable().optional(),reasoning:i().max(2e4).nullable(),evidenceRefs:p(ja).max(1e3)}).strict(),t4=l({inputTokens:d().int().nonnegative().nullable(),outputTokens:d().int().nonnegative().nullable(),totalTokens:d().int().nonnegative().nullable(),costUsd:M_.nullable(),latencyMs:d().finite().nonnegative().nullable()}).strict().superRefine((e,t)=>{e.inputTokens!==null&&e.outputTokens!==null&&e.totalTokens!==null&&e.totalTokens<e.inputTokens+e.outputTokens&&t.addIssue({code:"custom",path:["totalTokens"],message:"Total tokens cannot be less than input plus output."})}),n4=l({identity:yb,status:v(["completed","failed","cancelled","unavailable"]),output:ce().nullable(),error:l({code:T,message:i().max(2e3)}).strict().nullable(),feedback:p(e4).max(100),usage:t4,traceRef:ja.nullable(),startedAt:ye.nullable(),completedAt:ye.nullable()}).strict(),N_=l({schemaVersion:b("openpond.experimentResult.v1"),manifest:W,status:v(["completed","failed","cancelled"]),cases:p(n4).min(1).max(1e4),completedAt:ye}).strict(),mo=N_.extend({contentHash:D}).strict();function a4(e,t){uo.parse(t),D$(t,"Experiment manifest");const n=N_.parse(e);if(n.manifest.id!==t.id||n.manifest.contentHash!==t.contentHash)throw new Error("Experiment result differs from its manifest.");const a=new Set(t.population.map(Ac)),o=new Set,r=new Map(t.evaluators.map(s=>[s.feedbackKey,s]));for(const s of n.cases){const c=Ac(s.identity);if(!a.has(c)||o.has(c))throw new Error("Experiment result has an unexpected or repeated case.");o.add(c);const m=new Set;for(const u of s.feedback){const f=r.get(u.feedbackKey);if(!f||m.has(u.feedbackKey)||u.evaluator.id!==f.release.id||u.evaluator.contentHash!==f.release.contentHash||u.evaluator.revision!==f.release.revision)throw new Error("Experiment feedback differs from its pinned evaluator.");if(m.add(u.feedbackKey),u.status==="scored"){if(u.value===null||typeof u.value!=={boolean:"boolean",score:"number",category:"string"}[f.output]||f.output==="category"&&!f.categories.includes(u.value)||f.output==="score"&&(u.value<0||u.value>1))throw new Error("Experiment feedback value violates its output contract.")}else if(u.value!==null||u.passed!==null&&u.passed!==void 0)throw new Error("Unscored experiment feedback cannot claim a value or pass decision.")}}if(o.size!==a.size)throw new Error("Experiment result omits admitted cases.");return mo.parse({...n,contentHash:dt(n)})}function Pr(e){const t=uo.parse(e.manifest),n=mo.parse(e.result),{contentHash:a,...o}=n;if(dt(o)!==a)throw new Error("Experiment result integrity failed.");return a4(o,t),{manifest:t,result:n}}function i4(e,t){for(const h of[e,t])Pr(h);const n=[];e.manifest.teamId!==t.manifest.teamId&&n.push("different_workspace"),(e.manifest.dataset.id!==t.manifest.dataset.id||e.manifest.dataset.contentHash!==t.manifest.dataset.contentHash||e.manifest.dataset.revision!==t.manifest.dataset.revision)&&n.push("different_dataset_version"),e.manifest.target.kind!==t.manifest.target.kind&&n.push("different_target_kind");const a=h=>{const x=h.execution;if(!x?.compatibility)return x??null;const{runtimeTargetHash:k,..._}=x;return _};if(dt(a(e.manifest))!==dt(a(t.manifest))&&n.push("different_execution_contract"),e.manifest.target.kind==="harness"&&t.manifest.target.kind==="harness"){const h=e.manifest.target.source,x=t.manifest.target.source;(h.profileId!==x.profileId||dt(h.target)!==dt(x.target))&&n.push("different_component");const k=e.manifest.execution?.compatibility&&t.manifest.execution?.compatibility&&e.manifest.execution.packageHash===t.manifest.execution.packageHash;h.environmentHash!==x.environmentHash&&!k&&n.push("different_environment"),(h.definitionId!==x.definitionId||h.definitionHash!==x.definitionHash)&&n.push("different_evaluation_definition")}const o=h=>[...h.evaluators].sort((x,k)=>x.feedbackKey.localeCompare(k.feedbackKey));dt(o(e.manifest))!==dt(o(t.manifest))&&n.push("different_evaluators");const r=new Map(e.result.cases.map(h=>[Ac(h.identity),h])),s=new Map(t.result.cases.map(h=>[Ac(h.identity),h])),c=[...new Set([...r.keys(),...s.keys()])].sort();(r.size!==s.size||c.some(h=>!r.has(h)||!s.has(h)))&&n.push("different_population");const m=n.length===0,u=c.map(h=>{const x=r.get(h)??null,k=s.get(h)??null,_=new Map(x?.feedback.map(E=>[E.feedbackKey,E])??[]),P=new Map(k?.feedback.map(E=>[E.feedbackKey,E])??[]);return{identity:(x??k).identity,baseline:x,candidate:k,feedback:e.manifest.evaluators.map(E=>{const A=_.get(E.feedbackKey),$=P.get(E.feedbackKey),j=m?!x||!k?"missing_case":x.status!=="completed"||k.status!=="completed"||x.error||k.error?"case_not_completed":!A||!$||A.status!=="scored"||$.status!=="scored"?"feedback_unavailable":E.output==="category"?"categorical_feedback":null:"incompatible_experiments",M=N=>typeof N?.value=="boolean"?Number(N.value):typeof N?.value=="number"?N.value:null,w=j?null:M(A),R=j?null:M($),O=N=>j?null:typeof N?.value=="boolean"?N.value:N?.passed??null;return{feedbackKey:E.feedbackKey,eligible:j===null,reason:j,baseline:w,candidate:R,delta:w===null||R===null?null:R-w,baselinePassed:O(A),candidatePassed:O($)}})}}),f=e.manifest.evaluators.map((h,x)=>{const k=u.map(M=>M.feedback[x]).filter(M=>M.eligible),_=M=>k.length?k.reduce((w,R)=>w+R[M],0)/k.length:null,P=_("baseline"),E=_("candidate"),A=M=>k.length&&k.every(w=>w[M]!==null)?k.reduce((w,R)=>w+Number(R[M]),0)/k.length:null,$=A("baselinePassed"),j=A("candidatePassed");return{feedbackKey:h.feedbackKey,eligibleCount:k.length,excludedCount:u.length-k.length,baseline:P,candidate:E,delta:P===null||E===null?null:E-P,baselinePassRate:$,candidatePassRate:j,passRateDelta:$===null||j===null?null:j-$}});return{comparable:m,reasons:n,cases:u,metrics:f}}const Oo=i().trim().min(1).max(200),ac=i().regex(/^[a-f0-9]{64}$/),o4=l({id:Oo,contentHash:ac}).strict(),Vm=l({schemaVersion:b("openpond.trainingHandoffOrigin.v1"),teamId:Oo,projectId:Oo.nullable(),configurationId:Oo,source:l({executionId:Oo,passId:Oo.nullable(),manifestHash:ac,resultHash:ac}).strict(),dataset:l({id:Oo,revision:d().int().positive(),contentHash:ac}).strict(),target:O_,graders:p(l({feedbackKey:Oo,evaluator:o4,expectedCount:d().int().positive(),scoredCount:d().int().nonnegative(),score:d().finite().nullable()}).strict()).max(100),contentHash:ac}).strict(),r4=l({text:i().max(1e5),modelId:i().trim().min(1).max(500),modelRevision:i().trim().min(1).max(500).nullable(),responseId:i().trim().min(1).max(500).nullable(),inputTokens:d().int().nonnegative().nullable(),outputTokens:d().int().nonnegative().nullable(),costUsd:d().finite().nonnegative().nullable(),effectiveRequestHash:i().regex(/^[a-f0-9]{64}$/).optional(),finishReason:i().trim().min(1).max(200).nullable().optional(),reasoningTokens:d().int().nonnegative().nullable().optional()}).strict(),D_=l({id:T,requestHash:D,reservedUsd:d().finite().positive(),status:v(["reserved","settled","not_dispatched"]),response:r4.nullable()}).strict().superRefine((e,t)=>{e.status==="settled"!=(e.response!==null)&&t.addIssue({code:"custom",path:["response"],message:"Only settled calls have a provider response."})}),H_=l({localTime:i().regex(/^(?:[01]\d|2[0-3]):[0-5]\d$/),timeZone:i().min(1).max(200).refine(e=>{try{return new Intl.DateTimeFormat("en",{timeZone:e}),!0}catch{return!1}},"Choose a valid IANA timezone.")}).strict(),Lt=le(i(),Ko()),ct=Xo,jo=i().max(2e3).refine(e=>e===""||e.startsWith("/")&&!/~(?![01])/u.test(e),"Use an RFC 6901 JSON pointer."),s4=l({schemaVersion:b("openpond.taskDefinition.v1"),id:T,revision:d().int().positive(),name:i().trim().min(1).max(500),description:i().max(1e4),instructions:i().trim().min(1).max(2e4),category:v(["structured","question_answering","coding","tool_workflow","custom"]),familyNamespace:T,inputSchema:le(i(),ce()),outputSchema:le(i(),ce()),requiredOutputs:hb.shape.requiredOutputs,contextRequirements:p(i().trim().min(1).max(2e3)).max(100).optional(),rewardBinding:ct,harness:W.nullable(),execution:__.pick({policy:!0,environment:!0,environmentRelease:!0,tools:!0,capabilities:!0,verifierSetRelease:!0}).strict()}).strict().superRefine((e,t)=>{for(const n of["inputSchema","outputSchema"]){const a=e[n];a.type!=="object"&&t.addIssue({code:"custom",path:[n],message:"Task input/output use object envelopes; declare type: object."});const o=pb(a);o.valid||t.addIssue({code:"custom",path:[n],message:o.issues[0].message})}!!e.execution.environmentRelease!=!!e.execution.verifierSetRelease&&t.addIssue({code:"custom",path:["execution"],message:"Bind both the environment and verifier-set releases."})}),cd=s4.safeExtend({contentHash:D}).strict(),l4=l({schemaVersion:b("openpond.taskSourceMapping.v1"),exampleId:jo,attemptId:jo,occurredAt:jo,input:jo,observedOutput:jo.nullable(),expected:jo.nullable(),evaluatorContext:jo.nullable(),familyKey:jo,split:Xa}).strict(),c4=l({modelId:T,packageHash:D,taskset:ct,batch:ct,rewardBinding:ct}).strict(),d4=l({schemaVersion:b("openpond.learningSource.v1"),id:T,revision:d().int().positive(),name:i().trim().min(1).max(500),kind:v(["direct","benchmark","work","opentelemetry","provider"]),taskDefinition:ct,enabled:I(),allowedSplits:p(Xa).min(1).max(4),mapping:l4.nullable(),adapterVersion:i().trim().min(1).max(200).nullable(),reviewOrigin:c4.optional(),capturedOrigin:l({receiptId:T,ownerUserId:T,modelId:T,packageHash:D,taskset:ct}).strict().optional()}).strict().superRefine((e,t)=>{e.kind!=="direct"&&!e.mapping&&t.addIssue({code:"custom",path:["mapping"],message:"Mapped sources require an explicit mapping."}),e.mapping&&!e.allowedSplits.includes(e.mapping.split)&&t.addIssue({code:"custom",path:["allowedSplits"],message:"The mapping split must be allowed by this source."}),["opentelemetry","provider"].includes(e.kind)&&!e.adapterVersion&&t.addIssue({code:"custom",path:["adapterVersion"],message:"Trace adapters require a pinned version."})}),Km=d4.safeExtend({contentHash:D}).strict(),u4=l({schemaVersion:b("openpond.taskExample.v1"),sourceId:T,idempotencyKey:T,taskDefinition:ct,exampleId:T,attemptId:T,occurredAt:ye,familyKey:T.nullable(),split:Xa,input:Lt,observedOutput:Lt.nullable(),expected:Lt.nullable(),evaluatorContext:Lt.nullable(),assets:p(bn).max(1e3),requiredOutputs:hb.shape.requiredOutputs,provenance:l({sourceRecordRef:i().max(2e3).nullable(),mappingHash:D.nullable()}).strict()}).strict(),m4=l({schemaVersion:b("openpond.taskEvidence.v1"),id:T,revision:d().int().positive(),source:ct,submission:u4,supersedes:ct.nullable(),correctionFeedbackId:T.nullable(),receivedAt:ye}).strict(),Wm=m4.extend({contentHash:D}).strict(),p4=l({schemaVersion:b("openpond.taskRating.v1"),criteria:i().trim().min(1).max(2e4),scale:l({minimum:d().finite(),maximum:d().finite()}).strict(),score:d().finite(),evidence:i().max(2e4),explanation:i().max(2e4)}).strict().superRefine((e,t)=>{e.scale.minimum>=e.scale.maximum&&t.addIssue({code:"custom",path:["scale"],message:"The score scale must have an increasing range."}),(e.score<e.scale.minimum||e.score>e.scale.maximum)&&t.addIssue({code:"custom",path:["score"],message:"The score must be within its declared scale."})}),f4=l({schemaVersion:b("openpond.taskFeedback.v1"),sourceId:T,idempotencyKey:T,exampleId:T,attemptId:T,expectedEvidenceHash:D.nullable(),occurredAt:ye,kind:v(["outcome","target_correction","ground_truth_correction","input_correction","family_resolution"]),value:Lt,note:i().max(2e4)}).strict().superRefine((e,t)=>{if(e.value.schemaVersion!=="openpond.taskRating.v1")return;e.expectedEvidenceHash===null&&t.addIssue({code:"custom",path:["expectedEvidenceHash"],message:"A rating must identify the exact evidence revision."}),e.kind!=="outcome"&&t.addIssue({code:"custom",path:["kind"],message:"Ratings must be submitted as outcomes."});const n=p4.safeParse(e.value);if(!n.success)for(const a of n.error.issues)t.addIssue({code:"custom",path:["value",...a.path],message:a.message})}),L_=l({schemaVersion:b("openpond.taskFeedbackRecord.v1"),id:T,submission:f4,status:v(["pending_example","pending_review","applied","superseded","rejected"]),evidence:ct.nullable(),createdAt:ye,revision:d().int().positive(),submittedBy:l({id:T,role:v(["editor","reviewer","source"]),sourceId:T.nullable()}).strict().nullable().default(null),review:l({actorId:T,decision:ct.nullable(),note:i().max(2e4),resolvedAt:ye}).strict().nullable().default(null)}).strict(),h4=l({schemaVersion:b("openpond.taskAdmissionDecision.v1"),id:T,revision:d().int().positive(),evidence:ct,supersedes:ct.nullable(),actor:l({kind:v(["human","qualified_policy"]),id:T,policy:ct.nullable()}).strict(),evidenceValidity:v(["valid","invalid","pending"]),taskAdmissibility:v(["approved","rejected","pending"]),observedQuality:v(["passed","failed","unscored","unavailable"]),targetApproval:v(["approved","rejected","pending","not_required"]),approvedTarget:Lt.nullable(),grade:Pc.nullable(),targetGrade:Pc.nullable(),note:i().max(2e4),decidedAt:ye}).strict().superRefine((e,t)=>{e.targetApproval==="approved"&&e.approvedTarget===null&&t.addIssue({code:"custom",path:["approvedTarget"],message:"Target approval requires an actual target."}),e.targetApproval!=="approved"&&e.approvedTarget!==null&&t.addIssue({code:"custom",path:["approvedTarget"],message:"Only approved targets may be selected for supervised learning."}),e.actor.kind==="qualified_policy"&&!e.actor.policy&&t.addIssue({code:"custom",path:["actor"],message:"Automatic admission must pin its qualified policy."}),e.taskAdmissibility==="approved"&&e.evidenceValidity!=="valid"&&t.addIssue({code:"custom",path:["taskAdmissibility"],message:"Only valid evidence can produce an approved task."})}),Sb=h4.safeExtend({contentHash:D}).strict(),g4=l({schemaVersion:b("openpond.taskBatch.v1"),id:T,revision:b(1),taskDefinition:ct,rewardBinding:ct,purpose:v(["supervised_training","reward_training","evaluation"]),examples:p(l({evidence:ct,decision:ct,familyKey:T,inputHash:D,split:Xa}).strict()).min(1).max(1e4),sealedAt:ye,sealedBy:T}).strict().superRefine((e,t)=>{new Set(e.examples.map(a=>a.evidence.id)).size!==e.examples.length&&t.addIssue({code:"custom",path:["examples"],message:"Each evidence identity can occur only once in a batch."});const n=new Map;for(const[a,o]of e.examples.entries()){e.purpose==="evaluation"==(o.split==="train")&&t.addIssue({code:"custom",path:["examples",a,"split"],message:"Training uses train examples; evaluation uses held-out examples."});for(const r of[`family:${o.familyKey}`,`input:${o.inputHash}`])n.has(r)&&n.get(r)!==o.split&&t.addIssue({code:"custom",path:["examples",a],message:"A task family or identical input cannot cross splits."}),n.set(r,o.split)}}),xb=g4.safeExtend({contentHash:D}).strict(),v4=l({origin:Vm.optional(),schemaVersion:b("openpond.learningPolicy.v1"),id:T,revision:d().int().positive(),modelProjectId:T,executionOwner:v(["local","hosted"]),enabled:I(),sources:p(ct).min(1).max(100),taskDefinition:ct,rewardBinding:ct,admission:l({mode:v(["human","qualified_automatic"]),qualification:W.nullable(),minimumApprovedExamples:d().int().positive().max(1e5)}).strict(),trigger:ot("kind",[l({kind:b("manual")}).strict(),l({kind:b("approved_count")}).strict(),l({kind:b("schedule"),intervalSeconds:d().int().min(60).max(31536e3)}).strict(),H_.extend({kind:b("nightly")}).strict(),l({kind:b("upstream_accepted"),modelProjectId:T}).strict()]),trainingParent:W,teacher:W.nullable(),training:l({method:v(["sft","dpo","grpo","ppo","sdft","opd","opsd","sdpo"]),recipe:W,retentionEvaluation:W,replayBatches:p(W).max(100)}).strict(),limits:l({maxIterationSpendUsd:d().positive().max(1e5),maxDailySpendUsd:d().positive().max(1e6),cooldownSeconds:d().int().nonnegative().max(31536e3),maxRetries:d().int().nonnegative().max(10),maxBatchExamples:d().int().positive().max(1e4),maxBacklogExamples:d().int().positive().max(1e6)}).strict(),automation:l({collect:I(),train:I(),accept:I(),serve:I()}).strict(),acceptance:l({minimumScore:d().min(0).max(1),maximumRetentionRegression:d().min(0).max(1),requireImprovement:I(),rollbackVersion:W.nullable()}).strict()}).strict().superRefine((e,t)=>{e.admission.mode==="qualified_automatic"&&!e.admission.qualification&&t.addIssue({code:"custom",path:["admission"],message:"Automatic admission requires qualification evidence."}),e.automation.serve&&!e.automation.accept&&t.addIssue({code:"custom",path:["automation"],message:"Automatic serving requires configured acceptance."}),e.automation.accept&&!e.acceptance.rollbackVersion&&t.addIssue({code:"custom",path:["acceptance"],message:"Automatic acceptance requires a rollback version."}),e.trigger.kind==="upstream_accepted"&&e.trigger.modelProjectId===e.modelProjectId&&t.addIssue({code:"custom",path:["trigger"],message:"A model cannot trigger itself through upstream acceptance."}),e.limits.maxBatchExamples<e.admission.minimumApprovedExamples&&t.addIssue({code:"custom",path:["limits"],message:"The batch limit must permit the minimum approved example count."}),e.limits.maxDailySpendUsd<e.limits.maxIterationSpendUsd&&t.addIssue({code:"custom",path:["limits"],message:"Daily spend must permit the iteration budget."})}),q_=v4.safeExtend({contentHash:D}).strict(),kb=l({iterationId:T,iterationRevision:d().int().positive(),candidate:W,decision:ct,decidedAt:ye}).strict(),b4=v(["waiting_for_data","waiting_for_review","ready","dispatching","training","evaluating","candidate_ready","accepted","rejected","paused","failed","cancelling","cancelled","completed_without_candidate"]),U_=l({schemaVersion:b("openpond.learningIteration.v1"),id:T,revision:d().int().positive(),policy:ct,status:b4,triggerIdentity:T,batch:ct.nullable(),sourceWatermarks:le(T,d().int().nonnegative()),trainingParent:W,trainingParentSelection:kb.nullable().optional(),teacher:W.nullable(),upstreamEvent:W.nullable(),trainingJob:W.nullable(),evaluationJob:W.nullable(),candidateVersion:W.nullable(),candidateDecision:ct.nullable().default(null),candidateDecisionAt:ye.nullable().optional(),dispatchId:T,retryCount:d().int().nonnegative(),spendUsd:d().nonnegative(),failure:l({code:T,message:i().max(2e4)}).strict().nullable(),createdAt:ye,updatedAt:ye}).strict(),y4=l({schemaVersion:b("openpond.taskGradeRun.v1"),id:T,revision:d().int().positive(),evidence:ct,binding:ct,target:v(["observed","proposed_target"]),output:Lt,status:v(["queued","running","completed","failed","cancelling","cancelled"]),composition:Pc.nullable(),leaseOwner:T.nullable(),leaseExpiresAt:ye.nullable(),attemptCount:d().int().nonnegative(),timeoutMs:d().int().min(100).max(3e5),maximumSpendUsd:d().nonnegative().max(1e3),judgeCalls:p(D_).max(1e4).optional(),requestedBy:T.optional(),failure:i().max(2e4).nullable(),createdAt:ye,updatedAt:ye}).strict();vt([cd,sd,Fm,Km,Wm,L_,Sb,xb,q_,U_,y4]);function S4(e){return ct.parse({id:e.id,revision:e.revision,contentHash:e.contentHash})}function die(e,t){return e.id===t.id&&e.revision===t.revision&&e.contentHash===t.contentHash}function uie(e){return Qa(e,16777216),{...e,contentHash:dt(e)}}function mie(e){const{contentHash:t,...n}=e;if(Qa(n,16777216),dt(n)!==t)throw new pi("learning_content_hash_mismatch",422)}const z_=l({schemaVersion:b("openpond.learningTextAsset.v1"),id:T,revision:b(1),asset:bn,text:i().max(524288)}).strict().superRefine((e,t)=>{e.asset.id!==e.id&&t.addIssue({code:"custom",path:["asset","id"],message:"Asset identity must match the stored resource."}),(e.asset.sizeBytes!==new TextEncoder().encode(e.text).byteLength||e.asset.sizeBytes>524288)&&t.addIssue({code:"custom",path:["asset","sizeBytes"],message:"Authored source must match its byte count and fit within 512 KiB."}),e.asset.contentHash!==Iv(e.text)&&t.addIssue({code:"custom",path:["asset","contentHash"],message:"Asset source does not match its SHA-256."})}),Gm=z_.safeExtend({contentHash:D}).strict();function Xd(e){Qa(e);const{text:t,...n}=e,a=Iv(t),o=`asset-${a}-${dt(n).slice(0,16)}`,r=z_.parse({schemaVersion:"openpond.learningTextAsset.v1",id:o,revision:1,asset:{...n,id:o,contentHash:a,sizeBytes:new TextEncoder().encode(t).byteLength},text:t});return Gm.parse({...r,contentHash:dt(r)})}function ES(e,t){const{contentHash:n,...a}=Gm.parse(e);if(dt(a)!==n||dt(a.asset)!==dt(t))throw new pi("learning_asset_reference_mismatch",409);return a.text}const x4=ot("kind",[l({kind:b("manual"),identity:T}).strict(),l({kind:b("schedule"),scheduledAt:ye}).strict(),l({kind:b("approved_count"),checkedAt:ye}).strict()]),k4=l({schemaVersion:b("openpond.learningChain.v1"),id:T,revision:d().int().positive(),modelProjectId:T,activeIterationId:T.nullable(),acceptedParent:kb.nullable().optional(),latestIterationId:T,lastReservedAt:ye.nullable(),updatedAt:ye}).strict(),B_=l({eligible:d().int().nonnegative(),awaitingReview:d().int().nonnegative(),excluded:d().int().nonnegative(),consumed:d().int().nonnegative()}).strict(),pie=l({schemaVersion:b("openpond.learningConsumption.v1"),id:T,revision:b(1),chainId:T,iterationId:T,evidence:ct,decision:ct,reservedAt:ye}).strict(),fie=l({schemaVersion:b("openpond.learningIterationReservation.v1"),id:T,revision:d().int().positive(),chainId:T,iterationId:T,policy:ct,trigger:x4,requestHash:D,outcome:v(["reserved","waiting_for_data","waiting_for_review"]),counts:B_,budget:l({maximumSpendUsd:d().nonnegative(),reservedSpendUsd:d().nonnegative(),settledSpendUsd:d().nonnegative(),settledAt:ye.nullable()}).strict(),createdAt:ye,updatedAt:ye}).strict(),F_=l({id:T,name:i().max(500),input:i(),output:i(),expectedOutput:i(),evaluatorContext:i(),artifactRefs:p(i().max(500)).max(100),runtimeEventRefs:p(i().max(500)).max(100),infrastructureError:i().max(2e4),expectedStatus:v(["scored","pending","unavailable","failed"]),minimumScore:i(),maximumScore:i(),expectedPassed:v(["true","false","any"]),sourceLabel:l({evidence:ct,feedback:l({id:T,revision:d().int().positive()}).strict()}).strict().optional()}).strict(),V_=l({name:i().max(500),description:i().max(1e4),feedbackKey:rd.optional(),kind:v(["custom_verifier","state","content","schema","artifact","runtime_event","model_judge","learned_model","human"]),fields:i(),outputField:i(),expectedField:i(),expectedValue:i(),schema:i(),reference:i(),events:i(),code:i(),exportName:i(),timeout:i(),verifierRuntime:v(["isolated_javascript","sandbox_process"]).optional(),rubric:i(),providerId:i(),modelId:i(),modelRevision:i(),temperature:i(),reviewerRole:i(),humanForm:i().max(131072).optional(),learnedId:i(),learnedHash:i(),inputContract:i(),minimum:i(),maximum:i(),fixtures:p(F_).max(50).optional()}).strict(),w4=l({name:i().max(500),description:i().max(1e4),instructions:i().max(2e4),input:i(),output:i(),familyNamespace:i(),sources:p(vb).max(100),recipeRef:Xo.optional()}).strict(),I4=l({name:i().max(500),description:i().max(1e4),sources:p(vb).max(100)}).strict(),_4=v(["definition","reward","binding"]),ph=l({id:T,targetId:T,baseRelease:ct.nullable(),editorVersion:b("openpond.modelsEditor.v1")}),fh=ot("targetKind",[ph.extend({targetKind:b("definition"),fields:w4}).strict(),ph.extend({targetKind:b("reward"),fields:V_}).strict(),ph.extend({targetKind:b("binding"),fields:I4}).strict()]),hh={schemaVersion:b("openpond.authoringDraft.v1"),revision:d().int().positive(),status:v(["draft","archived","published"]),publishedRelease:ct.nullable(),createdAt:ye,updatedAt:ye},gh=ot("targetKind",[fh.options[0].extend(hh).strict(),fh.options[1].extend(hh).strict(),fh.options[2].extend(hh).strict()]),hie=ot("targetKind",[gh.options[0].extend({contentHash:D}).strict(),gh.options[1].extend({contentHash:D}).strict(),gh.options[2].extend({contentHash:D}).strict()]),gie=l({draft:ct,targetKind:_4,release:ct}).strict(),si={bytes:5*1024*1024,records:1e3,files:100,messages:2e3},K_=v(["json","jsonl","csv","hermes","openclaw"]),C4=l({path:i().min(1).max(500),text:i()}).strict(),wb=l({id:i().min(1).max(200),familyKey:i().min(1).max(200),split:Xa,kind:v(["task","attempt"]),input:Lt,observedOutput:Lt.nullable(),expected:Lt.nullable(),sourceId:i().min(1).max(2e3),sourceHash:i().length(64),occurredAt:i().datetime().nullable(),metadata:Lt,warnings:p(i().max(2e3)).max(100),needsContext:I()}).strict(),W_=l({schemaVersion:b("openpond.taskIntakePreview.v1"),format:K_,contentHash:i().length(64),records:p(wb).max(si.records),issues:p(l({file:i(),row:d().int().positive().nullable(),message:i()}).strict()).max(1e3)}).strict();function nm(e,t){return`${e}-${dt(t)}`}function G_(e){if(typeof e!="string"&&typeof e!="number")return null;const t=new Date(typeof e=="number"?e*1e3:e);return Number.isFinite(t.getTime())?t.toISOString():null}const R4=`export function verify({ output, expectedOutput }) {
181
- if (!expectedOutput || !Object.hasOwn(expectedOutput, "answer")) {
182
- throw new Error("An expected answer is required.");
183
- }
184
- const passed = output.answer === expectedOutput.answer;
185
- return { score: passed ? 1 : 0, passed, feedback: passed ? "Answer matched" : "Answer differed" };
186
- }`;function vie(e){Qa(e,262144);const t=V_.parse(e.fields),n=e.base?sd.parse(e.base):null;if(n&&n.id!==e.id)throw new pi("reward_authoring_base_mismatch",422);const a=t.fixtures?.length?Xd({text:JSON.stringify(t.fixtures),path:"reward-fixtures.json",mediaType:"application/json",visibility:"verifier"}):null;let o=null,r,s;if(t.kind==="custom_verifier")o=Xd({text:t.code,path:"verifier.mjs",mediaType:"application/javascript",visibility:"verifier"}),r={kind:t.kind,verifierRef:o.asset,exportName:t.exportName,timeoutMs:As(t.timeout,"Time limit"),networkPolicy:"none",...t.verifierRuntime??(n?.implementation.kind==="custom_verifier"?n.implementation.runtime:void 0)?{runtime:t.verifierRuntime??(n?.implementation.kind==="custom_verifier"?n.implementation.runtime:void 0)}:{}};else if(t.kind==="model_judge"||t.kind==="human"){if(!t.rubric.trim())throw new pi("reward_rubric_required",422,"Write the rubric before checking or publishing this Reward.");if(o=Xd({text:t.rubric,path:"rubric.md",mediaType:"text/markdown",visibility:"verifier"}),t.kind==="human")r={kind:t.kind,rubricRef:o.asset,reviewerRole:t.reviewerRole,form:od.parse(JSON.parse(t.humanForm||JSON.stringify({schemaVersion:"openpond.humanForm.v1",mode:"individual",instructions:t.rubric,criteria:[{id:"quality",label:"Quality",instructions:t.rubric,required:!0,allowAbstain:!0,kind:"score",minimum:0,maximum:1,step:.1}]})))};else{const u={providerId:t.providerId,modelId:t.modelId,revision:t.modelRevision.trim()||null},f=As(t.temperature,"Temperature"),h=n?.implementation,x=h?.kind==="model_judge"&&h.rubricRef.contentHash===o.asset.contentHash&&h.model?.providerId===u.providerId&&h.model?.modelId===u.modelId&&h.model?.revision===u.revision&&(h.temperature??0)===f&&n?.fixtureSetRef?.contentHash===a?.asset.contentHash;r={kind:t.kind,rubricRef:o.asset,model:u,temperature:f,calibrationStatus:x?h.calibrationStatus:"pending"},x&&(s=n?.calibrationCheckRef)}}else t.kind==="learned_model"?(Ps(t.inputContract,"Model input contract"),o=Xd({text:t.inputContract,path:"input-contract.json",mediaType:"application/json",visibility:"verifier"}),r={kind:t.kind,modelVersion:{id:t.learnedId,contentHash:t.learnedHash},inputContract:o.asset}):t.kind==="state"?r={kind:t.kind,config:{fields:MS(t.fields)}}:t.kind==="content"?r={kind:t.kind,config:{outputField:t.outputField,expectedField:t.expectedField,...t.expectedValue?{expectedValue:t.expectedValue}:{}}}:t.kind==="schema"?r={kind:t.kind,config:{jsonSchema:Ps(t.schema,"Output schema")}}:t.kind==="artifact"?r={kind:t.kind,config:{refIncludes:t.reference}}:r={kind:t.kind,config:{requiredEvents:MS(t.events)}};const c=[...o?[o]:[],...a?[a]:[]];return{reward:Zz({schemaVersion:"openpond.rewardRelease.v1",id:e.id,revision:(n?.revision??0)+1,name:t.name,description:t.description,feedbackKey:t.feedbackKey??Vz({id:e.id}),implementation:r,rawScore:t.kind==="learned_model"?{minimum:As(t.minimum,"Minimum score"),maximum:As(t.maximum,"Maximum score")}:{minimum:0,maximum:1},assets:c.map(u=>u.asset),...a?{fixtureSetRef:a.asset}:{},...s?{calibrationCheckRef:s}:{}}),assets:c}}function bie(e,t,n=null){const a=e?.implementation,o=a&&"verifierRef"in a?a.verifierRef:a&&"rubricRef"in a?a.rubricRef:a&&"inputContract"in a?a.inputContract:null;if(o&&!t)throw new pi("reward_source_required",422);const r=o&&t?ES(t,o):"";if(e?.fixtureSetRef&&!n)throw new pi("reward_fixtures_required",422);const s=e?.fixtureSetRef&&n?F_.array().max(50).parse(JSON.parse(ES(n,e.fixtureSetRef))):[],c=a&&"config"in a?a.config:{};return{name:e?.name??"",description:e?.description??"",...e?.feedbackKey?{feedbackKey:e.feedbackKey}:{},kind:a?.kind??"state",fields:jS(c.fields).join(", ")||"answer",outputField:eu(c.outputField)||"text",expectedField:eu(c.expectedField)||"text",expectedValue:eu(c.expectedValue),schema:JSON.stringify(c.jsonSchema??{type:"object",properties:{answer:{type:"string"}},required:["answer"]},null,2),reference:eu(c.refIncludes),events:jS(c.requiredEvents).join(", "),code:a?.kind==="custom_verifier"?r:R4,verifierRuntime:a?.kind==="custom_verifier"?a.runtime??"isolated_javascript":"isolated_javascript",exportName:a?.kind==="custom_verifier"?a.exportName??"verify":"verify",timeout:String(a?.kind==="custom_verifier"?a.timeoutMs:5e3),rubric:a?.kind==="model_judge"||a?.kind==="human"?r:"",providerId:a?.kind==="model_judge"?a.model?.providerId??"":"",modelId:a?.kind==="model_judge"?a.model?.modelId??"":"",modelRevision:a?.kind==="model_judge"?a.model?.revision??"":"",temperature:String(a?.kind==="model_judge"?a.temperature??0:0),reviewerRole:a?.kind==="human"?a.reviewerRole:"Subject matter reviewer",humanForm:a?.kind==="human"&&a.form?JSON.stringify(a.form,null,2):"",learnedId:a?.kind==="learned_model"?a.modelVersion.id:"",learnedHash:a?.kind==="learned_model"?a.modelVersion.contentHash:"",inputContract:a?.kind==="learned_model"?r:"{}",minimum:String(e?.rawScore.minimum??0),maximum:String(e?.rawScore.maximum??1),...s.length?{fixtures:s}:{}}}function Ps(e,t){try{const n=JSON.parse(e);return Qa(n,131072),Lt.parse(n)}catch{throw new pi("reward_authoring_json_invalid",422,`${t} must be a JSON object.`)}}function As(e,t){const n=Number(e);if(!e.trim()||!Number.isFinite(n))throw new pi("reward_authoring_number_invalid",422,`${t} must be a finite number.`);return n}function eu(e){return typeof e=="string"?e:""}function jS(e){return Array.isArray(e)?e.filter(t=>typeof t=="string"):[]}function MS(e){return e.split(",").map(t=>t.trim()).filter(Boolean)}const J_=l({id:T,name:i().trim().min(1).max(500),input:Lt,output:Lt,expectedOutput:Lt.nullable(),evaluatorContext:Lt.nullable(),artifactRefs:p(T).max(100),runtimeEventRefs:p(T).max(100),infrastructureError:i().max(2e4).nullable(),expected:ot("status",[l({status:b("scored"),minimum:d().finite(),maximum:d().finite(),passed:I().nullable()}).strict(),l({status:v(["pending","unavailable","failed"])}).strict()])}).strict().superRefine((e,t)=>{e.expected.status==="scored"&&e.expected.minimum>e.expected.maximum&&t.addIssue({code:"custom",path:["expected"],message:"Expected score minimum must not exceed maximum."})}),P4=l({id:T,packageVersion:i().min(1).max(100),engine:i().min(1).max(200)}).strict(),A4=l({fixture:l({id:T,contentHash:D}).strict(),result:j_,matchesExpectation:I()}).strict(),yie=l({schemaVersion:b("openpond.rewardCheckRun.v1"),id:T,revision:d().int().positive(),draft:ct,reward:ct,snapshotHash:D,fixtureRefs:p(l({id:T,contentHash:D}).strict()).min(1).max(50),status:v(["queued","running","completed","failed","cancelling","cancelled"]),runtime:P4.nullable(),results:p(A4).max(50),matchesExpectations:I().nullable(),failure:i().max(2e4).nullable(),timeoutMs:d().int().min(100).max(3e5),maximumSpendUsd:d().nonnegative().max(1e3),judgeCalls:p(D_).max(1e3).optional(),requestedBy:T.optional(),leaseOwner:T.nullable(),leaseExpiresAt:ye.nullable(),attemptCount:d().int().nonnegative(),createdAt:ye,updatedAt:ye}).strict();function Sie(e){if(!e.length||e.length>50)throw new pi("reward_check_fixtures_required",422,"Add between one and 50 fixtures before checking this Reward.");if(new Set(e.map(t=>t.id)).size!==e.length)throw new pi("reward_fixture_id_duplicate",422);return e.map(t=>J_.parse({id:t.id,name:t.name,input:Ps(t.input,`${t.name}: input`),output:Ps(t.output,`${t.name}: output`),expectedOutput:t.expectedOutput.trim()?Ps(t.expectedOutput,`${t.name}: expected answer`):null,evaluatorContext:t.evaluatorContext.trim()?Ps(t.evaluatorContext,`${t.name}: evaluator context`):null,artifactRefs:t.artifactRefs.map(n=>n.trim()).filter(Boolean),runtimeEventRefs:t.runtimeEventRefs.map(n=>n.trim()).filter(Boolean),infrastructureError:t.infrastructureError||null,expected:t.expectedStatus==="scored"?{status:t.expectedStatus,minimum:As(t.minimumScore,`${t.name}: minimum score`),maximum:As(t.maximumScore,`${t.name}: maximum score`),passed:t.expectedPassed==="any"?null:t.expectedPassed==="true"}:{status:t.expectedStatus}}))}const T4=l({policy:ct,modelProjectId:T,inspectedAt:ye,chain:k4.nullable(),trainingParent:l({reference:W,selection:kb.nullable()}).strict().nullable().default(null),counts:B_.nullable(),minimumApprovedExamples:d().int().positive(),canReserve:I(),blockers:p(l({code:i().min(1).max(200),message:i().min(1).max(2e4)}).strict()).max(20),cooldownUntil:ye.nullable(),budget:l({reservedSpendUsd:d().nonnegative(),settledSpendUsd:d().nonnegative(),committedSpendUsd:d().nonnegative(),maximumIterationSpendUsd:d().nonnegative(),maximumDailySpendUsd:d().nonnegative()}).strict()}).strict();function E4(e){const t=[];let n=[],a="",o=!1,r=!1;const s=()=>{n.push(a),a="",r=!1},c=()=>{if(s(),n.some(f=>f.length)&&t.push(n),n=[],t.length>si.records+1)throw new Error("CSV exceeds the 1,000-record limit.")};for(let f=0;f<e.length;f++){const h=e[f];if(o)h==='"'&&e[f+1]==='"'?(a+='"',f++):h==='"'?(o=!1,r=!0):a+=h;else if(h===",")s();else if(h===`
187
- `||h==="\r")h==="\r"&&e[f+1]===`
188
- `&&f++,c();else if(h==='"'&&!a&&!r)o=!0;else{if(r||h==='"')throw new Error("CSV has an invalid quoted field.");a+=h}}if(o)throw new Error("CSV has an unterminated quoted field.");(a||n.length||r)&&c();const m=t.shift()?.map(f=>f.trim().replace(/^\uFEFF/u,""));if(!m?.includes("instruction"))throw new Error("CSV requires an instruction column.");const u=new Set(["instruction","context","reference","labels","id","familyKey","split"]);if(m.some(f=>!u.has(f))||new Set(m).size!==m.length)throw new Error("CSV has duplicate or unsupported columns. Use instruction, context, reference, labels, id, familyKey and split.");return t.map((f,h)=>{if(f.length!==m.length)throw new Error(`CSV record ${h+2} has a different number of columns from its header.`);return Object.fromEntries(m.map((x,k)=>[x,f[k]]).filter(([,x])=>x!==""))})}function xie(e){try{return new TextDecoder("utf-8",{fatal:!0,ignoreBOM:!0}).decode(e)}catch{throw new Error("Import files must contain valid UTF-8 text. Binary attachments are not supported by this import format.")}}function Z_(e){return e.startsWith("\uFEFF")?e.slice(1):e}const Y_=l({role:i().min(1),content:Ko().nullable().optional()}).catchall(Ko()),j4=l({id:i().min(1),messages:p(Y_).min(1).max(si.messages),lineage_session_ids:p(i()).optional(),parent_session_id:i().nullable().optional()}).catchall(Ko());function M4(e){const t=j4.parse(e),n=t.lineage_session_ids?.[0]??t.parent_session_id??t.id,{messages:a,segments:o,...r}=t;return Q_("hermes",t.id,n,t.messages,{sourceHash:dt(e),metadata:{session:r},warnings:["Imported session context and tools need review before this can become an executable task."]})}const O4=l({traceSchema:b("openclaw-trajectory"),schemaVersion:b(1),traceId:i().min(1),sessionId:i().min(1),leafId:i().nullable(),eventCount:d().int().nonnegative(),warnings:p(Lt).optional()}).catchall(Ko()),$4=l({traceSchema:b("openclaw-trajectory"),schemaVersion:b(1),traceId:i(),sessionId:i(),seq:d().int().nonnegative(),type:i(),ts:i()}).catchall(Ko()),N4=l({header:Lt.nullable(),leafId:i().nullable(),entries:p(l({id:i().min(1),type:i().min(1),parentId:i().nullable().optional(),message:Y_.optional()}).catchall(Ko())).max(si.messages)}).strict();function D4(e){const t=c=>{const m=e.find(u=>u.path===c);if(!m)throw new Error(`OpenClaw bundle is missing ${c}.`);return Z_(m.text)},n=O4.parse(JSON.parse(t("manifest.json"))),a=N4.parse(JSON.parse(t("session-branch.json")));if(a.leafId!==n.leafId)throw new Error("OpenClaw manifest and session branch identify different leaves.");const o=t("events.jsonl").split(/\r?\n/u).filter(c=>c.trim()).map(c=>$4.parse(JSON.parse(c)));if(o.length!==n.eventCount||o.some(c=>c.traceId!==n.traceId||c.sessionId!==n.sessionId))throw new Error("OpenClaw events do not match the manifest identity or count.");if(a.header&&a.header.id!==n.sessionId)throw new Error("OpenClaw session header does not match the manifest.");const r=new Set;for(const[c,m]of a.entries.entries()){if(r.has(m.id))throw new Error("OpenClaw branch contains duplicate entry IDs.");if(c&&m.parentId!==a.entries[c-1].id)throw new Error("OpenClaw branch is incomplete or out of order.");r.add(m.id)}if(a.entries.length&&a.entries.at(-1).id!==a.leafId)throw new Error("OpenClaw branch does not reach its declared leaf.");const s=a.entries.filter(c=>c.type==="message"&&c.message).map(c=>({...c.message,entryId:c.id,timestamp:typeof c.timestamp=="string"?c.timestamp:typeof c.message.timestamp=="number"?new Date(c.message.timestamp).toISOString():null}));return Q_("openclaw",n.sessionId,n.sessionId,s,{sourceHash:dt(e),metadata:{manifest:n,sourceFiles:e.map(c=>c.path)},warnings:["Imported trajectory context and tools need review before this can become an executable task.",...(n.warnings??[]).map(c=>typeof c.message=="string"?c.message.slice(0,2e3):"The source exporter reported incomplete context.")]})}function Q_(e,t,n,a,o){const r=a.flatMap((c,m)=>c.role==="user"?[m]:[]);if(!r.length)throw new Error("This history contains no user request. Supply a session with its request context.");let s=0;return r.map((c,m)=>{const u=r[m+1]??a.length,f=a.slice(c+1,u),h=f.filter(P=>P.role==="assistant").at(-1),x=a[c],k=x.entryId??x.message_id??x.id??dt({start:c,request:x}),_={id:nm(e,[t,k]),familyKey:nm(e,n),split:"train",kind:"attempt",input:{request:x.content??null,messages:a.slice(0,c+1)},observedOutput:h?{response:h.content??null,messages:f}:null,expected:null,sourceId:`${e}:${t}:${String(k)}`,sourceHash:o.sourceHash,occurredAt:G_(h?.timestamp??x.timestamp),metadata:o.metadata,warnings:[...o.warnings,...h?[]:["No assistant response was recorded for this request."]],needsContext:!0};if(Qa(_),s+=new TextEncoder().encode(JSON.stringify(_)).length,s>si.bytes)throw new Error("Expanded history exceeds the 5 MiB preview limit. Export a smaller session selection.");return wb.parse(_)})}const H4=l({instruction:i().trim().min(1).max(1e5),context:vt([i(),Lt]).optional(),reference:vt([i(),Lt]).optional(),labels:vt([i(),p(i()),Lt]).optional(),id:i().min(1).max(200).optional(),familyKey:i().min(1).max(200).optional(),split:Xa.optional()}).strict(),L4=l({input:Lt,observedOutput:Lt.nullable().optional(),expectedOutput:Lt.nullable().optional(),id:i().min(1).max(200).optional(),familyKey:i().min(1).max(200).optional(),split:Xa.optional(),occurredAt:i().datetime().optional(),labels:Lt.optional()}).strict();function q4(e){const t=K_.parse(e.format),n=p(C4).min(1).max(si.files).parse(e.files);if(n.reduce((u,f)=>u+new TextEncoder().encode(f.text).length,0)>si.bytes)throw new Error("Import exceeds the 5 MiB size limit.");if(n.some(u=>u.path.startsWith("/")||u.path.includes("\\")||u.path.split("/").some(f=>!f||f==="."||f===".."))||new Set(n.map(u=>u.path)).size!==n.length)throw new Error("Import contains an unsafe or duplicate file path.");const a=[],o=[],r=new Map,s=new Map;let c=0;function m(u,f,h){try{const x=h();if(a.length+x.length>si.records)throw new Error("Import exceeds the 1,000-record limit.");const k=new Map(r),_=new Map(s);let P=0;for(const E of x){Qa(E);const A=dt(E),$=k.get(E.id);if($&&$!==A)throw new Error("The same record identity has different content in this upload.");$||(P+=new TextEncoder().encode(JSON.stringify(E)).length),k.set(E.id,A);for(const j of[`family:${E.familyKey}`,`input:${dt(E.input)}`]){if(_.has(j)&&_.get(j)!==E.split)throw new Error("The same task family or request occurs in different splits.");_.set(j,E.split)}}if(c+P>si.bytes*2)throw new Error("Expanded import exceeds the 10 MiB preview limit. Select fewer source files.");for(const E of x)r.has(E.id)||a.push(E),r.set(E.id,dt(E));for(const[E,A]of _)s.set(E,A);c+=P}catch(x){o.push({file:u,row:f,message:x instanceof C2?`Unsupported record fields or values (${x.issues.slice(0,3).map(k=>k.path.join(".")||"record").join(", ")}).`:x instanceof SyntaxError?"Invalid JSON.":x instanceof Error?x.message:"Invalid import record."})}}if(t==="openclaw")m("manifest.json",null,()=>D4(n));else for(const u of n){const f=Z_(u.text);if(t==="jsonl"||t==="hermes"){for(const[h,x]of f.split(/\r?\n/u).entries())if(x.trim()){if(o.length>=si.records)break;m(u.path,h+1,()=>t==="hermes"?M4(JSON.parse(x)):[OS(JSON.parse(x))])}}else{let h;try{const x=t==="csv"?E4(f):JSON.parse(f);h=Array.isArray(x)?x:[x]}catch(x){m(u.path,null,()=>{throw x});continue}if(h.length>si.records){m(u.path,null,()=>{throw new Error("Import exceeds the 1,000-record limit.")});continue}h.forEach((x,k)=>m(u.path,k+(t==="csv"?2:1),()=>[OS(x)]))}}return W_.parse({schemaVersion:"openpond.taskIntakePreview.v1",format:t,contentHash:dt({format:t,files:n}),records:a,issues:o.slice(0,1e3)})}function OS(e){const t=vt([H4,L4]).parse(e),n="instruction"in t,a=n?{instruction:t.instruction,...t.context===void 0?{}:{context:t.context}}:t.input,o=n?t.reference===void 0?null:typeof t.reference=="string"?{text:t.reference}:t.reference:t.expectedOutput??null,r=n?null:t.observedOutput??null,s=t.familyKey??nm("family",a),c=t.id??nm("task",{input:a,expected:o,observedOutput:r});return wb.parse({id:c,familyKey:s,split:t.split??"train",kind:r?"attempt":"task",input:a,expected:o,observedOutput:r,sourceId:c,sourceHash:dt(e),occurredAt:n?null:G_(t.occurredAt),metadata:t.labels===void 0?{}:{importedLabels:t.labels,labelOrigin:"unverified_import"},warnings:[],needsContext:!1})}const Tc=i().trim().min(1).max(240),Do=i().regex(/^[a-f0-9]{64}$/),U4=l({id:Tc,name:i().trim().min(1).max(200),required:I(),role:v(["quality","retention","diagnostic"]).optional(),unit:i().trim().min(1).max(80).optional(),baselineReuse:l({maximumAgeSeconds:d().int().positive().max(31536e3),qualification:W}).strict().optional(),dataset:W,evaluator:W,executionHash:Do,populationHash:Do,metric:Tc,direction:v(["higher","lower"]),minimumCoverage:d().positive().max(1),threshold:d().finite(),maximumRegression:d().finite().nonnegative(),maximumSpendUsd:d().finite().positive()}).strict().superRefine((e,t)=>{e.role==="diagnostic"&&e.required&&t.addIssue({code:"custom",message:"Diagnostic checks cannot be required acceptance gates."})}),X_=l({schemaVersion:b("openpond.acceptancePlan.v1"),id:Tc,revision:d().int().positive(),checks:p(U4).min(1).max(100),maximumSpendUsd:d().finite().positive()}).strict().superRefine((e,t)=>{new Set(e.checks.map(n=>n.id)).size!==e.checks.length&&t.addIssue({code:"custom",message:"Acceptance check IDs must be unique."}),e.checks.some(n=>n.required)||t.addIssue({code:"custom",message:"An acceptance plan needs at least one required check."}),e.checks.reduce((n,a)=>n+a.maximumSpendUsd,0)>e.maximumSpendUsd+1e-9&&t.addIssue({code:"custom",message:"Check budgets exceed the total plan budget."})}),eC=X_.safeExtend({contentHash:Do});function kie(e){const t=X_.parse(e);return{...t,contentHash:dt(t)}}const z4=l({runId:Tc,artifact:W,checkHash:Do,populationHash:Do,scoredPopulationHash:Do,executionHash:Do,evaluator:W,metric:Tc,expectedCount:d().int().positive(),scoredCount:d().int().nonnegative(),score:d().finite().nullable(),status:v(["pending","running","completed","failed","cancelled"]),evidenceHash:Do}).strict().superRefine((e,t)=>{e.scoredCount>e.expectedCount&&t.addIssue({code:"custom",message:"Scored count exceeds declared population."}),e.scoredCount===0!=(e.score===null)&&t.addIssue({code:"custom",message:"Scores require a nonempty scored population."})}),Ho=i().trim().min(1).max(240),Ib=i().regex(/^[a-f0-9]{64}$/),am=on(),$S=d().finite().nonnegative(),B4=new Set(["completed","failed","cancelled","budget_exhausted"]),F4=l({schemaVersion:b("openpond.acceptanceGroupManifest.v1"),id:Ho,teamId:Ho,trainingJob:W,baseline:W,candidate:W,plan:eC,maximumParallelAttempts:d().int().min(1).max(8),createdAt:am}).strict().superRefine((e,t)=>{e.plan.checks.some(n=>!n.role||!n.unit)&&t.addIssue({code:"custom",message:"Durable acceptance checks require explicit roles and score units."})}),V4=F4.safeExtend({contentHash:Ib}),K4=l({id:Ho,checkId:Ho,subject:v(["baseline","candidate"]),ordinal:d().int().positive(),dispatchId:Ho,state:v(["queued","dispatching","running","grading","cleaning","completed","failed","cancelled","budget_exhausted"]),artifact:W,checkHash:Ib,measurement:z4.nullable(),executionReceipt:W.nullable(),reusedFrom:l({group:W,attemptId:Ho}).strict().nullable(),spendUsd:$S,reservedUsd:$S,cleanupComplete:I(),accountingComplete:I(),failureCode:Ho.nullable(),createdAt:am,updatedAt:am}).strict().superRefine((e,t)=>{Date.parse(e.updatedAt)<Date.parse(e.createdAt)&&t.addIssue({code:"custom",message:"Attempt timestamps are reversed."}),B4.has(e.state)&&(!e.cleanupComplete||!e.accountingComplete||e.reservedUsd!==0)&&t.addIssue({code:"custom",message:"Terminal attempts require cleanup and settled accounting."}),e.state==="completed"&&(e.measurement?.status!=="completed"||!e.executionReceipt)&&t.addIssue({code:"custom",message:"Completed attempts require retained measurement and execution receipts."}),e.reusedFrom&&(e.subject!=="baseline"||e.state!=="completed"||e.spendUsd!==0)&&t.addIssue({code:"custom",message:"Only completed baselines may reuse retained evidence without new spend."})}),W4=l({schemaVersion:b("openpond.acceptanceGroupSnapshot.v1"),manifest:V4,revision:d().int().positive(),state:v(["queued","running","blocked","cancelling","cleaning","completed","failed","cancelled","budget_exhausted"]),attempts:p(K4).max(2e3),failureCode:Ho.nullable(),updatedAt:am}).strict(),G4=W4.extend({contentHash:Ib});var Er=ct.shape.id,Ec=i().regex(/^[a-f0-9]{64}$/),J4=l({scopeId:Er,modelId:Er}).strict(),Z4=l({schemaVersion:b("openpond.modelTasksetAuthoring.v1"),owner:J4,root:ct,parent:ct}).strict(),wie=l({schemaVersion:b("openpond.modelTasksetDraftRequest.v1"),operationId:Er,modelId:Er,expectedModelRevision:d().int().positive(),sourcePackageHash:Ec}).strict(),Y4=l({schemaVersion:b("openpond.modelTasksetDraftPreparation.v1"),draftId:Er,requestHash:Ec,sourcePackageHash:Ec,sourceTasksetRef:ct,tasksetId:Er,tasksetRevision:d().int().positive(),lineage:Z4,authoringGraph:b("bound").optional()}).strict(),dd=i().min(1).max(1024).refine(e=>!e.includes("\\")&&!e.includes(":")&&!e.includes("\0")&&!e.startsWith("/")&&!e.split("/").some(t=>!t||t==="."||t===".."||t.startsWith(".env")),"Use a relative Taskset file path without environment files."),tC=l({path:dd,sizeBytes:d().int().nonnegative(),writable:I()}).strict(),nC=l({encoding:v(["utf8","base64"]),data:i().max(8e6)}).strict(),Q4=tC.extend({contentHash:Ec,content:nC}).strict();l({draftId:Er,expectedDraftRevision:d().int().positive(),path:dd,expectedFileHash:Ec.nullable(),content:nC.nullable()}).strict();var X4=H_.extend({mode:v(["nightly","approved_count"]),minimumTasks:d().int().min(1).max(1e4),maximumSpendUsd:d().positive().max(1e5),maximumDailySpendUsd:d().positive().max(1e6)}).strict().superRefine((e,t)=>{e.maximumDailySpendUsd<e.maximumSpendUsd&&t.addIssue({code:"custom",path:["maximumDailySpendUsd"],message:"The daily budget must cover one update."})}),eB=67108864,wg=524288,ic=class extends Error{code;constructor(e,t){super(t),this.name="OpenPondProtocolError",this.code=e}};function _b(e){return JSON.stringify(Ig(e))}function tB(e){return new TextEncoder().encode(_b(e)).byteLength}async function nB(e){const t=new TextEncoder().encode(_b(e)),n=await globalThis.crypto.subtle.digest("SHA-256",t);return Array.from(new Uint8Array(n),a=>a.toString(16).padStart(2,"0")).join("")}function aB(e,t,n){const a=tB(e);if(a>t)throw new ic("payload_too_large",`${n} is ${a} bytes; the maximum is ${t} bytes.`)}function Ig(e){if(e===null||typeof e=="string"||typeof e=="boolean")return e;if(typeof e=="number"){if(!Number.isFinite(e))throw new ic("non_json_value","Canonical JSON cannot contain a non-finite number.");return Object.is(e,-0)?0:e}if(Array.isArray(e))return e.map(t=>Ig(t));if(typeof e=="object"){const t=Object.getPrototypeOf(e);if(t!==Object.prototype&&t!==null)throw new ic("non_json_value","Canonical JSON accepts only plain objects.");const n={};for(const a of Object.keys(e).sort()){const o=e[a];if(o===void 0||typeof o=="function"||typeof o=="symbol")throw new ic("non_json_value",`Canonical JSON cannot contain ${typeof o} at ${a}.`);n[a]=Ig(o)}return n}throw new ic("non_json_value",`Canonical JSON cannot contain ${typeof e}.`)}var qt=i().trim().min(1).max(500),Mi=i().regex(/^[a-f0-9]{64}$/),Ka=i().datetime({offset:!0}),jt=l({id:qt,contentHash:Mi}).strict(),sa=jt.extend({revision:d().int().positive()}).strict(),Lr=l({schemaVersion:b("openpond.baseModelPreference.v1"),modelId:qt,revision:i().trim().min(1).max(256).nullable(),tokenizerRevision:i().trim().min(1).max(256).nullable(),chatTemplateHash:i().trim().min(8).max(256).nullable(),modelAssetId:qt.nullable(),source:v(["managed","local","builtin"])}).strict(),aC=v(["sft","dpo","grpo","ppo","sdft","opd","opsd","sdpo"]),iC=l({schemaVersion:i().regex(/^openpond\.[A-Za-z0-9]+Recipe\.v\d+$/),method:aC,parameterization:v(["lora","full"])}).catchall(ce()),iB=l({profileProjectId:qt,sourceRevision:i().regex(/^[a-f0-9]{40,64}$/),harnessRelease:jt}).strict(),oB=l({profileProjectId:qt,sourceRevision:i().regex(/^[a-f0-9]{40,64}$/),catalogHash:Mi,definitionId:qt,harnessRelease:jt,tasksetRelease:jt}).strict(),oC=l({tasksetRef:sa.nullable().default(null),evaluationTasksetRef:sa.nullable().optional(),profileSource:iB.nullable().optional(),profileEvaluation:oB.nullable().optional(),rewardBindingRef:sa.nullable().optional(),tasksetRelease:jt.nullable().default(null),harnessRelease:jt.nullable().default(null),baseModel:Lr.nullable().default(null),method:aC.nullable().default(null),destinationId:qt.nullable().default(null),managedRolloutPlacement:v(["local","remote"]).default("remote"),managedGpuPlacementObjective:v(["fast","balanced","economical"]).default("balanced"),managedGpuRequirement:v(["any","h100_hbm3"]).default("any"),runPreset:v(["small","standard","custom","small_experiment"]).nullable().default(null),recipe:iC.nullable().default(null),preferredMaximumSpendUsd:d().nonnegative().nullable().default(null),preferredRetentionDays:d().int().nonnegative().nullable().default(null)}).strict(),Cb=oC.omit({managedGpuRequirement:!0}),rB=l({schemaVersion:b("openpond.hostedModelProjectLink.v1"),apiOrigin:i().url().refine(e=>new URL(e).origin===e,"Use a canonical API origin.").nullable().default(null),teamId:qt,projectId:qt,portableProjectId:qt,revision:d().int().positive(),etag:Mi,syncedSourceRevision:d().int().positive(),syncedAt:Ka,tasksets:p(l({localTasksetId:qt,localTasksetHash:Mi.nullable().default(null),releaseId:qt,releaseRevision:d().int().positive(),releaseHash:Mi,packageHash:Mi.nullable().default(null),hostedTasksetId:qt,syncedAt:Ka}).strict()).max(1e4).default([])}).strict(),sB=l({localTasksetId:qt,releaseId:qt,releaseRevision:d().int().positive(),releaseHash:Mi,state:v(["syncing","synced","sync_failed"]),hostedTasksetId:qt.nullable().default(null),lastAttemptAt:Ka,syncedAt:Ka.nullable().default(null),lastError:i().trim().min(1).max(5e3).nullable().default(null)}).strict(),rC=l({schemaVersion:b("openpond.modelProject.v2"),id:qt,profileId:qt,revision:d().int().positive().default(1),name:i().trim().min(1).max(200),objective:i().trim().max(5e3).nullable(),defaultBaseModel:Lr.nullable(),defaultDestinationId:qt.nullable(),trainingSetup:oC,hosted:rB.nullable().default(null),tasksetSyncs:p(sB).max(1e4).default([]),createdAt:Ka,updatedAt:Ka}).strict(),sC=rC.pick({id:!0,profileId:!0,name:!0,objective:!0,defaultBaseModel:!0,defaultDestinationId:!0,trainingSetup:!0}),lB=l({schemaVersion:b("openpond.modelProjectSave.v1"),operationId:qt,expectedRevision:d().int().nonnegative(),project:sC,learning:X4.optional()}).strict().superRefine((e,t)=>{e.learning&&e.expectedRevision!==0&&t.addIssue({code:"custom",path:["learning"],message:"Use learning settings to edit an existing Model's policy."})}),lC=l({schemaVersion:b("openpond.modelProjectConfigurationCheck.v1"),configurationHash:Mi,projectId:qt,expectedRevision:d().int().nonnegative(),checkedAt:Ka,canSave:I(),deferred:p(v(["base_model","taskset"])).max(2),findings:p(l({code:qt,severity:v(["error","warning"]),message:i().min(1).max(5e3),field:i().min(1).max(500).nullable()}).strict()).max(100)}).strict();l({id:qt,name:i().min(1).max(500),available:I(),preference:Lr}).strict();function cB(e){try{Qa(e,wg)}catch{throw new pB(400,{schemaVersion:"openpond.modelProjectApiError.v2",code:"model_configuration_json_invalid",message:"Model configuration must be bounded JSON data.",retryable:!1,requestId:null,details:{}})}return lB.parse(e)}async function dB(e,t,n){Qa(e,wg);const a=sC.parse(e);aB(a,wg,"Model configuration");const o=await nB({project:a,expectedRevision:t});return cB({schemaVersion:"openpond.modelProjectSave.v1",operationId:`model-save:${o}`,expectedRevision:t,project:a})}var uB=l({schemaVersion:b("openpond.hostedModelProjectSync.v2"),portableProjectId:qt,name:i().trim().min(1).max(200),objective:i().trim().max(5e3).nullable(),defaultBaseModel:Lr.nullable(),defaultDestinationId:qt.nullable(),trainingSetup:Cb,sourceRevision:d().int().positive(),sourceUpdatedAt:Ka,expectedEtag:Mi.nullable().default(null)}).strict(),Jm=l({id:qt,teamId:qt,portableProjectId:qt,name:i().trim().min(1).max(200),objective:i().trim().max(5e3).nullable(),defaultBaseModel:Lr.nullable(),defaultDestinationId:qt.nullable(),trainingSetup:Cb,sourceRevision:d().int().positive(),sourceUpdatedAt:Ka,revision:d().int().positive(),etag:Mi,createdAt:Ka,updatedAt:Ka}).strict(),mB=l({kind:v(["taskset_release","harness_release","dataset_release","evidence_set","model_version","reward_model_version","evaluation_receipt"]),ref:jt,role:i().trim().min(1).max(200).nullable().default(null),updatedAt:Ka}).strict();l({project:Jm,resources:p(mB).max(1e4),jobCount:d().int().nonnegative(),latestJobIds:p(qt).max(100)}).strict();l({schemaVersion:b("openpond.modelProjectApiError.v2"),code:i().trim().min(1).max(200),message:i().trim().min(1).max(5e3),retryable:I().default(!1),requestId:i().trim().min(1).max(500).nullable().default(null),details:le(i(),ce()).default({})}).strict();var pB=class extends Error{status;code;retryable;requestId;details;constructor(e,t){super(t.message),this.name="OpenPondModelProjectApiError",this.status=e,this.code=t.code,this.retryable=t.retryable,this.requestId=t.requestId,this.details=t.details}},fB=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),hB=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),gB=class cC{state=new Uint32Array(fB);pending=new Uint8Array(64);pendingLength=0;byteLength=0;words=new Uint32Array(64);update(t){const n=typeof t=="string"?new TextEncoder().encode(t):t;if(!Number.isSafeInteger(this.byteLength+n.length))throw new RangeError("SHA-256 input is too large");this.byteLength+=n.length;let a=0;if(this.pendingLength){const o=Math.min(64-this.pendingLength,n.length);this.pending.set(n.subarray(0,o),this.pendingLength),this.pendingLength+=o,a+=o,this.pendingLength===64&&(this.compress(this.pending),this.pendingLength=0)}for(;a+64<=n.length;)this.compress(n.subarray(a,a+64)),a+=64;return a<n.length&&(this.pending.set(n.subarray(a)),this.pendingLength=n.length-a),this}clone(){const t=new cC;return t.state.set(this.state),t.pending.set(this.pending),t.pendingLength=this.pendingLength,t.byteLength=this.byteLength,t}digestHex(){const t=this.clone(),n=new Uint8Array(t.pendingLength<56?64:128);n.set(t.pending.subarray(0,t.pendingLength)),n[t.pendingLength]=128;const a=t.byteLength*8,o=new DataView(n.buffer);return o.setUint32(n.length-8,Math.floor(a/4294967296),!1),o.setUint32(n.length-4,a>>>0,!1),t.compress(n.subarray(0,64)),n.length===128&&t.compress(n.subarray(64)),Array.from(t.state,r=>r.toString(16).padStart(8,"0")).join("")}compress(t){const n=new DataView(t.buffer,t.byteOffset,64),a=this.state,o=this.words;for(let k=0;k<16;k+=1)o[k]=n.getUint32(k*4,!1);for(let k=16;k<64;k+=1){const _=o[k-15],P=o[k-2],E=Ci(_,7)^Ci(_,18)^_>>>3,A=Ci(P,17)^Ci(P,19)^P>>>10;o[k]=o[k-16]+E+o[k-7]+A>>>0}let r=a[0],s=a[1],c=a[2],m=a[3],u=a[4],f=a[5],h=a[6],x=a[7];for(let k=0;k<64;k+=1){const _=u&f^~u&h,P=r&s^r&c^s&c,E=Ci(r,2)^Ci(r,13)^Ci(r,22),A=Ci(u,6)^Ci(u,11)^Ci(u,25),$=x+A+_+hB[k]+o[k]>>>0,j=E+P>>>0;x=h,h=f,f=u,u=m+$>>>0,m=c,c=s,s=r,r=$+j>>>0}a[0]=a[0]+r>>>0,a[1]=a[1]+s>>>0,a[2]=a[2]+c>>>0,a[3]=a[3]+m>>>0,a[4]=a[4]+u>>>0,a[5]=a[5]+f>>>0,a[6]=a[6]+h>>>0,a[7]=a[7]+x>>>0}};function vB(e){return new gB().update(e).digestHex()}function Ci(e,t){return e>>>t|e<<32-t}var bB=2e3,dC=25e7,Ke=i().trim().min(1).max(240),Qe=i().regex(/^[a-f0-9]{64}$/),Pt=i().datetime({offset:!0}),Zm=le(i(),ce()).default({}),He=l({id:Ke,contentHash:Qe}).strict(),yB=He.extend({revision:d().int().positive()}).strict(),di=l({id:Ke,path:i().trim().min(1).max(bB).refine(kB),contentHash:Qe,sizeBytes:d().int().nonnegative().max(dC),mediaType:i().trim().min(1).max(200),visibility:v(["policy","verifier","host_private"])}).strict(),SB=l({id:Ke,contentHash:Qe,mediaType:i().trim().min(1).max(200).nullable().default(null),sizeBytes:d().int().nonnegative().max(dC).nullable().default(null)}).strict(),uC=v(["policy_failure","grader_failure","environment_failure","infrastructure_failure","timeout","cancelled"]);function xB(e){return`${JSON.stringify(_g(e),null,2)}
189
- `}function mC(e){return vB(e)}function At(e){return mC(xB(e))}function Iie(e,t){const{contentHash:n,...a}=e,o=At(a);if(n!==o)throw new Error(`${t} contentHash is ${n}; expected ${o}.`)}function kB(e){const t=e.replaceAll("\\","/");return!t||t.startsWith("/")||t.includes("\0")?!1:!t.split("/").some(n=>!n||n==="."||n==="..")}function _g(e){return Array.isArray(e)?e.map(_g):!e||typeof e!="object"?e:Object.fromEntries(Object.entries(e).sort(([t],[n])=>t.localeCompare(n)).map(([t,n])=>[t,_g(n)]))}var wB=v(["memory","prompt","skill","agent"]),IB=v(["runtime","product","taskset","training"]),_B=l({id:i().trim().min(1).max(120).regex(/^[a-z0-9][a-z0-9._-]*$/),text:i().trim().min(1).max(1e4)}).strict(),CB=l({schemaVersion:b("openpond.refinerReviewProfile.v1"),id:i().trim().min(1).max(120).regex(/^[a-z0-9][a-z0-9._-]*$/),version:i().trim().min(1).max(120),name:i().trim().min(1).max(200),objective:i().trim().min(1).max(1e4),instructions:p(_B).max(100),allowedProposalRoutes:p(wB).max(4),allowedExternalRoutes:p(IB).max(4)}).strict().superRefine((e,t)=>{const n=e.instructions.map(a=>a.id);new Set(n).size!==n.length&&t.addIssue({code:"custom",message:"instruction IDs must be unique",path:["instructions"]}),new Set(e.allowedProposalRoutes).size!==e.allowedProposalRoutes.length&&t.addIssue({code:"custom",message:"proposal routes must be unique",path:["allowedProposalRoutes"]}),new Set(e.allowedExternalRoutes).size!==e.allowedExternalRoutes.length&&t.addIssue({code:"custom",message:"external routes must be unique",path:["allowedExternalRoutes"]})});l({schemaVersion:b("openpond.refinerRelease.v1"),id:i().trim().min(1).max(240),coreVersion:i().trim().min(1).max(120),coreHash:Qe,profile:CB,profileHash:Qe,composedPromptHash:Qe,createdAt:Pt,contentHash:Qe}).strict();l({schemaVersion:b("openpond.refinerBinding.v1"),channel:b("active"),revision:d().int().nonnegative(),release:He,updatedAt:Pt}).strict();l({schemaVersion:b("openpond.refinerTransitionReceipt.v1"),id:i().trim().min(1).max(240),operation:v(["initialize","update","activate","rollback"]),bindingChanged:I(),previousRelease:He.nullable(),nextRelease:He,actor:i().trim().min(1).max(240),reason:i().trim().min(1).max(1e4),authoringSkillHash:Qe.nullable(),validation:l({valid:I(),messages:p(i().max(2e3)).max(100)}).strict(),createdAt:Pt,contentHash:Qe}).strict();var RB=l({schemaVersion:b("openpond.localHarnessRefinerDecision.v1"),decision:b("no_action"),reason:i().trim().min(1).max(1e4)}).strip(),PB=l({schemaVersion:b("openpond.localHarnessRefinerDecision.v1"),decision:b("route"),route:v(["runtime","product","taskset","training"]),summary:i().trim().min(1).max(2e3),expectedOutcome:i().trim().min(1).max(1e4),reason:i().trim().min(1).max(1e4)}).strip(),AB=l({schemaVersion:b("openpond.localHarnessRefinerDecision.v1"),decision:b("propose"),route:v(["memory","prompt","skill","agent"]),operation:v(["create","update","delete"]),target:i().trim().min(1).max(2e3),summary:i().trim().min(1).max(2e3),createContent:i().min(1).max(2e4).nullable(),find:i().min(1).max(8e3).nullable(),replace:i().max(8e3).nullable(),expectedOutcome:i().trim().min(1).max(1e4),reason:i().trim().min(1).max(1e4)}).strip().superRefine((e,t)=>{e.operation==="create"&&(e.createContent===null||e.find!==null||e.replace!==null)&&t.addIssue({code:"custom",message:"create proposals require createContent and null find/replace",path:["createContent"]}),e.operation==="update"&&(e.createContent!==null||e.find===null||e.replace===null)&&t.addIssue({code:"custom",message:"update proposals require one exact find/replace edit and null createContent",path:["find"]}),e.operation==="delete"&&(e.createContent!==null||e.find!==null||e.replace!==null)&&t.addIssue({code:"custom",message:"delete proposals require null createContent/find/replace",path:["createContent"]})}),TB=ot("decision",[RB,PB,AB]),EB=TB,Rb=l({kind:v(["single_deterministic","recurrent_independent"]),supportingEvidenceIds:p(i().trim().min(1).max(2e3)).min(1).max(100),counterevidence:p(i().trim().min(1).max(2e3)).max(20)}).strict().superRefine((e,t)=>{new Set(e.supportingEvidenceIds).size!==e.supportingEvidenceIds.length&&t.addIssue({code:"custom",message:"supporting evidence IDs must be unique",path:["supportingEvidenceIds"]}),e.kind==="recurrent_independent"&&e.supportingEvidenceIds.length<2&&t.addIssue({code:"custom",message:"recurrent independent evidence requires at least two supplied incidents",path:["supportingEvidenceIds"]})}),jB=l({schemaVersion:b("openpond.localHarnessRefinerDecision.v2"),decision:b("no_action"),reason:i().trim().min(1).max(1e4)}).strict(),MB=l({schemaVersion:b("openpond.localHarnessRefinerDecision.v2"),decision:b("route"),route:v(["runtime","product","taskset","training"]),summary:i().trim().min(1).max(2e3),evidenceBasis:Rb,expectedOutcome:i().trim().min(1).max(1e4),reason:i().trim().min(1).max(1e4)}).strict(),OB=l({schemaVersion:b("openpond.localHarnessRefinerDecision.v2"),decision:b("propose"),route:v(["memory","prompt","skill","agent"]),operation:v(["create","update","delete"]),target:i().trim().min(1).max(2e3),summary:i().trim().min(1).max(2e3),evidenceBasis:Rb,createContent:i().min(1).max(2e4).nullable(),find:i().min(1).max(8e3).nullable(),replace:i().max(8e3).nullable(),expectedOutcome:i().trim().min(1).max(1e4),reason:i().trim().min(1).max(1e4)}).strict().superRefine((e,t)=>{e.operation==="create"&&(e.createContent===null||e.find!==null||e.replace!==null)&&t.addIssue({code:"custom",message:"create proposals require createContent and null find/replace",path:["createContent"]}),e.operation==="update"&&(e.createContent!==null||e.find===null||e.replace===null)&&t.addIssue({code:"custom",message:"update proposals require one exact find/replace edit and null createContent",path:["find"]}),e.operation==="delete"&&(e.createContent!==null||e.find!==null||e.replace!==null)&&t.addIssue({code:"custom",message:"delete proposals require null createContent/find/replace",path:["createContent"]})}),pC=ot("decision",[jB,MB,OB]);vt([EB,pC]);var Pb=l({memory:I(),prompt:I(),skill:I(),agent:I()}).strict(),fC=v(["memory","instruction","skill","agent"]),NS=l({path:i().trim().min(1).max(2e3),kind:fC,content:i().max(6e4),loaded:I()}).strict(),DS=l({path:i().trim().min(1).max(2e3),kind:fC,loaded:I()}).strict(),$B=l({capabilities:Pb,trigger:le(i(),ce()),observations:p(le(i(),ce())).max(20),admissibleEvidenceIds:p(i().trim().min(1).max(2e3)).max(1e4),reviewPacket:l({currentTurn:l({id:i().trim().min(1).max(2e3),status:i().trim().min(1).max(100).nullable(),error:i().max(2100).nullable(),prompt:i().max(8100).nullable(),assistantOutput:i().max(8100).nullable(),assistantOutputLinkCount:d().int().nonnegative()}).strict(),priorConversation:p(l({turnId:i().trim().min(1).max(2e3),status:i().trim().min(1).max(100).nullable(),prompt:i().max(3100).nullable(),assistantOutput:i().max(3100).nullable()}).strict()).max(3),timeline:p(le(i(),ce())).max(60),artifacts:p(le(i(),ce())).max(30),artifactDiagnostics:p(le(i(),ce())).max(20),executionProfile:l({modelRequestCount:d().int().nonnegative(),failedModelRequestCount:d().int().nonnegative(),promptTokens:d().int().nonnegative(),completionTokens:d().int().nonnegative(),totalTokens:d().int().nonnegative(),toolFailureCount:d().int().nonnegative(),retryCount:d().int().nonnegative(),recoveryCount:d().int().nonnegative()}).strict(),priorIncidents:p(le(i(),ce())).max(3),truncation:l({timelineEventCount:d().int().nonnegative(),includedTimelineEventCount:d().int().nonnegative(),timelineTruncated:I()}).strict()}).strict(),runtimeActivation:l({admittedRelease:He,currentRelease:He,rebasedOntoCurrent:I(),admittedSourceFiles:p(NS).max(100),admittedSourceCatalog:p(DS).max(1e3)}).strict(),sourceFiles:p(NS).max(100),sourceCatalog:p(DS).max(1e3),additionalEvidence:ce().nullable().optional()}).strict(),NB=l({id:i().trim().min(1).max(240),revision:d().int().nonnegative(),contentHash:Qe}).strict();l({schemaVersion:b("openpond.hostedHarnessRefinerRequest.v2"),requestId:i().trim().min(1).max(240),idempotencyKey:i().trim().min(1).max(240),evidenceHash:Qe,harness:l({admittedRelease:He,currentRelease:He,overlay:NB,workspace:l({id:i().trim().min(1).max(240),revision:d().int().nonnegative(),sourceRevision:Qe,channelRevision:d().int().nonnegative()}).strict(),capabilities:Pb}).strict(),evidence:$B}).strict();var DB=l({promptTokens:d().int().nonnegative(),completionTokens:d().int().nonnegative(),totalTokens:d().int().nonnegative()}).strict();l({schemaVersion:b("openpond.hostedHarnessRefinerResponse.v2"),requestId:i().trim().min(1).max(240),evidenceHash:Qe,admittedRelease:He,currentRelease:He,decision:pC,serviceRevision:i().trim().min(1).max(240),usage:DB}).strict();l({provider:Ke,model:Ke,revision:i().trim().min(1).max(500).nullable().default(null),artifactHash:Qe.nullable().default(null),tokenizerRevision:i().trim().min(1).max(500).nullable().default(null),chatTemplateHash:Qe.nullable().default(null)}).strict();var HB=["openpond","codex","claude-code","grok-build","opencode","anthropic","openai","xai","google","openrouter","deepseek","zai","moonshot","together","groq","custom-openai-compatible"],LB=v(HB),Ab=l({providerId:LB,modelId:i().trim().min(1).max(300)}),hC=l({name:i().trim().min(1).max(64).regex(/^[a-zA-Z][a-zA-Z0-9_-]*$/),description:i().trim().min(1).max(2e3),inputSchema:le(i(),ce()),inputSchemaHash:Qe,sideEffect:v(["read","write"]),timeoutMs:d().int().positive().max(36e5)}).strict(),qB=l({id:Ke,required:I(),scopes:p(i().trim().min(1).max(500)).max(100).default([]),portability:v(["portable","host_adapter","local_only","hosted_only"])}).strict(),UB=l({portable:I(),blockers:p(i().trim().min(1).max(2e3)).max(1e3),localOnlyAssetRefs:p(Ke).max(1e4),hostPrivateAssetRefs:p(Ke).max(1e4)}).strict(),zB=l({schemaVersion:b("openpond.agentSnapshot.v2"),id:Ke,sourceRelease:He.nullable(),instructions:p(di).max(1e4),skills:p(di).max(1e4),agents:p(di).max(1e4),toolDeclarations:p(hC).max(200),capabilityRequirements:p(qB).max(200),dependencyLock:di,portability:UB,metadata:Zm}).strict(),BB=zB.extend({contentHash:Qe}).strict(),FB=l({create:b(!0),reset:b(!0),step:b(!0),collect:b(!0),destroy:b(!0),resetScope:v(["task","attempt"])}).strict(),VB=l({visibleEvidence:p(Ke).max(1e3),privilegedEvidence:p(Ke).max(1e3),privateVerifierIsolation:I()}).strict(),KB=l({schemaVersion:b("openpond.harnessRelease.v2"),id:Ke,agentSnapshot:He,program:di,tools:p(hC).max(200),lifecycle:FB,graderInterface:VB,files:p(di).max(1e5),metadata:Zm}).strict(),WB=KB.extend({contentHash:Qe}).strict(),GB=l({id:Ke,turn:d().int().nonnegative(),kind:v(["message","tool_call","terminal"]),name:Ke.nullable(),arguments:le(i(),ce()),content:i().max(1e6).nullable()}).strict(),JB=l({actionId:Ke,turn:d().int().nonnegative(),terminal:I(),output:le(i(),ce()),artifactRefs:p(SB).max(1e5)}).strict(),ZB=l({sequence:d().int().nonnegative(),type:v(["created","reset","action","observation","terminal","failure","collected","destroyed"]),payloadHash:Qe,metadata:Zm}).strict();l({schemaVersion:b("openpond.harnessTrace.v1"),manifest:He,taskId:Ke,seed:i().trim().min(1).max(500),events:p(ZB).max(1e6),actions:p(GB).max(1e5),observations:p(JB).max(1e5),terminal:I(),failureClass:uC.nullable(),output:le(i(),ce()),contentHash:Qe}).strict();var YB=25*1024*1024,QB=l({path:di.shape.path,base64:i().max(Math.ceil(YB/3)*4)}).strict(),gC=l({schemaVersion:b("openpond.harnessSourcePackage.v1"),agentSnapshot:BB,harnessRelease:WB,files:p(QB).max(1e4)}).strict();gC.extend({contentHash:Qe}).strict();var _ie=gC.extend({schemaVersion:b("openpond.harnessPolicySourcePackage.v1"),contentHash:Qe}).strict();l({schemaVersion:b("openpond.harnessSourceSelection.v1"),mode:v(["taskset_owned","selected_release"]),harnessRelease:He,sourcePackageHash:Qe.nullable()}).strict().superRefine((e,t)=>{e.mode==="selected_release"!=(e.sourcePackageHash!==null)&&t.addIssue({code:"custom",path:["sourcePackageHash"],message:"Only a selected release binds a source package."})});var po=i().trim().min(1).max(1e5),XB=v(["no_action","harness_maintenance","runtime","product","taskset","model_improvement"]),eF=v(["none","runtime_service","product_team","human_review","evaluation_system","training_system"]),vC=v(["observation","trigger","route_decision","refiner_outcome","proposal","validation","apply_receipt","harness_advance","rollback","work_outcome","taskset","evaluation","training_qualification","model_candidate"]),Tb=l({kind:v(["personal","team"]),id:Ke}).strict(),bC=l({policy:He,state:v(["authorized","revoked","deleted","expired"]),checkedAt:Pt}).strict(),jc=l({evidence:He,kind:vC,sourceRef:Ke,sourcePolicy:bC,occurrenceKey:Qe,occurredAt:Pt}).strict(),tF=l({evidence:He,sourcePolicy:bC.nullable(),reason:v(["outside_scope","before_watermark","duplicate","resolved","revoked","deleted","expired","sensitive","unverified","budget"])}).strict(),HS=l({cursor:Qe,throughCreatedAt:Pt}).strict(),nF=l({fingerprint:Qe,recurrenceFamily:i().trim().min(1).max(1e3),statement:po,candidateDisposition:v(["observe","confirm"]).optional(),independentOccurrences:d().int().positive().max(1e6),unresolvedOccurrences:d().int().positive().max(1e6)}).strict().refine(e=>e.unresolvedOccurrences<=e.independentOccurrences,"unresolved occurrences cannot exceed independent occurrences"),yC=v(["harness","runtime","product","retrieval","tools","evaluation","model"]),aF=l({layer:yC,status:v(["not_applicable","unresolved","resolved","blocked"]),reason:po,evidenceRefs:p(He).max(1e3)}).strict(),iF=l({schemaVersion:b("openpond.harnessEvaluationReviewReceipt.v1"),id:Ke,ownerScope:Tb,workspaceRef:Ke,harnessRelease:He,previousWatermark:HS.nullable(),nextWatermark:HS,selectedEvidence:p(jc).max(1e4),excludedEvidence:p(tF).max(1e4),claim:nF.nullable(),classification:XB,triage:p(aF).max(16),reason:po,nextAuthority:eF,maxEstimatedCostUsd:d().finite().nonnegative(),tasksetProposal:He.nullable(),evaluation:He.nullable(),trainingQualification:He.nullable(),policyVersion:Ke,createdAt:Pt,metadata:Zm}).strict().superRefine((e,t)=>{const n=e.selectedEvidence.map(a=>`${a.evidence.id}:${a.evidence.contentHash}`);new Set(n).size!==n.length&&t.addIssue({code:"custom",message:"selected review evidence must be unique",path:["selectedEvidence"]}),e.selectedEvidence.some(a=>a.sourcePolicy.state!=="authorized")&&t.addIssue({code:"custom",message:"selected review evidence must be authorized at review time",path:["selectedEvidence"]}),e.classification==="no_action"?(e.nextAuthority!=="none"&&t.addIssue({code:"custom",message:"no-action review receipts require no next authority",path:["nextAuthority"]}),(e.tasksetProposal||e.evaluation||e.trainingQualification)&&t.addIssue({code:"custom",message:"no-action review receipts cannot carry downstream refs"})):(!e.claim||e.selectedEvidence.length===0)&&t.addIssue({code:"custom",message:"actionable review receipts require a claim and selected evidence"}),e.classification==="runtime"&&e.nextAuthority!=="runtime_service"&&t.addIssue({code:"custom",message:"runtime classifications route to runtime-service authority",path:["nextAuthority"]}),e.classification==="product"&&e.nextAuthority!=="product_team"&&t.addIssue({code:"custom",message:"product classifications route to product-team authority",path:["nextAuthority"]}),e.classification==="taskset"&&e.nextAuthority!=="human_review"&&t.addIssue({code:"custom",message:"Taskset classifications require human review"}),e.classification==="model_improvement"&&(!e.evaluation||!e.trainingQualification||!["human_review","training_system"].includes(e.nextAuthority))&&t.addIssue({code:"custom",message:"model-improvement classifications require Evaluation and qualification refs plus explicit authority"})});iF.extend({contentHash:Qe}).strict();l({id:Ke,evidence:He,kind:vC,sourceRef:Ke,occurredAt:Pt,payload:le(i(),ce())}).strict();var oF=l({schemaVersion:b("openpond.harnessEvaluationReviewModelDecision.v2"),decision:b("no_action"),reason:po,ignoredEvidence:p(l({id:Ke,reason:i().trim().min(1).max(2e3)}).strict()).max(1e3)}).strict(),rF=l({schemaVersion:b("openpond.harnessEvaluationReviewModelDecision.v2"),decision:b("review"),classification:v(["harness_maintenance","runtime","product","taskset"]),selectedEvidenceIds:p(Ke).min(1).max(1e3),ignoredEvidence:p(l({id:Ke,reason:i().trim().min(1).max(2e3)}).strict()).max(1e3),recurrenceFamily:i().trim().min(1).max(1e3),statement:po,triageLayer:yC,expectedOutcome:po,counterevidence:i().trim().max(1e4),confidence:d().min(0).max(1),candidateDisposition:v(["observe","confirm"]).nullable(),reason:po}).strict().superRefine((e,t)=>{e.classification==="harness_maintenance"!==(e.candidateDisposition!==null)&&t.addIssue({code:"custom",message:"Harness maintenance requires a candidate disposition; external routes require null",path:["candidateDisposition"]})}),sF=l({schemaVersion:b("openpond.harnessEvaluationReviewModelDecision.v2"),decision:b("resolve_candidate"),candidateId:Ke,candidateFingerprint:Qe,selectedEvidenceIds:p(Ke).min(1).max(1e3),ignoredEvidence:p(l({id:Ke,reason:i().trim().min(1).max(2e3)}).strict()).max(1e3),confidence:d().min(0).max(1),reason:po}).strict();ot("decision",[oF,rF,sF]);l({schemaVersion:b("openpond.harnessEvaluationReviewNavigationDecision.v1"),selectedEvidenceIds:p(Ke).min(1).max(50),reason:po}).strict();var hl=le(i(),ce()).default({}),za=d().int().nonnegative(),Ym=i().trim().min(1).max(1e5),SC=l({kind:v(["personal","team"]),id:Ke}).strict(),lF=l({name:Ke,release:He.nullable(),revision:za}).strict();l({schemaVersion:b("openpond.harnessWorkspace.v1"),id:Ke,ownerScope:SC,name:i().trim().min(1).max(240),location:v(["local","hosted"]),sourceRevision:i().trim().min(1).max(500),revision:za,dirty:I(),currentChannel:lF,createdAt:Pt,updatedAt:Pt,metadata:hl}).strict();var Qs=v(["runtime","memory","prompt","skill","agent","product","taskset","training"]),xC=v(["text_instruction","memory","dependency_selection","executable_code","business_logic","financial_logic","permission","connected_app","publication","deployment","training","model_binding","team_or_global"]),kC=l({id:Ke,route:Qs,operation:v(["create","update","delete"]),target:i().trim().min(1).max(2e3),summary:i().trim().min(1).max(2e3),content:i().max(1e6).nullable(),contentHash:Qe.nullable(),effects:p(xC).min(1).max(20)}).strict().superRefine((e,t)=>{if(e.operation==="delete"){(e.content!==null||e.contentHash!==null)&&t.addIssue({code:"custom",message:"delete edits cannot include replacement content",path:["content"]});return}if(e.content===null||e.contentHash===null){t.addIssue({code:"custom",message:"create and update edits require content and contentHash",path:["content"]});return}const n=At(e.content);e.contentHash!==n&&t.addIssue({code:"custom",message:`edit contentHash is ${e.contentHash}; expected ${n}`,path:["contentHash"]})}),wC=l({workspaceId:Ke,revision:za,sourceRevision:i().trim().min(1).max(500),channelRevision:za}).strict(),fo=l({id:Ke,revision:za,contentHash:Qe}).strict();l({schemaVersion:b("openpond.harnessTurnSnapshot.v1"),workspaceId:Ke,workspaceRevision:za,sourceRevision:i().trim().min(1).max(500),channelName:Ke,channelRevision:za,harnessRelease:He,toolCatalogHash:Qe.nullable().optional(),overlay:fo.nullable().optional().default(null)}).strict();var cF=l({schemaVersion:b("openpond.harnessRunOverlay.v1"),id:Ke,runId:Ke,baseHarnessRelease:He,workspace:wC,revision:za,status:v(["active","frozen","abandoned"]),edits:p(kC).max(1e3),createdAt:Pt,updatedAt:Pt,metadata:hl}).strict();cF.extend({contentHash:Qe}).strict();var IC=l({kind:v(["tool_event","recovery","validation","user_turn","work_output","work_receipt"]),id:Ke,contentHash:Qe.nullable()}).strict(),_C=l({id:Ke,kind:v(["dependency","schema","package","file_render","skill","prompt","business_formula","targeted_evaluation","observed_recovery","memory","component_activation"]),description:Ym,required:I()}).strict(),dF=l({schemaVersion:b("openpond.harnessImprovementProposal.v1"),id:Ke,overlay:fo,baseHarnessRelease:He,expectedWorkspace:wC,requestedScope:v(["personal","team","global"]),route:Qs,risk:v(["low","review","restricted"]),effects:p(xC).min(1).max(20),evidence:p(IC).min(1).max(1e3),edits:p(kC).min(1).max(1e3),validationPlan:p(_C).min(1).max(100),expectedOutcome:Ym,createdAt:Pt,metadata:hl}).strict().superRefine((e,t)=>{const n=new Set(e.effects);for(const[a,o]of e.edits.entries()){o.route!==e.route&&t.addIssue({code:"custom",message:"every edit route must match the proposal route",path:["edits",a,"route"]});for(const r of o.effects)n.has(r)||t.addIssue({code:"custom",message:`edit effect ${r} is missing from proposal effects`,path:["edits",a,"effects"]})}new Set(e.validationPlan.map(a=>a.id)).size!==e.validationPlan.length&&t.addIssue({code:"custom",message:"validation plan ids must be unique",path:["validationPlan"]})});dF.extend({contentHash:Qe}).strict();var uF=l({schemaVersion:b("openpond.harnessTargetedValidationReceipt.v1"),id:Ke,proposal:He,validationId:Ke,kind:_C.shape.kind,status:v(["passed","failed","blocked","skipped"]),summary:Ym,evidenceRefs:p(IC).max(1e3),createdAt:Pt,metadata:hl}).strict();uF.extend({contentHash:Qe}).strict();var mF=v(["advanced","retained","conflict","rolled_back"]),pF=l({schemaVersion:b("openpond.harnessAdvanceReceipt.v1"),id:Ke,workspaceId:Ke,ownerScope:SC,proposal:He.nullable(),expectedWorkspaceRevision:za,observedWorkspaceRevision:za,previousChannelRevision:za,nextChannelRevision:za,previousRelease:He.nullable(),nextRelease:He.nullable(),validationReceipts:p(He).max(100),decision:mF,reason:Ym,rollbackOf:He.nullable(),createdAt:Pt,metadata:hl}).strict().superRefine((e,t)=>{const n=e.nextChannelRevision===e.previousChannelRevision+1;["advanced","rolled_back"].includes(e.decision)!==n&&t.addIssue({code:"custom",message:"only successful advancement or rollback increments the channel revision",path:["nextChannelRevision"]}),e.decision==="rolled_back"&&e.rollbackOf===null&&t.addIssue({code:"custom",message:"rollback receipts require rollbackOf",path:["rollbackOf"]}),e.decision!=="rolled_back"&&e.rollbackOf!==null&&t.addIssue({code:"custom",message:"rollbackOf is only valid for rollback receipts",path:["rollbackOf"]})});pF.extend({contentHash:Qe}).strict();var fF=l({schemaVersion:b("openpond.harnessOverlayMergeReceipt.v1"),id:Ke,workspaceId:Ke,baseHarnessRelease:He,leftOverlay:fo,rightOverlay:fo,decision:v(["merged","conflict"]),mergedOverlay:fo.nullable(),conflictTargets:p(i().trim().min(1).max(2e3)).max(1e3),requiresRevalidation:b(!0),createdAt:Pt,metadata:hl}).strict().superRefine((e,t)=>{e.decision==="merged"!=(e.mergedOverlay!==null)&&t.addIssue({code:"custom",message:"merged decisions require a merged overlay; conflicts cannot provide one",path:["mergedOverlay"]}),e.decision==="conflict"!=e.conflictTargets.length>0&&t.addIssue({code:"custom",message:"conflict decisions require conflict targets and merged decisions cannot include them",path:["conflictTargets"]})});fF.extend({contentHash:Qe}).strict();var Qm=i().trim().min(1).max(1e5),ud=le(i(),ce()).default({}),hF=v(["completed_tool_batch","before_model_step","turn_completed","turn_paused"]),CC=l({kind:hF,eventSequence:d().int().nonnegative(),occurredAt:Pt}).strict(),RC=l({id:Ke,sequence:d().int().nonnegative().nullable(),contentHash:Qe}).strict(),gF=v(["tool_failure","retry","recovery","validation","user_turn","reusable_success","completion_detour"]),vF=v(["open","recovered","terminal"]),bF=l({name:i().trim().min(1).max(500),invocationKey:Qe}).strict(),yF=l({schemaVersion:b("openpond.improvementObservation.v1"),id:Ke,runRef:Ke,turnId:Ke,harnessRelease:He,overlay:fo.nullable(),eventRefs:p(RC).min(1).max(100),kind:gF,state:vF,tool:bF.nullable(),deterministicClass:i().trim().min(1).max(500).nullable(),summary:Qm,createdAt:Pt,metadata:ud}).strict().superRefine((e,t)=>{new Set(e.eventRefs.map(n=>n.id)).size!==e.eventRefs.length&&t.addIssue({code:"custom",message:"observation event refs must be unique",path:["eventRefs"]}),["tool_failure","retry","recovery","completion_detour"].includes(e.kind)&&e.tool===null&&t.addIssue({code:"custom",message:`${e.kind} observations require a tool identity`,path:["tool"]})});yF.extend({contentHash:Qe}).strict();var SF=l({schemaVersion:b("openpond.refinementTriggerPolicy.v1"),maxEstimatedCostUsd:d().finite().nonnegative(),cooldownMs:d().int().nonnegative(),maxPendingPlans:d().int().min(1).max(100),maxEvidenceEvents:d().int().min(1).max(1e3),maxProposalEdits:d().int().min(1).max(1e3),maxProposalBytes:d().int().min(1).max(1e7)}).strict(),xF=v(["no_action","route_deterministically","queue_refiner"]),kF=l({schemaVersion:b("openpond.refinementTriggerDecision.v1"),id:Ke,runRef:Ke,turnId:Ke,harnessRelease:He,overlay:fo.nullable(),observations:p(He).max(100),decision:xF,deterministicRoute:Qs.nullable(),suggestedRoutes:p(Qs).max(8),reason:Qm,deduplicationKey:Qe,policy:SF,estimatedMaxCostUsd:d().finite().nonnegative(),pendingPlanCount:d().int().nonnegative(),boundary:CC,cooldownUntil:Pt.nullable(),createdAt:Pt,metadata:ud}).strict().superRefine((e,t)=>{e.estimatedMaxCostUsd>e.policy.maxEstimatedCostUsd&&t.addIssue({code:"custom",message:"estimated Refiner cost exceeds the trigger policy budget",path:["estimatedMaxCostUsd"]}),e.pendingPlanCount>e.policy.maxPendingPlans&&t.addIssue({code:"custom",message:"pending plan count exceeds the trigger policy limit",path:["pendingPlanCount"]}),e.observations.length>e.policy.maxEvidenceEvents&&t.addIssue({code:"custom",message:"trigger observations exceed the evidence budget",path:["observations"]}),e.decision==="route_deterministically"&&e.deterministicRoute===null&&t.addIssue({code:"custom",message:"deterministic decisions require a route",path:["deterministicRoute"]}),e.decision!=="route_deterministically"&&e.deterministicRoute!==null&&t.addIssue({code:"custom",message:"only deterministic decisions may declare a deterministic route",path:["deterministicRoute"]}),e.decision==="no_action"&&e.suggestedRoutes.length>0&&t.addIssue({code:"custom",message:"no-action decisions cannot suggest routes",path:["suggestedRoutes"]}),e.decision!=="no_action"&&e.observations.length===0&&t.addIssue({code:"custom",message:"actionable trigger decisions require observations",path:["observations"]})});kF.extend({contentHash:Qe}).strict();var wF=v(["runtime_service","refiner_model","human_review","evaluation_system","training_system"]),IF=l({schemaVersion:b("openpond.improvementRouteDecision.v1"),id:Ke,trigger:He,route:Qs,authority:wF,automatic:I(),reason:Qm,createdAt:Pt,metadata:ud}).strict().superRefine((e,t)=>{e.automatic&&["human_review","evaluation_system","training_system"].includes(e.authority)&&t.addIssue({code:"custom",message:`${e.authority} routes cannot be marked automatic`,path:["automatic"]}),e.route==="training"&&e.automatic&&e.authority!=="training_system"&&t.addIssue({code:"custom",message:"automatic training routes require training-system authority",path:["authority"]})});IF.extend({contentHash:Qe}).strict();var _F=l({schemaVersion:b("openpond.harnessRefinerOutcome.v1"),id:Ke,trigger:He,decision:v(["no_action","proposed"]),proposal:He.nullable(),reason:Qm,evidenceRefs:p(He).max(100),estimatedCostUsd:d().finite().nonnegative(),createdAt:Pt,metadata:ud}).strict().superRefine((e,t)=>{e.decision==="proposed"!=(e.proposal!==null)&&t.addIssue({code:"custom",message:"proposed Refiner outcomes require a proposal; no-action outcomes cannot include one",path:["proposal"]})});_F.extend({contentHash:Qe}).strict();var CF=v(["applied","retained","declined","conflict","rolled_back"]),RF=l({schemaVersion:b("openpond.improvementApplyReceipt.v1"),id:Ke,proposal:He,beforeOverlay:fo,afterOverlay:fo.nullable(),decision:CF,boundary:CC,validationRefs:p(He).max(100),outcomeEvidenceRefs:p(RC).max(1e3),rollbackOf:He.nullable(),createdAt:Pt,metadata:ud}).strict().superRefine((e,t)=>{e.decision==="applied"!=(e.afterOverlay!==null)&&t.addIssue({code:"custom",message:"applied receipts require an after-overlay; other decisions cannot include one",path:["afterOverlay"]}),e.decision==="rolled_back"!=(e.rollbackOf!==null)&&t.addIssue({code:"custom",message:"only rollback receipts require rollbackOf",path:["rollbackOf"]})});RF.extend({contentHash:Qe}).strict();var PF=i().trim().min(1).max(2e3),Eb=i().trim().min(1).max(1e5),AF=v(["create","update","delete"]),TF=v(["memory","prompt","skill","agent"]),EF=v(["runtime","product","taskset","training"]),jF=v(["no_action","routed","applied","retained","failed"]),MF=v(["not_applicable","pending","passed","rejected","failed"]),OF=v(["not_applicable","pending","passed","failed"]),$F=l({schemaVersion:b("openpond.harnessRefinerActivityReceipt.v1"),id:Ke,runRef:Ke,turnId:Ke,result:jF,decision:v(["no_action","route","propose"]).nullable(),route:Qs.nullable(),operation:AF.nullable(),target:i().trim().min(1).max(2e3).nullable(),summary:PF,evidenceBasis:Rb.nullable(),critiqueStatus:MF,validationStatus:OF,trigger:He,outcome:He.nullable(),proposal:He.nullable(),applyReceipt:He.nullable(),inputHarness:He,outputHarness:He.nullable(),createdAt:Pt}).strict().superRefine((e,t)=>{const n=e.result==="applied"||e.result==="retained";e.result==="no_action"?LS(t,e,{decision:"no_action",route:null,operation:null,target:null,evidenceBasis:null,proposal:null,applyReceipt:null,outputHarness:null,critiqueStatus:"not_applicable",validationStatus:"not_applicable"}):e.result==="routed"?((e.decision!=="route"||!EF.safeParse(e.route).success||e.operation!==null||e.target!==null||e.evidenceBasis===null||e.proposal!==null||e.applyReceipt!==null||e.outputHarness!==null)&&t.addIssue({code:"custom",message:"routed activity requires an external route and evidence basis without proposal state"}),LS(t,e,{critiqueStatus:"not_applicable",validationStatus:"not_applicable"})):n?((e.decision!=="propose"||!TF.safeParse(e.route).success||e.operation===null||e.target===null||e.evidenceBasis===null||e.proposal===null||e.applyReceipt===null)&&t.addIssue({code:"custom",message:"applied and retained activity requires complete proposal state"}),e.result==="applied"&&e.outputHarness===null&&t.addIssue({code:"custom",message:"applied activity requires the advanced Harness release",path:["outputHarness"]}),e.result==="applied"&&(e.critiqueStatus!=="passed"||e.validationStatus!=="passed")&&t.addIssue({code:"custom",message:"applied activity requires passed critique and validation"}),e.result==="retained"&&e.outputHarness!==null&&t.addIssue({code:"custom",message:"retained activity cannot report a new Harness release",path:["outputHarness"]})):(e.decision!==null||e.route!==null||e.operation!==null||e.target!==null||e.evidenceBasis!==null||e.outcome!==null||e.proposal!==null||e.applyReceipt!==null||e.outputHarness!==null)&&t.addIssue({code:"custom",message:"failed activity cannot claim a decision, route, proposal, or release transition"}),e.result!=="failed"&&e.outcome===null&&t.addIssue({code:"custom",message:"terminal Refiner decisions require an outcome reference",path:["outcome"]})});$F.extend({contentHash:Qe}).strict();var NF=v(["unresolved","confirmed","resolved","rejected","expired"]),DF=l({kind:v(["applied_change","later_success","manual_rejection","source_revoked","expired"]),reason:Eb,evidenceRefs:p(He).max(1e3),resolvedAt:Pt}).strict(),HF=l({schemaVersion:b("openpond.harnessRefinementCandidate.v1"),id:Ke,ownerScope:Tb,workspaceRef:Ke,fingerprint:Qe,recurrenceFamily:i().trim().min(1).max(1e3),statement:Eb,status:NF,occurrences:p(jc).max(1e3),counterevidence:p(jc).max(1e3),sourceReviews:p(He).min(1).max(100),relatedHarnessReleases:p(He).max(100),firstSeenAt:Pt,lastSeenAt:Pt,lastReviewedAt:Pt,expiresAt:Pt,resolution:DF.nullable(),createdAt:Pt,updatedAt:Pt}).strict().superRefine((e,t)=>{kr(t,e.occurrences,"occurrences"),kr(t,e.counterevidence,"counterevidence"),kr(t,e.sourceReviews,"sourceReviews"),kr(t,e.relatedHarnessReleases,"relatedHarnessReleases");const n=new Set(e.occurrences.map(o=>o.occurrenceKey));e.counterevidence.some(o=>n.has(o.occurrenceKey))&&t.addIssue({code:"custom",message:"supporting occurrences and counterevidence must be disjoint",path:["counterevidence"]});const a=e.status==="unresolved"||e.status==="confirmed";a&&e.occurrences.length===0&&t.addIssue({code:"custom",message:"actionable candidates require at least one supporting occurrence",path:["occurrences"]}),a&&[...e.occurrences,...e.counterevidence].some(o=>o.sourcePolicy.state!=="authorized")&&t.addIssue({code:"custom",message:"actionable candidates may contain only currently authorized evidence",path:["occurrences"]}),a!==(e.resolution===null)&&t.addIssue({code:"custom",message:"only resolved, rejected, or expired candidates require a resolution",path:["resolution"]}),e.status==="expired"&&e.resolution?.kind!=="expired"&&t.addIssue({code:"custom",message:"expired candidates require an expired resolution",path:["resolution","kind"]}),e.status==="rejected"&&e.resolution&&!["manual_rejection","source_revoked"].includes(e.resolution.kind)&&t.addIssue({code:"custom",message:"rejected candidates require a rejection or revocation resolution",path:["resolution","kind"]}),e.status==="resolved"&&e.resolution&&!["applied_change","later_success"].includes(e.resolution.kind)&&t.addIssue({code:"custom",message:"resolved candidates require applied-change or later-success evidence",path:["resolution","kind"]}),BF(t,e)});HF.extend({contentHash:Qe}).strict();var LF=v(["created","merged","rejected","expired","reopened","resolved"]),qF=l({schemaVersion:b("openpond.harnessRefinementCandidateLifecycleReceipt.v1"),id:Ke,candidateId:Ke,decision:LF,beforeCandidate:He.nullable(),afterCandidate:He,review:He,addedEvidence:p(jc).max(1e3),removedEvidence:p(He).max(1e3),reason:Eb,createdAt:Pt}).strict().superRefine((e,t)=>{e.decision==="created"!=(e.beforeCandidate===null)&&t.addIssue({code:"custom",message:"only candidate creation omits the previous candidate reference",path:["beforeCandidate"]}),e.beforeCandidate&&e.beforeCandidate.contentHash===e.afterCandidate.contentHash&&t.addIssue({code:"custom",message:"candidate lifecycle transitions must change candidate content",path:["afterCandidate"]}),["created","reopened"].includes(e.decision)&&e.addedEvidence.length===0&&t.addIssue({code:"custom",message:`${e.decision} candidate transitions require added evidence`,path:["addedEvidence"]}),e.addedEvidence.some(a=>a.sourcePolicy.state!=="authorized")&&t.addIssue({code:"custom",message:"candidate transitions may add only authorized evidence",path:["addedEvidence"]}),kr(t,e.addedEvidence,"addedEvidence"),kr(t,e.removedEvidence,"removedEvidence");const n=new Set(e.removedEvidence.map(a=>Cg(a)));e.addedEvidence.some(a=>n.has(Cg(a.evidence)))&&t.addIssue({code:"custom",message:"candidate lifecycle evidence cannot be added and removed together",path:["removedEvidence"]})});qF.extend({contentHash:Qe}).strict();var UF=l({schemaVersion:b("openpond.harnessCrossRunRefinementRequest.v1"),id:Ke,ownerScope:Tb,workspaceRef:Ke,candidate:He,candidateFingerprint:Qe,review:He,admittedHarness:He,evidence:p(jc).min(1).max(1e3),capabilities:Pb,deduplicationKey:Qe,createdAt:Pt}).strict().superRefine((e,t)=>{e.evidence.some(a=>a.sourcePolicy.state!=="authorized")&&t.addIssue({code:"custom",message:"cross-run refinement requires currently authorized evidence",path:["evidence"]}),kr(t,e.evidence,"evidence"),Object.values(e.capabilities).some(Boolean)||t.addIssue({code:"custom",message:"cross-run refinement requires at least one available Harness capability",path:["capabilities"]});const n=zF(e);e.deduplicationKey!==n&&t.addIssue({code:"custom",message:`cross-run refinement deduplicationKey is ${e.deduplicationKey}; expected ${n}`,path:["deduplicationKey"]})});UF.extend({contentHash:Qe}).strict();function zF(e){return At({schemaVersion:"openpond.harnessCrossRunRefinementIdentity.v1",workspaceRef:e.workspaceRef,candidateFingerprint:e.candidateFingerprint,admittedHarness:e.admittedHarness})}function LS(e,t,n){for(const[a,o]of Object.entries(n))t[a]!==o&&e.addIssue({code:"custom",message:`${a} must be ${String(o)}`,path:[a]})}function kr(e,t,n){const a=t.map(o=>Cg(o));new Set(a).size!==a.length&&e.addIssue({code:"custom",message:`${n} references must be unique`,path:[n]})}function Cg(e){if(!e||typeof e!="object"||Array.isArray(e))return String(e);const t=e;if(typeof t.occurrenceKey=="string")return t.occurrenceKey;const n=t.evidence;if(n&&typeof n=="object"&&!Array.isArray(n)){const a=n;return`${String(a.id)}:${String(a.contentHash)}`}return`${String(t.id)}:${String(t.contentHash)}`}function BF(e,t){const n=[["firstSeenAt",t.firstSeenAt],["lastSeenAt",t.lastSeenAt],["lastReviewedAt",t.lastReviewedAt],["updatedAt",t.updatedAt],["expiresAt",t.expiresAt]];for(let a=1;a<n.length;a+=1){const o=n[a-1],r=n[a];Date.parse(o[1])<=Date.parse(r[1])||e.addIssue({code:"custom",message:`${r[0]} must not precede ${o[0]}`,path:[r[0]]})}Date.parse(t.createdAt)>Date.parse(t.updatedAt)&&e.addIssue({code:"custom",message:"updatedAt must not precede createdAt",path:["updatedAt"]})}l({path:i().min(1).max(2e3),offset:d().int().nonnegative().default(0),length:d().int().positive().max(65536).default(16384)}).strict();var PC=i().regex(/^[a-z][a-z0-9_-]{0,119}$/),AC=i().min(1).max(2e3).refine(e=>!e.includes("\\")&&!e.includes(":")&&!e.startsWith("/")&&e.split("/").every(t=>t!==""&&t!=="."&&t!==".."),"workflow references require portable relative paths"),FF=l({id:PC,label:i().trim().min(1).max(240),description:i().max(4e3),inputSchema:le(i(),ce()),invocation:ot("kind",[l({kind:b("instructions"),instructions:i().min(1).max(1e5).refine(e=>!!e.trim())}).strict(),l({kind:b("agent_action"),actionId:i().trim().min(1).max(240)}).strict()]),skillPaths:p(AC).max(100)}).strict();l({schemaVersion:b("openpond.profileWorkflows.v1"),workflows:p(FF).max(1e3)}).strict();var VF=l({id:i().trim().min(1).max(240),agentId:i().regex(/^[a-zA-Z0-9_-]{1,240}$/),sourceActionId:i().trim().min(1).max(240),inputSchema:le(i(),ce())}).strict();l({schemaVersion:b("openpond.profileWorkflowActions.v1"),actions:p(VF).max(200)}).strict();l({schemaVersion:b("openpond.profileWorkflowBinding.v1"),profileId:i().trim().min(1).max(240),sourceRevision:i().trim().min(1).max(240),harnessRelease:He,catalogHash:Qe,workflowId:PC}).strict();l({schemaVersion:b("openpond.profileComponentBinding.v1"),profileId:i().trim().min(1).max(240),sourceRevision:i().trim().min(1).max(240),harnessRelease:He,target:ot("kind",[l({kind:b("profile")}).strict(),l({kind:b("skill"),skillPath:AC}).strict(),l({kind:b("agent_action"),actionId:i().trim().min(1).max(240)}).strict()])}).strict();var im=i().min(1).max(2e3).refine(e=>!e.includes("\\")&&!e.includes(":")&&!e.startsWith("/")&&e.split("/").every(t=>t!==""&&t!=="."&&t!==".."),"source paths must be portable relative paths");i().regex(/^[a-z][a-z0-9_-]{0,119}$/);var KF={type:"object",properties:{},additionalProperties:!1};l({name:i().trim().min(1).max(240).optional(),description:i().max(4e3).optional(),skillPaths:p(im).max(100).optional(),assetPaths:p(im).max(100).optional()}).strict();l({actionId:i().trim().min(1).max(240),name:i().trim().min(1).max(240),description:i().max(4e3).default(""),inputSchema:le(i(),ce()).default(KF),skillPaths:p(im).max(100).default([]),assetPaths:p(im).max(100).default([])}).strict();const WF="openpond.connectedEvidence.v1",GF="connected-evidence-1",tu={files:100,sourceBytes:32*1024*1024,events:1e5,sessions:1e3,boundaries:5e3},Aa=i().min(1).max(500),uc=i().regex(/^[a-f0-9]{64}$/),JF=i().datetime().nullable(),nu=d().int().nonnegative().nullable(),TC=v(["native_chat","native_work","codex","claude_code","hermes","openclaw","opencode","grok_build","pi","oh_my_pi"]),ZF=l({invocationId:Aa,inputTokens:nu,outputTokens:nu,cachedInputTokens:nu,totalTokens:nu,provenance:v(["billed_invocation","reported_invocation","reported_cumulative"])}).strict(),qS=l({id:Aa,sequence:d().int().nonnegative(),occurredAt:JF,kind:v(["message","tool_call","tool_result","compaction","artifact","terminal","usage","unknown"]),role:v(["user","assistant","system","tool"]).nullable(),callId:Aa.nullable(),parentId:Aa.nullable(),content:Ko(),usage:ZF.nullable()}).strict(),YF=l({id:Aa,familyKey:Aa,projection:v(["turn","conversation"]),requestEventId:Aa,start:d().int().nonnegative(),end:d().int().positive(),inputHash:uc,outputHash:uc.nullable(),revisionHash:uc,terminal:v(["completed","failed","cancelled","unknown"]),coverage:l({answer:I(),context:v(["retained","compacted","unknown"]),process:v(["retained","partial","absent"]),artifacts:v(["retained","references_only","absent"]),replay:b("unavailable"),gaps:p(i().max(500)).max(100)}).strict()}).strict();l({schemaVersion:b(WF),normalizerVersion:b(GF),origin:TC,sessionId:Aa,branchId:Aa.nullable(),parentSessionId:Aa.nullable(),exporterVersion:i().max(200).nullable(),acquisition:l({machineId:Aa,sourceInstanceId:Aa}).strict().optional(),sourceFiles:p(l({path:Aa,contentHash:uc,sizeBytes:d().int().nonnegative()}).strict()).max(tu.files),events:p(qS).max(tu.events),unmappedEvents:p(qS).max(tu.events),boundaries:p(YF).max(tu.boundaries),warnings:p(i().max(500)).max(100),contentHash:uc}).strict();const QF=l({schemaVersion:b("openpond.humanResultView.v1"),executionId:i().min(1),executionHash:i().regex(/^[a-f0-9]{64}$/),selection:p(_n).max(1e4),coverage:l({pending:d().int().nonnegative(),submitted:d().int().nonnegative(),accepted:d().int().nonnegative(),rejected:d().int().nonnegative(),cancelled:d().int().nonnegative()}).strict(),results:p(l({review:_n,decision:_n.nullable(),attemptIds:p(i().min(1)).min(1).max(2),mode:v(["individual","pairwise"]),origin:v(["hosted_retained","recorded_evidence","owner_attested_local","native_local"]),status:v(["pending","submitted","accepted","rejected","cancelled"]),grader:_n,answers:p(Zs).max(100)}).strict()).max(1e4)}).strict(),US=QF.extend({contentHash:i().regex(/^[a-f0-9]{64}$/)}).strict(),om=i().regex(/^[a-f0-9]{64}$/),Mc=i().min(1).max(240),au={feedbackKey:Mc,criterionId:Mc},XF=ot("kind",[l({...au,kind:b("normalized_score"),minimum:d().finite(),maximum:d().finite(),passThreshold:d().min(0).max(1).optional()}).strict(),l({...au,kind:b("boolean")}).strict(),l({...au,kind:b("category")}).strict(),l({...au,kind:b("preference_score"),tieScore:d().min(0).max(1).nullable()}).strict()]),zS=l({execution:W,resultHash:om,reviews:p(l({review:_n,decision:_n}).strict()).min(1).max(1e4)}).strict(),EC=l({rules:p(XF).min(1).max(100),baseline:zS,candidate:zS}).strict().superRefine((e,t)=>{new Set(e.rules.map(n=>n.feedbackKey)).size!==e.rules.length&&t.addIssue({code:"custom",message:"Select each Human feedback key once."})}),BS=l({manifest:uo,result:mo}).strict(),FS=l({id:Mc,manifestHash:om,resultHash:om}).strict(),e5=l({schemaVersion:b("openpond.humanComparisonProjection.v1"),teamId:Mc,projectId:Mc,selections:EC,original:l({baseline:FS,candidate:FS}).strict(),humanResults:l({baseline:US,candidate:US}).strict(),baseline:BS,candidate:BS}).strict(),Rg=e5.extend({contentHash:om}).strict();function vh(e){throw new pi(e,409)}function t5(e,t){const n=Rg.parse(e),{contentHash:a,...o}=n;a!==dt(o)&&vh("human_comparison_projection_invalid");for(const r of["baseline","candidate"]){const s=Pr(n[r]),c=s.manifest.lineage,m=c?.humanProjection,u=n.original[r],f=n.selections[r];(!c||!m||m.originalManifest.id!==u.id||m.originalManifest.contentHash!==u.manifestHash||m.selectionHash!==dt(f)||m.rulesHash!==dt(n.selections.rules)||dt(c.execution)!==dt(f.execution)||s.manifest.teamId!==n.teamId||n.humanResults[r].contentHash!==f.resultHash)&&vh("human_comparison_projection_lineage_changed");const{contentHash:h,...x}=n.humanResults[r];(dt(x)!==h||x.executionId!==f.execution.id||x.executionHash!==f.execution.contentHash||dt(x.selection)!==dt(f.reviews.map(k=>k.review)))&&vh("human_comparison_human_result_changed")}return n}const jC=l({adapterId:T,placement:v(["local","remote","colocated","provider_native"]),runtimeVersion:i().trim().min(1).max(200),capabilityReceipt:D}).strict(),MC=l({maxTurns:d().int().positive().max(1e5),timeoutMs:d().int().positive().max(864e5),maxOutputBytes:d().int().positive().max(25e7),maximumSpendUsd:d().nonnegative().nullable()}).strict(),n5=l({schemaVersion:b("openpond.runManifest.v1"),id:T,harnessRelease:W,tasksetRelease:W,model:Am,runtimeTarget:jC,limits:MC,approval:l({id:T,contentHash:D}).strict().nullable(),createdAt:ye,metadata:Mn}).strict();n5.extend({contentHash:D}).strict();const a5=l({schemaVersion:b("openpond.attemptReceipt.v1"),id:T,runManifest:W,taskId:T,seed:i().trim().min(1).max(500),terminal:I(),failureClass:Wc.nullable(),outputHash:D.nullable(),traceHash:D,artifactRefs:p(ja).max(1e5),graderEvidenceRefs:p(ja).max(1e4),startedAt:ye,completedAt:ye,latencyMs:d().int().nonnegative(),costUsd:d().nonnegative().nullable(),legacyAttemptRef:T.nullable().default(null),metadata:Mn}).strict(),i5=a5.extend({contentHash:D}).strict(),o5=l({schemaVersion:b("openpond.evaluationResult.v1"),id:T,runManifest:W,harnessRelease:W,tasksetRelease:W,model:Am,receiptRefs:p(W).min(1).max(1e6),attemptCount:d().int().positive(),rewardEligibleCount:d().int().nonnegative(),terminalCount:d().int().nonnegative(),meanScore:d().min(0).max(1).nullable(),failureCounts:le(Wc,d().int().nonnegative()),authoredMetric:ub.optional(),metadata:Mn}).strict(),r5=o5.extend({contentHash:D}).strict(),s5=l({schemaVersion:b("openpond.harnessCompatibility.v1"),id:T,baseHarnessRelease:W,candidateHarnessRelease:W,tasksetRelease:W,environmentHash:D,toolContractHash:D,policyHash:D,graderInterfaceHash:D,metadata:Mn}).strict();s5.extend({contentHash:D}).strict();const jb=v(["scored","unscorable"]),Xm=v(["policy","environment","collector","verifier","provider","host","user","scheduler"]),OC=v(["completed","policy_failure","incomplete_output","task_deadline","environment_failure","collector_failure","verifier_failure","provider_failure","host_failure","infrastructure_timeout","cancelled"]),l5=l({schemaVersion:b("openpond.environmentRelease.v1"),id:T,revision:d().int().positive(),contract:b_,actionSchemaRef:bn.nullable(),observationSchemaRef:bn.nullable(),stateSchemaRef:bn.nullable(),artifactCollection:l({maxArtifacts:d().int().positive().max(1e5),maxTotalBytes:d().int().positive().max(1e10)}).strict(),adapterConformanceHashes:le(T,D),metadata:Mn}).strict(),Mb=l5.extend({contentHash:D}).strict(),c5=v(["collected","missing","skipped","failed"]),VS=v(["not_requested","passed","failed"]),d5=l({requiredOutputPath:i().trim().min(1).max(2e3).nullable(),collectedPath:i().trim().min(1).max(4e3).nullable(),declaredMediaType:i().trim().min(1).max(200).nullable(),detectedMediaType:i().trim().min(1).max(200).nullable(),artifact:ja.nullable(),status:c5,parseStatus:VS,schemaStatus:VS,errorCode:T.nullable(),failureOwner:Xm.nullable(),evidenceRefs:p(ja).max(1e4),metadata:Mn}).strict(),u5=l({schemaVersion:b("openpond.artifactManifest.v1"),id:T,attemptRef:W,entries:p(d5).max(1e5),createdAt:ye,metadata:Mn}).strict();u5.extend({contentHash:D}).strict();const m5=l({schemaVersion:b("openpond.verifierSetRelease.v1"),id:T,revision:d().int().positive(),graders:p(I_).min(1).max(1e3),isolation:l({processBoundary:v(["same_process","isolated_process","container"]),networkPolicy:b("none"),defaultTimeoutMs:d().int().positive().max(3e5)}).strict(),calibrationReceiptRefs:p(W).max(1e4),metadata:Mn}).strict(),Ob=m5.extend({contentHash:D}).strict(),p5=l({verifierId:T,verifierVersion:i().trim().min(1).max(100),status:jb,rawScore:d().finite().nullable(),normalizedScore:d().min(0).max(1).nullable(),weight:d().nonnegative().max(1e3),passed:I(),hardGate:I(),rewardEligible:I(),rewardContribution:d().min(0).max(1).nullable(),failureOwner:Xm.nullable(),feedback:p(i().max(2e4)).max(1e3),visibleEvidenceRefs:p(ja).max(1e4),privilegedEvidenceRefs:p(ja).max(1e4),metadata:Mn}).strict().superRefine((e,t)=>{e.status==="scored"&&e.normalizedScore===null&&t.addIssue({code:"custom",message:"A scored component requires a normalized score.",path:["normalizedScore"]}),e.status==="unscorable"&&(e.normalizedScore!==null||e.rewardEligible)&&t.addIssue({code:"custom",message:"An unscorable component cannot contribute reward.",path:["status"]})}),$C=l({schemaVersion:b("openpond.rewardReceipt.v1"),id:T,attemptRef:W,verifierSetRef:W,artifactManifestRef:W,status:jb,reward:d().min(0).max(1).nullable(),learningEligible:I(),passed:I(),outcomeClass:OC,failureOwner:Xm.nullable(),components:p(p5).min(1).max(1e4),visibleEvidenceRefs:p(ja).max(1e5),privilegedEvidenceRefs:p(ja).max(1e5),supersedes:W.nullable(),createdAt:ye,metadata:Mn}).strict();function NC(e,t){e.status==="scored"&&(e.reward===null||!e.learningEligible)&&t.addIssue({code:"custom",message:"A scored receipt requires a reward and is learning-eligible.",path:["status"]}),e.status==="unscorable"&&(e.reward!==null||e.learningEligible)&&t.addIssue({code:"custom",message:"An unscorable receipt has null reward and is not learning-eligible.",path:["status"]})}$C.superRefine(NC);$C.extend({contentHash:D}).strict().superRefine(NC);const f5=ot("kind",[l({kind:b("model"),model:Am,configurationHash:D}).strict(),l({kind:b("fixture")}).strict()]),h5=ot("kind",[l({kind:b("taskset"),environmentRelease:W,verifierSetRelease:W,policyHash:D}).strict(),l({kind:b("harness"),harnessRelease:W}).strict()]),DC=l({receiptId:T,taskId:T,seed:i().trim().min(1).max(500),fixtureId:T.nullable()}).strict(),g5=l({schemaVersion:b("openpond.tasksetRunManifest.v1"),id:T,tasksetRelease:W,packageHash:D,execution:h5,profileEvaluation:Ys.optional(),policy:f5,gradingRole:b("evaluation"),metricPolicy:id,population:p(DC).min(1).max(1e5),runtimeTarget:jC,limits:MC,createdAt:ye,metadata:Mn}).strict().superRefine((e,t)=>{new Set(e.population.map(n=>n.receiptId)).size!==e.population.length&&t.addIssue({code:"custom",path:["population"],message:"Run receipt identities must be unique."}),e.population.some(n=>n.fixtureId!==null!=(e.policy.kind==="fixture"))&&t.addIssue({code:"custom",path:["population"],message:"Only fixture runs require a fixture identity for every member."}),e.profileEvaluation&&(e.execution.kind!=="harness"||e.execution.harnessRelease.id!==e.profileEvaluation.harnessRelease.id||e.execution.harnessRelease.contentHash!==e.profileEvaluation.harnessRelease.contentHash)&&t.addIssue({code:"custom",path:["profileEvaluation"],message:"Profile evaluation must execute its exact bound Harness release."})}),ep=g5.safeExtend({contentHash:D}),v5=l({schemaVersion:b("openpond.profileEvaluationComparison.v1"),id:T,tasksetRelease:W,populationHash:D,environmentHash:D,metricPolicyHash:D,limitsHash:D,members:p(l({runManifest:W,metricResultHash:D,source:Ys,policy:ep.shape.policy,score:d().min(0).max(1).nullable()}).strict()).min(2).max(100),createdAt:ye}).strict(),b5=v5.extend({contentHash:D}).strict(),y5=l({profileId:T,sourceRevision:i().trim().min(1).max(240),harnessRelease:W}).strict(),S5=l({kind:v(["run","suite","comparison"]),id:T,contentHash:D}).strict(),x5=l({schemaVersion:b("openpond.profileEvaluationReport.v1"),id:T,createdAt:ye,testedSources:p(y5).min(1).max(100),tasksetReleases:p(W).min(1).max(100),metricPolicyHashes:p(D).min(1).max(100),modelConfigurationHashes:p(D).min(1).max(100),evidence:p(S5).min(1).max(100),summary:l({totalChecks:d().int().nonnegative(),passedChecks:d().int().nonnegative(),failedChecks:d().int().nonnegative(),unscoredChecks:d().int().nonnegative(),meanScore:d().min(0).max(1).nullable()}).strict()}).strict().superRefine((e,t)=>{const{summary:n}=e;n.passedChecks+n.failedChecks+n.unscoredChecks!==n.totalChecks&&t.addIssue({code:"custom",path:["summary"],message:"Report check counts must add up."}),new Set(e.evidence.map(({kind:a,id:o})=>`${a}:${o}`)).size!==e.evidence.length&&t.addIssue({code:"custom",path:["evidence"],message:"Report evidence must be unique."})}),k5=x5.safeExtend({contentHash:D}),w5=l({schemaVersion:b("openpond.profileEvaluationSuiteRun.v1"),id:T,suiteId:T,suiteHash:D,catalogHash:D,profileId:T,sourceRevision:i().trim().min(1).max(240),harnessRelease:W,members:p(l({definitionId:T,runManifest:W,runHash:D,passed:I(),score:d().min(0).max(1).nullable()}).strict()).min(1).max(1e3),passed:I(),createdAt:ye,completedAt:ye}).strict(),I5=w5.extend({contentHash:D}).strict(),HC=l({schemaVersion:b("openpond.optimizerTrainingSample.v1"),tokenIds:p(d().int().nonnegative()).min(2).max(32768),mask:p(I()).min(2).max(32768),logprobs:p(d().finite()).min(2).max(32768),temperatures:p(d().positive().finite()).min(2).max(32768),envName:i().trim().min(1).max(200),modelRequestId:i().trim().min(1).max(1e3),promptTokenCount:d().int().positive(),completionTokenCount:d().int().positive(),servedPolicyVersion:d().int().nonnegative()}).strict().superRefine((e,t)=>{const n=e.tokenIds.length;for(const[a,o]of[["mask",e.mask],["logprobs",e.logprobs],["temperatures",e.temperatures]])o.length!==n&&t.addIssue({code:"custom",path:[a],message:`${a} must align with tokenIds`});e.promptTokenCount+e.completionTokenCount!==n&&t.addIssue({code:"custom",path:["completionTokenCount"],message:"prompt and completion token counts must span tokenIds"}),e.mask.filter(a=>!a).length!==e.promptTokenCount&&t.addIssue({code:"custom",path:["mask"],message:"promptTokenCount must equal the non-trainable mask count"}),e.mask.filter(Boolean).length!==e.completionTokenCount&&t.addIssue({code:"custom",path:["mask"],message:"completionTokenCount must equal the trainable mask count"})}),_5=l({id:T,environmentRelease:W,status:v(["completed","failed","timed_out","cancelled"]),startedAt:ye,completedAt:ye,traceRefs:p(ja).max(1e4),metadata:Mn}).strict(),C5=l({receiptRef:W,status:jb,value:d().min(0).max(1).nullable(),learningEligible:I(),passed:I(),outcomeClass:OC,failureOwner:Xm.nullable(),components:le(T,d().min(0).max(1).nullable())}).strict(),LC=l({schemaVersion:b("openpond.canonicalRolloutRecord.v1"),id:T,attemptRef:W,artifactManifestRef:W,tasksetRelease:W,environmentRelease:W,verifierSetRelease:W,harnessRelease:W,taskId:T,split:Xa,model:Am,seed:i().trim().min(1).max(500),reward:C5,traceRef:ja,optimizerSample:HC.nullable(),environmentExecutions:p(_5).min(1).max(1e5),startedAt:ye,completedAt:ye,metadata:Mn}).strict();function qC(e,t){e.reward.status==="scored"&&(e.reward.value===null||!e.reward.learningEligible)&&t.addIssue({code:"custom",path:["reward","status"],message:"A scored rollout requires a numeric, learning-eligible reward."}),e.reward.status==="unscorable"&&(e.reward.value!==null||e.reward.learningEligible)&&t.addIssue({code:"custom",path:["reward","status"],message:"An unscorable rollout has no reward and cannot be learning-eligible."})}LC.superRefine(qC);l({...LC.shape,contentHash:D}).strict().superRefine(qC);const R5=i().regex(/^(0|-?[1-9][0-9]*)$/).max(20).refine(e=>{if(e.length>20||!/^(0|-?[1-9][0-9]*)$/.test(e))return!1;const t=BigInt(e);return t>=-(1n<<63n)&&t<1n<<63n},"SQL integers must fit signed 64-bit storage."),UC=vt([cl(),i().max(262144),d().finite(),l({integer:R5}).strict(),l({blobBase64:i().max(349528).regex(/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/)}).strict()]),KS=i().min(1).max(128).refine(e=>!e.includes("\0")),P5=l({tables:p(l({name:KS,columns:p(l({name:KS,type:v(["INTEGER","REAL","TEXT","BLOB"])}).strict()).min(1).max(128),rows:p(p(UC).max(128)).max(4096)}).strict()).max(64)}).strict().superRefine((e,t)=>{const n=new Set;for(const[a,o]of e.tables.entries()){const r=o.name.toLowerCase();(n.has(r)||r.startsWith("sqlite_"))&&t.addIssue({code:"custom",path:["tables",a,"name"],message:"Table names must be unique and outside SQLite's reserved namespace."}),n.add(r),new Set(o.columns.map(s=>s.name.toLowerCase())).size!==o.columns.length&&t.addIssue({code:"custom",path:["tables",a,"columns"],message:"Column names must be unique."}),o.rows.some(s=>s.length!==o.columns.length)&&t.addIssue({code:"custom",path:["tables",a,"rows"],message:"Each row must match the declared columns."})}}),WS=l({schemaVersion:b("openpond.sqlExecution.v1"),snapshot:P5,sql:i().min(1).max(65536).refine(e=>!e.includes("\0")),maxRows:d().int().min(1).max(4096),maxResultBytes:d().int().min(256).max(262144)}).strict();ot("status",[l({status:b("completed"),columns:p(i()).max(128),rows:p(p(UC).max(128)).max(4096)}).strict(),l({status:b("rejected"),code:v(["invalid_query","multiple_statements","result_too_large","memory_limit"])}).strict()]);const iu=l({scope:v(["input","initialState","state","arguments"]),path:p(i().min(1).max(256)).max(16)}).strict(),GS={id:i().min(1).max(128),operation:v(["step","collect"]),toolName:i().min(1).max(500).optional(),timeoutMs:d().int().min(1).max(2e4)},A5=ot("kind",[l({...GS,kind:b("sqlite.v1"),sql:iu,snapshot:iu,maxRows:WS.shape.maxRows,maxResultBytes:WS.shape.maxResultBytes}).strict(),l({...GS,kind:b("javascript.v1"),source:iu,cases:iu,exportName:i().regex(/^[A-Za-z_$][A-Za-z0-9_$]*$/).max(128),maxCases:d().int().min(1).max(32),maxResultBytes:d().int().min(256).max(262144)}).strict()]).superRefine((e,t)=>{e.operation==="step"!=(e.toolName!==void 0)&&t.addIssue({code:"custom",path:["toolName"],message:"Only step services require a declared tool name."}),e.operation==="collect"&&(e.kind==="sqlite.v1"?[e.sql,e.snapshot]:[e.source,e.cases]).some(a=>a.scope==="arguments")&&t.addIssue({code:"custom",message:"Collection has no tool arguments."})}),T5=l({schemaVersion:b("openpond.javascriptEnvironment.v1"),id:i().trim().min(1).max(500),revision:d().int().positive(),module:bn.refine(e=>e.visibility==="host_private","Environment code belongs to the execution owner."),tools:p(Xc).min(1).max(200),maxSteps:d().int().min(1).max(1e3),maxStateBytes:d().int().min(1).max(1048576),maxObservationBytes:d().int().min(1).max(262144),operationTimeoutMs:d().int().min(1).max(3e4),executionServices:p(A5).min(1).max(16).optional()}).strict().superRefine((e,t)=>{new Set(e.tools.map(a=>a.name)).size!==e.tools.length&&t.addIssue({code:"custom",path:["tools"],message:"Environment tool names must be unique."}),e.tools.forEach((a,o)=>{pb(a.inputSchema).valid||t.addIssue({code:"custom",path:["tools",o,"inputSchema"],message:"Environment tools require a supported JSON schema."}),a.inputSchemaHash!==dt(a.inputSchema)&&t.addIssue({code:"custom",path:["tools",o,"inputSchemaHash"],message:"Tool schema identity differs from its declared schema."})});const n=e.executionServices??[];new Set(n.map(a=>a.id)).size!==n.length&&t.addIssue({code:"custom",path:["executionServices"],message:"Execution service identities must be unique."}),n.forEach((a,o)=>{const r=e.tools.find(s=>s.name===a.toolName);a.operation==="step"&&!r&&t.addIssue({code:"custom",path:["executionServices",o,"toolName"],message:"Execution services must target a declared tool."}),a.timeoutMs>=Math.min(e.operationTimeoutMs,r?.timeoutMs??e.operationTimeoutMs)&&t.addIssue({code:"custom",path:["executionServices",o,"timeoutMs"],message:"Service budgets must leave time for the authored controller."})})}),E5=T5.safeExtend({contentHash:i().regex(/^[a-f0-9]{64}$/)});v(["create","reset","step","collect","destroy"]);l({state:le(i(),ce()),observation:le(i(),ce())}).strict();var j5=l({schemaVersion:b("openpond.connectedDatasetSource.v1"),kind:b("connected_activity"),id:i().min(1).max(240),profileId:i().min(1).max(240),title:i().min(1).max(500),sourceHash:i().regex(/^[a-f0-9]{64}$/),occurredAt:i().datetime(),licensingStatus:v(["pending","approved","review","blocked"]),secretScanStatus:v(["pending","passed","blocked"]),piiScanStatus:v(["pending","passed","review","blocked"]),origin:TC,sourceId:i().min(1).max(500),sessionId:i().min(1).max(500),normalizerVersion:i().min(1).max(200),projection:v(["turn","conversation"]),ownerUserId:i().min(1).max(500),purpose:b("recorded_evaluation"),metadata:le(i(),ce()).default({})}).strict(),Wa=i().trim().min(1).max(240),ho=i().trim().min(1),Bo=i().trim().min(8).max(256),zC=i().trim().min(1).max(1e3).refine(e=>!e.startsWith("/")&&!e.startsWith("\\")&&!e.split(/[\\/]/).includes(".."),"Artifact paths must be relative and stay inside the Dataset."),er=v(["train","validation","test","frozen_eval"]),M5=l({name:i().trim().min(1).max(500),semanticRole:v(["row_id","cluster_id","prompt","messages","demonstration","chosen","rejected","expected_output","privileged_context","reward","feedback","tag","metadata"]),logicalType:v(["string","integer","float","boolean","json","messages"]),nullable:I(),policy:v(["visible","privileged","metadata"])}),O5=l({schemaVersion:b("openpond.datasetSemanticSchema.v1"),fields:p(M5).min(1).max(1e4),schemaHash:Bo}),$5=l({id:Wa,split:er,path:zC,contentHash:Bo,schemaHash:Bo,sizeBytes:d().int().nonnegative(),rowCount:d().int().positive(),rowGroupCount:d().int().positive()}),$b=l({schemaVersion:b("openpond.datasetArtifact.v1"),id:Wa,tasksetId:Wa,tasksetRevision:d().int().positive(),contentHash:Bo,format:b("parquet"),schema:O5,shards:p($5).min(1).max(1e5),rowCount:d().int().positive(),splitCounts:le(er,d().int().nonnegative()),sourceReceiptRefs:p(Wa).min(1).max(1e5),mappingHash:Bo,qualityReportHash:Bo,createdAt:ho}),N5=l({schemaVersion:b("openpond.datasetArtifactSummary.v1"),artifactId:Wa,tasksetId:Wa,tasksetRevision:d().int().positive(),format:b("parquet"),rowCount:d().int().positive(),splitCounts:le(er,d().int().nonnegative()),sizeBytes:d().int().nonnegative(),contentHash:Bo,available:I(),unavailableReason:i().trim().min(1).max(2e3).nullable(),createdAt:ho}),D5=l({schemaVersion:b("openpond.datasetCatalogItem.v1"),tasksetId:Wa,tasksetRevision:d().int().positive(),artifactId:Wa.nullable(),name:i().trim().min(1).max(500),status:v(["draft","awaiting_disclosure_approval","awaiting_materialization_approval","materializing","validating","needs_review","baselining","ready","blocked","failed","archived"]),storageKind:v(["inline","parquet"]),rowCount:d().int().nonnegative(),splitCounts:le(er,d().int().nonnegative()),sizeBytes:d().int().nonnegative().nullable(),available:I(),unavailableReason:i().trim().min(1).max(2e3).nullable(),createdAt:ho,updatedAt:ho});l({schemaVersion:b("openpond.datasetCatalog.v1"),profileId:Wa,datasets:p(D5),generatedAt:ho});l({schemaVersion:b("openpond.datasetArtifactRegistry.v1"),manifest:$b,profileId:Wa,storageRoot:i().trim().min(1).max(4e3),relativeManifestPath:zC,available:I(),unavailableReason:i().trim().min(1).max(2e3).nullable(),verifiedAt:ho.nullable(),createdAt:ho,updatedAt:ho});l({split:er.nullable().default(null),cursor:i().trim().min(1).max(2e3).nullable().default(null),limit:d().int().min(1).max(100).default(25),columns:p(i().trim().min(1).max(500)).max(100).default([])});l({schemaVersion:b("openpond.datasetRowPage.v1"),tasksetId:Wa,tasksetRevision:d().int().positive(),artifactHash:Bo,split:er.nullable(),rows:p(le(i(),ce())).max(100),nextCursor:i().max(2e3).nullable(),totalRows:d().int().nonnegative(),returnedRows:d().int().nonnegative()});var H5=l({schemaVersion:b("openpond.datasetStorageSettings.v1"),datasetStorePath:i().trim().min(1).max(4e3),updatedAt:ho}),L5=l({id:Wa,label:i().trim().min(1).max(500),path:i().trim().min(1).max(4e3),datasetStorePath:i().trim().min(1).max(4e3),kind:v(["local","network","removable","cache"]),configured:I(),mounted:I(),writable:I(),totalBytes:d().int().nonnegative().nullable(),freeBytes:d().int().nonnegative().nullable()});l({schemaVersion:b("openpond.datasetStorageState.v1"),settings:H5,storageRoots:p(L5)});l({datasetStorePath:i().trim().min(1).max(4e3)});var Ls=i().trim().min(1).max(240),q5=i().trim().min(1),Xs=i().trim().min(8).max(256),U5=le(i(),ce()).default({}),z5=i().trim().min(7).max(256),B5=v(["pending","approved","review","blocked"]),tp=l({id:Ls,profileId:Ls,title:i().trim().min(1).max(500),sourceHash:Xs,occurredAt:q5,licensingStatus:B5,secretScanStatus:v(["pending","passed","blocked"]),piiScanStatus:v(["pending","passed","review","blocked"]),metadata:U5}),F5=tp.extend({schemaVersion:b("openpond.huggingFaceDatasetSource.v1"),kind:b("huggingface"),repositoryId:i().trim().regex(/^[^/\s]+\/[^/\s]+$/).max(500),repositoryUrl:i().url().max(2e3),revision:z5,configuration:i().trim().min(1).max(500),upstreamSplits:p(i().trim().min(1).max(500)).min(1).max(1e3),gated:I(),private:I(),declaredLicense:i().trim().min(1).max(500).nullable(),sourceFileHashes:p(Xs).min(1).max(1e5)}),V5=tp.extend({schemaVersion:b("openpond.uploadedFileDatasetSource.v1"),kind:b("uploaded_file"),originalFileNames:p(i().trim().min(1).max(500)).min(1).max(1e3),mediaTypes:p(i().trim().min(1).max(200)).min(1).max(1e3),sourceFileHashes:p(Xs).min(1).max(1e3),totalBytes:d().int().nonnegative(),parserVersion:i().trim().min(1).max(200)}),K5=tp.extend({schemaVersion:b("openpond.generatedDatasetSource.v1"),kind:b("generated"),generatorId:Ls,generatorVersion:i().trim().min(1).max(200),seed:d().int(),generatorHash:Xs}),W5=tp.extend({schemaVersion:b("openpond.learningBatchDatasetSource.v1"),kind:b("learning_batch"),batch:l({id:Ls,revision:d().int().positive(),contentHash:Xs}).strict(),taskDefinition:l({id:Ls,revision:d().int().positive(),contentHash:Xs}).strict(),admittedBy:Ls}),G5=ot("kind",[F5,V5,K5,W5]),J5=l({schemaVersion:b("openpond.harnessActionBinding.v1"),actionId:Ke,modelToolName:i().trim().min(1).max(64).regex(/^[a-zA-Z][a-zA-Z0-9_-]*$/),description:i().trim().min(1).max(1e3),inputSchema:le(i(),ce()),actionSchemaHash:Qe,agentRelease:He,implementationHash:Qe,runtimeBindingId:Ke,capabilityReceiptHash:Qe,sideEffect:v(["read","write"]),studentVisible:I(),timeoutMs:d().int().positive().max(36e5),episodeArgumentBindings:p(l({argument:Ke,source:b("case_id")}).strict()).max(20).default([])}).strict(),Mt=i().trim().min(1).max(240),Nb=i().trim().min(1),Z5=i().trim().min(8).max(256),Db=i().trim().regex(/^[a-f0-9]{64}$/),Y5=i().trim().regex(/^[A-Za-z_$][A-Za-z0-9_$]*$/),hi=le(i(),ce()).default({}),np=Mt.nullable();function md(e){const t=e.trim().replaceAll("\\","/");return!t||t.startsWith("/")||t==="."||t===".."?!1:!t.split("/").some(n=>!n||n==="."||n==="..")}function Q5(e){const t=e.trim();return t.length>0&&t!=="."&&t!==".."&&!t.includes("/")&&!t.includes("\\")&&!t.includes("\0")}var el=er,BC=v(["general","benchmark"]),FC=l({schemaVersion:b("openpond.tasksetBenchmark.v1"),definitionId:Mt,releaseId:Mt,releaseHash:Db,managedReleasePath:i().trim().min(1).max(1e3).refine(md,"Benchmark release paths must remain relative."),adaptationSplit:el,evaluationSplit:el,primaryMetric:v(["foreground_tokens","success_rate","latency_ms","cost_usd"]),qualityGate:v(["none","non_regression","all_pass"]),source:v(["builtin","imported"]),metadata:hi}),VC=l({schemaVersion:b("openpond.tasksetPreferenceComparisonBinding.v1"),releaseId:Mt,releaseHash:Db,publishedAt:Nb,metadata:hi}),X5=l({status:v(["pending","granted","denied","revoked"]),scope:v(["metadata_only","selected_turns","full_session"]),grantedBy:np,grantedAt:Nb.nullable(),purpose:b("task_authoring_and_evaluation")}),KC=l({schemaVersion:b("openpond.trainingSource.v1"),id:Mt,profileId:Mt,sessionId:Mt,turnIds:p(Mt).max(1e3).default([]),workspaceId:np,sourceHash:Z5,clusterKey:Mt,title:i().trim().min(1).max(500),occurredAt:Nb,consent:X5,connectedAppIds:p(Mt).max(100).default([]),secretScanStatus:v(["pending","passed","blocked"]),piiScanStatus:v(["pending","passed","review","blocked"]),licensingStatus:v(["pending","approved","review","blocked"]),metadata:hi}),WC=vt([KC,G5,j5]),Hb=l({policyVisibleFields:p(Mt).max(1e3).default([]),privilegedFields:p(Mt).max(1e3).default([]),hiddenGraderRefs:p(Mt).max(100).default([]),connectedAppScopes:p(Mt).max(100).default([])}),e3=l({id:Mt,sourceRefId:Mt,artifactRef:i().trim().min(1).max(4e3).refine(md,"Task asset references must be safe relative paths."),fileName:i().trim().min(1).max(500).refine(Q5,"Task asset file names must not contain path separators."),mediaType:i().trim().min(1).max(200),sha256:Db,sizeBytes:d().int().nonnegative().max(25e7),split:el,metadata:hi}),t3=l({path:i().trim().min(1).max(1e3).refine(md,"Required output paths must stay inside the Work output directory."),mediaType:i().trim().min(1).max(200),schemaRef:Mt.nullable().optional(),maxBytes:d().int().positive().max(1e7).optional(),metadata:hi}),ap=l({schemaVersion:b("openpond.taskData.v1"),id:Mt,clusterKey:Mt,split:el,input:le(i(),ce()),expectedOutput:le(i(),ce()).nullable(),policyVisibleContext:le(i(),ce()).default({}),privilegedContextRef:np,sourceRefs:p(Mt).min(1).max(100),assets:p(e3).max(1e3).optional(),resourceRefs:p(Mt).max(1e3).optional(),requiredOutputs:p(t3).max(100).optional(),tags:p(Mt).max(100).default([]),metadata:hi}),n3=l({id:Mt,kind:v(["file","catalog","configuration","code_module"]),path:i().trim().min(1).max(1e3).refine(md,"Environment resource paths must remain relative."),mediaType:i().trim().min(1).max(200).nullable().optional(),visibility:v(["policy_visible","policy_hidden","privileged"]),required:I(),metadata:hi}),gl=l({id:Mt,taskId:np,sourceRefs:p(Mt).min(1).max(100),artifactRef:Mt,approved:I(),confidence:d().min(0).max(1),metadata:hi}),GC=gl.extend({kind:b("demonstration"),prompt:i().max(1e5).nullable().default(null),response:i().max(2e5).nullable().default(null)}),JC=gl.extend({kind:b("preference"),prompt:i().max(1e5),chosen:i().max(2e5),rejected:i().max(2e5),rationale:i().max(1e5).nullable().default(null)}),ZC=gl.extend({kind:b("correction"),original:i().max(2e5),corrected:i().max(2e5),rationale:i().max(1e5).nullable().default(null)}),YC=gl.extend({kind:b("feedback"),feedback:i().max(1e5),polarity:v(["positive","negative","mixed","neutral"])}),QC=gl.extend({kind:b("reward"),task:i().max(1e5),rules:p(l({id:Mt,points:d().finite(),condition:i().trim().min(1).max(1e5)})).min(1).max(1e3),otherwisePoints:d().finite(),executable:I()}),XC=gl.extend({kind:b("label"),labelKind:b("rubric"),task:i().max(1e5),criteria:p(l({id:Mt,label:i().trim().min(1).max(500),description:i().trim().min(1).max(1e5)})).min(1).max(1e3),calibrationExamples:l({positive:i().trim().min(1).max(2e5),negative:i().trim().min(1).max(2e5),boundary:i().trim().min(1).max(2e5)})});ot("kind",[GC,JC,ZC,YC,QC,XC]);var eR=l({demonstrations:p(GC).max(1e5).default([]),preferences:p(JC).max(1e5).default([]),corrections:p(ZC).max(1e5).default([]),feedback:p(YC).max(1e5).default([]),rewards:p(QC).max(1e5).default([]),labels:p(XC).max(1e5).default([])}),tR=l({protocolVersion:b("openpond.taskEnvironment.v1"),kind:v(["chat","agent","program","stateful_harness","work"]),entrypoint:i().trim().min(1).max(1e3),stateful:I(),deterministicSeeds:I(),toolNames:p(Mt).max(200).default([]),actionBindings:p(J5).max(200).optional(),lifecycle:p(v(["create","reset","step","grade","cleanup"])).min(1),defaultTimeoutMs:d().int().positive().max(36e5),networkPolicy:v(["none","declared_read_only","declared_scoped"]),resources:p(n3).max(1e4).optional(),metadata:hi}),Lb=l({schemaVersion:b("openpond.tasksetCapabilities.v1"),taskKind:v(["chat","single_agent","multi_agent","custom_program"]),supportedSignals:p(v(["demonstration","preference","correction","feedback","reward","label"])),compatibleMethods:p(v(["none","retrieval","sft","dpo","grpo","ppo","sdft","opd","opsd","sdpo"])),rewardKinds:p(v(["none","exact","deterministic","model_judge","human"])),requiresTools:I(),requiresState:I(),requiresPrivilegedGrading:I(),environmentPlacements:p(v(["local","remote","colocated","provider_native"])),exportable:I(),portabilityBlockers:p(i().trim().min(1).max(2e3)).default([])}),ip=l({id:Mt,version:i().trim().min(1).max(100),label:i().trim().min(1).max(500),weight:d().min(0).max(1e3).default(1),hardGate:I().default(!1),rewardEligible:I().default(!1),privileged:I().default(!1),metadata:hi}),a3=ip.extend({kind:v(["content","schema","file","diff","test","runtime_event","state"]),config:le(i(),ce())}),i3=ip.extend({kind:b("model_judge"),rubric:i().trim().min(1).max(5e4),judge:Ab,calibrationFixtureRefs:p(Mt).min(1).max(500),calibrationStatus:v(["pending","passed","failed"]),temperature:d().min(0).max(2).default(0)}),o3=ip.extend({kind:b("human"),form:od.optional(),rubric:i().trim().min(1).max(5e4),reviewerRole:i().trim().min(1).max(500)}),r3=ip.extend({kind:b("custom_verifier"),runtime:x_.optional(),module:i().trim().min(1).max(1e3).refine(md,"Custom verifier modules must use a safe relative path."),exportName:Y5,timeoutMs:d().int().positive().max(3e5),networkPolicy:b("none")}),op=vt([a3,i3,o3,r3]),qb=v(["positive","negative","boundary","adversarial","prompt_injection","infrastructure_failure"]),nR=l({id:Mt,taskId:Mt,label:qb,output:le(i(),ce()),infrastructureError:i().trim().min(1).max(1e4).nullable(),expectedPassed:I(),expectedRewardEligible:I(),metadata:hi});i().regex(/^[a-f0-9]{64}$/);var s3=l({environment:Mb,verifierSet:Ob,javascript:E5}).strict();l({actions:p(l({name:i().min(1).max(64),arguments:le(i(),ce())}).strict()).max(1e3)}).strict();var l3=l({environment:Mb,verifierSet:Ob}).strict(),c3=l({scopeId:i().trim().min(1).max(500),modelId:i().trim().min(1).max(500)}).strict();l({schemaVersion:b("openpond.modelTasksetDerivation.v1"),owner:c3,root:sa,parent:sa}).strict();var d3=l({taskset:C_,taskDefinition:cd,rewardBinding:Fm,rewards:p(sd).min(1).max(100),assets:p(Gm).max(1e3),executionResources:l3.optional(),execution:s3.optional(),instructionMode:b("per_task").optional()}).strict(),u3=l({batch:xb,evidence:p(Wm).min(1).max(1e4),decisions:p(Sb).min(1).max(1e4),sources:p(Km).min(1).max(1e4),assets:p(Gm).max(1e3)}).strict(),m3=64*1024*1024,p3=l({asset:di,base64:i().max(Math.ceil(m3/3)*4)}).strict();l({schemaVersion:b("openpond.connectedRewardCalibrationProjection.v1"),sourceReward:Xo,fixtureSet:di,calibrationCheck:ct,fixture:J_,fixtureHash:i().regex(/^[a-f0-9]{64}$/),checkResultHash:i().regex(/^[a-f0-9]{64}$/),independentCalibrationTask:b(!0),closureRef:di,graderId:i().min(1).max(240).optional()}).strict();var f3=d3.omit({taskset:!0,executionResources:!0}),h3=l({schemaVersion:b("openpond.tasksetPackage.v1"),taskset:C_,environment:Mb,verifierSet:Ob,files:p(p3).max(1e4),modelResources:f3.optional(),learningResources:u3.optional()}).strict(),jr=h3.extend({contentHash:i().regex(/^[a-f0-9]{64}$/)}).strict(),ji=i().trim().min(1).max(500),Ru=i().regex(/^[a-f0-9]{64}$/),g3=uB.pick({portableProjectId:!0,name:!0,objective:!0,defaultBaseModel:!0,defaultDestinationId:!0,sourceRevision:!0,sourceUpdatedAt:!0}).extend({trainingSetup:Cb.omit({tasksetRef:!0,rewardBindingRef:!0,tasksetRelease:!0})}).strict();l({schemaVersion:b("openpond.tasksetPackagePublication.v1"),operationId:ji,modelProjectId:ji,expectedProjectEtag:Ru.nullable(),name:i().trim().min(1).max(200),description:i().max(5e3),buildIntent:v(["demonstrations","preferences","verifiable_reward","rubric","discovery"]),methodHint:v(["sft","dpo","grpo","ppo"]).nullable(),package:jr,modelConfiguration:g3.optional(),evaluationPackage:jr.optional(),selection:v(["select","attach"]).optional()}).strict().refine(e=>e.selection!=="attach"||e.modelConfiguration===void 0,"Attachment-only publication cannot replace Model configuration.").refine(e=>!e.evaluationPackage||e.modelConfiguration!==void 0&&e.modelConfiguration.trainingSetup.evaluationTasksetRef!=null&&At(e.modelConfiguration.trainingSetup.evaluationTasksetRef)===At(S4(e.evaluationPackage.taskset)),"Evaluation package must match the selected immutable evaluation in Model configuration.");l({schemaVersion:b("openpond.tasksetPackageReceipt.v1"),teamId:ji,modelProjectId:ji,operationId:ji,taskset:em,packageHash:Ru,hostedTasksetId:ji,projectEtag:Ru,project:Jm.optional(),selection:v(["select","attach"]).optional(),evaluation:l({taskset:em,packageHash:Ru,hostedTasksetId:ji}).strict().optional()}).strict();l({schemaVersion:b("openpond.tasksetPackageReadback.v1"),teamId:ji,modelProjectId:ji,package:jr}).strict();l({schemaVersion:b("openpond.tasksetReleasePackageReadback.v1"),teamId:ji,release:em,package:jr}).strict();var Oi=i().trim().min(1).max(240),Oc=i().trim().min(1),rm=i().trim().min(8).max(256),aR=le(i(),ce()).default({}),v3=Oi.nullable(),b3=["work_capabilities","work_environment","work_list_files","work_read_file","work_read_document","work_write_file","work_write_docx","work_edit_file","work_delete_file","work_exec","work_save_output","work_stop"],y3=v(["draft","awaiting_disclosure_approval","awaiting_materialization_approval","materializing","validating","needs_review","baselining","ready","blocked","failed","archived"]),iR=v(["demonstrations","preferences","verifiable_reward","rubric","discovery"]),ta=i().trim().max(1e5),oR=ot("kind",[l({kind:b("demonstrations"),behavior:ta,examples:p(l({id:Oi,prompt:ta,response:ta})).max(1e3).default([])}),l({kind:b("preferences"),preference:ta,pairs:p(l({id:Oi,prompt:ta,chosen:ta,rejected:ta,rationale:ta})).max(1e3).default([])}),l({kind:b("verifiable_reward"),task:ta,rules:p(l({id:Oi,points:d().finite(),condition:ta})).max(1e3).default([]),otherwisePoints:d().finite().default(0)}),l({kind:b("rubric"),task:ta,criteria:p(l({id:Oi,label:i().trim().max(500),description:ta})).max(1e3).default([]),positiveExample:ta,negativeExample:ta,boundaryExample:ta})]),S3=l({path:i().trim().min(1).max(1e3),role:v(["environment","verifier","fixture"]),content:i().max(25e4)}),rR=l({primaryMethod:v(["sft","dpo","grpo","ppo","sdft","opsd","sdpo"]),bootstrap:l({method:b("sft"),purpose:b("trajectory_bootstrap"),demonstrationRefs:p(Oi).min(1).max(1e5),limitations:p(i().trim().min(1).max(5e3)).min(1).max(100)}).nullable()}),sR=v(["taskset_not_ready","demonstrations_missing","preference_pairs_missing","preference_pairs_invalid","executable_reward_missing","reward_not_calibrated","reward_model_missing","value_model_required","frozen_eval_missing"]),x3=l({method:v(["sft","dpo","grpo","ppo"]),status:v(["recommended","compatible","needs_dataset_work"]),reasonCodes:p(sR).default([]),reasons:p(i().trim().min(1).max(5e3)).default([])}),JS=l({code:Oi,message:i().trim().min(1).max(5e3),path:i().trim().max(2e3).nullable()}),lR=l({schemaVersion:b("openpond.tasksetReadiness.v1"),tasksetId:Oi,tasksetHash:rm,ready:I(),recommendedMethod:v(["none","retrieval","sft","dpo","grpo","ppo","sdft","opd","opsd","sdpo"]),trainingPath:rR.nullable().default(null),methodReadiness:p(x3).default([]),compatibleDestinationClasses:p(v(["export","custom","hosted_managed"])),blockers:p(JS).default([]),advisories:p(JS).default([]),warnings:p(i().trim().min(1).max(5e3)).default([]),generatedAt:Oc}),cR=l({attempt:d().int().positive(),summary:i().trim().min(1).max(5e3),createdAt:Oc}),k3=l({schemaVersion:b("openpond.taskAuthoringProvenance.v1"),model:Ab.nullable(),modelConfig:aR,skillHash:rm,promptTemplateVersion:i().trim().min(1).max(200),buildIntent:iR.default("demonstrations"),buildSpecification:oR.nullable().default(null),evidenceHashes:p(rm).max(1e5),tasksetSdkVersion:i().trim().min(1).max(100),sourceCommit:i().trim().min(1).max(256).nullable(),repairHistory:p(cR).max(1e3),createdAt:Oc}),$c=l({schemaVersion:b("openpond.taskset.v1"),id:Oi,revision:d().int().positive().default(1),profileId:Oi,profileRelease:yB.nullable().optional(),createImproveRunId:v3.default(null),name:i().trim().min(1).max(500),objective:i().trim().max(2e4),purpose:BC.default("general"),benchmark:FC.nullable().default(null),preferenceComparison:VC.nullable().default(null),status:y3,sourceRefs:p(WC).min(1).max(1e5),datasetArtifact:$b.nullable().optional(),policy:Hb,environment:tR,capabilities:Lb,metrics:id.optional(),tasks:p(ap).max(1e6),graders:p(op).min(1).max(1e3),graderFixtures:p(nR).max(1e5),learningSignals:eR,authoringProvenance:k3,readiness:lR.nullable(),contentHash:rm,createdAt:Oc,updatedAt:Oc,metadata:aR}).superRefine((e,t)=>{e.purpose==="benchmark"&&!e.benchmark&&t.addIssue({code:"custom",message:"Benchmark Tasksets require an immutable benchmark binding.",path:["benchmark"]}),e.purpose!=="benchmark"&&e.benchmark&&t.addIssue({code:"custom",message:"Only benchmark Tasksets may carry a benchmark binding.",path:["benchmark"]}),e.datasetArtifact&&e.tasks.length>0&&t.addIssue({code:"custom",message:"Artifact-backed Tasksets may not duplicate canonical rows inline.",path:["tasks"]}),!e.datasetArtifact&&e.tasks.length===0&&t.addIssue({code:"custom",message:"A Taskset requires inline tasks or a Dataset artifact manifest.",path:["tasks"]})});function dR(e){return e.schemaVersion==="openpond.trainingSource.v1"}function w3(e,t={}){const n=$c.safeParse(e);if(!n.success)return{valid:!1,taskset:null,computedHash:null,issues:n.error.issues.map(s=>({code:"schema_invalid",severity:"error",message:s.message,path:s.path.join(".")}))};const a=n.data,o=[];R3(a,o),_3(a,o),P3(a,o),T3(a,o),E3(a,o),I3(a,o,t),j3(a,o),M3(a.capabilities,o,a),A3(a,o);const r=uR(a);return a.contentHash!==r&&o.push({code:"content_hash_mismatch",severity:"error",message:`Taskset contentHash is ${a.contentHash}, expected ${r}.`,path:"contentHash"}),{valid:!o.some(s=>s.severity==="error"),taskset:a,computedHash:r,issues:o}}function I3(e,t,n){const a=e.graders.length>0&&e.graders.every(s=>s.kind==="human");!a&&!e.graderFixtures.length&&!(n.allowUnscoredOnlineRewardBatch&&e.metadata.trainingMethod==="grpo"&&e.metadata.learning)&&t.push({code:"grader_fixtures_required",severity:"error",message:"Taskset admission requires authored grader fixtures.",path:"graderFixtures"});const o=new Set(e.tasks.map(s=>s.id)),r=new Set(["positive","negative","boundary","adversarial","prompt_injection","infrastructure_failure"]);for(const s of e.graderFixtures)!e.datasetArtifact&&!o.has(s.taskId)&&t.push({code:"grader_fixture_task_missing",severity:"warning",message:`Fixture ${s.id} references a task outside this Taskset revision (${s.taskId}).`,path:`graderFixtures.${s.id}.taskId`}),r.delete(s.label),s.label==="infrastructure_failure"&&!s.infrastructureError&&t.push({code:"infrastructure_fixture_error_missing",severity:"error",message:`Infrastructure fixture ${s.id} must declare an infrastructure error.`,path:`graderFixtures.${s.id}.infrastructureError`});for(const s of a?[]:r)t.push({code:"grader_fixture_missing",severity:"warning",message:`Taskset does not include the optional ${s} grader calibration fixture.`,path:"graderFixtures"})}function _3(e,t){const n=e.datasetArtifact;if(!n)return;(n.tasksetId!==e.id||n.tasksetRevision!==e.revision)&&t.push({code:"dataset_artifact_taskset_mismatch",severity:"error",message:"Dataset artifact identity does not match its Taskset revision.",path:"datasetArtifact"});const a=Object.values(n.splitCounts).reduce((m,u)=>m+u,0),o=n.shards.reduce((m,u)=>m+u.rowCount,0);(a!==n.rowCount||o!==n.rowCount)&&t.push({code:"dataset_artifact_row_count_mismatch",severity:"error",message:"Dataset artifact row, split, and shard counts do not agree.",path:"datasetArtifact.rowCount"});const r=new Map;for(const m of n.shards)r.set(m.split,(r.get(m.split)??0)+m.rowCount);for(const[m,u]of Object.entries(n.splitCounts))(r.get(m)??0)!==u&&t.push({code:"dataset_artifact_split_count_mismatch",severity:"error",message:`Dataset artifact ${m} shard counts do not match its manifest.`,path:`datasetArtifact.splitCounts.${m}`});const{contentHash:s,...c}=n;At(c)!==n.contentHash&&t.push({code:"dataset_artifact_hash_mismatch",severity:"error",message:"Dataset artifact manifest content hash is invalid.",path:"datasetArtifact.contentHash"})}function C3(e){return uR(e)}function uR(e){const{contentHash:t,status:n,readiness:a,updatedAt:o,...r}=e;return At(r)}function R3(e,t){for(const[n,a]of e.sourceRefs.entries())dR(a)&&a.consent.status!=="granted"&&t.push({code:"source_consent_missing",severity:"error",message:`Source ${a.id} is not consented.`,path:`sourceRefs.${n}.consent.status`}),a.secretScanStatus!=="passed"&&t.push({code:"source_secret_scan",severity:"error",message:`Source ${a.id} did not pass secret scanning.`,path:`sourceRefs.${n}.secretScanStatus`}),a.piiScanStatus!=="passed"&&t.push({code:"source_pii_scan",severity:"error",message:`Source ${a.id} has unresolved PII policy.`,path:`sourceRefs.${n}.piiScanStatus`}),a.licensingStatus!=="approved"&&t.push({code:"source_license",severity:"error",message:`Source ${a.id} has unresolved licensing policy.`,path:`sourceRefs.${n}.licensingStatus`})}function P3(e,t){const n=new Map;for(const o of e.tasks){const r=n.get(o.clusterKey)??new Set;r.add(o.split),n.set(o.clusterKey,r)}for(const[o,r]of n)r.size>1&&t.push({code:"split_cluster_contamination",severity:"error",message:`Source cluster ${o} appears in multiple splits: ${[...r].join(", ")}.`,path:"tasks"});(e.datasetArtifact?e.datasetArtifact.splitCounts.frozen_eval??0:e.tasks.filter(o=>o.split==="frozen_eval").length)===0&&t.push({code:"frozen_eval_missing",severity:"warning",message:"Add an independent test example before training.",path:"tasks"})}function A3(e,t){if(e.environment.kind!=="work")return;e.environment.entrypoint!=="openpond-work-v1"&&t.push({code:"work_entrypoint_invalid",severity:"error",message:"Work Tasksets must use the openpond-work-v1 entrypoint.",path:"environment.entrypoint"}),(!e.environment.lifecycle.includes("reset")||!e.environment.lifecycle.includes("cleanup"))&&t.push({code:"work_reset_lifecycle_missing",severity:"error",message:"Work attempts require reset and cleanup; filesystem state belongs to one attempt.",path:"environment.lifecycle"});const n=new Set(b3),a=e.environment.toolNames.filter(r=>!n.has(r));a.length&&t.push({code:"work_tool_unknown",severity:"error",message:`Work Taskset declares unknown tools: ${a.join(", ")}.`,path:"environment.toolNames"}),e.environment.toolNames.includes("work_save_output")||t.push({code:"work_output_tool_missing",severity:"error",message:"Work Tasksets must declare work_save_output.",path:"environment.toolNames"});for(const r of["create","reset","step","grade","cleanup"])e.environment.lifecycle.includes(r)||t.push({code:"work_lifecycle_incomplete",severity:"error",message:`Work Tasksets require the ${r} lifecycle stage.`,path:"environment.lifecycle"});const o=new Map(e.sourceRefs.map(r=>[r.id,r]));for(const[r,s]of e.tasks.entries()){const c=new Set,m=new Set;for(const[f,h]of(s.assets??[]).entries()){const x=`tasks.${r}.assets.${f}`;c.has(h.id)&&t.push({code:"work_asset_duplicate_id",severity:"error",message:`Task ${s.id} repeats asset id ${h.id}.`,path:`${x}.id`}),m.has(h.fileName)&&t.push({code:"work_asset_duplicate_name",severity:"error",message:`Task ${s.id} repeats staged file name ${h.fileName}.`,path:`${x}.fileName`}),c.add(h.id),m.add(h.fileName),s.sourceRefs.includes(h.sourceRefId)||t.push({code:"work_asset_task_source_missing",severity:"error",message:`Asset ${h.id} references source ${h.sourceRefId} outside task ${s.id}.`,path:`${x}.sourceRefId`});const k=o.get(h.sourceRefId);k?"sourceFileHashes"in k&&!k.sourceFileHashes.includes(h.sha256)&&t.push({code:"work_asset_hash_unregistered",severity:"error",message:`Asset ${h.id} hash is not registered by source ${h.sourceRefId}.`,path:`${x}.sha256`}):t.push({code:"work_asset_source_missing",severity:"error",message:`Asset ${h.id} references missing source ${h.sourceRefId}.`,path:`${x}.sourceRefId`}),k&&"kind"in k&&k.kind==="uploaded_file"&&!k.originalFileNames.includes(h.fileName)&&t.push({code:"work_asset_name_unregistered",severity:"error",message:`Asset ${h.id} file name is not registered by source ${h.sourceRefId}.`,path:`${x}.fileName`}),k&&"kind"in k&&k.kind==="uploaded_file"&&!k.mediaTypes.includes(h.mediaType)&&t.push({code:"work_asset_media_type_unregistered",severity:"error",message:`Asset ${h.id} media type is not registered by source ${h.sourceRefId}.`,path:`${x}.mediaType`}),h.split!==s.split&&t.push({code:"work_asset_split_mismatch",severity:"error",message:`Asset ${h.id} is assigned to ${h.split}, not task split ${s.split}.`,path:`${x}.split`})}const u=new Set;for(const[f,h]of(s.requiredOutputs??[]).entries()){const x=h.path.replaceAll("\\","/"),k=`tasks.${r}.requiredOutputs.${f}.path`;u.has(x)&&t.push({code:"work_output_duplicate_path",severity:"error",message:`Task ${s.id} repeats required output path ${x}.`,path:k}),u.add(x)}(s.requiredOutputs??[]).length===0&&t.push({code:"work_output_missing",severity:"error",message:`Work task ${s.id} must declare at least one required output.`,path:`tasks.${r}.requiredOutputs`})}}function T3(e,t){const n=new Set(e.policy.policyVisibleFields);for(const a of e.policy.privilegedFields)n.has(a)&&t.push({code:"privileged_field_visible",severity:"error",message:`Field ${a} is both policy-visible and privileged.`,path:"policy"});for(const a of e.tasks)a.privilegedContextRef&&Object.keys(a.policyVisibleContext).includes(a.privilegedContextRef)&&t.push({code:"privileged_context_leak",severity:"error",message:`Task ${a.id} exposes its privileged context reference.`,path:`tasks.${a.id}.policyVisibleContext`})}function E3(e,t){const n=new Set;for(const a of e.graders)n.has(a.id)&&t.push({code:"grader_duplicate",severity:"error",message:`Duplicate grader id ${a.id}.`,path:"graders"}),n.add(a.id),a.kind==="model_judge"&&a.rewardEligible&&a.calibrationStatus!=="passed"&&t.push({code:"judge_calibration_pending",severity:"warning",message:`Model judge ${a.id} is selected for reward without a passing advisory calibration report.`,path:`graders.${a.id}`}),a.kind==="model_judge"&&a.calibrationStatus==="passed"&&typeof a.metadata.calibrationEvidenceHash!="string"&&t.push({code:"judge_calibration_evidence_missing",severity:"warning",message:`Model judge ${a.id} declares calibration without an OpenPond fixture evidence hash.`,path:`graders.${a.id}.metadata.calibrationEvidenceHash`}),a.kind==="human"&&a.rewardEligible&&t.push({code:"human_online_reward",severity:"error",message:`Human grader ${a.id} cannot be an online optimizer reward.`,path:`graders.${a.id}`})}function j3(e,t){const n=new Set(e.tasks.map(o=>o.id)),a=new Set(e.sourceRefs.map(o=>o.id));for(const o of[...e.learningSignals.demonstrations,...e.learningSignals.preferences,...e.learningSignals.corrections,...e.learningSignals.feedback,...e.learningSignals.rewards,...e.learningSignals.labels])o.taskId&&!e.datasetArtifact&&!n.has(o.taskId)&&t.push({code:"learning_signal_task_missing",severity:"error",message:`Signal ${o.id} references missing task ${o.taskId}.`,path:`learningSignals.${o.kind}.${o.id}.taskId`}),o.sourceRefs.some(r=>!a.has(r))&&t.push({code:"learning_signal_source_missing",severity:"error",message:`Signal ${o.id} references a source outside the Dataset.`,path:`learningSignals.${o.kind}.${o.id}.sourceRefs`});for(const o of e.learningSignals.preferences)o.chosen.trim()===o.rejected.trim()&&t.push({code:"preference_pair_identical",severity:"error",message:`Preference ${o.id} has identical chosen and rejected responses.`,path:`learningSignals.preferences.${o.id}`});for(const o of e.learningSignals.rewards)o.executable||t.push({code:"reward_not_executable",severity:"warning",message:`Reward ${o.id} is a reviewed specification but has no executable verifier yet.`,path:`learningSignals.rewards.${o.id}.executable`})}function M3(e,t,n){!e.exportable&&e.portabilityBlockers.length===0&&t.push({code:"portability_reason_missing",severity:"error",message:"Non-exportable Tasksets must declare a portability blocker.",path:"capabilities.portabilityBlockers"}),e.compatibleMethods.includes("grpo")&&!e.rewardKinds.some(a=>a==="exact"||a==="deterministic"||a==="model_judge")&&t.push({code:"grpo_reward_missing",severity:"error",message:"GRPO compatibility requires a scalar reward kind.",path:"capabilities.rewardKinds"}),n?.capabilities.compatibleMethods.includes("sft")&&n.learningSignals.demonstrations.length===0&&t.push({code:"sft_demonstrations_missing",severity:"error",message:"SFT compatibility requires approved demonstrations.",path:"learningSignals.demonstrations"}),n?.capabilities.compatibleMethods.includes("dpo")&&n.learningSignals.preferences.length===0&&t.push({code:"dpo_preferences_missing",severity:"error",message:"DPO compatibility requires chosen and rejected response pairs.",path:"learningSignals.preferences"}),n&&(n.capabilities.compatibleMethods.includes("grpo")||n.capabilities.compatibleMethods.includes("ppo"))&&!n.learningSignals.rewards.some(a=>a.executable)&&!n.graders.some(a=>a.rewardEligible&&a.weight>0&&a.kind!=="human")&&t.push({code:"online_reward_not_executable",severity:"error",message:"GRPO/PPO compatibility requires an executable scalar reward.",path:"learningSignals.rewards"})}var Ts=i().trim().min(1).max(240),ZS=i().trim().min(1),O3=i().trim().min(8).max(256),$3=i().trim().regex(/^[A-Za-z_$][A-Za-z0-9_$]*$/),N3=le(i(),ce()).default({});function YS(e){const t=e.trim().replaceAll("\\","/");return!t||t.startsWith("/")||t==="."||t===".."?!1:!t.split("/").some(n=>!n||n==="."||n==="..")}var mR=ap.extend({sourceRefs:p(Ts).max(100).default([])}),pR=v(["draft","validating","needs_review","published"]),D3=l({enabled:I(),candidateCount:d().int().min(2).max(4),minimumSamples:d().int().min(1).max(1e4).default(100),allowTies:I(),allowRejectAll:I(),rubric:i().trim().max(5e4),criteria:p(l({id:Ts,label:i().trim().min(1).max(500),description:i().trim().max(1e4),weight:d().nonnegative().max(1e3)})).max(100)}),H3=l({mode:v(["text","structured_json","artifacts"]),jsonSchema:le(i(),ce()).nullable(),renderer:l({module:i().trim().min(1).max(1e3).refine(YS,"Renderer modules must use a safe relative path."),exportName:$3,configRef:i().trim().min(1).max(1e3).refine(YS,"Renderer configuration must use a safe relative path.").nullable().default(null)}).nullable()}).superRefine((e,t)=>{e.mode==="structured_json"&&!e.jsonSchema&&t.addIssue({code:"custom",message:"Structured JSON output requires a JSON Schema.",path:["jsonSchema"]}),e.mode==="text"&&e.renderer&&t.addIssue({code:"custom",message:"Text output cannot configure an artifact renderer.",path:["renderer"]})}),Ja=l({schemaVersion:b("openpond.tasksetDraft.v1"),id:Ts,revision:d().int().positive(),profileId:Ts,modelScope:l({modelId:Ts,expectedModelRevision:d().int().positive(),source:Y4.optional()}).strict().nullable().default(null),name:i().trim().max(500),objective:i().trim().max(2e4),purpose:BC.default("general"),benchmark:FC.nullable().default(null),preferenceComparison:VC.nullable().default(null),status:pR,sourceRefs:p(WC).max(1e5).default([]),datasetArtifact:$b.nullable().optional(),policy:Hb,environment:tR,output:H3.default({mode:"text",jsonSchema:null,renderer:null}),capabilities:Lb,metrics:id,review:D3,tasks:p(mR).max(1e6).default([]),graders:p(op).max(1e3).default([]),graderFixtures:p(nR).max(1e5).default([]),learningSignals:eR,publishedTasksetRef:l({id:Ts,revision:d().int().positive(),contentHash:O3}).nullable(),createdAt:ZS,updatedAt:ZS,metadata:N3}).superRefine((e,t)=>{e.purpose==="benchmark"&&!e.benchmark&&t.addIssue({code:"custom",message:"Benchmark drafts require an immutable benchmark binding.",path:["benchmark"]}),e.purpose!=="benchmark"&&e.benchmark&&t.addIssue({code:"custom",message:"Only benchmark drafts may carry a benchmark binding.",path:["benchmark"]}),e.datasetArtifact&&e.tasks.length>0&&t.addIssue({code:"custom",message:"Artifact-backed drafts may not duplicate canonical rows inline.",path:["tasks"]}),e.status==="published"&&!e.publishedTasksetRef&&t.addIssue({code:"custom",message:"Published drafts require an immutable Taskset reference.",path:["publishedTasksetRef"]})}),L3=6e6,q3=new Set(["taskset.json","capabilities.json","data/tasks.jsonl","tasks/tasks.jsonl","graders/graders.json","fixtures/grader-fixtures.json","metrics/policy.json","assets/manifest.json","environment/contract.json","environment/taskset.ts","rubrics/preference-review.md","comparisons/policy.json"]);function U3(e){const t=dd.parse(e);return!q3.has(t)&&!t.startsWith("source-artifacts/")}function QS(e,t){const n=U3(e);if(t.byteLength>L3)throw new Error("Taskset draft file content is invalid or exceeds 6 MB.");let a;try{const o=new TextDecoder("utf-8",{fatal:!0,ignoreBOM:!0}).decode(t);a=/[\u0000-\u0008\u000e-\u001f]/.test(o)?XS(t):{encoding:"utf8",data:o}}catch{a=XS(t)}return{path:e,writable:n,content:a,sizeBytes:t.byteLength,contentHash:mC(t)}}function XS(e){let t="";for(let n=0;n<e.length;n+=8192)t+=String.fromCharCode(...e.subarray(n,n+8192));return{encoding:"base64",data:btoa(t)}}var ex=64*1024*1024,fR=i().regex(/^[a-f0-9]{64}$/),z3=l({path:dd,contentHash:fR,sizeBytes:d().int().nonnegative().max(ex),base64:i().max(ex)}).strict(),B3=l({schemaVersion:b("openpond.tasksetDraftWorkspace.v1"),draft:Ja,files:p(z3).max(1e4)}).strict(),Cie=B3.extend({contentHash:fR}).strict(),tx=class extends Error{issues;constructor(e){super(e.map(t=>t.message).join(`
190
- `)),this.name="TasksetDraftPublishError",this.issues=e}};function F3(e){const t=[];e.name.trim()||t.push({code:"name_missing",message:"Name is required.",path:"name"}),e.objective.trim()||t.push({code:"objective_missing",message:"Objective is required.",path:"objective"}),!e.datasetArtifact&&e.tasks.length===0&&t.push({code:"tasks_missing",message:"Add at least one task or Dataset artifact.",path:"tasks"}),e.graders.length===0&&t.push({code:"graders_missing",message:"Add at least one grader.",path:"graders"}),!(e.graders.length>0&&e.graders.every(o=>o.kind==="human"))&&e.graderFixtures.length===0&&t.push({code:"grader_fixtures_missing",message:"Add grader fixtures before publishing.",path:"graderFixtures"});const a=new Set(e.sourceRefs.map(o=>o.id));for(const o of e.tasks)for(const r of o.sourceRefs)a.has(r)||t.push({code:"task_source_missing",message:`Task ${o.id} references missing source ${r}.`,path:`tasks.${o.id}.sourceRefs`});return t}function Rie(e){const t=Ja.parse(e.draft),n=e.now??new Date().toISOString(),a=F3(t);if(a.length)throw new tx(a);const o=t.modelScope?.source;if(o&&e.tasksetId&&e.tasksetId!==o.tasksetId)throw new Error("Taskset draft publication differs from its prepared identity.");const r=o?.tasksetId||e.tasksetId?.trim()||t.publishedTasksetRef?.id||t.id.replace(/-draft$/,""),s=o?.tasksetRevision??(t.publishedTasksetRef?.id===r?t.publishedTasksetRef.revision+1:1),c=t.sourceRefs.length?t.sourceRefs:[V3(t,r,n)],m=c[0].id,u=t.tasks.map(j=>ap.parse({...j,sourceRefs:j.sourceRefs.length?j.sourceRefs:[m],metadata:{exampleOrigin:"expert_authored",...j.metadata}})),f=t.capabilities.compatibleMethods.find(j=>j!=="none"&&j!=="retrieval")??null,h=K3(t),x=t.graders.filter(j=>j.rewardEligible&&j.weight>0&&j.kind!=="human"),k=f===null&&h==="verifiable_reward"&&x.length>0,_=f??(k?"grpo":null),P=$c.parse({schemaVersion:"openpond.taskset.v1",id:r,revision:s,profileId:t.profileId,profileRelease:null,createImproveRunId:null,name:t.name,objective:t.objective,purpose:t.purpose,benchmark:t.benchmark,preferenceComparison:t.preferenceComparison,status:"needs_review",sourceRefs:c,datasetArtifact:t.datasetArtifact??null,policy:t.policy,environment:t.environment,capabilities:k?{...t.capabilities,compatibleMethods:["grpo"],rewardKinds:[...new Set(x.map(j=>j.kind==="model_judge"?"model_judge":"deterministic"))]}:t.capabilities,metrics:t.metrics,tasks:u,graders:t.graders,graderFixtures:t.graderFixtures,learningSignals:t.learningSignals,authoringProvenance:{schemaVersion:"openpond.taskAuthoringProvenance.v1",model:null,modelConfig:{},skillHash:At("openpond-taskset-draft-authoring-v1"),promptTemplateVersion:"taskset-draft-v1",buildIntent:h,buildSpecification:null,evidenceHashes:c.map(j=>j.sourceHash),tasksetSdkVersion:"draft-v1",sourceCommit:null,repairHistory:[],createdAt:n},readiness:null,contentHash:"00000000",createdAt:s===1?t.createdAt:n,updatedAt:n,metadata:{...t.metadata,...o?{modelTasksetAuthoring:o.lineage}:{},tasksetReviewPolicy:t.review,tasksetOutputContract:t.output,...e.sourcePackageHash?{sourcePackageHash:e.sourcePackageHash}:{},..._?{trainingMethod:_}:{},diagnosis:{schemaVersion:"openpond.capabilityDiagnosis.v1",summary:t.objective,stableBehavior:[t.objective],changingKnowledge:[],requiredContext:[],requiredTools:t.environment.toolNames,intervention:_==="dpo"?"preference":_==="grpo"||_==="ppo"?"grpo_rft":_==="sft"?"sft":"no_training",trainingEligible:_!==null,rationale:_?[`The author selected ${_.toUpperCase()} compatibility.`]:["The Taskset is currently configured for evaluation only."],confidence:1}}}),E=$c.parse({...P,contentHash:C3(P)}),$=w3(E).issues.filter(j=>j.severity==="error");if($.length)throw new tx($.map(j=>({code:j.code,message:j.message,path:j.path})));return E}function V3(e,t,n){const a=At({draftId:e.id,draftRevision:e.revision,tasks:e.tasks});return{schemaVersion:"openpond.generatedDatasetSource.v1",kind:"generated",id:`source-${t}`,profileId:e.profileId,title:`${e.name} manual authoring`,sourceHash:a,occurredAt:n,licensingStatus:"approved",secretScanStatus:"passed",piiScanStatus:"passed",generatorId:"openpond-taskset-draft",generatorVersion:"1",seed:0,generatorHash:a,metadata:{draftId:e.id,draftRevision:e.revision}}}function K3(e){return e.learningSignals.preferences.length?"preferences":e.learningSignals.rewards.length?"verifiable_reward":e.learningSignals.labels.length?"rubric":!e.capabilities.compatibleMethods.some(t=>t!=="none"&&t!=="retrieval")&&e.graders.some(t=>t.rewardEligible&&t.weight>0&&t.kind!=="human")?"verifiable_reward":"demonstrations"}var qs=i().regex(/^[a-f0-9]{64}$/),hR=l({providerId:b("claude-code"),configurationHash:qs,executableHash:qs,version:i().regex(/^2\.\d+\.\d+$/),capabilityHash:qs,maximumRequestCostUsd:d().finite().positive().max(1e4),requestTimeoutMs:d().int().min(1e3).max(3e5),maximumTurns:d().int().min(1).max(100),holdOpen:I()}).strict();l({id:i().min(1).max(200),receiptId:i().min(1).max(200),sessionId:Pm(),operationId:i().min(1).max(200),action:v(["message","seal"]),text:i().max(262144).optional()}).strict().superRefine((e,t)=>{e.action==="message"&&!e.text?.trim()&&t.addIssue({code:"custom",message:"A human intervention requires a message."}),e.action==="seal"&&e.text!==void 0&&t.addIssue({code:"custom",message:"Sealing does not add a prompt."})});var W3=l({provider:b("claude-code"),sessionId:Pm(),requestId:i().min(1).max(200),modelId:i().min(1).max(500),runtime:hR,sourceHash:qs,outputHash:qs,traceHash:qs,runtimeEventRefs:p(i().min(1).max(200)).min(1).max(2e4),eventCount:d().int().positive().max(2e4),startedAt:on(),completedAt:on(),cleanupComplete:b(!0)}).strict().superRefine((e,t)=>{(e.runtimeEventRefs.length!==e.eventCount||new Set(e.runtimeEventRefs).size!==e.eventCount)&&t.addIssue({code:"custom",message:"Process event references must match the exact retained trace population."})}),rp=l({id:i().trim().min(1).max(240),revision:d().int().positive(),contentHash:i().regex(/^[a-f0-9]{64}$/),targetId:i().trim().min(1).max(240).nullable()}).strict(),G3=p(l({role:v(["system","user","assistant"]),content:i().max(1e5)}).strict()).max(100).superRefine((e,t)=>{e.reduce((n,a)=>n+a.content.length,0)>1e5&&t.addIssue({code:"custom",message:"Evaluation prompt exceeds 100,000 characters."})}),gR=l({schemaVersion:b("openpond.experimentAttemptGrade.v1"),selectionHash:i().regex(/^[a-f0-9]{64}$/),grades:p(T_).min(1).max(100),score:d().min(0).max(1).nullable(),passed:I(),rewardEligible:I(),gradingStatus:v(["scored","pending","unscorable","not_configured"]),failureClass:uC.nullable(),contentHash:i().regex(/^[a-f0-9]{64}$/)}).strict().superRefine((e,t)=>{const{contentHash:n,...a}=e;At(a)!==n&&t.addIssue({code:"custom",message:"Experiment grading integrity failed."});const o=e.grades.flatMap(r=>r.components);(o.length!==e.grades.length||new Set(o.map(r=>r.graderId)).size!==o.length)&&t.addIssue({code:"custom",message:"Each selected criterion requires exactly one distinct grader result."});for(const r of e.grades){const{contentHash:s,...c}=r;At(c)!==s&&t.addIssue({code:"custom",message:"A retained criterion changed."});for(const m of r.components){const{contentHash:u,...f}=m;At(f)!==u&&t.addIssue({code:"custom",message:"A retained grader result changed."})}}}),an=i().trim().min(1).max(200),wr=i().regex(/^[a-f0-9]{64}$/),vR=ot("kind",[l({kind:b("hosted_chat"),modelId:an,localRuntime:vt([l({providerId:b("custom-openai-compatible"),configurationHash:wr,maximumRequestCostUsd:d().finite().positive().max(1e4),requestTimeoutMs:d().int().min(1e3).max(3e5)}).strict(),hR]).optional(),candidate:l({artifactId:an,contentHash:wr,preparationId:an,dispatchId:an,baseProfileId:an,workerImageDigest:i().regex(/^sha256:[a-f0-9]{64}$/)}).strict().optional(),harness:ld.optional(),messages:G3.optional(),maxOutputTokens:d().int().min(1).max(1e6).default(1e5),temperature:d().min(0).max(2).default(0),topP:d().gt(0).max(1).default(1)}).strict(),l({kind:b("fixture"),fixtureId:an}).strict()]),J3=l({schemaVersion:b("openpond.modelStarterAttemptRequest.v1"),operationId:an,teamId:an,modelProjectId:an.nullable(),project:rp.optional(),taskset:sa,taskId:an,environmentSeed:d().int().min(0).max(2147483647).default(0),policy:vR}).strict();l({modelProjectId:an.nullable(),taskset:sa,afterTaskId:an.optional(),limit:d().int().min(1).max(100).default(25)}).strict();l({modelProjectId:an.nullable(),taskset:sa,available:I(),unavailableReason:i().max(1e3).nullable(),models:p(l({id:an,name:i().max(500),maximumOutputTokens:d().int().min(1).max(1e6).optional()}).strict()).max(200),tasks:p(l({id:an,split:Xa,inputPreview:i().max(500),fixtures:p(l({id:an,label:i().max(200)}).strict()).max(1e3)}).strict()).max(100),nextCursor:an.nullable()}).strict();var Ub=l({schemaVersion:b("openpond.modelStarterAttemptSummary.v1"),id:an,revision:d().int().positive(),request:J3,status:v(["queued","running","cancelling","completed","failed","cancelled"]),policySnapshot:l({modelId:an,provider:an,upstreamModelId:i().min(1).max(500),configurationHash:wr}).strict().nullable(),createdAt:on(),startedAt:on().nullable(),completedAt:on().nullable(),cleanupComplete:I(),resultAvailable:I(),score:d().min(0).max(1).nullable(),gradingStatus:v(["not_started","pending","scored","unscorable","not_configured"]).default("not_started"),passed:I().nullable(),outputPreview:i().max(500).nullable(),error:l({code:an,message:i().max(2e3)}).strict().nullable()}).strict().superRefine((e,t)=>{e.request.policy.kind==="fixture"!=(e.policySnapshot===null)&&t.addIssue({code:"custom",path:["policySnapshot"],message:"Fixture execution must not claim a model identity."}),e.status==="completed"&&(!e.cleanupComplete||!e.resultAvailable||!e.completedAt)&&t.addIssue({code:"custom",message:"Completed attempts require retained results and confirmed cleanup."})});l({modelProjectId:an,afterId:an.optional(),limit:d().int().min(1).max(100).default(25)}).strict();l({items:p(Ub).max(100),nextCursor:an.nullable()}).strict();l({schemaVersion:b("openpond.modelStarterAttemptResult.v1"),attempt:Ub,output:i().max(1048576).nullable(),messages:p(le(i(),ce())).max(4002),composition:Pc.nullable(),grade:T_.nullable().optional(),experimentGrade:gR.nullable().optional(),environment:l({status:v(["completed","budget_exhausted","cancelled","timed_out","policy_failure","environment_failure"]),collected:I(),definition:sa,initialStateHash:wr.nullable(),finalStateHash:wr.nullable(),attemptHash:wr}).strict(),native:bb.optional(),providerRequestIds:p(an).max(1001),contentHash:wr}).strict().superRefine((e,t)=>{const n=e.attempt.request.policy.kind==="hosted_chat"?e.attempt.request.policy.harness:void 0;!!n!=!!e.native&&t.addIssue({code:"custom",path:["native"],message:"Standalone Harness results require their exact native evidence."}),e.native&&(!n||At(n)!==At(e.native.source)||e.native.modelConfigurationHash!==e.attempt.policySnapshot?.configurationHash||e.environment.initialStateHash!==null||e.environment.finalStateHash!==null||e.environment.status==="completed"&&(!e.environment.collected||e.output===null||e.native.partialOutputAvailable||e.native.outputHash!==At(e.output)))&&t.addIssue({code:"custom",path:["native"],message:"Native evidence differs from the admitted source, model or output."}),e.experimentGrade&&((e.grade||e.composition)&&t.addIssue({code:"custom",message:"Selected Experiment grading cannot claim another grade population."}),(!["completed","failed"].includes(e.attempt.status)||!e.attempt.resultAvailable||e.attempt.score!==e.experimentGrade.score||e.attempt.gradingStatus!==e.experimentGrade.gradingStatus||e.attempt.passed!==(e.experimentGrade.score===null?null:e.experimentGrade.passed))&&t.addIssue({code:"custom",message:"Experiment grading differs from its retained attempt summary."})),e.grade&&(e.composition&&t.addIssue({code:"custom",path:["grade"],message:"An ordinary grade cannot also claim a Reward composition."}),(!["completed","failed"].includes(e.attempt.status)||!e.attempt.resultAvailable||e.attempt.score!==e.grade.score||e.attempt.gradingStatus!==e.grade.gradingStatus||e.attempt.passed!==(e.grade.score===null?null:e.grade.passed))&&t.addIssue({code:"custom",path:["grade"],message:"Ordinary grade differs from its terminal attempt summary."}))});var hs=i().trim().min(1).max(240),bh=i().regex(/^[a-f0-9]{64}$/),bR=l({kind:b("hosted_harness"),modelId:hs,candidate:l({artifactId:hs,contentHash:bh,preparationId:hs,dispatchId:hs,baseProfileId:hs,workerImageDigest:i().regex(/^sha256:[a-f0-9]{64}$/)}).strict().optional(),sourceCandidate:Ys.shape.sourceCandidate,reasoningEffort:v(["off","low","medium","high","xhigh","max"]).optional(),profileRepositoryId:hs,source:Ys,modelConfigurationHash:bh,packageHash:bh,externalDatasetBinding:Wo.optional()}).strict().superRefine((e,t)=>{JSON.stringify(e.externalDatasetBinding??null)!==JSON.stringify(e.source.externalDatasetBinding??null)&&t.addIssue({code:"custom",message:"The policy and source must bind the same external Dataset recipe."}),JSON.stringify(e.sourceCandidate??null)!==JSON.stringify(e.source.sourceCandidate??null)&&t.addIssue({code:"custom",message:"The policy and prepared source must bind the same actual source candidate."})}),ci=i().trim().min(1).max(200),yR=i().regex(/^[a-f0-9]{64}$/),Z3=ot("kind",[vR.options[0],l({kind:b("fixture")}).strict(),bR]),vl=l({schemaVersion:b("openpond.modelTasksetRunRequest.v1"),operationId:ci,teamId:ci,modelProjectId:ci.nullable(),name:i().trim().min(1).max(200).optional(),project:rp.optional(),taskset:sa,policy:Z3,population:p(DC).min(1).max(1e4)}).strict().superRefine((e,t)=>{new Set(e.population.map(n=>n.receiptId)).size!==e.population.length&&t.addIssue({code:"custom",path:["population"],message:"Run receipt identities must be unique."}),e.population.some(n=>n.fixtureId!==null!=(e.policy.kind==="fixture"))&&t.addIssue({code:"custom",path:["population"],message:"Only fixture runs require a fixture identity for every member."}),e.population.some(n=>!/^(0|[1-9][0-9]*)$/.test(n.seed)||Number(n.seed)>2147483647)&&t.addIssue({code:"custom",path:["population"],message:"Hosted environment seeds must be integers from 0 to 2147483647."}),e.policy.kind==="hosted_harness"&&e.modelProjectId!==null&&t.addIssue({code:"custom",path:["modelProjectId"],message:"A Harness target retains its released Profile binding separately from Model artifacts."}),e.policy.kind==="hosted_harness"&&new Set(e.population.map(n=>_b([n.taskId,n.seed]))).size!==e.population.length&&t.addIssue({code:"custom",path:["population"],message:"Harness case identities must be unique for each task and seed."})}),SR=l({schemaVersion:b("openpond.modelTasksetRunSummary.v1"),id:ci,revision:d().int().positive(),teamId:ci,modelProjectId:ci.nullable(),name:i().trim().min(1).max(200).optional(),project:rp.optional(),operationId:ci,taskset:sa,policyKind:v(["hosted_chat","fixture","hosted_harness"]),manifestHash:yR,status:v(["queued","running","cancelling","completed","failed","cancelled"]),totalCount:d().int().min(1).max(1e4),counts:l({pending:d().int().nonnegative(),running:d().int().nonnegative(),completed:d().int().nonnegative(),failed:d().int().nonnegative(),cancelled:d().int().nonnegative()}).strict(),createdAt:on(),startedAt:on().nullable(),completedAt:on().nullable(),cleanupComplete:I(),resultAvailable:I(),score:d().min(0).max(1).nullable(),metricName:i().min(1).max(240),error:l({code:ci,message:i().max(2e3)}).strict().nullable()}).strict().superRefine((e,t)=>{Object.values(e.counts).reduce((n,a)=>n+a,0)!==e.totalCount&&t.addIssue({code:"custom",path:["counts"],message:"Run counts must account for the complete population."}),e.status!=="completed"&&e.score!==null&&t.addIssue({code:"custom",path:["score"],message:"Only completed evaluations publish a metric value."}),["completed","failed","cancelled"].includes(e.status)&&(!e.completedAt||e.counts.pending||e.counts.running)&&t.addIssue({code:"custom",message:"Terminal runs require complete population accounting."}),e.status==="cancelled"&&!e.cleanupComplete&&t.addIssue({code:"custom",message:"Cancelled runs require confirmed cleanup."}),e.resultAvailable&&!["completed","failed","cancelled"].includes(e.status)&&t.addIssue({code:"custom",message:"Run results require terminal population accounting."}),e.status==="completed"&&(!e.cleanupComplete||!e.resultAvailable)&&t.addIssue({code:"custom",message:"Completed evaluations require retained results and confirmed cleanup."})}),xR=l({summary:SR,request:vl,manifest:ep,policySnapshot:Ub.shape.policySnapshot}).strict();l({modelProjectId:ci.optional(),projectId:rp.shape.id.optional(),afterId:ci.optional(),limit:d().int().min(1).max(100).default(25)}).strict();l({items:p(SR).max(100),nextCursor:ci.nullable()}).strict();l({schemaVersion:b("openpond.modelTasksetRunResult.v1"),run:xR,receipts:p(i5).min(1).max(1e4),metric:ub.nullable(),contentHash:yR}).strict();var kR=i().min(1).max(200).refine(e=>!["__proto__","prototype","constructor"].includes(e),"Use an ordinary field name."),Y3=p(kR).min(1).max(20),nx=v(["input","output","expectedOutput","evaluatorContext"]),Q3=l({destination:nx,path:Y3,source:nx,sourcePath:p(kR).max(20)}).strict(),zb=p(Q3).max(100).superRefine((e,t)=>{for(const[n,a]of e.entries())e.slice(0,n).some(o=>o.destination===a.destination&&(ax(o.path,a.path)||ax(a.path,o.path)))&&t.addIssue({code:"custom",path:[n,"path"],message:"Mapped destination paths must not overlap."})});function ax(e,t){return e.length<=t.length&&e.every((n,a)=>n===t[a])}var oa=i().trim().min(1).max(200),Mr=i().regex(/^[a-f0-9]{64}$/),pd=l({id:oa,revision:d().int().positive(),contentHash:Mr}).strict(),Li=l({id:oa,version:i().min(1).max(200),contentHash:Mr,name:i().trim().min(1).max(500).optional(),feedbackKey:rd,release:pd.nullable(),mappings:zb.optional()}).strict(),Bb=l({id:oa,version:i().min(1).max(200),contentHash:Mr,mappings:zb}).strict(),Fb=l({operationId:oa,id:oa.optional(),expectedRevision:d().int().nonnegative(),request:vl,maximumCostUsd:d().finite().positive().max(1e4),graders:p(Bb).min(1).max(100).optional()}).strict().superRefine((e,t)=>{e.request.name||t.addIssue({code:"custom",path:["request","name"],message:"Name this Experiment before saving it."}),!!e.id!=e.expectedRevision>0&&t.addIssue({code:"custom",path:["expectedRevision"],message:"An update requires its saved definition revision."}),Math.round(e.maximumCostUsd*1e6)<1&&t.addIssue({code:"custom",path:["maximumCostUsd"],message:"The budget must be at least $0.000001."}),e.graders&&new Set(e.graders.map(n=>n.id)).size!==e.graders.length&&t.addIssue({code:"custom",path:["graders"],message:"Select each grader once."})}),X3=l({schemaVersion:b("openpond.experimentDefinition.v1"),id:oa,teamId:oa,revision:d().int().positive(),request:vl,maximumCostUsd:d().finite().positive().max(1e4),graders:p(Li).min(1).max(100),createdAt:on(),updatedAt:on()}).strict();X3.extend({contentHash:Mr});l({operationId:oa,definition:pd}).strict();l({projectId:oa.optional(),datasetHash:Mr.optional(),search:i().trim().max(200).optional(),status:v(["queued","running","cancelling","completed","failed","cancelled"]).optional(),afterId:oa.optional(),limit:d().int().min(1).max(100).default(30)}).strict();l({definition:pd.nullable(),configurationHash:Mr.optional(),admissionRequestHash:Mr.optional(),sourceExperimentId:oa.optional(),maximumCostUsd:d().finite().positive().max(1e4),graders:p(Li).min(1).max(100)}).strict().superRefine((e,t)=>{e.definition===null&&(!e.configurationHash||!e.admissionRequestHash)&&t.addIssue({code:"custom",path:["configurationHash"],message:"A flat Experiment requires its sealed configuration hash."})});l({operationId:oa,profileRepositoryId:oa,definitionId:oa,modelId:oa,reasoningEffort:v(["off","low","medium","high","xhigh","max"]).optional(),maximumCostUsd:d().finite().positive().max(1e4),externalDatasetBinding:Wo.optional(),sourceCandidate:bR.shape.sourceCandidate}).strict();l({request:vl,manifest:ep,maximumCostUsd:d().finite().positive().max(1e4),graders:p(Li).min(1).max(100)}).strict();var ix=i().trim().min(1).max(200),fd=l({operationId:ix,request:vl,maximumCostUsd:d().finite().positive().max(1e4),graders:p(Bb).min(1).max(100).optional(),sourceExperimentId:ix.optional()}).strict().superRefine((e,t)=>{e.request.name||t.addIssue({code:"custom",path:["request","name"],message:"Name this Experiment before starting it."}),e.operationId!==e.request.operationId&&t.addIssue({code:"custom",path:["request","operationId"],message:"Use one operation identity for this Experiment."}),Math.round(e.maximumCostUsd*1e6)<1&&t.addIssue({code:"custom",path:["maximumCostUsd"],message:"The spending cap must be at least $0.000001."}),e.graders&&new Set(e.graders.map(n=>n.id)).size!==e.graders.length&&t.addIssue({code:"custom",path:["graders"],message:"Select each grader once."})}),Wt=i().trim().min(1).max(200),$i=i().regex(/^[a-f0-9]{64}$/),sm=l({id:Wt,contentHash:$i}).strict(),Pie=l({available:I(),reason:i().max(1e3).nullable(),origin:Vm.nullable()}).strict(),wR=l({schemaVersion:b("openpond.postTrainingAttachment.v1"),binding:l({kind:v(["preparation","policy"]),id:Wt,revision:d().int().positive(),contentHash:$i}).strict(),projectId:Wt.nullable(),automatic:I(),maximumSpendUsd:d().finite().positive().max(1e4),experiments:p(l({id:Wt,configuration:fd}).strict()).min(1).max(20),acceptancePlan:eC.nullable()}).strict().superRefine((e,t)=>{if(new Set(e.experiments.map(n=>n.id)).size!==e.experiments.length&&t.addIssue({code:"custom",message:"Attach each evaluation once."}),e.experiments.reduce((n,a)=>n+a.configuration.maximumCostUsd,0)>e.maximumSpendUsd+1e-9&&t.addIssue({code:"custom",message:"Attached evaluation budgets exceed the total approved budget."}),e.experiments.some(n=>(n.configuration.request.project?.id??null)!==e.projectId)&&t.addIssue({code:"custom",message:"Attached experiments must use the training Project."}),e.acceptancePlan){const n=new Set(e.acceptancePlan.checks.map(o=>o.id));e.acceptancePlan.checks.some(o=>!e.experiments.some(r=>r.id===o.id))&&t.addIssue({code:"custom",message:"Select the frozen Experiment for each acceptance check."}),e.acceptancePlan.maximumSpendUsd+e.experiments.filter(o=>!n.has(o.id)).reduce((o,r)=>o+r.configuration.maximumCostUsd,0)>e.maximumSpendUsd+1e-9&&t.addIssue({code:"custom",message:"Paired acceptance and diagnostic ceilings exceed the approved evaluation budget."})}});function Aie(e){const{modelId:t,candidate:n,...a}=e.request.policy.kind==="fixture"?{modelId:null,candidate:null,...e.request.policy}:e.request.policy;return"modelConfigurationHash"in a&&delete a.modelConfigurationHash,{dataset:{id:e.request.taskset.id,contentHash:e.request.taskset.contentHash},populationHash:At(e.request.population.map(o=>({caseId:o.taskId,seed:o.seed,fixtureId:o.fixtureId}))),executionHash:At({settings:a,graders:e.graders??null})}}var e6=l({baseline:sm,checks:p(l({id:Wt,sourceRunId:Wt,sourceManifestHash:$i,targetConfigurationHash:$i,executionHash:$i,populationHash:$i,evaluator:sm,feedbackKey:Wt,output:v(["boolean","score"]),unit:i().min(1).max(80)}).strict()).min(1).max(100)}).strict(),t6=v(["waiting_for_training","ready","preparing","queued","running","cleaning","completed","failed","blocked","cancelled","budget_exhausted"]),n6=l({schemaVersion:b("openpond.postTrainingSummary.v1"),id:Wt,teamId:Wt,jobId:Wt,revision:d().int().positive(),planHash:$i,automatic:I(),candidate:sm.nullable(),state:t6,total:d().int().positive(),completed:d().int().nonnegative(),failed:d().int().nonnegative(),requiredOutcome:v(["none","pending","passed","failed","blocked"]),reason:i().max(500).nullable(),groupId:Wt.nullable(),experimentIds:p(Wt).max(20),updatedAt:on()}).strict().superRefine((e,t)=>{e.completed+e.failed>e.total&&t.addIssue({code:"custom",message:"Evaluation totals are inconsistent."}),["preparing","queued","running","cleaning","completed"].includes(e.state)&&!e.candidate&&t.addIssue({code:"custom",message:"Evaluation execution requires the exact trained candidate."})}),Tie=l({operationId:Wt,expectedRevision:d().int().positive(),planHash:$i}).strict();l({operationId:Wt,attachment:wR}).strict();l({id:Wt,teamId:Wt,ownerUserId:Wt,attachment:wR,qualification:e6.nullable(),contentHash:$i,createdAt:on()}).strict();function Eie(e){return!!(e&&["preparing","queued","running","cleaning"].includes(e.state))}var jie=l({teamId:Wt,actorId:Wt,projectId:Wt.nullable(),configuration:Jm,batches:p(xb).max(1e4),sources:p(Km).max(1e4),definitions:p(cd).max(1e4),experiments:p(l({id:Wt,name:i().max(500),configuration:fd,graders:p(l({feedbackKey:Wt,name:i().max(500),ref:sm}).strict()).max(100)}).strict()).max(1e4)}).strict();v(["prepare","start","cancel","publish","attach"]);var Mie=l({teamId:Wt,actorId:Wt,configuration:Jm,policy:q_,inspection:T4,iterations:p(l({iteration:U_,evals:n6.nullable()}).strict()).max(100),nextCursor:Wt.nullable()}).strict(),Oie=l({id:Wt,expectedRevision:d().int().positive(),policyHash:$i,operationId:Wt,action:v(["pause","resume","reserve","cancel-iteration","retry-iteration"]),iterationId:Wt.optional(),iterationRevision:d().int().positive().optional()}).strict(),Us=i().trim().min(1).max(240),a6=jt.extend({revision:d().int().positive()}).strict(),i6=a6.extend({teamId:Us,jobId:Us,plan:jt,baseline:jt,candidate:jt,state:G4.shape.state,updatedAt:i().datetime()}).strict();l({schemaVersion:b("openpond.trainingAcceptanceGroupPage.v1"),teamId:Us,jobId:Us,groups:p(i6).max(100),nextCursor:Us.nullable()}).strict();l({cursor:Us.optional(),limit:d().int().min(1).max(100).default(25)}).strict();var Ba=i().trim().min(1).max(191),Nc=i().regex(/^[a-f0-9]{64}$/),o6=l({schemaVersion:b("openpond.trainingPreparationRequest.v1"),teamId:Ba,operationId:Ba,projectId:Ba.nullable(),configuration:l({id:Ba,expectedRevision:d().int().positive(),expectedEtag:Nc}).strict(),origin:Vm.optional(),batch:sa,name:i().trim().min(1).max(191),maximumSpendUsd:d().finite().positive().max(1e6)}).strict(),r6=l({schemaVersion:b("openpond.trainingPreparationPlan.v1"),id:Ba,creatorUserId:Ba,request:o6,requestHash:Nc,source:sw(()=>_R),submissionHash:Nc,createdAt:i().datetime({offset:!0})}).strict(),s6=r6.extend({contentHash:Nc}).strict(),l6=l({schemaVersion:b("openpond.trainingPreparationReceipt.v1"),plan:s6,revision:d().int().positive(),state:v(["prepared","submitted","cancelled"]),jobId:Ba.nullable()}).strict().superRefine((e,t)=>{e.state==="submitted"!=!!e.jobId&&t.addIssue({code:"custom",path:["jobId"],message:"Only submitted preparations identify a job."})});l({teamId:Ba,planHash:Nc,expectedRevision:d().int().positive()}).strict();l({projectId:Ba.optional(),state:v(["prepared","submitted","cancelled"]).optional(),afterId:Ba.optional(),limit:d().int().min(1).max(100).default(25)}).strict();l({schemaVersion:b("openpond.trainingPreparationPage.v1"),teamId:Ba,items:p(l6).max(100),nextCursor:Ba.nullable()}).strict();l({schemaVersion:b("openpond.trainingHarnessSourcePublication.v1"),harnessRelease:He,sourcePackageHash:i().regex(/^[a-f0-9]{64}$/),sizeBytes:d().int().positive().max(eB)}).strict();p(l({id:i().trim().min(1)}).catchall(ce())).min(1).max(1e3);l({binding:Fm,rewards:p(sd).min(1).max(100)}).strict();var c6=l({id:i().trim().min(1),clusterKey:i().trim().min(1),split:v(["train","validation","frozen_eval"])}).passthrough();l({schemaVersion:b("openpond.trainingEvaluationSource.v1"),taskset:sa,tasks:p(c6).min(1).max(1e4),assets:p(l({path:i().trim().min(1).max(2e3),sha256:i().regex(/^[a-f0-9]{64}$/),sizeBytes:d().int().nonnegative(),encoding:b("base64"),content:i().max(32*1024*1024)}).strict()).max(1e4)}).strict().superRefine((e,t)=>{const n=new Set;e.tasks.forEach((a,o)=>{a.split==="train"&&t.addIssue({code:"custom",path:["tasks",o,"split"],message:"Evaluation sources require held-out tasks."}),n.has(a.id)&&t.addIssue({code:"custom",path:["tasks",o,"id"],message:"Evaluation task identities must be unique."}),n.add(a.id)})});var Kn=i().trim().min(1).max(500),Ea=i().regex(/^[a-f0-9]{64}$/),mi=i().datetime({offset:!0});l({schemaVersion:b("openpond.trainingInputArtifactUpload.v2"),kind:v(["portable_training_bundle","reward_model_dataset"]),idempotencyKey:i().trim().min(1).max(500),sourceManifest:jt,payload:ce(),contentHash:Ea}).strict();l({schemaVersion:b("openpond.trainingInputArtifact.v2"),kind:v(["portable_training_bundle","reward_model_dataset"]),sourceManifest:jt,artifactRef:i().trim().min(1).max(2e3),contentHash:Ea,sizeBytes:d().int().positive(),createdAt:mi}).strict();var IR=v(["reward_model_train","policy_optimize"]),d6=v(["queued","admitting","provisioning","running","stopping","cancelling","succeeded","failed","cancelled"]),u6=l({id:Kn,version:i().trim().min(1).max(200).nullable().default(null),required:I().default(!0)}).strict(),_R=l({origin:Vm.optional(),modelProject:l({id:Kn,portableProjectId:Kn,revision:d().int().positive(),contentHash:Ea}).strict(),harnessRunManifest:jt,harnessRelease:jt,taskset:sa,tasksetRelease:jt,evaluation:l({taskset:sa,dataset:jt}).strict().nullable().optional(),dataset:jt,evidenceSets:p(jt).max(1e4)}).strict(),m6=l({kind:b("reward_model_train"),baseModel:Lr,preferenceDatasetRelease:jt,processorRelease:jt,recipe:l({schemaVersion:b("openpond.rewardModelRecipe.v1"),method:b("reward_model"),parameterization:b("lora_with_scalar_head")}).catchall(ce())}).strict(),p6=l({kind:b("deterministic"),grader:jt,composer:jt.nullable().default(null)}).strict(),f6=l({kind:b("learned_reward"),rewardModelVersion:jt,qualificationReport:jt.nullable().default(null),evaluationReferences:p(jt).max(1e3).default([]),scorerArtifact:l({artifactRef:i().trim().min(1).max(2e3),contentHash:Ea,executionReceipt:jt}).strict(),processorRelease:jt,rewardComposerRelease:jt}).strict(),h6=l({kind:b("policy_optimize"),baseModel:Lr,recipe:iC,rewardSource:ot("kind",[p6,f6]),resumeFrom:jt.nullable().default(null)}).strict(),g6=ot("kind",[m6,h6]),v6=l({approvalHash:Ea,approvedAt:mi,exportApproved:I(),maximumSpendUsd:d().nonnegative(),retentionDays:d().int().nonnegative().nullable(),region:i().trim().min(1).max(200).nullable().default(null)}).strict();l({schemaVersion:b("openpond.trainingJobSubmission.v2"),idempotencyKey:i().trim().min(1).max(500),name:i().trim().min(1).max(200),source:_R,job:g6,requestedCapabilities:p(u6).max(1e3),placementObjective:v(["fast","balanced","economical"]),budget:l({maximumSpendUsd:d().nonnegative(),maximumWallSeconds:d().int().positive()}).strict(),approval:v6,contentHash:Ea}).strict().superRefine((e,t)=>{e.approval.maximumSpendUsd!==e.budget.maximumSpendUsd&&t.addIssue({code:"custom",path:["approval","maximumSpendUsd"],message:"Approved spend must equal the immutable Job budget."})});var b6=l({schemaVersion:b("openpond.trainingJob.v2"),id:Kn,teamId:Kn,kind:IR,modelProjectId:Kn,portableProjectId:Kn,sourceProjectRevision:d().int().positive(),submissionHash:Ea,state:d6,phase:i().trim().min(1).max(200),version:d().int().nonnegative(),progress:d().min(0).max(1),rolloutProgress:l({groupsCompleted:d().int().nonnegative(),groupsTarget:d().int().nonnegative(),optimizerUpdatesApplied:d().int().nonnegative(),optimizerUpdatesSkipped:d().int().nonnegative()}).strict(),accruedSpendUsd:d().nonnegative(),terminalReason:i().trim().min(1).max(5e3).nullable(),createdAt:mi,updatedAt:mi,completedAt:mi.nullable()}).strict();l({schemaVersion:b("openpond.trainingJobPage.v2"),jobs:p(b6).max(1e3),nextCursor:i().trim().min(1).max(2e3).nullable()}).strict();var $ie=l({schemaVersion:b("openpond.trainingJobEvent.v2"),id:Kn,jobId:Kn,sequence:d().int().nonnegative(),type:Kn,phase:i().trim().min(1).max(200),message:i().trim().min(1).max(5e3).nullable(),data:le(i(),ce()).default({}),createdAt:mi}).strict();l({schemaVersion:b("openpond.trainingJobLog.v2"),jobId:Kn,sequence:d().int().nonnegative(),level:v(["debug","info","warning","error"]),message:i().max(2e4),createdAt:mi}).strict();l({expectedVersion:d().int().nonnegative()}).strict();var y6=l({schemaVersion:b("openpond.trainingJobOutput.v2"),id:Kn,jobId:Kn,kind:v(["checkpoint","adapter","scorer","metrics","evaluation","trace","receipt"]),artifactRef:i().trim().min(1).max(2e3),contentHash:Ea,sizeBytes:d().int().nonnegative(),metadata:le(i(),ce()).default({}),createdAt:mi}).strict(),S6=l({schemaVersion:b("openpond.trainingExecutionReceipt.v2"),id:Kn,teamId:Kn,jobId:Kn,submissionHash:Ea,manifestHash:Ea,recipeHash:Ea,capabilityHash:Ea,runtimeRelease:jt,inputs:p(jt).max(1e4),outputs:p(jt).max(1e4),spendUsd:d().nonnegative(),durationSeconds:d().nonnegative(),cleanupComplete:I(),issuer:Kn,issuedAt:mi,signature:i().trim().min(1).max(1e4).nullable()}).strict(),Nie=l({schemaVersion:b("openpond.trainingJobOutputs.v2"),outputs:p(y6).max(1e4),receipt:S6.nullable()}).strict();l({schemaVersion:b("openpond.trainingApiError.v2"),code:i().trim().min(1).max(200),message:i().trim().min(1).max(5e3),retryable:I().default(!1),requestId:i().trim().min(1).max(500).nullable().default(null),details:le(i(),ce()).default({})}).strict();l({schemaVersion:b("openpond.trainingCapabilities.v2"),capabilityHash:Ea,jobKinds:p(IR),methods:p(i().trim().min(1).max(200)),placements:p(v(["local","remote","colocated","provider_native"])),controls:l({cancel:I(),stopAfterGroup:I(),resumeFromCheckpoint:I()}).strict(),limits:l({maximumSpendUsd:d().nonnegative(),maximumWallSeconds:d().int().positive(),maximumArtifactBytes:d().int().positive()}).strict(),checkedAt:mi,expiresAt:mi}).strict();var qi=Ja.shape.id,fi=d().int().positive(),Or=i().regex(/^[a-f0-9]{64}$/),qr={teamId:qi,modelId:qi};l({schemaVersion:b("openpond.tasksetDraftCreate.v1"),operationId:qi,modelId:qi,expectedModelRevision:fi,name:Ja.shape.name}).strict();l({schemaVersion:b("openpond.tasksetDraftSourceDescriptor.v1"),...qr,expectedModelRevision:fi,sourcePackageHash:Or}).strict();l({schemaVersion:b("openpond.tasksetDraftReadback.v1"),...qr,draft:Ja,workspaceHash:Or,projectEtag:Or}).strict().refine(e=>e.draft.profileId===e.teamId&&e.draft.modelScope?.modelId===e.modelId,"The hosted draft must belong to its declared workspace and Model.");var x6=l({id:qi,revision:fi,name:Ja.shape.name,status:pR,updatedAt:Ja.shape.updatedAt,sourceTasksetRef:ct.nullable()}).strict();l({schemaVersion:b("openpond.tasksetDraftList.v1"),...qr,drafts:p(x6).max(100),nextCursor:i().min(1).max(2e3).nullable()}).strict();l({expectedDraftRevision:fi,draft:Ja}).strict();l({expectedDraftRevision:fi,expectedModelRevision:fi}).strict();var k6=l({expectedDraftRevision:fi,expectedWorkspaceHash:Or}).strict();l({schemaVersion:b("openpond.tasksetDraftValidation.v1"),...qr,draftId:qi,draftRevision:fi,workspaceHash:Or,valid:I(),issues:p(l({code:i().min(1),severity:v(["warning","error"]),message:i(),path:i().nullable()}).strict()),packageHash:Or.nullable(),tasksetRef:ct.nullable()}).strict().refine(e=>e.valid?e.packageHash!==null&&e.tasksetRef!==null&&e.issues.every(t=>t.severity!=="error"):e.packageHash===null&&e.tasksetRef===null&&e.issues.some(t=>t.severity==="error"),"Validation must retain either a compiled package or publication errors.");k6.extend({operationId:qi,expectedPackageHash:Or,expectedTasksetRef:ct}).strict();l({schemaVersion:b("openpond.tasksetDraftFileList.v1"),...qr,draftId:qi,draftRevision:fi,files:p(tC).max(10020)}).strict();l({schemaVersion:b("openpond.tasksetDraftFileReadback.v1"),...qr,draftId:qi,draftRevision:fi,file:Q4}).strict();l({schemaVersion:b("openpond.tasksetDraftDeletion.v1"),...qr,draftId:qi,revision:fi,deleted:b(!0)}).strict();Ja.shape.id;d().int().positive();var ro=i().trim().min(1).max(500),w6=l({projectId:ro.optional(),tasksetId:ro.optional(),draftId:ro.optional(),taskId:ro.optional(),query:i().trim().max(1e3).default(""),split:v(["train","validation","test","frozen_eval"]).optional(),after:i().min(1).max(2e3).optional(),limit:d().int().min(1).max(100).default(30)}).strict(),I6=l({id:ro,method:v(["code","judge","human"]),required:I()}),CR=l({tasksetId:ro,tasksetName:i(),tasksetRevision:d().int().positive(),tasksetHash:i(),taskId:ro,ordinal:d().int().nonnegative(),title:i(),description:i(),split:i(),scoring:p(I6),configuration:v(["configured","needs_reward","needs_checks"]),draftId:ro.nullable().default(null),modelId:ro.nullable().default(null)}),_6=l({items:p(CR).max(100),nextCursor:i().nullable()});function Die(e,t){if(q4({format:e.format,files:t}).contentHash!==e.contentHash)throw new Error("The source files differ from the import preview.");const n=`private/intake/${e.contentHash}`,a=t.map((r,s)=>({file:r,path:`${n}/${String(s).padStart(4,"0")}.txt`})),o={schemaVersion:"openpond.taskIntakeSources.v1",format:e.format,previewHash:e.contentHash,files:a.map(({file:r,path:s})=>({originalPath:r.path,retainedPath:s}))};return[...a.map(({file:r,path:s})=>QS(s,new TextEncoder().encode(r.text))),QS(`${n}/manifest.json`,new TextEncoder().encode(JSON.stringify(o)))]}function Hie(e,t,n){const a=W_.parse(t);if(!n.length||new Set(n).size!==n.length)throw new Error("Select unique task records to import.");const o=[...e.tasks];for(const s of n){const c=a.records.find(f=>f.id===s);if(!c||c.kind!=="task"||c.needsContext)throw new Error("Recorded attempts and incomplete histories must be imported into Labeling for review.");const m=mR.parse({schemaVersion:"openpond.taskData.v1",id:c.id,clusterKey:c.familyKey,split:c.split,input:c.input,expectedOutput:c.expected,privilegedContextRef:null,metadata:{intake:{format:a.format,uploadHash:a.contentHash,sourceId:c.sourceId,sourceHash:c.sourceHash,metadata:c.metadata}}}),u=o.find(f=>f.id===m.id);if(u&&At(u)!==At(m))throw new Error(`Task ${m.id} already exists with different content. Import will not replace saved edits.`);u||o.push(m)}const r=new Map;for(const s of o)for(const c of[`family:${s.clusterKey}`,`input:${At(s.input)}`]){if(r.has(c)&&r.get(c)!==s.split)throw new Error("The imported task family or request already occurs in another split.");r.set(c,s.split)}return Ja.parse({...e,tasks:o})}const ba=i().trim().min(1).max(240),Uo=i().trim().min(1),RR=le(i(),ce()).default({}),PR=v(["nominated","needs_review","approved_for_creation","creating","needs_task_review","baselining","ready_for_export","rejected","dismissed","retired","blocked"]),AR=v(["no_training","prompting","retrieval","sft","preference","grpo_rft","sdft_opsd","sdpo","agentic_rl"]),C6=l({id:ba,kind:v(["repeated_success","accepted_correction","agent_action_recurrence","outcome_linked_change","frontier_cost","expert_label","runtime_feedback"]),sourceRefIds:p(ba).min(1).max(1e4),occurredAt:Uo,signature:i().trim().min(1).max(2e3),summary:i().trim().min(1).max(5e3),confidence:d().min(0).max(1),consented:I(),metadata:RR}),R6=l({frequency:d().min(0).max(1),businessValue:d().min(0).max(1),frontierCost:d().min(0).max(1),signalQuality:d().min(0).max(1),verifiability:d().min(0).max(1),repeatability:d().min(0).max(1),privacyRisk:d().min(0).max(1),overall:d().min(0).max(1)}),P6=l({tactic:AR,eligible:I(),reasons:p(i().trim().min(1).max(5e3)).min(1).max(100),blockers:p(i().trim().min(1).max(5e3)).max(100).default([]),requiredSignals:p(i().trim().min(1).max(500)).max(100).default([]),generatedBy:v(["decision_table","baseline_reassessment"])}),TR=l({schemaVersion:b("openpond.taskCandidate.v1"),id:ba,profileId:ba,status:PR,fingerprint:i().trim().min(1).max(512),title:i().trim().min(1).max(500),summary:i().trim().min(1).max(1e4),workflowSignature:i().trim().min(1).max(2e3),evidence:p(C6).min(1).max(1e5),scorecard:R6,recommendation:P6,mergedIntoId:ba.nullable(),createdAt:Uo,updatedAt:Uo,metadata:RR}),sp=l({schemaVersion:b("openpond.taskMinerConfig.v1"),enabled:I().default(!1),localOnly:I().default(!0),observationWindowDays:d().int().min(1).max(365).default(30),minimumRecurrence:d().int().min(2).max(100).default(3),clustering:b("hybrid_deterministic_first").default("hybrid_deterministic_first"),consentRequired:I().default(!0)});l({items:p(TR),generatedAt:Uo,config:sp});l({status:PR.optional(),mergeIntoId:ba.nullable().optional()});l({profileId:ba,sourceIds:p(ba).max(1e5).default([]),sessionIds:p(ba).max(1e5).default([]),config:sp.optional()});const A6=l({schemaVersion:b("openpond.taskMinerRun.v1"),id:ba,profileId:ba,status:v(["queued","running","cancelling","cancelled","succeeded","failed"]),config:sp,sourceIds:p(ba).max(1e5),sessionIds:p(ba).max(1e5).default([]),progress:l({stage:v(["queued","ingesting","preparing","clustering","persisting","complete"]),processedSources:d().int().nonnegative(),totalSources:d().int().nonnegative(),candidatesFound:d().int().nonnegative(),skippedSources:d().int().nonnegative().default(0)}),candidateIds:p(ba).max(1e5),cancelRequested:I(),error:i().trim().min(1).max(2e4).nullable(),createdAt:Uo,startedAt:Uo.nullable(),completedAt:Uo.nullable(),updatedAt:Uo});var T6=l({id:Ke,purpose:i().trim().min(1).max(500),audience:v(["orchestrator","environment","privileged_scorer","trainer","infrastructure"]),required:I(),ttlSeconds:d().int().positive().max(86400),scopes:p(i().trim().min(1).max(500)).max(100).default([])}).strict(),E6=l({declarationId:Ke,leaseRef:i().trim().min(8).max(1e3),audience:T6.shape.audience,expiresAt:Pt}).strict(),Vb=l({adapterId:Ke,placement:v(["local","remote","colocated","provider_native"]),capabilityReceipt:Qe,runtimeVersion:i().trim().min(1).max(200),dataPlane:l({provider:Ke,dataPlaneId:Ke,cellId:Ke,runnerPoolId:Ke,runtimeImageDigest:i().regex(/^sha256:[a-f0-9]{64}$/),capabilityReceipt:Qe}).strict().nullable()}).strict(),Kb=l({adapterId:Ke,kind:v(["local","ssh","managed","custom"]),deviceOrPool:i().trim().min(1).max(1e3),capabilityReceipt:Qe,provider:Ke.nullable()}).strict(),Wb=l({adapterId:Ke,workerVersion:i().trim().min(1).max(200),workerImageDigest:i().regex(/^sha256:[a-f0-9]{64}$/).nullable(),upstreamRevision:i().trim().min(1).max(500),capabilityReceipt:Qe}).strict(),j6=l({schemaVersion:b("openpond.harnessRunManifest.v1"),id:Ke,harnessRelease:He,datasetRelease:He,evidenceSets:p(He).max(1e4),model:l({source:i().trim().min(1).max(200),revision:i().trim().min(1).max(500),artifactHash:Qe.nullable(),tokenizerRevision:i().trim().min(1).max(500),chatTemplateHash:Qe}).strict(),recipe:l({method:i().trim().min(1).max(100),version:i().trim().min(1).max(200),configHash:Qe}).strict(),runtimeTarget:Vb,computeTarget:Kb,engine:Wb,resolvedBundleHash:Qe,secretLeaseRefs:p(E6).max(1e3),approval:l({approvalHash:Qe,approvedAt:Pt,maximumSpendUsd:d().nonnegative().nullable()}).strict(),createdAt:Pt}).strict(),M6=j6.extend({contentHash:Qe}).strict(),O6=l({schemaVersion:b("openpond.resolvedTrainingBundle.v1"),projection:b("trainer"),harnessRelease:He,datasetRelease:He,evidenceSetRelease:He.nullable(),files:p(l({path:i().trim().min(1).max(2e3),sha256:Qe,sizeBytes:d().int().nonnegative()}).strict()).max(1e5)}).strict();O6.extend({contentHash:Qe}).strict();var ER=l({name:b("adamw").default("adamw"),weightDecay:d().nonnegative().max(1).default(0),beta1:d().positive().lt(1).default(.9),beta2:d().positive().lt(1).default(.999),epsilon:d().positive().max(.01).default(1e-8)}).strict().default({name:"adamw",weightDecay:0,beta1:.9,beta2:.999,epsilon:1e-8});const yt=i().trim().min(1).max(240),ya=i().trim().min(1),tl=i().trim().min(8).max(256),Gb=le(i(),ce()).default({}),Ni=yt.nullable(),$6=v(["slash_train","session_menu","bulk_selection","training_page","task_candidate"]),N6=v(["defaults","customize"]),D6=v(["automated","manual"]);l({schemaVersion:b("openpond.trainingSourceEstimate.v1"),sessionId:yt,messageCount:d().int().nonnegative(),estimatedTokens:d().int().nonnegative(),textBytes:d().int().nonnegative()});l({query:i().max(500).default(""),offset:d().int().nonnegative().default(0),limit:d().int().min(1).max(100).default(20),candidates:p(l({sessionId:yt,title:i().trim().min(1).max(500),updatedAt:ya})).max(500).default([])});const H6=l({sessionId:yt,title:i().trim().min(1).max(500),updatedAt:ya,snippet:i().max(2e3).nullable()});l({schemaVersion:b("openpond.trainingChatSearchResult.v1"),query:i(),offset:d().int().nonnegative(),limit:d().int().positive(),total:d().int().nonnegative(),hasMore:I(),indexedChats:d().int().nonnegative(),totalChats:d().int().nonnegative(),indexing:I(),entries:p(H6)});const Jb=v(["policy_failure","grader_failure","environment_failure","infrastructure_failure","timeout","cancelled"]),L6=l({graderId:yt.nullable(),path:i().trim().min(1).max(1e3),language:v(["javascript","typescript","python","json","text"]),content:i().max(2e6),sha256:tl,declaredSha256:tl.nullable(),integrity:v(["verified","unverified","mismatch"])}),q6=l({protocolVersion:i().trim().min(1).max(200),module:i().trim().min(1).max(1e3),moduleSha256:tl,command:p(i().max(2e3)).max(100),cwd:i().trim().min(1).max(4e3),maxTurns:d().int().positive().max(100)});l({schemaVersion:b("openpond.tasksetGraderDetails.v1"),taskset:Qt,sourceTasksetId:yt,graders:p(op).max(1e3),runtime:q6.nullable(),sources:p(L6).max(1e3),unavailableReason:i().max(2e3).nullable()});const U6=l({id:yt,taskIndex:d().int().nonnegative(),label:qb,output:le(i(),ce()),infrastructureError:i().trim().min(1).max(1e4).nullable(),expectedPassed:I(),expectedRewardEligible:I(),metadata:Gb}),z6=l({schemaVersion:b("openpond.taskAttempt.v1"),id:yt,tasksetId:yt,taskId:yt,split:el,attempt:d().int().nonnegative(),seed:d().int(),modelRef:Sn.nullable(),startedAt:ya,completedAt:ya,output:le(i(),ce()),runtimeEventRefs:p(yt).max(1e4).default([]),artifactRefs:p(yt).max(1e4).default([]),privilegedOutcomeRef:Ni,infrastructureError:i().trim().min(1).max(1e4).nullable(),costUsd:d().nonnegative().nullable(),latencyMs:d().int().nonnegative(),userInterventions:d().int().nonnegative().default(0),metadata:Gb}),B6=l({schemaVersion:b("openpond.taskAttemptArtifact.v1"),id:yt,tasksetId:yt,taskId:yt,attemptId:yt,kind:v(["raw_model_response","runtime_trace","environment_state","grader_evidence","output_artifact"]),path:i().trim().min(1).max(4e3),mediaType:i().trim().min(1).max(200).nullable().optional(),sha256:tl,sizeBytes:d().int().nonnegative(),createdAt:ya,metadata:Gb}),F6=l({graderId:yt,graderVersion:i().trim().min(1).max(100),score:d().min(0).max(1).nullable(),passed:I(),hardGate:I(),rewardEligible:I(),feedback:i().trim().max(2e4).nullable(),evidenceRefs:p(yt).max(1e4).default([]),judge:Sn.nullable().optional().default(null),calibrationStatus:v(["not_applicable","pending","passed","failed"])}),V6=l({schemaVersion:b("openpond.gradeResult.v1"),id:yt,attemptId:yt,graderSetHash:tl,score:d().min(0).max(1).nullable(),passed:I(),components:p(F6).min(1).max(1e3),failureClass:Jb.nullable(),feedback:p(i().trim().min(1).max(2e4)).max(1e3).default([]),rewardEligible:I(),rewardComposition:Pc.optional(),createdAt:ya});v(["stable_hash_top_n","rft_easy_curriculum_v1"]);const K6=l({schemaVersion:b("openpond.graderAuditReport.v1"),id:yt,tasksetId:yt,tasksetHash:tl,fixtureRefs:p(yt).min(1).max(1e5),gradeRefs:p(yt).min(1).max(1e5),passed:I(),hackingChecksPassed:I(),leakageChecksPassed:I(),infrastructureSafetyPassed:I(),failures:p(l({fixtureId:yt,label:qb,gradeId:yt,reason:i().trim().min(1).max(5e3)})).max(1e5),createdAt:ya}),W6=l({schemaVersion:b("openpond.capabilityDiagnosis.v1"),summary:i().trim().min(1).max(1e4),stableBehavior:p(i().trim().min(1).max(5e3)).max(100).default([]),changingKnowledge:p(i().trim().min(1).max(5e3)).max(100).default([]),requiredContext:p(i().trim().min(1).max(5e3)).max(100).default([]),requiredTools:p(yt).max(100).default([]),intervention:AR,trainingEligible:I(),rationale:p(i().trim().min(1).max(5e3)).min(1).max(100),confidence:d().min(0).max(1)}),G6=l({id:yt,sourceId:yt,sourceTurnId:Ni,split:el,origin:v(["extracted","corrected","synthetic","expert_authored"]),inputPrompt:i().trim().min(1).max(1e5),expectedOutputText:i().trim().min(1).max(2e5).nullable(),rationale:i().trim().min(1).max(5e3)}),J6=l({schemaVersion:b("openpond.taskDesignProposal.v1"),id:yt,name:i().trim().min(1).max(500),objective:i().trim().min(1).max(2e4),diagnosis:W6.default({schemaVersion:"openpond.capabilityDiagnosis.v1",summary:"Reproduce the selected approved behavior.",stableBehavior:[],changingKnowledge:[],requiredContext:[],requiredTools:[],intervention:"sft",trainingEligible:!0,rationale:["The selected examples were supplied as demonstrations."],confidence:.5}),taskKind:Lb.shape.taskKind,sourceIds:p(yt).min(1).max(1e5),assumptions:p(i().trim().min(1).max(5e3)).max(1e3),successCriteria:p(i().trim().min(1).max(5e3)).min(1).max(1e3),proposedGraders:p(op).max(1e3).default([]),graderFixtures:p(U6).max(1e5).default([]),generatedFiles:p(S3).max(1e3).default([]),proposedExamples:p(G6).max(1e5).default([]),proposedMethod:lR.shape.recommendedMethod,trainingPath:rR.nullable().default(null),policy:Hb,warnings:p(i().trim().min(1).max(5e3)).default([]),createdAt:ya}),Z6=5;function Lie(e,t="New model"){const n=e?.trim().split(/\s+/).filter(Boolean)??[];return n.length===0?t:n.slice(0,Z6).join(" ")}const hd=l({schemaVersion:b("openpond.baseModelPreference.v1"),modelId:yt,revision:i().trim().min(1).max(256).nullable(),tokenizerRevision:i().trim().min(1).max(256).nullable(),chatTemplateHash:i().trim().min(8).max(256).nullable(),modelAssetId:Ni,source:v(["managed","local","builtin"])}),Y6=l({schemaVersion:b("openpond.taskCreationRequest.v1"),id:yt,profileId:yt,surface:$6,mode:N6,entryMode:D6.default("manual"),resourceIntent:v(["workproduct","dataset"]).default("workproduct"),buildIntent:iR.default("demonstrations"),buildSpecification:oR.nullable().default(null),objective:i().trim().min(1).max(2e4).nullable(),methodHint:v(["sft","dpo","grpo","ppo"]).nullable().default(null),preferredBaseModelId:yt.nullable().default(null),preferredBaseModel:hd.nullable().default(null),sourceIds:p(yt).max(1e5),candidateId:Ni,analysisModel:Sn.nullable(),analysisReasoningEffort:$m.nullable().default(null),createImproveRunId:Ni.default(null),targetIntent:l({kind:v(["agent","skill","extension","model","configuration"]).nullable(),id:Ni,displayName:i().trim().min(1).max(500).nullable(),operation:v(["create","improve"])}).default({kind:"model",id:null,displayName:null,operation:"create"}),disclosure:l({status:v(["not_required","pending","approved","declined"]),content:b("raw_excerpts"),sourceIds:p(yt).max(1e5),providerModel:Sn.nullable(),approvalId:Ni,approvedAt:ya.nullable()}).default({status:"not_required",content:"raw_excerpts",sourceIds:[],providerModel:null,approvalId:null,approvedAt:null}),createdAt:ya}),jR=l({schemaVersion:b("openpond.taskCreationSnapshot.v1"),id:yt,request:Y6,state:v(["planning","awaiting_disclosure_approval","awaiting_questions","recommendation_ready","awaiting_materialization_approval","materializing","validating","ready","blocked","failed","cancelled"]),proposal:J6.nullable(),materializedTasksetId:Ni,disclosureApprovalId:Ni,materializationApprovalId:Ni,blockingQuestions:p(l({id:yt,kind:v(["objective","consent","success_signal","privacy_licensing","interpretation"]),prompt:i().trim().min(1).max(5e3),answer:i().trim().min(1).max(2e4).nullable()})).default([]),transcript:p(l({id:yt,role:v(["user","assistant","system","tool"]),text:i().max(1e5),createdAt:ya})).max(1e4).default([]),repairHistory:p(cR).max(1e3).default([]),blockedReason:i().trim().min(1).max(1e4).nullable(),createdAt:ya,updatedAt:ya});l({schemaVersion:b("openpond.taskCreationTranscript.v1"),creationId:yt,profileId:yt,messages:jR.shape.transcript,updatedAt:ya});const Es=i().trim().min(1).max(240),Pu=i().trim().min(1),Pg=i().trim().min(8).max(256),MR=le(i(),ce()).default({}),Q6=v(["created","inspecting","awaiting_source_review","awaiting_mapping","awaiting_materialization_approval","materializing","validating","ready","cancelling","cancelled","failed"]),OR=l({schemaVersion:b("openpond.huggingFaceDatasetLocator.v1"),repositoryId:i().trim().regex(/^[^/\s]+\/[^/\s]+$/).max(500),repositoryUrl:i().url().max(2e3),requestedRevision:i().trim().min(1).max(256).nullable()}),X6=l({path:i().trim().min(1).max(1e3),logicalType:i().trim().min(1).max(500),nullable:I(),sampleValues:p(ce()).max(5)}),eV=l({configuration:i().trim().min(1).max(500),split:i().trim().min(1).max(500),rowCount:d().int().nonnegative().nullable(),sizeBytes:d().int().nonnegative().nullable()}),tV=l({schemaVersion:b("openpond.huggingFaceDatasetInspection.v1"),id:Es,locator:OR,resolvedRevision:i().trim().min(7).max(256),title:i().trim().min(1).max(500),description:i().max(2e4).nullable(),declaredLicense:i().trim().min(1).max(500).nullable(),gated:I(),private:I(),configurations:p(i().trim().min(1).max(500)).min(1).max(1e3),splits:p(eV).min(1).max(1e4),columns:p(X6).min(1).max(1e4),previewRows:p(le(i(),ce())).max(25),sourceFiles:p(l({path:i().trim().min(1).max(2e3),configuration:i().trim().min(1).max(500),split:i().trim().min(1).max(500),revision:i().trim().min(7).max(256),sizeBytes:d().int().nonnegative().nullable(),contentHash:Pg.nullable()})).max(1e5),inspectedAt:Pu,metadata:MR}),nV=v(["row_id","cluster_id","prompt","messages","demonstration","chosen","rejected","expected_output","privileged_context","reward","feedback","tag","metadata"]),aV=l({sourcePath:i().trim().min(1).max(1e3),target:nV,transform:v(["identity","string","json","messages","numeric","math_final_answer"]),policy:v(["visible","privileged","metadata"]),required:I()}),$R=l({schemaVersion:b("openpond.datasetImportMapping.v1"),sourceSchemaHash:Pg,configuration:i().trim().min(1).max(500),upstreamSplits:p(i().trim().min(1).max(500)).min(1).max(1e3),preset:v(["prompt_only","prompt_completion","messages","preference","prompt_expected_answer","prompt_privileged_solution","prompt_feedback"]),bindings:p(aV).min(1).max(1e4),nullPolicy:v(["reject","drop","preserve"]),invalidRowPolicy:v(["reject_import","drop_with_receipt"]),splitPolicy:l({seed:d().int(),assignments:le(i(),er),validationPercent:d().min(0).max(100),frozenEvalPercent:d().min(0).max(100)}),importerVersion:i().trim().min(1).max(200),mappingHash:Pg}),iV=l({phase:v(["idle","metadata","download","mapping","parquet_write","verification","publish"]),completedBytes:d().int().nonnegative(),totalBytes:d().int().nonnegative().nullable(),completedRows:d().int().nonnegative(),totalRows:d().int().nonnegative().nullable(),message:i().trim().min(1).max(2e3).nullable()}),oV=l({schemaVersion:b("openpond.datasetImportJob.v1"),id:Es,profileId:Es,sourceKind:v(["huggingface","uploaded_file"]),status:Q6,locator:OR.nullable(),inspection:tV.nullable(),mapping:$R.nullable(),progress:iV,targetStorageRoot:i().trim().min(1).max(4e3).nullable(),tasksetId:Es.nullable(),tasksetRevision:d().int().positive().nullable(),artifactId:Es.nullable(),error:i().trim().min(1).max(2e4).nullable(),cancellationRequested:I(),createdAt:Pu,updatedAt:Pu,completedAt:Pu.nullable(),metadata:MR});l({profileId:Es,url:i().trim().min(1).max(2e3)});l({name:i().trim().min(1).max(500),objective:i().trim().min(1).max(2e4),mapping:$R,targetStorageRoot:i().trim().min(1).max(4e3).nullable(),licenseApproved:I().default(!1)});var mc=i().trim().min(1).max(200),Ag=l({operationId:mc,execution:He,executionKind:b("recorded_evidence").optional(),graders:p(Xo).min(1).max(100),maximumCostUsd:d().finite().min(1e-6).max(1e4),mappings:p(l({graderId:mc,fields:zb}).strict()).max(100).optional()}).strict().superRefine((e,t)=>{new Set(e.graders.map(n=>n.id)).size!==e.graders.length&&t.addIssue({code:"custom",path:["graders"],message:"Select each grader once."}),e.mappings&&(new Set(e.mappings.map(n=>n.graderId)).size!==e.mappings.length||e.mappings.some(n=>!e.graders.some(a=>a.id===n.graderId)))&&t.addIssue({code:"custom",path:["mappings"],message:"Map each selected grader at most once."})}),rV=l({schemaVersion:b("openpond.experimentScoringPass.v1"),id:mc,teamId:mc,revision:d().int().positive(),request:Ag,graders:p(Li).min(1).max(100),status:v(["queued","running","cancelling","completed","failed","cancelled"]),totalCount:d().int().min(1).max(1e4),counts:l({pending:d().int().nonnegative(),running:d().int().nonnegative(),scored:d().int().nonnegative(),unavailable:d().int().nonnegative(),failed:d().int().nonnegative(),cancelled:d().int().nonnegative()}).strict(),resultAvailable:I(),createdAt:on(),startedAt:on().nullable(),completedAt:on().nullable(),error:l({code:mc,message:i().max(2e3)}).strict().nullable()}).strict();rV.extend({contentHash:i().regex(/^[a-f0-9]{64}$/)});var NR=l({sourcePass:He,graders:Ag.shape.graders,mappings:Ag.shape.mappings,maximumCostUsd:d().finite().positive().max(1e4)}).strict(),DR=l({externalDatasetBinding:Wo,scoring:NR.optional(),modelId:i().min(1).max(300),maximumCostUsd:d().finite().positive().max(1e4)}).strict(),Zb=l({source:v(["local","github","openpond_git"]),repositoryId:i().trim().min(1),profileId:i().trim().min(1)}).strict(),Ht=i().min(1).max(240),pa=i().regex(/^[a-f0-9]{64}$/),pc=l({schemaVersion:b("openpond.experimentImprovement.v1"),id:Ht,operationId:Ht,requestHash:pa,actorId:Ht,teamId:Ht,projectId:Ht.nullable(),ownerWorkspaceId:Ht,ownerRevision:d().int().nonnegative(),ownerSourceRevision:i().min(1).max(500),baseRelease:He,profileRef:Zb,baseProfileSourceRevision:i().min(1).max(500),evidence:l({manifest:uo,result:mo}).strict(),component:l({kind:v(["skill","workflow","agent","instruction"]),path:i().min(1).max(2e3),workflowId:Ht.optional()}).strict(),mode:v(["manual","llm_assisted"]),status:v(["draft","authoring_queued","authoring","frozen","testing","ready_for_review","adopting","accepted","rolled_back","declined","failed","cancelled"]),revision:d().int().positive(),limits:l({maximumCostUsd:d().finite().positive(),maximumAuthoringSteps:d().int().min(1).max(500),maximumDurationMs:d().int().min(1e3).max(864e5)}).strict(),authoringSteps:d().int().nonnegative().max(500),work:l({sessionId:Ht,turnId:Ht,revision:d().int().positive(),startedAt:i().datetime()}).strict().nullable(),frozen:l({release:He,sourceRevision:i().min(1).max(500),profileSourceRevision:i().min(1).max(500),authoringHash:pa,partitionHash:pa,executableSourceHash:pa,protectedClosureHash:pa,candidateRevision:d().int().positive(),diff:p(l({path:i(),before:pa.nullable(),after:pa.nullable()}).strict()).max(1e4)}).strict().nullable(),test:l({recipe:DR,recipeHash:i().regex(/^[a-f0-9]{64}$/),baselineOperationId:i(),candidateOperationId:i(),cancelRequestedAt:i().datetime().nullable(),dispatching:l({kind:v(["baseline","candidate"]),token:Ht,pid:d().int().positive(),processStart:i().nullable(),startedAt:i().datetime()}).strict().nullable()}).strict().nullable(),comparison:l({baseline:l({manifest:uo,result:mo}).strict(),candidate:l({manifest:uo,result:mo}).strict(),frozenHash:pa,humanProjection:Rg.optional()}).strict().nullable(),adoptionIntent:l({operationId:Ht,expectedOwnerRevision:d().int().nonnegative(),frozenHash:pa,humanProjection:Rg.optional()}).strict().nullable(),acceptance:He.nullable(),rollback:He.nullable(),error:i().max(2e3).nullable(),createdAt:i().datetime(),updatedAt:i().datetime(),contentHash:pa}).strict();function qie(e){const t=pc.parse(e),{contentHash:n,...a}=t;if(At(a)!==n)throw new Error("Improvement state integrity failed.");if(Pr(t.evidence),t.evidence.manifest.teamId!==t.teamId||t.evidence.result.status!=="completed"||!t.evidence.result.cases.some(o=>o.status==="completed"))throw new Error("Improvement requires usable completed owner evidence.");if(t.test&&(At(t.test.recipe)!==t.test.recipeHash||kg(t.test.recipe.externalDatasetBinding).profileId!==t.profileRef.profileId))throw new Error("The test recipe changed its exact selected Profile.");if(t.comparison?.humanProjection){const o=t5(t.comparison.humanProjection);if(o.teamId!==t.teamId||o.projectId!==t.projectId||At(o.baseline)!==At(t.comparison.baseline)||At(o.candidate)!==At(t.comparison.candidate))throw new Error("Human comparison projection differs from its exact owner evidence.")}if(t.comparison&&(Pr(t.comparison.baseline),Pr(t.comparison.candidate),!t.frozen||t.comparison.frozenHash!==At(t.frozen)||!i4(t.comparison.baseline,t.comparison.candidate).comparable))throw new Error("Improvement comparison is not bound to a comparable frozen candidate.");if(t.status==="ready_for_review"&&(!t.frozen||!t.comparison))throw new Error("Improvement is missing qualification.");if(t.status==="adopting"&&(!t.adoptionIntent||!t.frozen||t.adoptionIntent.frozenHash!==At(t.frozen)))throw new Error("Improvement adoption intent is not bound to its tested revision.");if(t.status==="accepted"&&(!t.acceptance||!t.comparison||!t.frozen))throw new Error("Improvement acceptance is missing its exact qualification receipt.");if(t.status==="rolled_back"&&(!t.acceptance||!t.rollback))throw new Error("Profile rollback is missing its durable owner receipt.");return t}var Uie=l({states:p(pc).max(50),nextCursor:Ht.nullable()}).strict(),sV=l({operationId:Ht,ownerWorkspaceId:Ht,expectedOwnerRevision:d().int().nonnegative(),baseRelease:He,profileRef:Zb,profileSourceRevision:i().min(1).max(500),projectId:Ht.nullable(),evidence:He,component:pc.shape.component,mode:pc.shape.mode,limits:pc.shape.limits}).strict(),zie=ot("operation",[l({operation:b("list"),limit:d().int().min(1).max(50).default(30),cursor:Ht.optional()}).strict(),l({operation:b("options"),evidence:He}).strict(),l({operation:b("start"),request:sV}).strict(),l({operation:v(["read","humanComparisonOptions"]),id:Ht}).strict(),l({operation:b("instructions"),id:Ht}).strict(),l({operation:b("edit"),id:Ht,revision:d().int().positive(),expectedFileHash:pa,text:i().max(25e4)}).strict(),l({operation:b("mode"),id:Ht,revision:d().int().positive(),mode:v(["manual","llm_assisted"])}).strict(),l({operation:b("author"),id:Ht,revision:d().int().positive(),modelId:Ht,prompt:i().min(1).max(2e4)}).strict(),l({operation:v(["freeze","finishAuthoring","useCandidate","discard","cancel","rollback"]),id:Ht,revision:d().int().positive()}).strict(),l({operation:b("test"),id:Ht,revision:d().int().positive(),recipe:DR}).strict(),l({operation:b("compare"),id:Ht,revision:d().int().positive(),baseline:He,candidate:He,humanSelections:EC.optional()}).strict()]),HR=l({teamId:Ht,evidence:He,scoring:NR.optional(),profiles:p(l({id:pa,name:i(),profileRef:Zb,ownerWorkspaceId:Ht,ownerRevision:d().int().nonnegative(),baseRelease:He,profileSourceRevision:i(),components:p(l({kind:v(["skill","instruction","agent","workflow"]),path:i(),agentId:i().optional(),workflowId:i().optional(),label:i(),binding:Wo}).strict()).max(500)}).strict()).max(100)}).strict(),lV=l({candidateId:Ht,actorId:Ht,teamId:Ht,projectId:Ht.nullable(),candidateRevision:d().int().positive(),recipeHash:pa,baseline:l({manifest:uo,result:mo}).strict(),candidate:l({manifest:uo,result:mo}).strict(),contentHash:pa}).strict();function Bie(e){const t=lV.parse(e),{contentHash:n,...a}=t;if(At(a)!==n)throw new Error("Accepted Human discovery integrity failed.");for(const o of[t.baseline,t.candidate])if(Pr(o),o.manifest.teamId!==t.teamId||o.manifest.lineage?.humanProjection)throw new Error("Discovery must retain original owner evidence.");return t}var nn=i().trim().min(1).max(240),Di=i().regex(/^[a-f0-9]{64}$/),Yb=l({schemaVersion:b("openpond.advancedRefinerEvaluation.v1"),operationId:nn,actorId:nn,teamId:nn,projectId:nn.nullable(),mode:v(["review_quality","downstream_adaptation"]),profileRef:l({source:v(["local","github","openpond_git"]),repositoryId:nn,profileId:nn}).strict(),sourceRevision:i().min(1).max(500),baselineRelease:He,refinerRelease:He,evidence:He,externalDatasetBinding:Wo,adaptationDatasetBinding:Wo,privateClosureHash:Di,adaptationTaskIds:p(nn).min(1).max(1e4),holdoutTaskIds:p(nn).min(1).max(1e4),adaptationSplit:v(["train","validation","test","frozen_eval"]),holdoutSplit:v(["train","validation","test","frozen_eval"]),environmentPolicy:ot("kind",[l({kind:b("resettable"),environmentHash:Di}).strict(),l({kind:b("frozen_observations"),environmentHash:Di}).strict()]),maximumCostUsd:d().finite().positive().max(1e4),maximumDurationMs:d().int().min(1e3).max(864e5),maximumModelSteps:d().int().min(1).max(1e3),contentHash:Di}).strict();function Fie(e){const t=Yb.parse(e),{contentHash:n,...a}=t;if(At(a)!==n)throw new Error("Advanced Refiner evaluation admission changed.");const o=kg(t.externalDatasetBinding);if(o.profileId!==t.profileRef.profileId||o.protectedProfileClosureHash!==t.privateClosureHash)throw new Error("Advanced evaluation changed its Profile or protected evaluator closure.");if(t.adaptationSplit===t.holdoutSplit||new Set([...t.adaptationTaskIds,...t.holdoutTaskIds]).size!==t.adaptationTaskIds.length+t.holdoutTaskIds.length)throw new Error("Adaptation and private holdout must be disjoint ordered cases.");const r=kg(t.adaptationDatasetBinding);if(r.profileId!==o.profileId||r.packageHash!==o.packageHash||At(r.dataset)!==At(o.dataset)||At(r.target)!==At(o.target)||r.protectedProfileClosureHash!==o.protectedProfileClosureHash)throw new Error("This native advanced adapter needs separate adaptation and holdout recipes from the same exact released package and target.");if(r.split!==t.adaptationSplit||o.split!==t.holdoutSplit)throw new Error("Advanced split policies differ from their exact admitted recipes.");const s=new Set(o.population.map(m=>m.taskId)),c=new Set(r.population.map(m=>m.taskId));if(t.holdoutTaskIds.some(m=>!s.has(m))||t.adaptationTaskIds.some(m=>!c.has(m)))throw new Error("Advanced evaluation selected cases outside its exact Dataset recipe.");return t}var cV=l({pin:Yb,modelId:nn,profileId:nn,model:Ab,seed:d().int(),reasoningEffort:v(["none","off","low","medium","high","xhigh","max"]).nullable()}).strict(),dV=ot("operation",[l({operation:b("start"),request:cV}).strict(),l({operation:v(["read","cancel","resume"]),id:nn}).strict(),l({operation:b("list")}).strict()]),uV=l({taskId:nn,sourceCaseHash:Di,reviewSessionId:nn,reviewTurnId:nn,inputHarness:He,trigger:He,decision:v(["no_action","route_deterministically","queue_refiner"]),outcome:He.nullable(),proposal:He.nullable(),validations:p(He).max(100),grade:l({id:nn,contentHash:Di,score:d().min(0).max(1).nullable(),passed:I(),failureClass:i().nullable()}).strict(),resetComplete:I()}).strict(),mV=l({schemaVersion:b("openpond.advancedRefinerReviewReceipt.v1"),id:nn,runId:nn,pinHash:Di,ownerActorId:nn,teamId:nn,privateClosureHash:Di,refinerRelease:He,cases:p(uV).min(1).max(1e4),reviewScore:d().min(0).max(1).nullable(),completedCases:d().int().nonnegative(),noActionCases:d().int().nonnegative(),routedCases:d().int().nonnegative(),proposalCases:d().int().nonnegative(),costUsd:d().finite().nonnegative().nullable(),cleanupComplete:I(),createdAt:i().datetime(),contentHash:Di}).strict(),ox=HR.shape.profiles.element,Vie=HR.extend({profiles:p(ox.extend({components:p(ox.shape.components.element.extend({adaptationSplits:p(l({split:v(["train","validation","test","frozen_eval"]),taskIds:p(nn)})),environmentHash:Di,resettable:I(),reviewQuality:I()}))})),refinerReleases:p(He),activeRefiner:He.nullable(),models:p(l({id:nn,profileId:nn,name:i(),location:v(["local","hosted"])}))}),pV=l({operation:b("prepare"),evidence:He,profileOptionId:nn,componentLabel:nn,mode:v(["review_quality","downstream_adaptation"]),adaptationSplit:v(["train","validation","test","frozen_eval"]),operationId:nn,refinerRelease:He,maximumCostUsd:d().positive(),maximumDurationMs:d().int().positive(),maximumModelSteps:d().int().positive()}).strict();vt([dV,pV,l({operation:b("options"),evidence:He}).strict()]);var fV=l({modelRequests:d().int().nonnegative(),knownSpendUsd:d().nonnegative(),totalSpendUsd:d().nonnegative().nullable(),heldUsd:d().nonnegative(),uncertainRequests:d().int().nonnegative()}).strict();const Mo=T.nullable(),to=d().int().nonnegative(),hV=i().regex(/^[a-f0-9]{40}$/),gV=l({name:i().trim().min(1).max(160),startedAt:ye,completedAt:ye,durationMs:d().nonnegative(),clock:v(["monotonic","provider","wall"]),outcome:v(["succeeded","failed","cancelled"])}).strict(),vV=l({schemaVersion:b("openpond.correlatedTelemetryReceipt.v1"),stage:v(["training","evaluation","deployment","inference"]),correlation:l({modelRunId:Mo,modelVersionId:Mo,policyVersion:to.nullable(),taskId:Mo,rolloutGroupId:Mo,providerResourceId:Mo,deploymentId:Mo,inferenceRequestId:Mo}).strict(),spans:p(gV).max(1e4),usage:l({promptTokens:to.nullable(),generatedTokens:to.nullable(),gpuSeconds:d().nonnegative().nullable(),workerActiveSeconds:d().nonnegative().nullable(),optimizerSteps:to.nullable(),rolloutGroups:to.nullable(),successfulTrajectories:to.nullable(),failedTrajectories:to.nullable(),peakGpuMemoryBytes:to.nullable(),peakGpuUtilizationPercent:d().min(0).max(100).nullable()}).strict(),resource:l({provider:T,resourceIds:p(T).max(1e3),gpuType:i().trim().min(1).max(300).nullable(),gpuCount:to.nullable(),baseProfileId:Mo,baseRepository:i().trim().min(1).max(512).nullable(),baseRevision:hV.nullable(),adapterContentHash:D.nullable()}).strict(),cost:l({currency:b("USD"),providerReportedUsd:d().nonnegative().nullable(),quotedHourlyUsd:d().nonnegative().nullable(),estimatedUsd:d().nonnegative().nullable(),methodologyVersion:i().trim().min(1).max(160),pricingInputs:le(i().trim().min(1).max(160),d().finite()),unitEstimates:le(i().trim().min(1).max(160),d().nonnegative())}).strict(),recordedAt:ye,contentHash:D}).strict(),Cn=i().trim().min(1).max(240),go=i().regex(/^[a-f0-9]{64}$/),Lo=i().datetime({offset:!0}),En=l({id:Cn,contentHash:go}).strict(),bV=En.extend({revision:d().int().positive()}).strict(),LR=l({providerId:Cn,modelId:i().trim().min(1).max(300)}).strict(),lp=v(["correction","sibling_verification","cumulative_known","development","retained","frozen_final","training_eligible"]),yV=l({taskId:Cn,taskContentHash:go,panelRole:lp,passLabel:Cn.nullable(),optimizerEligible:I(),criticalInvariantIds:p(Cn).max(100).default([])}).strict().superRefine((e,t)=>{e.optimizerEligible!==(e.panelRole==="correction")&&t.addIssue({code:"custom",path:["optimizerEligible"],message:"Only correction cases may be optimizer eligible."})}),SV=l({schemaVersion:b("openpond.continualBenchIssuePacket.v1"),id:Cn,revision:d().int().positive(),contentHash:go,familyId:Cn,familyLabel:i().trim().min(1).max(500),severity:v(["low","medium","high","critical"]),cases:p(yV).min(2).max(1e4),duplicateEvidence:En,leakageEvidence:En,priorExposureEvidence:En,observedAt:Lo,reviewedAt:Lo,queuedAt:Lo.nullable(),runAt:Lo.nullable(),createdBy:Cn,createdAt:Lo}).strict().superRefine((e,t)=>{e.cases.some(n=>n.panelRole==="correction")||t.addIssue({code:"custom",path:["cases"],message:"An issue packet requires a correction case."}),e.cases.some(n=>n.panelRole==="sibling_verification")||t.addIssue({code:"custom",path:["cases"],message:"An issue packet requires a sibling-verification case."}),new Set(e.cases.map(n=>n.taskId)).size!==e.cases.length&&t.addIssue({code:"custom",path:["cases"],message:"Issue-packet task ids must be unique."})}),xV=l({id:Cn,role:lp,passLabel:Cn.nullable(),taskset:bV,familyIds:p(Cn).min(1).max(1e5),taskCount:d().int().positive().max(1e6),sealedAt:Lo}).strict().superRefine((e,t)=>{const n=e.role==="correction"||e.role==="sibling_verification"||e.role==="cumulative_known";n!==(e.passLabel!==null)&&t.addIssue({code:"custom",path:["passLabel"],message:n?"This panel role requires a pass label.":"This panel role is series-wide and cannot carry a pass label."})}),yh=ot("kind",[l({kind:b("base_model"),id:Cn,revision:i().trim().min(1).max(500),contentHash:go}).strict(),l({kind:b("model_version"),id:Cn,contentHash:go}).strict(),l({kind:b("external_reference"),id:Cn,model:LR,providerRevision:i().trim().min(1).max(500),contentHash:go}).strict()]),kV=l({scheduleEntryId:Cn,ordinal:d().int().nonnegative(),label:Cn,role:v(["seed","daily_residual","rank_candidate","weekly_rollup","full_refresh"]),parentRule:v(["base_model","previous_release","seed_release","accepted_daily_head","accepted_seed"]),trainableRank:d().int().positive().max(1024),correctionPanelIds:p(Cn).min(1).max(1e3),optimizerGroupsPerTask:d().int().positive().max(1e3),trajectoriesPerGroup:d().int().min(4).max(1e3)}).strict(),wV=l({revision:d().int().positive(),requireAllAttemptsTerminal:b(!0),criticalCorrectionPassRate:d().min(0).max(1),siblingPassRate:d().min(0).max(1),behavioralRetentionRate:d().min(0).max(1),maximumRetainedRegressionPoints:d().min(0).max(100),blockCriticalPriorRegression:I(),authorizedClaims:p(v(["systems_complete","correction_absorbed","issue_generalized","continually_current","frontier_pareto_result"])).min(1).max(5)}).strict(),IV=l({schemaVersion:b("openpond.continualBenchmarkProtocol.v1"),id:Cn,revision:d().int().positive(),contentHash:go,ownerId:Cn,createdAt:Lo,sealedAt:Lo,creationReceipt:En,predecessorSeries:l({id:Cn,revision:d().int().positive(),contentHash:go}).strict().nullable(),scenarioPack:En,issueFamilyLedger:En,issuePacketRelease:En,panels:p(xV).min(6).max(1e4),grader:En,judge:l({release:En,rubricRelease:En,calibrationRelease:En,model:LR}).strict().nullable(),policies:l({base:yh,master:yh.nullable(),externalReferences:p(yh).min(1).max(20)}).strict(),invariants:l({systemPromptHash:go,toolSchema:En,application:En,harness:En,runtime:En,workerImage:En,autoRefiner:l({enabled:I(),release:En.nullable()}).strict()}).strict(),schedule:p(kV).min(1).max(1e3),evaluation:l({seeds:p(d().int()).min(3).max(100),repetitions:d().int().min(3).max(20),powerRule:En,pairedBootstrapSamples:d().int().min(1e3).max(1e6),confidenceLevel:b(.95)}).strict(),resources:l({maximumTrainingGpuSeconds:d().int().positive(),maximumEvaluationGpuSeconds:d().int().positive(),maximumProviderSpendUsd:d().positive(),maximumTotalSpendUsd:d().positive(),maximumConcurrentGroups:d().int().positive().max(1e3)}).strict(),currencyThresholds:wV}).strict().superRefine((e,t)=>{const n=e.panels.map(r=>r.id);new Set(n).size!==n.length&&t.addIssue({code:"custom",path:["panels"],message:"Protocol panel ids must be unique."});for(const r of["development","retained","frozen_final","training_eligible"])e.panels.filter(s=>s.role===r).length!==1&&t.addIssue({code:"custom",path:["panels"],message:`A protocol requires exactly one ${r} panel.`});[...e.schedule].sort((r,s)=>r.ordinal-s.ordinal).some((r,s)=>r.ordinal!==s)&&t.addIssue({code:"custom",path:["schedule"],message:"Protocol schedule ordinals must be contiguous from zero."});const o=new Set(n);e.schedule.some(r=>r.correctionPanelIds.some(s=>!o.has(s)))&&t.addIssue({code:"custom",path:["schedule"],message:"Every scheduled correction panel must belong to the protocol."})}),_V=v(["draft","active","completed","archived"]),CV=v(["draft","ready","queued","running","candidate","accepted","rejected","no_signal","failed","cancelled"]),qR=v(["seed","daily_residual","rank_candidate","weekly_rollup","full_refresh"]),RV=v(["base_model","previous_release","seed_release","accepted_daily_head","accepted_seed"]),PV=v(["seed_taskset","nightly_selection","daily_cohort_union","eligible_task_pool"]),AV=v(["live_client","evaluation_attempt","replay_evidence","manual"]),TV=l({id:T,ordinal:d().int().nonnegative(),label:i().trim().min(1).max(100),role:qR,parentRule:RV,taskSource:PV,trainableRank:d().int().positive().max(1024),minimumTasks:d().int().nonnegative().max(1e5),maximumTasks:d().int().positive().max(1e5)}).strict().superRefine((e,t)=>{e.minimumTasks>e.maximumTasks&&t.addIssue({code:"custom",path:["minimumTasks"],message:"The minimum task count cannot exceed the maximum task count."});const n={seed:{parentRules:["base_model"],taskSource:"seed_taskset"},daily_residual:{parentRules:["previous_release","accepted_daily_head"],taskSource:"nightly_selection"},rank_candidate:{parentRules:["seed_release"],taskSource:"eligible_task_pool"},weekly_rollup:{parentRules:["seed_release","accepted_seed"],taskSource:"daily_cohort_union"},full_refresh:{parentRules:["base_model"],taskSource:"eligible_task_pool"}},{parentRules:a,taskSource:o}=n[e.role];a.includes(e.parentRule)||t.addIssue({code:"custom",path:["parentRule"],message:`${e.role} requires parent rule ${a.join(" or ")}.`}),e.taskSource!==o&&t.addIssue({code:"custom",path:["taskSource"],message:`${e.role} requires task source ${o}.`}),e.ordinal===0&&e.role!=="seed"&&t.addIssue({code:"custom",path:["role"],message:"The first series entry must be the seed."})}),EV=l({id:T,version:d().int().positive(),requireCheckpoint:I(),requireAppliedOptimizerUpdate:I(),minimumCurrentCohortMeanImprovement:d().finite(),maximumRetainedMeanRegression:d().finite().nonnegative(),blockCriticalInvariantRegression:I(),automaticDailyAdvancement:I()}).strict(),jV=l({schemaVersion:b("openpond.modelComparisonSeries.v1"),id:T,profileId:T,modelProjectId:T,name:i().trim().min(1).max(500),objective:i().trim().min(1).max(2e4),status:_V,revision:d().int().positive(),productionBinding:l({role:b("chat_manual"),roleTargetId:T}).strict(),baseModel:l({id:T,revision:i().trim().min(1).max(256)}).strict(),seedTaskset:Qt,eligibleTaskPool:Qt,evaluationTasksets:l({development:Qt,retained:Qt,frozenFinal:Qt}).strict(),grader:W,benchmarkProtocol:IV.nullable().default(null),automaticEvaluation:l({enabled:I()}).strict().default({enabled:!1}),residualProfile:l({profileId:T,serializedEnvelopeRank:d().int().positive().max(1024),maximumEnabledRank:d().int().positive().max(1024),topology:b("uniform_block_masked")}).strict(),schedule:p(TV).min(1).max(1e3),scheduleSealedAt:ye.nullable(),advancementPolicy:EV,executionPolicy:l({startWhenReady:b(!1)}).strict(),acceptedSeedEntryId:T.nullable(),acceptedDailyHeadEntryId:T.nullable(),promotedBindingId:T.nullable(),createdBy:T,createdAt:ye,updatedAt:ye}).strict().superRefine((e,t)=>{[...e.schedule].sort((m,u)=>m.ordinal-u.ordinal).some((m,u)=>m.ordinal!==u)&&t.addIssue({code:"custom",path:["schedule"],message:"Schedule ordinals must be unique and contiguous from zero."}),(new Set(e.schedule.map(m=>m.id)).size!==e.schedule.length||new Set(e.schedule.map(m=>m.label)).size!==e.schedule.length)&&t.addIssue({code:"custom",path:["schedule"],message:"Schedule ids and labels must be unique."}),e.residualProfile.maximumEnabledRank>e.residualProfile.serializedEnvelopeRank&&t.addIssue({code:"custom",path:["residualProfile"],message:"Maximum enabled rank cannot exceed the serialized envelope."});const a=Object.values(e.evaluationTasksets);new Set(a.map(m=>`${m.id}:${m.revision}:${m.contentHash}`)).size!==a.length&&t.addIssue({code:"custom",path:["evaluationTasksets"],message:"Development, retained, and frozen-final cohorts require distinct immutable Taskset releases."});const o=e.schedule.find(m=>m.role==="seed");if(!o||e.schedule.filter(m=>m.role==="seed").length!==1){t.addIssue({code:"custom",path:["schedule"],message:"A series requires exactly one seed entry."});return}const r=e.schedule.filter(m=>m.role==="rank_candidate");r.length===1&&t.addIssue({code:"custom",path:["schedule"],message:"A causal rank comparison requires at least two rank candidates."}),new Set(r.map(m=>m.trainableRank)).size!==r.length&&t.addIssue({code:"custom",path:["schedule"],message:"Causal rank candidates must use distinct trainable ranks."}),[o.trainableRank+e.schedule.filter(m=>m.role==="daily_residual").reduce((m,u)=>m+u.trainableRank,0),...e.schedule.filter(m=>m.role==="weekly_rollup").map(m=>o.trainableRank+m.trainableRank),...e.schedule.filter(m=>m.role==="rank_candidate").map(m=>o.trainableRank+m.trainableRank),...e.schedule.filter(m=>m.role==="full_refresh").map(m=>m.trainableRank)].some(m=>m>e.residualProfile.maximumEnabledRank)&&t.addIssue({code:"custom",path:["schedule"],message:"A declared branch exceeds the maximum enabled rank."})}),UR=l({source:AV,taskIds:p(T).min(1).max(1e5),observedFrom:ye,observedTo:ye,reviewedAt:ye,reviewedBy:T,sourceTaskset:Qt}).strict(),MV=UR.extend({derivedFamilyKeys:p(T).min(1).max(1e5),familyDerivation:l({algorithm:T,sourceTasksetHash:D}).strict(),selectionHash:D}).strict(),zR=ot("kind",[l({kind:b("base_model"),id:T,revision:i().trim().min(1).max(256)}).strict(),l({kind:b("model_version"),id:T,contentHash:D}).strict()]),OV=l({id:T,branchOrdinal:d().int().nonnegative(),rank:d().int().positive().max(1024),offsetStart:d().int().nonnegative(),offsetEnd:d().int().positive(),optimizationRole:v(["frozen","trainable"]),artifactLineageId:T.nullable()}).strict().superRefine((e,t)=>{e.offsetEnd-e.offsetStart!==e.rank&&t.addIssue({code:"custom",path:["offsetEnd"],message:"Block offsets must span exactly the declared rank."})}),$V=l({disposition:v(["advance","hold","no_signal"]),policy:l({id:T,version:d().int().positive()}).strict(),reasonCodes:p(T).min(1).max(100),summary:i().trim().min(1).max(5e3),decidedBy:T,decidedAt:ye}).strict(),NV=l({evaluationRunId:T,modelVersionId:T,taskset:Qt,grader:W,cohortRole:v(["current","correction","sibling_verification","cumulative_known","development","retained","prior_disclosed","frozen_final"]),panelId:T.nullable().default(null),protocol:l({id:T,revision:d().int().positive(),contentHash:D}).strict().nullable().default(null)}).strict(),DV=l({attemptOrdinal:d().int().positive(),trainingPlanId:T.nullable(),modelRunId:T.nullable(),terminalStatus:v(["failed","cancelled"]),queuedAt:ye.nullable(),startedAt:ye.nullable(),completedAt:ye}).strict(),nl=l({seriesId:T,entryId:T,scheduleEntryId:T,ordinal:d().int().nonnegative(),releaseHash:D}).strict(),HV=l({schemaVersion:b("openpond.modelComparisonSeriesEntry.v1"),id:T,seriesId:T,profileId:T,modelProjectId:T,scheduleEntryId:T,releaseHash:D,ordinal:d().int().nonnegative(),label:i().trim().min(1).max(100),role:qR,branch:v(["daily","rank_candidate","weekly_rollup","full_refresh"]),status:CV,parent:zR,taskset:Qt,sourceTasksets:p(Qt).min(1).max(1e3),taskSelection:MV.nullable(),trainableRank:d().int().positive().max(1024),serializedEnvelopeRank:d().int().positive().max(1024),enabledCumulativeRank:d().int().positive().max(1024),trainableBlockId:T,residualBlocks:p(OV).min(1).max(1024),attemptOrdinal:d().int().positive().default(1),priorRunAttempts:p(DV).max(100).default([]),trainingPlanId:T.nullable(),modelRunId:T.nullable(),modelVersionId:T.nullable(),evaluations:p(NV).max(1e5),decision:$V.nullable(),promotionBindingId:T.nullable(),queuedAt:ye.nullable(),startedAt:ye.nullable(),completedAt:ye.nullable(),createdAt:ye,updatedAt:ye}).strict().superRefine((e,t)=>{const n=[...e.residualBlocks].sort((s,c)=>s.offsetStart-c.offsetStart);n.some((s,c)=>s.offsetStart!==(c===0?0:n[c-1].offsetEnd))&&t.addIssue({code:"custom",path:["residualBlocks"],message:"Residual block offsets must be contiguous from zero."});const a=n.at(-1)?.offsetEnd??0;(a!==e.enabledCumulativeRank||a>e.serializedEnvelopeRank)&&t.addIssue({code:"custom",path:["enabledCumulativeRank"],message:"Enabled rank must match the block inventory and fit the envelope."});const o=e.residualBlocks.filter(s=>s.optimizationRole==="trainable");(o.length!==1||o[0]?.id!==e.trainableBlockId||o[0]?.rank!==e.trainableRank)&&t.addIssue({code:"custom",path:["trainableBlockId"],message:"Exactly one block must be trainable during the Run and match trainableRank."});const r=e.priorRunAttempts.map(s=>s.attemptOrdinal);(e.priorRunAttempts.length!==e.attemptOrdinal-1||r.some((s,c)=>s!==c+1))&&t.addIssue({code:"custom",path:["priorRunAttempts"],message:"Prior Run attempts must be a contiguous history before the active attempt."})});l({seriesId:T,scheduleEntryId:T,taskSelection:UR.nullable(),expectedSeriesRevision:d().int().positive()}).strict();const LV=v(["base_reference","lora_adapter"]),BR=l({baseModel:l({source:b("huggingface"),repoId:T,revision:i().regex(/^[a-f0-9]{40}$/),configHash:D,tokenizerHash:D,licenseId:T,gated:I()}).strict(),processor:l({repository:T,revision:i().regex(/^[a-f0-9]{40}$/),configHash:D}).strict()}).strict().superRefine((e,t)=>{(e.baseModel.repoId!==e.processor.repository||e.baseModel.revision!==e.processor.revision)&&t.addIssue({code:"custom",path:["processor"],message:"Reward Model processor must match the pinned scorer base model."})}),qV=l({schemaVersion:b("openpond.modelVersion.v1"),id:T,modelId:T,profileId:T,version:d().int().nonnegative(),kind:LV,status:v(["available","failed"]),baseModel:hd,taskset:Qt,comparisonSeriesEntry:nl.nullable().optional(),evaluationTasksetRef:Qt.nullable().optional(),releaseGraph:l({resolvedBundleHash:D,profileRelease:Qt,harnessRelease:W,agentRelease:W.nullable(),grader:l({id:T,contentHash:D}).strict()}).strict(),artifactLineageId:T.nullable(),adapterStatus:v(["not_trained","trained"]),createdAt:ye,contentHash:D}).strict().superRefine((e,t)=>{e.kind==="base_reference"&&(e.version!==0||e.adapterStatus!=="not_trained"||e.artifactLineageId!==null)&&t.addIssue({code:"custom",message:"A base-reference Model Version must be version 0 without adapter lineage."}),e.kind==="lora_adapter"&&(e.version===0||e.adapterStatus!=="trained"||!e.artifactLineageId)&&t.addIssue({code:"custom",message:"A LoRA Model Version must be version 1+ with adapter lineage."})}),UV=l({schemaVersion:b("openpond.rewardModelVersion.v1"),id:T,modelId:T,profileId:T,version:d().int().positive(),role:b("reward"),status:v(["available","failed"]),scope:v(["synthetic_smoke","human_preference"]),baseModel:hd,runtime:BR.nullable().default(null),taskset:Qt,preferenceDatasetRelease:W,releaseGraph:l({resolvedBundleHash:D,profileRelease:Qt,harnessRelease:W,grader:l({id:T,contentHash:D}).strict()}).strict(),artifacts:l({checkpoint:W.extend({objectRef:i().regex(/^r2:\/\/[A-Za-z0-9._/-]+$/),files:p(l({path:i().trim().min(1).max(512),sizeBytes:d().int().positive(),sha256:D}).strict()).min(4).max(128)}).strict(),adapter:W,scalarHead:W,bucketHead:W.nullable(),processorRelease:W}).strict(),qualificationReport:W.nullable(),createdAt:ye,contentHash:D}).strict(),zV=l({schemaVersion:b("openpond.rewardModelRunReceipt.v1"),provider:T,providerRunId:T,resolvedBundleHash:D,finalCheckpoint:W.extend({objectRef:i().regex(/^r2:\/\/[A-Za-z0-9._/-]+$/)}).strict(),adapter:W,scalarHead:W,bucketHead:W.nullable(),processorRelease:W,optimizerEvidence:W,managedExecutionReceipt:W.nullable().default(null),parameterDeltaHash:D,cleanup:l({computeReleased:I(),providerTerminalObserved:I()}).strict(),contentHash:D}).strict(),BV=T$(e=>{if(!e||typeof e!="object"||Array.isArray(e))return e;const t=e;if(t.tasksetRelease!==void 0)return e;const n=t.taskset;if(!n||typeof n!="object"||Array.isArray(n))return e;const a=n;return typeof a.id!="string"||typeof a.contentHash!="string"?e:{...t,tasksetRelease:{id:a.id,contentHash:a.contentHash}}},l({schemaVersion:b("openpond.rewardModelRun.v1"),id:T,rewardModelId:T,rewardModelVersionId:T.nullable(),profileId:T,role:b("reward"),scope:v(["synthetic_smoke","human_preference"]),status:v(["prepared","running","succeeded","failed","cancelled"]),taskset:Qt,tasksetRelease:W,preferenceDatasetRelease:W,recipeRelease:W,destinationId:T,quote:l({maximumSpendUsd:d().positive(),hourlyCostUsd:d().nonnegative().nullable()}).strict(),managedRunId:T.nullable(),progress:l({completedSteps:d().int().nonnegative(),totalSteps:d().int().positive(),latestLoss:d().finite().nullable()}).strict(),receipt:zV.nullable(),qualificationReport:W.nullable(),accruedSpendUsd:d().nonnegative().nullable(),failureOwner:v(["authoring","admission","provider","runner","artifact","qualification","cleanup"]).nullable(),failure:i().trim().min(1).max(5e3).nullable(),startedAt:ye,completedAt:ye.nullable(),updatedAt:ye}).strict()).superRefine((e,t)=>{e.status==="succeeded"&&!e.receipt&&t.addIssue({code:"custom",message:"A successful Reward Model Run requires a canonical receipt."}),e.status!=="succeeded"&&e.rewardModelVersionId!==null&&t.addIssue({code:"custom",message:"Only a successful Reward Model Run can publish a Reward Model Version."})}),FV=l({schemaVersion:b("openpond.modelRunReceipt.v1"),provider:T,providerRunId:T,assignmentHash:D,resultHash:D,transcriptHash:D,traceHash:D.nullable(),resolvedBundleHash:D,artifactPath:i().trim().min(1).max(2e3),cleanup:l({computeReleased:I(),tunnelClosed:I()}).strict(),telemetry:vV.nullable().default(null),contentHash:D}).strict(),$o=l({inputTokens:d().int().nonnegative(),outputTokens:d().int().nonnegative(),totalTokens:d().int().nonnegative(),costUsd:d().nonnegative().nullable()}).strict(),rx=i().regex(/^(?:[a-f0-9]{40}|[a-f0-9]{64})$/),Qb=l({phase:v(["baseline","adaptation","candidate_adaptation","candidate"]),taskId:T,attemptId:T,sessionId:T.nullable(),turnId:T.nullable(),passed:I(),score:d().min(0).max(1).nullable(),failureClass:Jb.nullable(),inputTokens:d().int().nonnegative(),outputTokens:d().int().nonnegative(),totalTokens:d().int().nonnegative(),latencyMs:d().int().nonnegative(),costUsd:d().nonnegative().nullable(),startedAt:ye}).strict(),sx=l({targetTaskCount:d().int().nonnegative(),comparedTaskCount:d().int().nonnegative(),passedTaskCount:d().int().nonnegative(),failedTaskCount:d().int().nonnegative(),lowerTaskCount:d().int().nonnegative(),higherTaskCount:d().int().nonnegative(),unchangedTaskCount:d().int().nonnegative()}).strict(),FR=l({target:b("all_tasks_lower"),targetTaskCount:d().int().nonnegative(),comparedTaskCount:d().int().nonnegative(),passedTaskCount:d().int().nonnegative(),failedTaskCount:d().int().nonnegative(),lowerTaskCount:d().int().nonnegative(),higherTaskCount:d().int().nonnegative(),unchangedTaskCount:d().int().nonnegative(),baselineTokens:d().int().nonnegative(),refinedTokens:d().int().nonnegative(),tokenDelta:d().int(),tokenDeltaPercent:d().finite().nullable(),complete:I(),passed:I(),cohorts:l({adaptation:sx,heldOut:sx}).strict()}).strict(),Xb=l({baseline:$o,adaptation:$o,candidateAdaptation:$o,candidate:$o,refiner:$o,grader:$o}).strict(),VV=l({usage:Xb,observedSpendUsd:d().nonnegative(),attempts:p(Qb).max(1e4)}).strict(),KV=l({id:T,contentHash:D,artifactPath:i().trim().min(1).max(2e3)}).strict(),WV=l({schemaVersion:b("openpond.modelEvaluationReceipt.v1"),benchmarkId:T,resultManifest:l({id:T,contentHash:D,artifactPath:i().trim().min(1).max(2e3)}).strict(),stages:l({baseline:W,adaptation:W,refiner:W,candidateAdaptation:W,candidate:W,comparison:W}).strict(),usage:Xb,quality:l({baselinePassRate:d().min(0).max(1),candidatePassRate:d().min(0).max(1),adaptationBaselinePassRate:d().min(0).max(1),adaptationCandidatePassRate:d().min(0).max(1),adaptationCandidatePassed:I(),heldOutCandidatePassed:I(),passed:I()}).strict(),foregroundTokenDelta:d().int(),foregroundTokenDeltaPercent:d().finite().nullable(),taskEfficiency:FR.optional(),efficiency:l({grossForegroundTokenSavings:d().int(),overheadTokens:d().int().nonnegative(),firstPassNetTokenSavings:d().int(),breakEvenReuseCount:d().int().nonnegative().nullable(),amortizedTokenSavings:d().int(),amortizedReuseCount:d().int().positive()}).strict(),budget:l({maximumSpendUsd:d().nonnegative(),observedSpendUsd:d().nonnegative(),enforced:I()}).strict(),evidenceSnapshot:W,lineage:l({adaptationEvidenceHash:D,refinerInputHash:D,refinerOutcomeHash:D,validationHash:D,applyReceiptHash:D,candidateRelease:W,valid:I()}).strict(),invalidReasons:p(i().trim().min(1).max(2e3)).max(100),attempts:p(Qb).max(1e4).default([]),terminalClassification:v(["improved","no_improvement","regressed","inconclusive","cancelled","infrastructure_failure"]),profileGit:l({ref:i().trim().min(1).max(2e3),commit:rx,baseCommit:rx}).strict().nullable(),contentHash:D}).strict(),GV=l({schemaVersion:b("openpond.modelEvaluationStopReceipt.v1"),benchmarkId:T,terminalClassification:b("inconclusive"),stopReason:v(["candidate_harness_unchanged","candidate_lineage_invalid"]),reason:i().trim().min(1).max(5e3),stoppedAfter:b("refiner"),baselineHarness:W,candidateHarness:W,refiner:l({id:T,contentHash:D,outcomeCount:d().int().nonnegative()}).strict(),usage:Xb,budget:l({maximumSpendUsd:d().nonnegative(),observedSpendUsd:d().nonnegative(),enforced:I()}).strict(),evidenceSnapshot:W,attempts:p(Qb).max(1e4),contentHash:D}).strict(),lx=l({level:b(.95),lower:d().finite(),upper:d().finite()}).strict().superRefine((e,t)=>{e.lower>e.upper&&t.addIssue({code:"custom",message:"A confidence interval's lower bound cannot exceed its upper bound."})}),JV=l({schemaVersion:b("openpond.modelComparisonBenchmarkReceipt.v1"),benchmarkId:b("model-comparison"),target:l({kind:v(["base_model","model_version","external_reference"]),label:i().trim().min(1).max(300),modelVersionId:T.nullable(),model:Sn.nullable()}).strict(),taskset:Qt,grader:W,sampling:l({seeds:p(d().int()).min(1).max(100),repetitions:d().int().positive().max(20)}).strict(),deterministic:l({attemptedTaskCount:d().int().nonnegative(),completedTaskCount:d().int().nonnegative(),passedTaskCount:d().int().nonnegative(),failedTaskCount:d().int().nonnegative(),meanScore:d().finite().nullable(),passRate:d().min(0).max(1).nullable(),passRateCi95:lx.nullable()}).strict(),judge:l({judgeModel:Sn,judgeRelease:W,rubricRelease:W,calibrationRelease:W,score:d().min(0).max(100),scoreCi95:lx,comparisonCount:d().int().positive(),wins:d().int().nonnegative(),ties:d().int().nonnegative(),losses:d().int().nonnegative(),referenceLabel:i().trim().min(1).max(300)}).strict().superRefine((e,t)=>{e.wins+e.ties+e.losses!==e.comparisonCount&&t.addIssue({code:"custom",message:"Judge win, tie, and loss counts must equal comparisonCount."})}).nullable(),attempts:p(l({attemptId:T.nullable().default(null),taskId:T,seed:d().int(),repetition:d().int().nonnegative(),status:v(["succeeded","failed"]),deterministicScore:d().finite().nullable(),passed:I().nullable(),judgeScore:d().min(0).max(100).nullable(),judgePreference:v(["win","tie","loss"]).nullable(),transcriptHash:D.nullable(),traceHash:D.nullable(),transcriptArtifact:l({artifactPath:i().trim().min(1).max(2e3),jsonPointer:i().trim().min(1).max(1e3)}).strict().nullable().default(null),traceArtifact:l({artifactPath:i().trim().min(1).max(2e3),jsonPointer:i().trim().min(1).max(1e3)}).strict().nullable().default(null),latencyMs:d().int().nonnegative().nullable().default(null),failureClass:Jb.nullable()}).strict()).max(1e5),usage:l({policy:$o.nullable(),judge:$o.nullable(),observedSpendUsd:d().nonnegative().nullable(),evaluationGpuSeconds:d().nonnegative().nullable().default(null)}).strict(),managedServing:l({jobId:T,terminalState:v(["completed","cancelled","failed","budget_exhausted"]),sourcePolicyVersion:d().int().nonnegative(),sourceAdapterSha256:D.nullable(),servedPolicyVersion:d().int().nonnegative().nullable(),servedAdapterSha256:D.nullable(),accruedSpendUsd:d().nonnegative(),cleanupAttestationHash:D,resourceCount:d().int().nonnegative(),activeResourceCount:b(0)}).strict().nullable().default(null),evidenceSnapshot:l({id:T,contentHash:D,artifactPath:i().trim().min(1).max(2e3)}).strict(),completedAt:ye,contentHash:D}).strict().superRefine((e,t)=>{const n=e.deterministic;n.completedTaskCount>n.attemptedTaskCount&&t.addIssue({code:"custom",message:"Completed task count cannot exceed attempted task count."}),n.passedTaskCount+n.failedTaskCount!==n.completedTaskCount&&t.addIssue({code:"custom",message:"Passed and failed task counts must equal completed task count."}),n.completedTaskCount===0!=(n.meanScore===null)&&t.addIssue({code:"custom",message:"Deterministic mean score is available exactly when tasks completed."}),n.completedTaskCount===0!=(n.passRate===null)&&t.addIssue({code:"custom",message:"Deterministic pass rate is available exactly when tasks completed."})}),ZV=l({advancedEvaluation:Yb.optional(),benchmarkId:b("harness-refiner"),model:Sn,upstreamModel:l({providerId:T,modelId:i().trim().min(1).max(300),revision:i().trim().min(1).max(300),pricing:l({version:i().trim().min(1).max(300),source:i().trim().min(1).max(300),effectiveAt:ye,inputUsdPerMillionTokens:d().nonnegative(),cachedInputUsdPerMillionTokens:d().nonnegative(),outputUsdPerMillionTokens:d().nonnegative()}).strict().optional()}).strict(),reasoningEffort:i().trim().min(1).max(100).nullable(),seeds:p(d().int()).min(1).max(100),repetitions:d().int().positive().max(20),maximumSpendUsd:d().nonnegative(),attemptPlan:p(l({stage:v(["baseline","adaptation","candidate_adaptation","candidate"]),split:i().trim().min(1).max(100),taskIds:p(T).min(1).max(1e5),attemptCount:d().int().positive()}).strict()).length(4)}).strict(),YV=l({benchmarkId:b("model-comparison"),target:l({kind:v(["base_model","model_version","external_reference"]),label:i().trim().min(1).max(300),modelVersionId:T.nullable(),model:Sn.nullable()}).strict(),grader:W,judge:l({model:Sn,release:W,rubricRelease:W,calibrationRelease:W,referenceLabel:i().trim().min(1).max(300)}).strict().nullable(),seeds:p(d().int()).min(1).max(100),repetitions:d().int().positive().max(20),maximumSpendUsd:d().nonnegative(),series:l({id:T,protocol:l({id:T,revision:d().int().positive(),contentHash:D}).strict()}).strict().nullable().default(null),panel:l({id:T,role:v(["correction","sibling_verification","cumulative_known","development","retained","frozen_final"]),passLabel:T.nullable()}).strict().nullable().default(null),comparisonPair:l({entryId:T,parent:zR,candidateModelVersionId:T}).strict().nullable().default(null),attemptPlan:p(l({stage:b("comparison"),split:i().trim().min(1).max(100),taskIds:p(T).min(1).max(1e5),attemptCount:d().int().positive()}).strict()).length(1)}).strict(),QV=vt([ZV,YV]),XV=l({schemaVersion:b("openpond.modelRun.v1"),id:T,modelId:T,modelVersionId:T.nullable(),profileId:T,kind:v(["rollout_smoke","training","evaluation"]),status:v(["prepared","running","succeeded","failed","cancelled"]),method:v(["sft","dpo","grpo","ppo","sdft","opd","opsd","sdpo"]).nullable(),destinationId:T.nullable(),taskset:Qt,comparisonSeriesEntry:nl.nullable().optional(),evaluationTasksetRef:Qt.nullable().optional(),harnessRelease:W.nullable().optional(),quote:l({maximumSpendUsd:d().nonnegative(),hourlyCostUsd:d().nonnegative().nullable()}).strict().nullable(),evaluation:QV.nullable().default(null),evaluationProgress:l({stage:v(["baseline","adaptation","refiner","candidate_adaptation","candidate","comparison"]),completedAttempts:d().int().nonnegative(),totalAttempts:d().int().positive(),accounting:VV.nullable().default(null),advancedAccounting:fV.optional(),evidenceSnapshot:KV.nullable().default(null)}).strict().nullable().default(null),reward:l({raw:d(),components:le(i(),d())}).strict().nullable(),receipt:vt([FV,WV,GV,JV,mV]).nullable(),adapterArtifactLineageId:T.nullable(),failure:i().trim().min(1).max(5e3).nullable(),startedAt:ye,completedAt:ye.nullable(),updatedAt:ye}).strict().superRefine((e,t)=>{e.status==="succeeded"&&!e.receipt&&t.addIssue({code:"custom",message:"A successful Model Run requires a canonical receipt."}),e.kind==="evaluation"&&(e.method!==null||e.destinationId!==null||!e.evaluation||e.adapterArtifactLineageId!==null)&&t.addIssue({code:"custom",message:"An evaluation Model Run requires evaluation configuration and cannot claim training method, destination, or adapter lineage."}),e.kind==="evaluation"&&e.receipt&&e.receipt.schemaVersion!=="openpond.modelEvaluationReceipt.v1"&&e.receipt.schemaVersion!=="openpond.modelEvaluationStopReceipt.v1"&&e.receipt.schemaVersion!=="openpond.modelComparisonBenchmarkReceipt.v1"&&e.receipt.schemaVersion!=="openpond.advancedRefinerReviewReceipt.v1"&&t.addIssue({code:"custom",message:"An evaluation Model Run requires an evaluation receipt."}),e.kind!=="evaluation"&&(e.method===null||e.destinationId===null||e.quote===null)&&t.addIssue({code:"custom",message:"A training or rollout Model Run requires method, destination, and quote."}),e.kind==="rollout_smoke"&&e.adapterArtifactLineageId!==null&&t.addIssue({code:"custom",message:"A rollout smoke cannot claim adapter artifacts."})});function Kie(e){const t=new Map;for(const _ of e.attempts){const P=`${_.phase}\0${_.taskId}`,E=t.get(P);(!E||_.startedAt>E.startedAt||_.startedAt===E.startedAt&&_.attemptId>E.attemptId)&&t.set(P,_)}const n=[...t.values()],a=[["adaptation","adaptation","candidate_adaptation"],["held_out","baseline","candidate"]].flatMap(([_,P,E])=>{const A=new Map(n.filter($=>$.phase===E).map($=>[$.taskId,$]));return n.filter($=>$.phase===P).flatMap($=>{const j=A.get($.taskId);return j?[{cohort:_,taskId:$.taskId,baseline:$,refined:j,tokenDelta:j.totalTokens-$.totalTokens}]:[]})}),o=new Set(n.filter(_=>_.phase==="baseline"||_.phase==="adaptation").map(_=>_.taskId)).size,r=e.targetTaskCount??o;if(!Number.isInteger(r)||r<0)throw new Error("Benchmark task-efficiency target must be a non-negative integer.");const s={adaptation:new Set(n.filter(_=>_.phase==="adaptation").map(_=>_.taskId)).size,held_out:new Set(n.filter(_=>_.phase==="baseline").map(_=>_.taskId)).size},c=(_,P)=>({targetTaskCount:P,comparedTaskCount:_.length,passedTaskCount:_.filter(E=>E.tokenDelta<0).length,failedTaskCount:_.filter(E=>E.tokenDelta>=0).length,lowerTaskCount:_.filter(E=>E.tokenDelta<0).length,higherTaskCount:_.filter(E=>E.tokenDelta>0).length,unchangedTaskCount:_.filter(E=>E.tokenDelta===0).length}),m=c(a,r),u=a.reduce((_,P)=>_+P.baseline.totalTokens,0),f=a.reduce((_,P)=>_+P.refined.totalTokens,0),h=f-u,x=a.length===r;return{summary:FR.parse({target:"all_tasks_lower",...m,baselineTokens:u,refinedTokens:f,tokenDelta:h,tokenDeltaPercent:u>0?h/u*100:null,complete:x,passed:x&&m.passedTaskCount===r,cohorts:{adaptation:c(a.filter(_=>_.cohort==="adaptation"),s.adaptation),heldOut:c(a.filter(_=>_.cohort==="held_out"),s.held_out)}}),pairs:a}}const e9=v(["measuring","up_to_date","needs_attention"]),t9=v(["fixed","retained","regressed","unresolved","unavailable"]),cx=l({evaluationRunId:T,attemptKey:T,artifactPath:i().trim().min(1).max(2e3),jsonPointer:i().trim().min(1).max(1e3),transcriptHash:D.nullable(),traceHash:D.nullable()}).strict(),Tg=l({level:b(.95),lower:d().finite(),upper:d().finite()}).strict(),n9=l({panelId:T,panelRole:lp,passLabel:T.nullable(),taskset:Qt,attempted:d().int().nonnegative(),available:d().int().nonnegative(),passed:d().int().nonnegative(),strictSuccess:d().min(0).max(1).nullable(),strictSuccessCi95:Tg.nullable(),judgeScore:d().min(0).max(100).nullable(),judgeScoreCi95:Tg.nullable()}).strict(),a9=l({schemaVersion:b("openpond.modelCurrencySnapshot.v1"),id:T,contentHash:D,seriesId:T,protocol:l({id:T,revision:d().int().positive(),contentHash:D}).strict(),entryId:T,passLabel:T,parent:ot("kind",[l({kind:b("base_model"),id:T,revision:i().trim().min(1).max(500)}).strict(),l({kind:b("model_version"),id:T,contentHash:D}).strict()]),candidate:l({kind:b("model_version"),id:T,contentHash:D}).strict(),sources:l({evaluationRunIds:p(T).max(1e5),attemptIds:p(T).max(1e6),tasksets:p(Qt).max(1e4),grader:W,judge:W.nullable(),calibration:W.nullable()}).strict(),matches:p(l({key:T,panelId:T,panelRole:lp,taskId:T,issueFamilyId:T,seed:d().int(),repetition:d().int().nonnegative(),classification:t9,parentPassed:I().nullable(),candidatePassed:I().nullable(),parentAttempt:cx.nullable(),candidateAttempt:cx.nullable()}).strict()).max(1e6),taskIds:l({fixed:p(T).max(1e6),retained:p(T).max(1e6),regressed:p(T).max(1e6),unresolved:p(T).max(1e6),unavailable:p(T).max(1e6)}).strict(),panels:p(n9).max(1e4),metrics:l({knownIssueCoverage:d().min(0).max(1).nullable(),issueFamilyGeneralization:d().min(0).max(1).nullable(),behavioralRetention:d().min(0).max(1).nullable(),currentAcquisitionDelta:d().finite().nullable(),retainedDeltaPoints:d().finite().nullable(),frontierStrictDelta:d().finite().nullable(),pairedPValue:d().min(0).max(1).nullable(),wins:d().int().nonnegative(),ties:d().int().nonnegative(),losses:d().int().nonnegative()}).strict(),statistics:l({matchedAttemptCount:d().int().nonnegative(),strictDelta:d().finite().nullable(),strictDeltaCi95:Tg.nullable(),exactPairedBinaryPValue:d().min(0).max(1).nullable(),pairedBootstrapSamples:d().int().positive()}).strict(),criteria:l({allRequiredAttemptsTerminal:I(),criticalCorrectionPassRate:d().min(0).max(1).nullable(),siblingPassRate:d().min(0).max(1).nullable(),behavioralRetentionRate:d().min(0).max(1).nullable(),retainedRegressionPoints:d().finite().nullable(),criticalPriorRegressionCount:d().int().nonnegative(),thresholdRelease:W}).strict(),efficiency:l({inputTokens:d().int().nonnegative(),outputTokens:d().int().nonnegative(),totalTokens:d().int().nonnegative(),costUsd:d().nonnegative().nullable(),latencyMs:d().int().nonnegative(),tokensPerSuccess:d().nonnegative().nullable(),throughputPerHour:d().nonnegative().nullable(),gpuSeconds:d().nonnegative().nullable()}).strict(),invariants:l({systemPromptHash:D,toolSchema:W,application:W,harness:W,runtime:W,grader:W,autoRefinerEnabled:I()}).strict(),evidenceState:e9,evidenceReasons:p(T).max(100),projectedAt:ye}).strict(),Au=ot("kind",[l({kind:b("base_model"),id:T,revision:i().trim().min(1).max(500),label:i().trim().min(1).max(300)}).strict(),l({kind:b("model_version"),id:T,label:i().trim().min(1).max(300)}).strict(),l({kind:b("captured_model"),id:T,label:i().trim().min(1).max(300)}).strict()]),fc=vt([l({source:b("evaluation_run").default("evaluation_run"),evaluationRunId:T,attemptId:T,modelLabel:i().trim().min(1).max(300).nullable().default(null),modelVersionId:T.nullable().default(null),reward:d().finite().nullable(),components:le(i(),d().finite()).default({})}).strict(),l({source:b("imported_response"),modelLabel:i().trim().min(1).max(300),modelVersionId:T.nullable().default(null),response:ce().refine(e=>e!==void 0,"An imported model response is required."),reward:d().finite().nullable().default(null),components:le(i(),d().finite()).default({})}).strict()]),i9=vt([l({taskId:T,target:Au,attempt:fc}).strict(),l({taskId:T,target:v(["base","current"]).default("current"),attempt:fc}).strict(),l({taskId:T,target:v(["base","current"]).default("current"),evaluationRunId:T,attemptId:T,reward:d().finite().nullable(),components:le(i(),d().finite()).default({})}).strict().transform(({taskId:e,target:t,...n})=>({taskId:e,target:t,attempt:{source:"evaluation_run",modelLabel:null,modelVersionId:null,...n}}))]);l({schemaVersion:b("openpond.continualLearningDailyBatchManifest.v1"),id:T,seriesId:T,scheduleEntryId:T,dayOrdinal:d().int().positive().max(1e4),sourceTaskset:Qt,taskIds:p(T).min(1).max(1e3),observedAttempts:p(i9).max(1e3).default([]),sourceFileName:i().trim().min(1).max(500).nullable().default(null),availableAt:ye}).strict().superRefine((e,t)=>{new Set(e.taskIds).size!==e.taskIds.length&&t.addIssue({code:"custom",path:["taskIds"],message:"A daily batch cannot repeat a task."}),new Set(e.observedAttempts.map(a=>`${a.taskId}:${s9(a.target)}`)).size!==e.observedAttempts.length&&t.addIssue({code:"custom",path:["observedAttempts"],message:"An intake batch cannot repeat a task and Policy target pair."});const n=new Set(e.taskIds);e.observedAttempts.some(a=>!n.has(a.taskId))&&t.addIssue({code:"custom",path:["observedAttempts"],message:"Observed attempts must belong to tasks in the daily batch."})});const o9=l({schemaVersion:b("openpond.continualLearningDailyBatch.v1"),id:T,seriesId:T,scheduleEntryId:T,dayOrdinal:d().int().positive().max(1e4),label:i().trim().min(1).max(100),runMode:v(["automatic","manual"]).optional(),source:v(["json_upload","sealed_fixture"]),sourceFileName:i().trim().min(1).max(500).nullable(),sourceTaskset:Qt,tasks:p(l({taskId:T,taskContentHash:D,familyKey:T,disposition:v(["include","defer","exclude"]).nullable(),oracleReview:v(["pending","confirmed","needs_correction"]),note:i().trim().max(2e3),observedAttempt:fc.nullable(),baselineAttempt:fc.nullable().default(null),responses:p(l({target:Au,attempt:fc}).strict()).max(100).default([]),stagedAt:ye.nullable().default(null),queuedEntry:nl.nullable().default(null)}).strict()).min(1).max(1e3),intakeEvaluation:l({status:v(["awaiting","running","ready","failed"]),requestedTargets:p(v(["base","current"])).max(2).default(["base","current"]),requestedPolicies:p(Au).max(100).default([]),runs:p(l({target:Au,runId:T}).strict()).max(100).default([]),baselineRunId:T.nullable(),currentRunId:T.nullable(),currentPolicy:ot("kind",[l({kind:b("base_model"),id:T}).strict(),l({kind:b("model_version"),id:T}).strict()]).nullable(),failure:i().trim().min(1).max(2e3).nullable()}).strict().default({status:"awaiting",requestedTargets:["base","current"],requestedPolicies:[],runs:[],baselineRunId:null,currentRunId:null,currentPolicy:null,failure:null}),status:v(["pending","reviewed","queued"]),queuedEntry:nl.nullable(),reviewedBy:T.nullable(),reviewedAt:ye.nullable(),availableAt:ye,revision:d().int().positive(),createdAt:ye,updatedAt:ye}).strict().superRefine((e,t)=>{new Set(e.tasks.map(a=>a.taskId)).size!==e.tasks.length&&t.addIssue({code:"custom",path:["tasks"],message:"A daily batch cannot repeat a task."});for(const[a,o]of e.tasks.entries()){const r=o.responses.map(s=>VR(s.target));new Set(r).size!==r.length&&t.addIssue({code:"custom",path:["tasks",a,"responses"],message:"A task cannot repeat a model response target."})}const n=e.tasks.every(a=>a.disposition!==null&&a.oracleReview!=="pending"&&(a.oracleReview!=="needs_correction"||a.note.length>0));e.status!=="pending"&&!n&&t.addIssue({code:"custom",path:["tasks"],message:"Every task requires a decision and oracle review before the day completes."}),e.status==="queued"!=(e.queuedEntry!==null)&&t.addIssue({code:"custom",path:["queuedEntry"],message:"Only a queued day carries an exact series-entry reference."}),e.status==="pending"&&(e.reviewedAt!==null||e.reviewedBy!==null)&&t.addIssue({code:"custom",path:["reviewedAt"],message:"A pending day cannot carry reviewer completion identity."}),e.status!=="pending"&&(e.reviewedAt===null||e.reviewedBy===null)&&t.addIssue({code:"custom",path:["reviewedAt"],message:"Reviewed identity is required after a day review completes."})}),r9=l({schemaVersion:b("openpond.continualBenchIssueReview.v1"),id:T,seriesId:T,scheduleEntryId:T,passLabel:T,packet:SV,splitManifest:l({id:T,contentHash:D}).strict(),decisions:p(l({taskId:T,disposition:v(["include","defer","exclude"]).nullable(),note:i().trim().max(2e3)}).strict()).min(2).max(1e4),status:v(["pending","reviewed","queued"]),queuedEntry:nl.nullable(),reviewedBy:T.nullable(),reviewedAt:ye.nullable(),revision:d().int().positive(),createdAt:ye,updatedAt:ye}).strict().superRefine((e,t)=>{const n=[...e.packet.cases.map(r=>r.taskId)].sort(),a=[...e.decisions.map(r=>r.taskId)].sort();JSON.stringify(n)!==JSON.stringify(a)&&t.addIssue({code:"custom",path:["decisions"],message:"Review decisions must cover the exact issue-packet cases."});const o=e.decisions.every(r=>r.disposition!==null&&r.note.length>0);e.status!=="pending"&&!o&&t.addIssue({code:"custom",path:["decisions"],message:"Every case requires a disposition and note before review completes."}),e.status==="queued"!=(e.queuedEntry!==null)&&t.addIssue({code:"custom",path:["queuedEntry"],message:"Only a queued review carries an exact series-entry reference."})}).readonly();function VR(e){return`${e.kind}:${e.id}`}function s9(e){return typeof e=="string"?e:VR(e)}const oi=i().trim().min(1).max(240),Ha=i().trim().min(8).max(256),KR=v(["grpo","dapo","gspo-token"]),Dc=l({id:oi,revision:i().trim().min(1).max(256),tokenizerRevision:i().trim().min(1).max(256),chatTemplateHash:Ha}),l9=l({maxRollouts:d().int().positive().max(1e6),maxEnvironmentExecutions:d().int().positive().max(1e6),maxInputTokens:d().int().positive(),maxOutputTokens:d().int().positive(),maxOptimizerSteps:d().int().positive().max(1e6),wallTimeMs:d().int().positive(),maximumCostUsd:d().nonnegative().nullable()}),c9=l({method:b("grpo"),groupSize:d().int().min(2).max(128),normalization:b("group_standardized"),advantageEpsilon:d().positive().max(.01).default(1e-8),loss:KR,clipRange:d().positive().max(1).default(.2),iterations:d().int().min(2).max(16).default(2),microbatchSize:d().int().positive().max(128).default(1),gradientAccumulationSteps:d().int().positive().max(128).default(1),adamw:ER}),WR=l({method:b("ppo"),valueModel:Dc,gamma:d().min(0).max(1),gaeLambda:d().min(0).max(1),policyClip:d().positive().max(1),valueClip:d().positive().max(10),valueLossCoefficient:d().nonnegative().max(10),ppoEpochs:d().int().positive().max(100),minibatchSize:d().int().positive().max(1e5)}),d9=ot("method",[c9,WR]),GR=l({rewardModelVersion:l({id:oi,contentHash:Ha}).strict(),qualificationReport:l({id:oi,contentHash:Ha}).strict().nullable().default(null),evaluationReferences:p(l({id:oi,contentHash:Ha}).strict()).max(1e3).default([]),checkpoint:l({id:oi,contentHash:Ha,objectRef:i().regex(/^r2:\/\/[A-Za-z0-9._/-]+$/),files:p(l({path:i().trim().min(1).max(512),sizeBytes:d().int().positive(),sha256:Ha}).strict()).min(4).max(128)}).strict(),runtime:BR,processorRelease:l({id:oi,contentHash:Ha}).strict(),rewardComposerRelease:l({id:oi,contentHash:Ha}).strict(),executionReceipt:l({id:oi,contentHash:Ha}).strict()}).strict(),JR=l({schemaVersion:b("openpond.policyOptimization.v1"),policyModel:Dc,referenceModel:Dc,dataset:l({tasksetId:oi,tasksetHash:Ha,split:b("train"),selectionStrategy:v(["stable_hash_top_n","rft_easy_curriculum_v1"]),selectionSeed:d().int(),maxExamples:d().int().positive().max(1e5)}),sampler:l({temperature:d().min(0).max(2),topP:d().min(0).max(1),maxOutputTokens:d().int().positive().max(32768),maxTurns:d().int().positive().max(1e3),concurrency:d().int().positive().max(1e3)}),environment:l({id:oi,version:i().trim().min(1).max(256),toolContractHash:Ha}),reward:l({graderId:oi,graderHash:Ha,learnedPreference:GR.nullable().default(null)}),kl:l({coefficient:d().nonnegative().nullable(),referenceConstraint:b("fixed_reference")}),budgets:l9,checkpointEverySteps:d().int().positive(),seed:d().int(),evaluationSplit:b("frozen_eval"),optimizer:d9}),$e=i().trim().min(1).max(240),Ot=i().trim().min(1),bt=i().trim().min(8).max(256),gd=le(i(),ce()).default({}),ZR=l({schemaVersion:b("openpond.localModelChatConfiguration.v1").default("openpond.localModelChatConfiguration.v1"),profile:v(["efficient","full_harness","custom"]).default("efficient"),systemPromptMode:v(["lean","full_harness","custom"]).default("lean"),customSystemPrompt:i().max(2e4).nullable().default(null),contextWindowTokens:d().int().min(128).max(32768).default(1024),maxOutputTokens:d().int().min(1).max(512).default(64),temperature:d().min(0).max(2).default(0),repetitionPenalty:d().min(.5).max(2).default(1.1),noRepeatNgramSize:d().int().min(0).max(10).default(3),compaction:v(["off","when_needed"]).default("when_needed"),keepWarmSeconds:d().int().min(0).max(3600).default(300),updatedAt:Ot.nullable().default(null)}),u9=ZR.parse({}),m9=l({schemaVersion:b("openpond.managedAdapterServingProjection.v1"),teamId:$e.nullable().default(null),source:b("sandbox_managed_rl"),sourceRef:$e,canonicalArtifactId:$e.nullable(),canonicalArtifactState:v(["imported_unvalidated","evaluating","promotable","rejected","deleted"]).nullable(),canonicalDeploymentId:$e.nullable(),canonicalDeploymentState:v(["requested","deploying","ready","degraded","deleting","deleted","failed"]).nullable(),state:v(["pending","imported","ready","failed"]),customerBindingAllowed:I().default(!1),artifactContentHash:bt.nullable().default(null),baseProfileId:$e.nullable().default(null),publishedAt:Ot.nullable(),lastSyncedAt:Ot,lastError:i().trim().min(1).max(5e3).nullable()});function Wie(e){const t=e.managedServing;return!!(t?.source==="sandbox_managed_rl"&&t.canonicalArtifactState==="promotable"&&t.customerBindingAllowed)}function YR(e){return e.state==="ready"&&e.canonicalArtifactState==="promotable"&&e.canonicalDeploymentState==="ready"&&e.customerBindingAllowed&&!!e.teamId&&!!e.canonicalArtifactId&&!!e.canonicalDeploymentId}function Gie(e){if(e.promotable&&e.frozenEvaluationArtifactId)return{kind:"source_frozen_evaluation",evaluationArtifactId:e.frozenEvaluationArtifactId,canonicalArtifactId:null,canonicalDeploymentId:null};const t=e.managedServing;return t?.source==="sandbox_managed_rl"&&YR(t)&&t.canonicalArtifactId&&t.canonicalDeploymentId?{kind:"sandbox_customer_binding",evaluationArtifactId:null,canonicalArtifactId:t.canonicalArtifactId,canonicalDeploymentId:t.canonicalDeploymentId}:null}function Jie(e){const t=e.managedServing;return t?YR(t)&&t.canonicalArtifactId&&t.canonicalDeploymentId?{kind:"sandbox_serving",canonicalArtifactId:t.canonicalArtifactId,canonicalDeploymentId:t.canonicalDeploymentId}:null:{kind:"source_artifact",canonicalArtifactId:null,canonicalDeploymentId:null}}const ey="openpond.crossSystemOperations.v1",Zie="1.0.0",QR="openpond.crossSystemTools.v1",p9=["search_crm","query_billing","search_support","run_python"],f9=v(["train","validation","frozen_eval"]),h9=v(["easy","medium","hard"]),g9=v(["renewal_risk_v2"]);v(["renewal_exposure","collections_prioritization","invoice_reconciliation","sla_escalation","contract_billing_mismatch"]);l({seed:d().int().nonnegative(),split:f9,difficulty:h9,scenarioProfile:g9.optional()});const Sh={anyOf:[{type:"string",minLength:1,maxLength:256},{type:"null"}],default:null},xh={type:"integer",minimum:1,maximum:50,default:25},XR=[{name:"search_crm",description:"Search synthetic CRM accounts and contacts. Results are scoped, projected, paginated, and budgeted.",parameters:{type:"object",additionalProperties:!1,required:["query","fields","cursor","limit"],properties:{query:{type:"string",minLength:1,maxLength:500},fields:{type:"array",minItems:1,maxItems:12,uniqueItems:!0,items:{type:"string",enum:["account_id","name","aliases","contact_ids","contract_value_usd_cents","renewal_date","tier","active_contract_id","contract_term_months"]}},cursor:Sh,limit:xh}}},{name:"query_billing",description:"Query synthetic invoices and payments for explicit account IDs and a bounded date range.",parameters:{type:"object",additionalProperties:!1,required:["account_ids","date_range","status","cursor","limit"],properties:{account_ids:{type:"array",minItems:1,maxItems:50,uniqueItems:!0,items:{type:"string",minLength:1,maxLength:100}},date_range:{type:"object",additionalProperties:!1,required:["from","to"],properties:{from:{type:"string",format:"date"},to:{type:"string",format:"date"}}},status:{type:"array",minItems:1,maxItems:6,uniqueItems:!0,items:{type:"string",enum:["open","overdue","paid","disputed","scheduled","void"]}},cursor:Sh,limit:xh}}},{name:"search_support",description:"Search synthetic support cases for explicit account IDs, severity, and state filters.",parameters:{type:"object",additionalProperties:!1,required:["account_ids","severity","state","cursor","limit"],properties:{account_ids:{type:"array",minItems:1,maxItems:50,uniqueItems:!0,items:{type:"string",minLength:1,maxLength:100}},severity:{type:"array",minItems:1,maxItems:4,uniqueItems:!0,items:{type:"string",enum:["P1","P2","P3","P4"]}},state:{type:"array",minItems:1,maxItems:5,uniqueItems:!0,items:{type:"string",enum:["new","investigating","waiting_customer","resolved","closed"]}},cursor:Sh,limit:xh}}},{name:"run_python",description:"Run standard-library-only Python in the persistent synthetic attempt sandbox with strict limits and no network.",parameters:{type:"object",additionalProperties:!1,required:["code"],properties:{code:{type:"string",minLength:1,maxLength:1e4}}}}],vd=R9({schemaVersion:QR,tools:XR}),v9=[`Use only the four registered synthetic Cross-System Operations tools. Contract ${vd}.`,"Treat every filter as exact. An overdue-only query_billing call returns invoice rows; payment rows are included only when paid is requested.","For cross-system joins, retrieve the bounded projected rows and use run_python for date filtering, set intersection, and arithmetic before answering.","Finish with ANSWER: JSON."].join(" "),b9=15;function y9(e="auto"){return[v9,"LOCAL TOOL PROTOCOL (strict):","Use only the registered functions below. Never invent, rename, or call any other tool.","For one tool call, output exactly one JSON object and no prose:",'{"type":"tool_call","name":"registered_name","arguments":{}}',"Tool results arrive as exactly one JSON object:",'{"type":"tool_result","name":"registered_name","ok":true,"result":{},"error":null}','After one tool result, either call one registered tool again or answer normally. A JSON final may use {"type":"final","content":"..."}.',`Tool choice: ${JSON.stringify(e)}. Maximum tool turns: ${b9}.`,`Registered tool signatures: ${XR.map(S9).join("; ")}`].join(`
191
- `)}y9();function S9(e){const t=lm(e.parameters),n=lm(t.properties),a=eP(t.required),o=Object.fromEntries(a.map(r=>[r,Tu(n[r])]));return`${e.name}(${JSON.stringify(o)})`}function Tu(e){const t=lm(e),n=Eg(t.anyOf);if(n.length)return n.map(Tu).join("|");const a=Eg(t.enum);if(a.length)return a.join("|");if(t.type==="array")return[Tu(t.items)];if(t.type==="object"){const o=lm(t.properties),r=eP(t.required);return Object.fromEntries(r.map(s=>[s,Tu(o[s])]))}return typeof t.type=="string"?t.type:"unknown"}function lm(e){return e&&typeof e=="object"&&!Array.isArray(e)?e:{}}function Eg(e){return Array.isArray(e)?e:[]}function eP(e){return Eg(e).filter(t=>typeof t=="string")}const cm=v(p9),x9=ot("kind",[l({kind:b("model"),turn:d().int().nonnegative(),content:i().max(1e5)}),l({kind:b("tool_call"),turn:d().int().nonnegative(),callId:i().trim().min(1).max(240),name:cm,arguments:le(i(),ce())}),l({kind:b("tool_result"),turn:d().int().nonnegative(),callId:i().trim().min(1).max(240),name:cm,ok:I(),result:ce(),rows:d().int().nonnegative(),bytes:d().int().nonnegative(),durationMs:d().int().nonnegative(),error:i().trim().min(1).max(2e4).nullable()}),l({kind:b("final"),turn:d().int().nonnegative(),content:i().max(1e5)})]),k9=l({schemaVersion:b(ey),id:i().trim().min(1).max(240),worldId:i().trim().min(1).max(240),taskId:i().trim().min(1).max(240),toolContractHash:b(vd),modelRef:l({providerId:i().trim().min(1),modelId:i().trim().min(1)}).nullable(),status:v(["completed","budget_exhausted","cancelled","infrastructure_failure"]),steps:p(x9).max(1e3),startedAt:i().trim().min(1),completedAt:i().trim().min(1),infrastructureError:i().trim().min(1).max(2e4).nullable(),metadata:le(i(),ce()).default({})}),w9=l({schemaVersion:b(ey),trajectoryId:i().trim().min(1).max(240),outcome:v(["correct","incorrect","parse_failure","budget_exhausted","tool_schema_violation","infrastructure_failure","cancelled"]),reward:d().min(0).max(1.15).nullable(),rewardEligible:I(),exactAnswer:I(),components:l({exactAnswer:d().min(0).max(1),efficiency:d().min(0).max(.1),conciseOutput:d().min(0).max(.05)}),metrics:l({toolCalls:d().int().nonnegative(),rowsRead:d().int().nonnegative(),bytesRead:d().int().nonnegative(),consecutiveRetrievalCalls:d().int().nonnegative(),wallTimeMs:d().int().nonnegative(),parseFailures:d().int().nonnegative(),budgetExhausted:I()}),parsedAnswer:ce().nullable(),feedback:p(i().trim().min(1).max(5e3)).max(100)}),I9=l({id:i().trim().min(1).max(240),type:b("function"),function:l({name:cm,arguments:i().max(2e4)})}),tP=l({role:v(["system","user","assistant","tool"]),content:i().max(2e5).nullable(),tool_call_id:i().trim().min(1).max(240).optional(),tool_calls:p(I9).max(4).optional()});l({schemaVersion:b(ey),id:i().trim().min(1).max(240),taskId:i().trim().min(1).max(240),worldId:i().trim().min(1).max(240),trajectoryId:i().trim().min(1).max(240),toolContractHash:b(vd),approval:l({status:b("approved"),approvedBy:i().trim().min(1).max(240),approvedAt:i().trim().min(1)}),messages:p(tP).min(3).max(1e3)});const _9=l({tasksetTaskId:i().trim().min(1).max(240),environmentTaskId:i().trim().min(1).max(240),family:v(["renewal_exposure","collections_prioritization","invoice_reconciliation","sla_escalation","contract_billing_mismatch"]),prompt:i().trim().min(1).max(1e5),finalAnswer:i().trim().min(1).max(2e5),trajectoryId:i().trim().min(1).max(240),trajectoryHash:i().trim().min(8).max(256),toolNames:p(cm).min(1).max(100),toolCallCount:d().int().positive(),messageCount:d().int().min(3),reward:d().min(0).max(1.15),messages:p(tP).min(3).max(1e3)}),C9=l({status:b("approved"),approvedBy:i().trim().min(1).max(240),approvedAt:i().trim().min(1),previewHash:i().trim().min(8).max(256),trajectoryCount:d().int().positive()});l({schemaVersion:b("openpond.crossSystemExpertBootstrapPreview.v1"),tasksetId:i().trim().min(1).max(240),tasksetHash:i().trim().min(8).max(256),tasksetRevision:d().int().positive(),previewHash:i().trim().min(8).max(256),toolContractHash:b(vd),status:v(["ready_for_review","approved"]),approval:C9.nullable(),tasks:p(_9).min(1).max(100)});function R9(e){const t=jg(e);let n=2166136261,a=2654435769;for(let o=0;o<t.length;o+=1){const r=t.charCodeAt(o);n=Math.imul(n^r,16777619),a=Math.imul(a^r,2246822507)}return`${QR}:${dx(n)}${dx(a)}`}function jg(e){return Array.isArray(e)?`[${e.map(jg).join(",")}]`:e&&typeof e=="object"?`{${Object.entries(e).sort(([t],[n])=>t.localeCompare(n)).map(([t,n])=>`${JSON.stringify(t)}:${jg(n)}`).join(",")}}`:JSON.stringify(e)}function dx(e){return(e>>>0).toString(16).padStart(8,"0")}const P9=l({schemaVersion:b("openpond.singleTurnPolicyTrajectory.v1"),id:$e,taskId:$e,status:v(["completed","infrastructure_failure"]),promptHash:bt,responseText:i().max(2e6),infrastructureError:i().trim().min(1).max(1e4).nullable(),startedAt:Ot,completedAt:Ot,metadata:gd}),A9=l({schemaVersion:b("openpond.ppoTrajectory.v1"),id:$e,taskId:$e,policyModelId:$e,referenceModelId:$e,valueModelId:$e,steps:p(l({index:d().int().nonnegative(),observationHash:bt,actionTokenIds:p(d().int().nonnegative()).min(1),terminated:I(),truncated:I(),reward:d(),policyLogProbability:d(),referenceLogProbability:d(),valuePrediction:d(),return:d(),advantage:d(),mask:d().min(0).max(1)})).min(1).max(1e5),createdAt:Ot}),T9=l({schemaVersion:b("openpond.exactAnswerVerifierResult.v1"),outcome:v(["correct","incorrect","parse_failure","infrastructure_failure"]),graderSetHash:bt,score:d().min(0).max(1).nullable(),passed:I(),rewardEligible:I(),expectedAnswerHash:bt,extractedAnswer:i().max(2e4).nullable(),feedback:p(i().trim().min(1).max(2e4)).max(1e3)}),E9=l({schemaVersion:b("openpond.rolloutTrajectoryReceipt.v1"),id:$e,jobId:$e,planId:$e,tasksetId:$e,tasksetHash:bt,taskId:$e,split:b("train"),correlationId:$e,provider:$e,providerTrace:l({invocationId:$e,experimentId:$e,rolloutId:$e,runId:$e,rowId:$e}),optimizerMethod:v(["grpo","ppo"]).default("grpo"),evidenceLevels:l({requested:v(["trajectory","aggregate","provider_reported"]),observed:v(["trajectory","aggregate","provider_reported"]),providerReported:v(["trajectory","aggregate","provider_reported"])}).default({requested:"trajectory",observed:"trajectory",providerReported:"provider_reported"}),budgetUsage:l({rollouts:d().int().nonnegative(),environmentExecutions:d().int().nonnegative(),inputTokens:d().int().nonnegative(),outputTokens:d().int().nonnegative(),optimizerSteps:d().int().nonnegative(),costUsd:d().nonnegative()}).default({rollouts:0,environmentExecutions:0,inputTokens:0,outputTokens:0,optimizerSteps:0,costUsd:0}),environment:l({id:$e,version:i().trim().min(1).max(256),worldId:$e,worldHash:bt,toolContractHash:bt}),policy:l({modelId:$e,checkpointId:$e.nullable(),completionParametersHash:bt}),status:v(["received","running","succeeded","failed"]),failureClass:v(["policy_failure","parse_failure","tool_schema_violation","budget_exhausted","cancelled","environment_failure","infrastructure_failure"]).nullable(),reward:l({eligible:I(),raw:d().min(0).max(1.15).nullable(),normalized:d().min(0).max(1).nullable(),components:le(i(),d())}),trajectory:vt([k9,P9,A9]).nullable(),verifier:vt([w9,T9]).nullable(),providerStatus:le(i(),ce()).default({}),receivedAt:Ot,startedAt:Ot.nullable(),completedAt:Ot.nullable(),updatedAt:Ot}),Yie="dataset-exact-answer",Qie="dataset-exact-answer-v1",Xie="no-tools-v1",tr=v(["sft","dpo","grpo","ppo","sdft","opd","opsd","sdpo"]),cp=v(["lora","full"]),Ur=v(["openpond_managed"]),j9=l({schemaVersion:b("openpond.sftRecipe.v1"),method:b("sft"),parameterization:b("lora"),baseModel:l({id:$e,revision:i().trim().min(1).max(256),tokenizerRevision:i().trim().min(1).max(256),chatTemplateHash:bt}),dataset:l({trainSplit:b("train"),validationSplit:v(["validation","frozen_eval"]),completionOnly:I(),maxSequenceLength:d().int().positive().max(32768),maxExamples:d().int().positive().max(1e5).default(1e3),selectionStrategy:b("stable_hash_top_n").default("stable_hash_top_n"),selectionSeed:d().int().default(17)}),lora:l({rank:d().int().positive().max(256),alpha:d().positive().max(1024),dropout:d().min(0).max(1),targetModules:p($e).min(1).max(100)}),optimizer:l({learningRate:d().positive(),epochs:d().positive().max(100),maxSteps:d().int().positive().max(1e6),batchSize:d().int().positive().max(1e4),gradientAccumulationSteps:d().int().positive().max(1e4),seed:d().int()}),resourceLimits:l({cpuThreads:d().int().positive().max(256),memoryBytes:d().int().positive(),wallTimeMs:d().int().positive()})});l({id:$e,input:le(i(),ce()),expectedOutput:le(i(),ce()),tags:p($e).max(100).default([])});l({id:$e,prompt:i().min(1).max(5e5),chosen:i().min(1).max(5e5),rejected:i().min(1).max(5e5),sourceRefs:p($e).min(1).max(1e4)});l({id:$e,input:le(i(),ce()),tags:p($e).max(100).default([])});l({schemaVersion:b("openpond.rewardModelRecipe.v1"),method:b("reward_model"),parameterization:b("lora_with_scalar_head"),runScope:v(["synthetic_smoke","human_preference"]),baseModel:l({id:$e,revision:i().trim().min(1).max(256),tokenizerRevision:i().trim().min(1).max(256),processorRevision:i().trim().min(1).max(256),chatTemplateHash:bt}).strict(),tasksetRelease:W,preferenceDatasetRelease:W,processorRelease:W,input:l({kind:b("structured_text"),serialization:v(["scenario_input_and_candidate_json_v1","visible_agent_trajectory_v1"]),maxCharacters:d().int().positive().max(5e5)}).strict().default({kind:"structured_text",serialization:"scenario_input_and_candidate_json_v1",maxCharacters:32e3}),lora:l({rank:d().int().positive().max(256),alpha:d().positive().max(1024),dropout:d().min(0).max(1),targetModules:p($e).min(1).max(100)}).strict(),heads:l({scalar:b("pooled_hidden_state_linear"),bucket:v(["none","three_class"]).default("three_class")}).strict(),loss:l({ranking:b("bradley_terry"),rankingWeight:d().positive(),bucketWeight:d().nonnegative(),tieWeight:d().nonnegative()}).strict(),optimizer:l({learningRate:d().positive(),maxSteps:d().int().positive().max(1e5),batchSize:d().int().positive().max(1e4),gradientAccumulationSteps:d().int().positive().max(1e4),seed:d().int(),checkpointEverySteps:d().int().positive().max(1e5)}).strict(),resourceLimits:l({wallTimeMs:d().int().positive().max(1440*60*1e3),maxExamples:d().int().positive().max(1e5),maxInputCharacters:d().int().positive().max(5e5).default(32e3),maxImagePixels:d().int().positive().max(1e8).optional(),maximumSpendUsd:d().nonnegative().max(1e5)}).strict()}).superRefine((e,t)=>{e.runScope==="synthetic_smoke"&&(e.optimizer.maxSteps>100||e.resourceLimits.maximumSpendUsd>10)&&t.addIssue({code:"custom",path:["resourceLimits"],message:"Synthetic-smoke Reward Model runs are limited to 100 steps and USD 10."})});const M9=l({schemaVersion:b("openpond.rftRecipe.v1"),method:b("grpo"),parameterization:b("lora"),baseModel:l({id:$e,revision:i().trim().min(1).max(256),tokenizerRevision:i().trim().min(1).max(256),chatTemplateHash:bt}),dataset:l({trainSplit:b("train"),validationSplit:v(["validation","frozen_eval"]),maxPromptTokens:d().int().positive().max(32768),maxExamples:d().int().positive().max(1e5).default(1e3),selectionStrategy:v(["stable_hash_top_n","rft_easy_curriculum_v1"]).default("stable_hash_top_n")}),lora:l({rank:d().int().positive().max(256)}),rollout:l({groupSize:d().int().min(2).max(64),concurrency:d().int().positive().max(32),maxTurns:d().int().positive().max(100),maxOutputTokens:d().int().positive().max(8192),temperature:d().min(0).max(2),topP:d().positive().max(1),seed:d().int()}),optimizer:l({learningRate:d().positive(),maxSteps:d().int().positive().max(1e5),clipRange:d().positive().max(1).default(.2),iterations:d().int().min(2).max(16).default(2),microbatchSize:d().int().positive().max(64).default(1),gradientAccumulationSteps:d().int().positive().max(64).default(1),advantageEpsilon:d().positive().max(.01).default(1e-8),adamw:ER}),loss:l({method:KR.default("grpo"),klBeta:d().min(0).nullable().default(null)}).default({method:"grpo",klBeta:null}),reward:l({graderId:$e,graderHash:bt,environmentId:$e,environmentVersion:i().trim().min(1).max(256),toolContractHash:bt,learnedPreference:GR.nullable().optional()}),resourceLimits:l({wallTimeMs:d().int().positive().max(1440*60*1e3),maxGpuSeconds:d().int().positive().max(10800).optional(),maxRollouts:d().int().positive().max(1e5),maxPayloadBytes:d().int().positive().max(10*1024*1024)}),policyOptimization:JR.nullable().default(null),continuation:l({schemaVersion:b("openpond.crossJobContinuationRequest.v1"),parentArtifact:W,sourceArtifact:l({jobId:$e,artifactId:$e,checkpointId:$e,contentHash:bt}).strict(),optimizerMode:v(["continue","reset"])}).strict().optional()}),O9=l({schemaVersion:b("openpond.dpoRecipe.v1"),method:b("dpo"),parameterization:b("lora"),policyModel:Dc,referenceModel:Dc,dataset:l({trainSplit:b("train"),validationSplit:v(["validation","frozen_eval"]),maxPairs:d().int().positive().max(1e5),maxPromptTokens:d().int().positive().max(32768),maxCompletionTokens:d().int().positive().max(32768),selectionStrategy:b("stable_hash_top_n"),selectionSeed:d().int()}),lora:l({rank:d().int().positive().max(256),alpha:d().positive().max(1024),dropout:d().min(0).max(1),targetModules:p($e).min(1).max(100)}),loss:l({variant:b("sigmoid"),beta:d().positive().max(10),labelSmoothing:d().min(0).max(.5).default(0)}),optimizer:l({learningRate:d().positive(),epochs:d().positive().max(100),maxSteps:d().int().positive().max(1e6),batchSize:d().int().positive().max(1e4),gradientAccumulationSteps:d().int().positive().max(1e4),seed:d().int()}),referenceLogprobs:l({cacheSchemaVersion:b("openpond.dpoReferenceLogprobs.v1"),cacheKey:bt,invalidationHash:bt}),resourceLimits:l({cpuThreads:d().int().positive().max(256),memoryBytes:d().int().positive(),wallTimeMs:d().int().positive()})}),$9=l({schemaVersion:b("openpond.ppoRecipe.v1"),method:b("ppo"),parameterization:b("lora"),policyOptimization:JR.extend({optimizer:WR}),lora:l({rank:d().int().positive().max(256),alpha:d().positive().max(1024),dropout:d().min(0).max(1),targetModules:p($e).min(1).max(100)}),valueHead:l({initialization:b("policy_hidden_state_linear"),optimizerLearningRate:d().positive(),artifactName:b("value_head.safetensors")}),policyLearningRate:d().positive(),resume:l({checkpointId:$e.nullable(),policyHash:bt,referenceHash:bt,valueModelHash:bt,optimizerStateHash:bt.nullable()}),resourceLimits:l({cpuThreads:d().int().positive().max(256),memoryBytes:d().int().positive(),wallTimeMs:d().int().positive()})}),N9=l({schemaVersion:b("openpond.unsupportedRecipe.v1"),method:tr.exclude(["sft","dpo","grpo","ppo"]),parameterization:cp,unsupportedReason:i().trim().min(1).max(5e3)}),nP=vt([j9,O9,M9,$9,N9]),D9=l({schemaVersion:b("openpond.trainingDestinationCapabilities.v1"),destinationId:Ur,available:I(),methods:p(tr),parameterizations:p(cp),modelAllowlist:p($e).default([]),maxDatasetBytes:d().int().nonnegative().nullable(),environmentPlacements:p(v(["none","local","remote","colocated","provider_native"])),nonProduction:I(),unavailableReason:i().trim().min(1).max(5e3).nullable(),checkedAt:Ot}),H9=l({destinationId:Ur,available:I(),methods:p(tr),parameterizations:p(cp),nonProduction:I(),unavailableReason:i().trim().min(1).max(5e3).nullable()}),L9=l({schemaVersion:b("openpond.baseModelCandidate.v1"),selectionKey:$e,label:i().trim().min(1).max(500),sourceLabel:i().trim().min(1).max(500),preference:hd,available:I(),nonProduction:I(),unavailableReason:i().trim().min(1).max(5e3).nullable(),methods:p(tr),executionOptions:p(H9).min(1)}),q9=l({code:$e,severity:v(["warning","error"]),path:i().trim().max(2e3).nullable(),message:i().trim().min(1).max(5e3)}),U9=l({schemaVersion:b("openpond.trainingCompatibility.v1"),compatible:I(),destinationId:Ur,tasksetId:$e,recipeMethod:tr,issues:p(q9),checkedAt:Ot}),z9=vt([sR,v(["destination_unavailable","destination_method_unsupported","destination_model_unsupported","destination_parameterization_unsupported","experimental_destination"])]);l({method:tr,state:v(["recommended","compatible","needs_dataset_work","destination_unavailable","experimental_destination"]),reasonCodes:p(z9).default([]),reasons:p(i().trim().min(1).max(5e3)).default([]),destinationId:Ur.nullable().default(null)});v(["small","standard","custom","small_experiment"]);const B9=rC,aP=l({schemaVersion:b("openpond.trainingPlan.v1"),id:$e,modelId:$e,tasksetId:$e,tasksetHash:bt,comparisonSeriesEntry:nl.nullable().optional(),evaluationTasksetRef:Qt.nullable().optional(),harnessRelease:W.nullable().optional(),modelImprovementQualification:W.nullable().optional(),destinationId:Ur,recipe:nP,environmentPlacement:v(["none","local","remote","colocated","provider_native"]),compatibility:U9,dataPolicy:l({exportApproved:I(),approvedSourceIds:p($e),retentionDays:d().int().nonnegative().nullable(),region:i().trim().min(1).max(200).nullable()}),estimatedCostUsd:d().nonnegative().nullable(),createdAt:Ot,contentHash:bt}),F9=l({path:i().trim().min(1).max(2e3),sha256:bt,sizeBytes:d().int().nonnegative(),role:v(["manifest","task_data","grader","environment","recipe","policy","provenance"])}),ty=l({schemaVersion:b("openpond.trainingBundle.v1"),id:$e,planId:$e,tasksetId:$e,tasksetHash:bt,recipeHash:bt,files:p(F9).min(1).max(1e6),totalSizeBytes:d().int().nonnegative(),sourceIds:p($e),excludedSourceIds:p($e),containsRawChats:b(!1),containsSecrets:b(!1),containsHiddenGraderAssets:b(!1),createdAt:Ot,contentHash:bt});l({schemaVersion:b("openpond.trainingBundleExport.v1"),manifest:ty,files:p(l({path:i().trim().min(1).max(2e3),sha256:bt,sizeBytes:d().int().nonnegative(),encoding:b("base64"),content:i()})).min(1),contentHash:bt});l({schemaVersion:b("openpond.trainingPreparedStart.v1"),plan:aP,bundle:ty,approvalActor:$e.nullable(),preparedAt:Ot});l({schemaVersion:b("openpond.trainingApproval.v1"),evaluationTasksetRef:Qt.nullable().optional(),id:$e,planId:$e,bundleHash:bt,harnessRelease:W.nullable().optional(),modelImprovementQualification:W.nullable().optional(),destinationId:Ur,modelId:$e,method:tr,parameterization:cp,maximumCostUsd:d().nonnegative().nullable(),approvedBy:$e,approvedAt:Ot});l({schemaVersion:b("openpond.trainingJobSourceSnapshot.v1"),evaluationTasksetRef:Qt.nullable().optional(),modelProjectId:$e,sourceProjectRevision:d().int().positive(),profileId:$e,taskset:l({id:$e,revision:d().int().positive(),contentHash:bt}).strict(),tasksetRelease:W,harnessRelease:W,baseModel:hd,method:tr}).strict();const V9=v(["queued","starting","running","cancelling","cancelled","succeeded","failed","reconciling"]),iP=l({schemaVersion:b("openpond.trainingJob.v1"),id:$e,planId:$e,bundleHash:bt,approvalId:$e,destinationId:Ur,status:V9,nonProduction:I(),workerPid:d().int().positive().nullable(),startedAt:Ot.nullable(),completedAt:Ot.nullable(),error:i().trim().min(1).max(2e4).nullable(),createdAt:Ot,updatedAt:Ot,metadata:gd}),K9=l({schemaVersion:b("openpond.trainingJobEvent.v1"),id:$e,jobId:$e,sequence:d().int().nonnegative(),type:v(["queued","start","progress","metric","checkpoint","cancel","complete","failure","reconcile"]),timestamp:Ot,payload:gd}),W9=l({schemaVersion:b("openpond.sftStepMetric.v1"),step:d().int().nonnegative(),maxSteps:d().int().positive(),timestamp:Ot,epoch:d().nonnegative().nullable(),loss:d().nullable(),learningRate:d().nonnegative().nullable(),gradientNorm:d().nonnegative().nullable(),entropy:d().nonnegative().nullable(),meanTokenAccuracy:d().min(0).max(1).nullable(),preferenceAccuracy:d().min(0).max(1).nullable().default(null),preferenceMargin:d().nullable().default(null),chosenReward:d().nullable().default(null),rejectedReward:d().nullable().default(null),chosenLogProbability:d().nullable().default(null),rejectedLogProbability:d().nullable().default(null),reward:d().nullable().default(null),policyLoss:d().nullable().default(null),advantageLoss:d().nullable().default(null),inputTokensSeen:d().int().nonnegative().nullable(),memoryBytes:d().int().nonnegative().nullable(),elapsedSeconds:d().nonnegative().nullable()}),G9=l({schemaVersion:b("openpond.policyOptimizationMetric.v1"),method:v(["grpo","ppo"]),step:d().int().nonnegative(),timestamp:Ot,learningRate:d().nonnegative().nullable().default(null),policyLoss:d().nullable(),valueLoss:d().nullable(),gradientNorm:d().nonnegative().nullable().default(null),meanReward:d().nullable(),meanReturn:d().nullable(),kl:d().nullable(),behaviorPolicyKlPreUpdate:d().nonnegative().nullable().default(null),entropy:d().nullable(),policyClipFraction:d().min(0).max(1).nullable(),behaviorPolicyClipFractionPreUpdate:d().min(0).max(1).nullable().default(null),valueClipFraction:d().min(0).max(1).nullable(),explainedVariance:d().nullable(),rolloutLearnerLag:d().int().nonnegative().nullable(),inputTokens:d().int().nonnegative(),outputTokens:d().int().nonnegative(),environmentExecutions:d().int().nonnegative(),trajectoryCount:d().int().nonnegative().nullable().default(null),costUsd:d().nonnegative().nullable()}),J9=l({schemaVersion:b("openpond.managedTrainingRunEvidence.v2"),provider:$e,providerRunId:$e,state:$e,progress:l({targetOptimizerSteps:d().int().nonnegative(),committedOptimizerSteps:d().int().nonnegative(),skippedOptimizerSteps:d().int().nonnegative()}),reward:l({finalMean:d().nullable(),variance:d().nonnegative().nullable(),minimum:d().nullable(),maximum:d().nullable(),distinctValueCount:d().int().nonnegative(),noSignalGroupCount:d().int().nonnegative(),trajectoryCount:d().int().nonnegative(),eligibleTrajectoryCount:d().int().nonnegative()}),usage:l({inputTokens:d().int().nonnegative(),outputTokens:d().int().nonnegative(),environmentExecutions:d().int().nonnegative()}),resource:l({provider:$e,gpuType:i().trim().min(1).max(300).nullable(),gpuCount:d().int().nonnegative().nullable(),hourlyCostUsd:d().nonnegative().nullable(),durationSeconds:d().nonnegative().nullable(),gpuSeconds:d().nonnegative().nullable()}),cost:l({totalUsd:d().nonnegative().nullable()}),checkpoint:l({id:$e,policyVersion:d().int().nonnegative(),sha256:bt.nullable(),sizeBytes:d().int().nonnegative().nullable()}).nullable(),movement:l({adapterDeltaNorm:d().nonnegative().nullable()}),evaluations:p(l({reference:l({id:$e,contentHash:bt}).nullable().optional(),kind:v(["baseline","candidate"]),policyVersion:d().int().nonnegative(),taskCount:d().int().nonnegative().nullable().optional(),targetTaskCount:d().int().nonnegative().nullable().optional(),score:d().nullable(),threshold:d().nullable(),passed:I().nullable()})),canonicalPublication:l({state:$e.nullable(),artifactId:$e.nullable()}),syncedAt:Ot}),ux=l({count:d().int().nonnegative(),scoredCount:d().int().nonnegative(),meanScore:d().min(0).max(1).nullable(),passedCount:d().int().nonnegative(),passRate:d().min(0).max(1).nullable()}),mx=l({status:v(["scored","unavailable"]),score:d().min(0).max(1).nullable(),passed:I(),rewardEligible:I(),failureClass:v(["policy_failure","grader_failure","environment_failure","infrastructure_failure","timeout","cancelled"]).nullable(),feedback:p(i().trim().min(1).max(2e4)).max(1e3),components:p(l({graderId:$e,score:d().min(0).max(1).nullable(),passed:I(),feedback:i().trim().max(2e4).nullable()})).max(1e3)}),Z9=l({taskId:$e,input:le(i(),ce()),baseOutput:le(i(),ce()).nullable(),trainedOutput:le(i(),ce()).nullable(),baseGrade:mx.nullable(),trainedGrade:mx.nullable()}),Y9=l({schemaVersion:b("openpond.trainingEvaluationSummary.v1"),jobId:$e,tasksetId:$e,base:ux,trained:ux,meanScoreDelta:d().min(-1).max(1).nullable(),examples:p(Z9).max(1e6)});l({schemaVersion:b("openpond.trainingRunDetail.v1"),job:iP,events:p(K9),stepMetrics:p(W9),policyMetrics:p(G9).default([]),managedEvidence:J9.nullable().default(null),evaluation:Y9.nullable(),generatedAt:Ot});const Q9=l({schemaVersion:b("openpond.trainingArtifact.v1"),id:$e,jobId:$e,kind:v(["adapter","checkpoint","metrics","log","manifest","evaluation"]),path:i().trim().min(1).max(4e3),sha256:bt,sizeBytes:d().int().nonnegative(),baseModelId:$e.nullable(),baseModelRevision:i().trim().min(1).max(256).nullable(),tokenizerRevision:i().trim().min(1).max(256).nullable(),chatTemplateHash:bt.nullable(),nonProduction:I(),createdAt:Ot,metadata:gd}),X9=l({schemaVersion:b("openpond.modelArtifactLineage.v1"),id:$e,modelId:$e,artifactId:$e,jobId:$e,tasksetId:$e,tasksetHash:bt,graderHash:bt,planHash:bt,bundleHash:bt,recipeHash:bt,workerVersion:i().trim().min(1).max(256),trainerVersion:i().trim().min(1).max(256),importedAt:Ot,frozenEvaluationArtifactId:$e.nullable(),promotable:I(),pinned:I().default(!1),status:v(["imported","rejected"]).default("imported"),rejectedAt:Ot.nullable().default(null),rejectionReason:i().trim().min(1).max(5e3).nullable().default(null),chatConfiguration:ZR.default(u9),managedServing:m9.nullable().default(null)}),eK=v(["chat_manual","agent","extension","authoring_optimizer"]),tK=l({schemaVersion:b("openpond.modelBinding.v1"),id:$e,profileId:$e,role:eK,roleTargetId:$e,modelArtifactLineageId:$e,tasksetId:$e,evaluationArtifactId:$e.nullable(),status:v(["active","rolled_back"]),priorBindingId:$e.nullable(),rollbackTargetBindingId:$e.nullable(),promotedBy:$e,promotedAt:Ot,rolledBackAt:Ot.nullable(),metadata:gd});l({schemaVersion:b("openpond.trainingActivity.v1"),profileId:$e,active:I(),activeCounts:l({jobs:d().int().nonnegative(),creations:d().int().nonnegative(),minerRuns:d().int().nonnegative(),datasetImports:d().int().nonnegative()}),revision:bt,generatedAt:Ot});l({schemaVersion:b("openpond.tasksetOperationalState.v1"),tasksetId:$e,attempts:p(z6),artifacts:p(B6),grades:p(V6),evaluationResults:p(r5).default([]),generatedAt:Ot});const nK=l({schemaVersion:b("openpond.trainingState.v1"),profileId:$e,sources:p(KC),creations:p(jR),tasksetDrafts:p(Ja).default([]),tasksets:p($c),benchmarkRuns:p($f()).default([]),benchmarkComparisons:p($f()).default([]),datasetImports:p(oV).default([]),datasetArtifacts:p(N5).default([]),graderAuditReports:p(K6),evaluationResults:p($f()).default([]),candidates:p(TR),minerConfig:sp,minerRuns:p(A6).default([]),modelProjects:p(B9).default([]),modelVersions:p(qV).default([]),modelRuns:p(XV).default([]),comparisonSeries:p(jV).default([]),comparisonSeriesEntries:p(HV).default([]),modelCurrencySnapshots:p(a9).default([]),continualBenchIssueReviews:p(r9).default([]),continualLearningDailyBatches:p(o9).default([]),rewardModelVersions:p(UV).default([]),rewardModelRuns:p(BV).default([]),modelTasksets:p($c).default([]),plans:p(aP),bundles:p(ty),jobs:p(iP),artifacts:p(Q9),models:p(X9),rolloutReceipts:p(E9).default([]),modelBindings:p(tK).default([]),destinations:p(D9),baseModelCandidates:p(L9).default([]),activityRevision:bt.optional(),generatedAt:Ot}),aK=v(["trajectory","reward","demonstration","preference","correction","critique","targeted_feedback","grader_evidence","infrastructure_failure"]),iK=l({datasetRelease:W,harnessRelease:W,evidenceSetRelease:W.nullable(),profileRelease:W.nullable(),model:l({source:i().trim().min(1).max(200),revision:i().trim().min(1).max(500),artifactHash:D.nullable()}).strict(),environmentHash:D,graderHash:D,toolContractHash:D,verificationReceiptHash:D.nullable()}).strict(),So=l({schemaVersion:b("openpond.learningSignal.v1"),id:T,taskId:T.nullable(),episodeId:T.nullable(),policyVersion:d().int().nonnegative().nullable(),lineage:iK,approved:I(),verifier:v(["deterministic","model_judge","human","none"]),createdAt:ye,contentHash:D,metadata:le(i(),ce()).default({})}).strict(),oK=So.extend({kind:b("trajectory"),payload:l({traceRef:i().trim().min(1).max(2e3),traceHash:D,terminal:I(),failureClass:v(["policy_failure","grader_failure","environment_failure","infrastructure_failure","timeout","cancelled"]).nullable(),optimizerSample:HC.nullable().optional()}).strict()}).strict(),rK=So.extend({kind:b("reward"),payload:l({reward:d().finite(),components:le(i(),d().finite()),eligible:I(),graderEvidenceRefs:p(T).max(1e3)}).strict()}).strict(),sK=So.extend({kind:b("demonstration"),payload:l({prompt:i().max(5e5),response:i().max(1e6)}).strict()}).strict(),lK=So.extend({kind:b("preference"),payload:l({prompt:i().max(5e5),chosen:i().max(1e6),rejected:i().max(1e6),rationale:i().max(5e5).nullable()}).strict()}).strict(),cK=So.extend({kind:b("correction"),payload:l({original:i().max(1e6),corrected:i().max(1e6),rationale:i().max(5e5).nullable()}).strict()}).strict(),dK=So.extend({kind:b("critique"),payload:l({response:i().max(1e6),critique:i().max(5e5),severity:v(["note","warning","error"])}).strict()}).strict(),uK=So.extend({kind:b("targeted_feedback"),payload:l({turnIndex:d().int().nonnegative(),target:v(["reasoning","tool","answer","policy"]),feedback:i().max(5e5)}).strict()}).strict(),mK=So.extend({kind:b("grader_evidence"),payload:l({graderId:T,score:d().finite().nullable(),passed:I(),privilegedArtifactRefs:p(i().trim().min(1).max(2e3))}).strict()}).strict(),pK=So.extend({kind:b("infrastructure_failure"),approved:b(!1),verifier:b("none"),payload:l({code:T,phase:T,retryable:I(),rewardEligible:b(!1)}).strict()}).strict(),oP=ot("kind",[oK,rK,sK,lK,cK,dK,uK,mK,pK]);l({schemaVersion:b("openpond.learningSignalBatch.v1"),manifestId:T,manifestHash:D,sequence:d().int().nonnegative(),signals:p(oP).min(1).max(1e5),contentHash:D}).strict();const fK=l({id:T,turn:d().int().nonnegative(),kind:v(["message","tool_call","terminal"]),name:T.nullable(),arguments:le(i(),ce()),content:i().max(1e6).nullable(),contentHash:D}).strict(),hK=l({actionId:T,turn:d().int().nonnegative(),terminal:I(),output:le(i(),ce()),artifactRefs:p(i().trim().min(1).max(2e3)),contentHash:D}).strict(),gK=l({sequence:d().int().nonnegative(),type:v(["created","reset","action","observation","terminal","graded","feedback","failure","collected","destroyed"]),timestamp:ye,payloadHash:D,metadata:le(i(),ce()).default({})}).strict(),px=l({graderId:T,graderVersion:i().trim().min(1).max(200),score:d().finite().nullable(),passed:I(),rewardEligible:I(),failureClass:v(["policy_failure","grader_failure","environment_failure","infrastructure_failure","timeout","cancelled"]).nullable(),feedback:p(i().max(5e5)),visibleEvidenceRefs:p(i().trim().min(1).max(2e3)),privilegedEvidenceRefs:p(i().trim().min(1).max(2e3)),contentHash:D}).strict();l({schemaVersion:b("openpond.harnessRunTrace.v1"),manifest:W,taskId:T,seed:i().trim().min(1).max(500),events:p(gK).max(1e6),actions:p(fK).max(1e5),observations:p(hK).max(1e5),graderEvidence:p(px).max(1e4),learningSignals:p(oP).max(1e5),terminal:I(),failureClass:px.shape.failureClass,artifactHash:D,contentHash:D}).strict();const vK=i().trim().min(1).max(2e3).refine(e=>{const t=e.replaceAll("\\","/");return!t.startsWith("/")&&!t.includes("\0")&&!t.split("/").some(n=>!n||n==="."||n==="..")},"path must be a safe relative path"),bK=v(["instruction","skill","skill_resource","agent","workflow","dependency_lock","program","asset"]),yK=l({id:T,kind:bK,path:vK,parentId:T.nullable(),mediaType:i().trim().min(1).max(200),visibility:v(["policy","verifier","host_private"]),portability:v(["portable","local_only"])}).strict().superRefine((e,t)=>{e.kind==="skill_resource"!=(e.parentId!==null)&&t.addIssue({code:"custom",message:"only Skill resources require parentId",path:["parentId"]})});l({schemaVersion:b("openpond.harnessSourceManifest.v1"),name:i().trim().min(1).max(240),files:p(yK).min(2).max(1e5),toolDeclarations:p(Xc).max(200),capabilityRequirements:p(Fv).max(200),lifecycle:sI,graderInterface:lI,runtimeProtocol:i().trim().min(1).max(500),metadata:le(i(),ce()).default({})}).strict().superRefine((e,t)=>{const n=new Set,a=new Map,o=new Set;for(const[r,s]of e.files.entries())n.has(s.id)&&t.addIssue({code:"custom",message:"file ids must be unique",path:["files",r,"id"]}),o.has(s.path)&&t.addIssue({code:"custom",message:"file paths must be unique",path:["files",r,"path"]}),n.add(s.id),a.set(s.id,s.kind),o.add(s.path);for(const[r,s]of e.files.entries())s.parentId&&!n.has(s.parentId)?t.addIssue({code:"custom",message:"parentId must reference a declared Skill",path:["files",r,"parentId"]}):s.parentId&&a.get(s.parentId)!=="skill"&&t.addIssue({code:"custom",message:"parentId must reference a primary Skill file",path:["files",r,"parentId"]});e.files.filter(r=>r.kind==="dependency_lock").length!==1&&t.addIssue({code:"custom",message:"exactly one dependency lock is required",path:["files"]}),e.files.filter(r=>r.kind==="program").length!==1&&t.addIssue({code:"custom",message:"exactly one Harness program is required",path:["files"]})});l({rootPath:i(),sourcePath:i(),binding:iL,currentRelease:gS,releases:p(gS),transitions:p(oL)}).strict();l({profile:uI,activate:I().default(!0),reason:i().trim().min(1).max(1e4),actor:i().trim().min(1).max(240).default("local-user"),authoringSkillHash:i().regex(/^[a-f0-9]{64}$/).nullable().default(null)}).strict();l({release:W,reason:i().trim().min(1).max(1e4),actor:i().trim().min(1).max(240).default("local-user")}).strict();const SK=l({schemaVersion:b("openpond.trainingEngineCapabilities.v1"),adapterId:T,available:I(),methods:p(i().trim().min(1).max(100)),signalKinds:p(aK),modelFamilies:p(i().trim().min(1).max(200)),precisions:p(v(["fp32","fp16","bf16","tf32","int8","int4"])),topologies:p(i().trim().min(1).max(200)),workerProtocolVersion:i().trim().min(1).max(200),upstreamRevision:i().trim().min(1).max(500),workerImageDigest:i().regex(/^sha256:[a-f0-9]{64}$/).nullable().default(null),capabilityReceipt:D,checkedAt:ye,unavailableReason:i().trim().min(1).max(5e3).nullable()}).strict(),xK=l({schemaVersion:b("openpond.computeTargetCapabilities.v1"),adapterId:T,kind:v(["local","ssh","managed","custom"]),provider:T.nullable(),available:I(),devices:p(l({id:T,kind:v(["cpu","gpu","accelerator"]),vendor:i().trim().min(1).max(200),name:i().trim().min(1).max(500),memoryBytes:d().int().nonnegative().nullable(),runtime:i().trim().min(1).max(200)}).strict()),supportsWorkerImages:I(),supportsArtifactTransfer:I(),supportsCancellation:I(),capabilityReceipt:D,checkedAt:ye,unavailableReason:i().trim().min(1).max(5e3).nullable()}).strict(),kK=l({schemaVersion:b("openpond.harnessRuntimeCapabilities.v1"),adapterId:T,available:I(),placements:p(v(["local","remote","colocated","provider_native"])),lifecycle:p(v(["create","reset","step","grade","collect","destroy"])),deterministicReplay:I(),privilegedIsolation:I(),capabilityReceipt:D,checkedAt:ye,unavailableReason:i().trim().min(1).max(5e3).nullable()}).strict();l({schemaVersion:b("openpond.resolvedTrainingPlan.v1"),manifest:M6,recipe:nP,runtime:Vb,compute:Kb,engine:Wb,execution:l({trainingPlanId:T,approvalId:T}).strict().nullable(),maximumSpendUsd:d().nonnegative().nullable(),approvalHash:D,contentHash:D}).strict().superRefine((e,t)=>{const n=[["runtime",e.runtime,e.manifest.runtimeTarget],["compute",e.compute,e.manifest.computeTarget],["engine",e.engine,e.manifest.engine]];for(const[a,o,r]of n)JSON.stringify(o)!==JSON.stringify(r)&&t.addIssue({code:"custom",path:[a],message:`${a} must exactly match the Harness Run Manifest`});e.recipe.method!==e.manifest.recipe.method&&t.addIssue({code:"custom",path:["recipe","method"],message:"Recipe method must match the Harness Run Manifest"}),e.approvalHash!==e.manifest.approval.approvalHash&&t.addIssue({code:"custom",path:["approvalHash"],message:"Approval hash must match the Harness Run Manifest"}),e.maximumSpendUsd!==e.manifest.approval.maximumSpendUsd&&t.addIssue({code:"custom",path:["maximumSpendUsd"],message:"Maximum spend must match the Harness Run Manifest"})});l({schemaVersion:b("openpond.adapterValidationReceipt.v1"),adapterId:T,valid:I(),issues:p(l({code:T,path:i().trim().max(2e3).nullable(),message:i().trim().min(1).max(5e3)}).strict()),capabilityReceipt:D,planHash:D,createdAt:ye,contentHash:D}).strict();l({runId:T,adapterId:T,protocolVersion:v(["openpond.training.v2","adapter.native.v1"]).default("adapter.native.v1"),routeFamily:v(["training_v2","adapter_native"]).default("adapter_native"),routeId:T.optional(),providerJobId:i().trim().min(1).max(1e3).nullable(),tenantId:T.optional(),leaseId:T.nullable(),manifestHash:D.optional(),inputBundleHash:D.optional(),createdAt:ye}).strict();l({runId:T,state:v(["queued","preparing","running","cancelling","cancelled","succeeded","failed"]),phase:i().trim().min(1).max(200),progress:d().min(0).max(1).nullable(),rolloutProgress:l({groupsCompleted:d().int().nonnegative(),groupsTarget:d().int().nonnegative(),optimizerUpdatesApplied:d().int().nonnegative(),optimizerUpdatesSkipped:d().int().nonnegative()}).strict().optional(),updatedAt:ye,errorCode:T.nullable()}).strict();l({runId:T,manifestHash:D,artifacts:p(l({kind:v(["checkpoint","adapter","metrics","trace","evaluation","receipt"]),objectRef:i().trim().min(1).max(2e3),sha256:D,sizeBytes:d().int().nonnegative(),metadata:le(i(),ce()).optional()}).strict()),contentHash:D}).strict();const Mg=v(["ready","model_download_required","compute_setup_required","provider_managed","unsupported"]),wK=l({id:T,label:i().trim().min(1).max(500),description:i().trim().min(1).max(2e3),destinationId:T,computeAdapterId:T,runtimeAdapterId:T,engineAdapterId:T,methods:p(i().trim().min(1).max(100)),capabilityPills:p(i().trim().min(1).max(100)),executionMode:v(["local_worker","provider_native"]),approvalPolicy:l({providerId:Nr,providerLabel:i().trim().min(1).max(200),settingsActionLabel:i().trim().min(1).max(500).nullable(),exportApprovalRequired:I(),exportDescription:i().trim().min(1).max(2e3).nullable(),preparationRequired:I(),minimumSpendUsd:d().nonnegative(),maximumSpendUsd:d().positive(),defaultMaximumSpendUsd:d().positive(),minimumRetentionDays:d().int().positive(),maximumRetentionDays:d().int().positive(),defaultRetentionDays:d().int().positive(),methodRequirement:i().trim().min(1).max(2e3).nullable()}).strict().nullable(),limits:l({maximumSequenceLength:d().int().positive(),maximumOutputTokens:d().int().positive(),maximumTrainingExamples:d().int().positive().nullable()}).strict(),defaults:l({loraRank:d().int().positive(),maxSteps:d().int().positive(),rolloutGroupSize:d().int().min(2).max(32),rolloutConcurrency:d().int().positive().max(32),rolloutOutputTokens:d().int().positive()}).strict(),available:I(),unavailableReason:i().trim().min(1).max(5e3).nullable()}).strict(),IK=l({selectionKey:T,label:i().trim().min(1).max(500),source:v(["local","builtin","huggingface","managed","search"]),modelId:i().trim().min(1).max(1e3),revision:i().trim().min(1).max(500).nullable(),tokenizerRevision:i().trim().min(1).max(500).nullable(),chatTemplateHash:D.nullable(),modelAssetId:T.nullable(),expectedBytes:d().int().nonnegative().nullable(),cached:I(),known:I(),searchResolved:I(),computeAdapterIds:p(T),engineAdapterIds:p(T),preparationState:Mg,reason:i().trim().min(1).max(5e3).nullable(),compatibilities:p(l({targetId:T,methods:p(i().trim().min(1).max(100)),state:Mg,reason:i().trim().min(1).max(5e3).nullable()}).strict())}).strict();l({schemaVersion:b("openpond.trainingCatalog.v1"),models:p(IK).max(1e5),engines:p(SK),compute:p(xK),runtimes:p(kK),targets:p(wK),generatedAt:ye,contentHash:D}).strict();l({schemaVersion:b("openpond.trainingPreparationPlan.v1"),modelRunId:T,state:Mg,reason:i().trim().min(1).max(5e3).nullable(),runtime:Vb.nullable(),compute:Kb.nullable(),engine:Wb.nullable(),downloads:p(l({kind:b("model"),label:i().trim().min(1).max(500),expectedBytes:d().int().nonnegative(),digest:i().trim().min(8).max(500),cached:I(),state:v(["ready","required","downloading","cancelled","failed"]),progress:d().min(0).max(1).nullable(),cancellable:I(),diskImpactBytes:d().int().nonnegative()}).strict()),dataMovement:p(l({direction:v(["upload","download","none"]),label:i().trim().min(1).max(500),bytes:d().int().nonnegative().nullable()}).strict()),quoteUsd:d().nonnegative().nullable(),maximumSpendUsd:d().nonnegative().nullable(),retentionDays:d().int().nonnegative().nullable(),sideEffectsStarted:b(!1),contentHash:D}).strict();const dp=32e3,_K=v(["steer","message","followup","queued","result"]),CK=v(["pending","included","resolved","cancelled","rejected"]),ny=l({id:i().min(1),sequence:d().int().nonnegative(),sessionId:i().min(1),senderSessionId:i().min(1).nullable(),senderKind:v(["user","task","runtime"]),kind:_K,body:i().trim().min(1).max(dp),payload:le(i(),ce()).default({}),idempotencyKey:i().min(1).max(200),replyTo:i().min(1).nullable(),expectedTurnId:i().min(1).nullable(),turnId:i().min(1).nullable(),requestIds:p(i()),state:CK,revision:d().int().positive(),createdAt:i(),updatedAt:i(),error:i().nullable()}).strict();l({expectedTurnId:i().trim().min(1),idempotencyKey:i().trim().min(1).max(200),prompt:i().trim().min(1).max(dp)}).strict();ot("action",[l({action:b("resume"),expectedRevision:d().int().positive()}).strict(),l({action:b("cancel"),expectedRevision:d().int().positive()}).strict(),l({action:b("edit"),expectedRevision:d().int().positive(),body:i().trim().min(1).max(dp)}).strict(),l({action:b("steer"),expectedRevision:d().int().positive(),expectedTurnId:i().trim().min(1)}).strict()]);const RK=l({id:i().min(1),sessionId:i().min(1),turnId:i().min(1),targetSessionId:i().min(1).nullable(),targetTurnId:i().min(1).nullable(),targetInputId:i().min(1).nullable().default(null),afterSequence:d().int().nonnegative(),deadline:i(),state:v(["waiting","message","completed","failed","interrupted","unavailable","timeout","cancelled"]),createdAt:i(),updatedAt:i()}).strict(),PK=l({sessionId:i(),activeTurnId:i().nullable(),acceptingInput:I(),paused:I(),inputs:p(ny),waits:p(RK)});l({sessionId:i().min(1),provider:i().min(1),title:i(),targetRevision:i().min(1),managedSessionId:i().nullable(),latestTurnId:i().nullable(),activeTurnId:i().nullable(),paused:I(),approvalBlocked:I(),canSendFollowup:I(),canSteer:I(),unavailableReason:i().nullable(),inbox:PK}).strict();l({authority:b("user_click"),mode:v(["followup","steer"]),expectedTargetRevision:i().min(1),expectedTurnId:i().min(1).optional(),prompt:i().trim().min(1).max(dp),idempotencyKey:i().trim().min(1).max(200),recommendationId:i().min(1).max(200).optional()}).strict().superRefine((e,t)=>{e.mode==="steer"&&!e.expectedTurnId&&t.addIssue({code:"custom",path:["expectedTurnId"],message:"Active steering requires the exact observed turn."}),e.mode==="followup"&&e.expectedTurnId&&t.addIssue({code:"custom",path:["expectedTurnId"],message:"Follow-up messages are delivered at the next turn boundary."})});var rP=i().regex(/^[a-f0-9]{64}$/),AK=l({request:vl,maximumCostUsd:d().finite().positive().max(1e4),graders:p(Li).min(1).max(100),admissionRequestHash:rP.optional(),sourceExperimentId:i().trim().min(1).max(200).optional()}).strict(),TK=AK.extend({configurationHash:rP}).strict();xR.extend({configuration:TK}).strict();var eoe=l({teamId:i().trim().min(1).max(240),items:p(l({name:i().trim().min(1).max(500),source:ld,ready:I(),reason:i().min(1).max(2e3).nullable()}).strict()).max(8),nextCursor:i().min(1).max(8192).nullable()}).strict();i().trim().min(1).max(200);var Vl=i().trim().min(1).max(500),sP=i().regex(/^[a-f0-9]{64}$/),EK=l({schemaVersion:b("openpond.experimentCaseInspection.v1"),teamId:Vl,executionId:Vl,manifestHash:sP,receiptId:Vl,taskId:Vl,seed:i().min(1),input:le(i(),ce()).nullable(),output:ce().nullable(),error:i().nullable(),events:p(le(i(),ce())).max(25),nextEventCursor:Vl.nullable(),eventCount:d().int().nonnegative()}).strict();EK.extend({contentHash:sP}).strict();function jK(e){return JSON.stringify(e.release?["reward",e.release.id,e.release.revision,e.release.contentHash,e.feedbackKey]:["dataset",e.id,e.version,e.contentHash,e.feedbackKey])}function MK(e){const t=new Map;for(const n of e){const a=jK(n),o=t.get(a);o?o.aliases.push(n):t.set(a,{key:a,grader:n,aliases:[n]})}return[...t.values()]}function toe(e){const t=MK(e),n=new Map;for(const a of t){const o=n.get(a.grader.feedbackKey);if(o&&o!==a.key)throw new Error(`Different selected grader releases use feedback key "${a.grader.feedbackKey}". Select one, or publish graders with distinct feedback keys.`);n.set(a.grader.feedbackKey,a.key);const r=JSON.stringify(a.grader.mappings??[]);if(a.aliases.some(s=>JSON.stringify(s.mappings??[])!==r))throw new Error(`Aliases of grader "${a.grader.feedbackKey}" have different field mappings. Select one alias and review its mappings.`)}return t.map(a=>a.grader)}var Ir=i().trim().min(1).max(240),noe=l({profileRef:l({source:v(["local","github","openpond_git"]),repositoryId:Ir,profileId:Ir}).strict(),sourceRevision:i().min(1).max(500),harnessRelease:He,catalogHash:i().regex(/^[a-f0-9]{64}$/).nullable(),definitions:p(R_).max(1e3),suites:p(P_).max(100),runs:p(l({profileRef:l({source:v(["local","github","openpond_git"]),repositoryId:Ir,profileId:Ir}).strict(),manifest:ep,metric:ub,gradeRefs:p(He),receiptRefs:p(He),passRate:d().min(0).max(1),passed:I(),completedAt:on(),contentHash:i().regex(/^[a-f0-9]{64}$/)}).strict()).max(1e3),comparisons:p(b5).max(1e3),suiteRuns:p(I5).max(1e3),reports:p(k5).max(1e3)}).strict();l({teamId:Ir,profileRepositoryId:Ir,trainingProjectId:Ir.optional()}).strict();var dm=ct.shape.id,OK=l({schemaVersion:b("openpond.modelBatchReviewInspection.v1"),packageHash:i().regex(/^[a-f0-9]{64}$/),definition:cd,binding:Fm,evidence:p(Wm).min(1).max(1e4),decisions:p(Sb).min(1).max(1e4)}).strict(),aoe=l({schemaVersion:b("openpond.modelBatchReviewRequest.v1"),operationId:dm,modelId:dm,expectedModelRevision:d().int().positive(),tasksetRef:ct,rewardBindingRef:ct.nullable(),definition:l({name:i().trim().min(1).max(500).optional(),instructions:i().trim().min(1).max(2e4).optional(),inputSchema:Lt.optional(),outputSchema:Lt.optional(),requiredOutputs:cd.shape.requiredOutputs}).strict(),examples:p(l({evidence:ct,input:Lt.optional(),expected:Lt.nullable().optional(),evaluatorContext:Lt.nullable().optional(),proposedTarget:Lt.nullable().optional()}).strict()).max(1e4)}).strict(),$K=l({schemaVersion:b("openpond.modelBatchReviewReceipt.v1"),operationId:dm,modelId:dm,source:Km,evidence:p(Wm).min(1).max(1e4),proposals:p(L_).max(1e4)}).strict();p(l({asset:di,sourcePath:i().min(1)}).strict()).max(1e4);l({draft:Ja,filePaths:p(l({assetId:i().min(1),paths:p(dd).min(1).max(1e4)}).strict()).max(1e4)}).strict();const gn=i().trim().min(1).max(200),ra=i().regex(/^[a-f0-9]{64}$/),lP=v(["queued","running","cancelling","completed","failed","cancelled","interrupted"]),cP=l({providerId:v(["openpond","custom-openai-compatible","claude-code"]),modelId:i().trim().min(1).max(500),configurationHash:ra,maxOutputTokens:d().int().positive().max(262144),temperature:d().min(0).max(2).optional(),topP:d().positive().max(1).optional(),messages:p(l({role:v(["system","user","assistant"]),content:i().max(262144)}).strict()).max(200)}).strict();l({configuration:Fb,package:jr}).strict();l({configuration:Fb,expectedPackageHash:ra.optional()}).strict();l({schemaVersion:b("openpond.localExperimentDefinition.v1"),location:b("local"),id:gn,teamId:gn,ownerActorId:gn,revision:d().int().positive(),configuration:Fb,model:cP,packageHash:ra,graders:p(Li).min(1).max(100),availableGraders:p(Li).min(1).max(1e3),createdAt:on(),updatedAt:on(),contentHash:ra}).strict();l({operationId:gn,definition:pd}).strict();l({teamId:gn,id:gn}).strict();l({teamId:gn,projectId:gn.optional(),status:lP.optional(),datasetHash:ra.optional(),search:i().max(100).optional(),afterId:gn.optional(),limit:d().int().min(1).max(100).default(30)}).strict();const ay=l({schemaVersion:b("openpond.localExperimentExecution.v1"),location:b("local"),id:gn,teamId:gn,ownerActorId:gn,operationId:gn,definition:pd,kind:v(["target","scoring"]),executionHash:ra,sourceExecution:l({id:gn,executionHash:ra}).strict().nullable(),packageHash:ra,maximumCostUsd:d().finite().positive(),status:lP,createdAt:on(),completedAt:on().nullable(),counts:l({pending:d().int().nonnegative(),running:d().int().nonnegative(),completed:d().int().nonnegative(),failed:d().int().nonnegative(),cancelled:d().int().nonnegative(),unknown:d().int().nonnegative()}).strict(),usage:l({knownCostUsd:d().finite().nonnegative(),costUsd:d().finite().nonnegative().nullable(),heldUsd:d().finite().nonnegative(),uncertainRequests:d().int().nonnegative()}).strict(),cleanupComplete:I(),error:i().max(2e3).nullable()}).strict(),NK=ay.omit({definition:!0});function iy(e,t){e.kind==="scoring"!=(e.sourceExecution!==null)&&t.addIssue({code:"custom",message:"Only retained scoring passes name an original execution."}),["completed","failed","cancelled","interrupted"].includes(e.status)&&(!e.completedAt||e.counts.pending||e.counts.running)&&t.addIssue({code:"custom",message:"Terminal local execution requires complete population accounting."}),["completed","cancelled"].includes(e.status)&&!e.cleanupComplete&&t.addIssue({code:"custom",message:"Successful completion or cancellation requires confirmed local transport cleanup."}),e.usage.uncertainRequests>0&&e.usage.costUsd!==null&&t.addIssue({code:"custom",message:"Uncertain provider charges cannot claim a measured total."})}ay.superRefine(iy);const bd=NK.superRefine(iy);l({configuration:fd,package:jr}).strict();const ioe=l({configuration:fd,expectedPackageHash:i().regex(/^[a-f0-9]{64}$/).optional()}).strict(),fx=l({configuration:fd,model:cP,packageHash:i().regex(/^[a-f0-9]{64}$/),graders:p(Li).min(1).max(100),availableGraders:p(Li).min(1).max(1e3),retainedConfigurationHash:i().regex(/^[a-f0-9]{64}$/).optional(),configurationHash:i().regex(/^[a-f0-9]{64}$/)}).strict().superRefine((e,t)=>{const{configurationHash:n,...a}=e;dt(a)!==n&&t.addIssue({code:"custom",message:"Local configuration snapshot bytes changed."})}),{definition:ooe,...DK}=ay.shape,oy=l({...DK,kind:b("target"),...fx.shape}).strict().superRefine((e,t)=>{const n={configuration:e.configuration,model:e.model,packageHash:e.packageHash,graders:e.graders,availableGraders:e.availableGraders,...e.retainedConfigurationHash?{retainedConfigurationHash:e.retainedConfigurationHash}:{},configurationHash:e.configurationHash};iy(e,t),fx.safeParse(n).success||t.addIssue({code:"custom",message:"Local Experiment configuration changed."}),(e.operationId!==e.configuration.operationId||e.teamId!==e.configuration.request.teamId||e.maximumCostUsd!==e.configuration.maximumCostUsd)&&t.addIssue({code:"custom",message:"Local Experiment differs from its sealed admission."})}),roe=l({items:p(oy).max(100),nextCursor:i().nullable()}).strict();l({teamId:i().min(1).max(200),id:i().min(1).max(200),configurationHash:i().regex(/^[a-f0-9]{64}$/).optional()}).strict();const HK=l({operationId:gn,execution:l({id:gn,executionHash:ra}).strict(),graderPackage:jr,graders:p(Bb).min(1).max(100),maximumCostUsd:d().finite().positive().max(1e4)}).strict(),soe=HK.omit({graderPackage:!0}),LK=bb,qK=l({sessionId:gn,turnId:gn,source:Ys,profileRef:Bi,admissionHash:ra,modelConfigurationHash:ra,traceHash:ra,runtimeEventRefs:p(gn).max(1e4),startedAt:on(),completedAt:on(),outputHash:ra,partialOutputAvailable:I()}).strict(),dP=l({receiptId:gn,taskId:gn,seed:i(),status:v(["pending","running","completed","failed","cancelled","unknown"]),input:le(i(),ce()),policyVisibleContext:le(i(),ce()),output:i().nullable(),messages:p(ce()).max(4002),grade:gR.nullable(),error:i().nullable(),native:LK.optional(),profileNative:qK.optional(),externalProcess:W3.optional()}).strict(),loe=l({execution:vt([oy,bd]),cases:p(dP).max(1e4),contentHash:ra}).strict(),UK=l({items:p(l({sequence:d().int().positive(),type:i().min(1),payload:ce()}).strict()).max(500),nextCursor:d().int().positive().nullable()}).strict(),coe=l({location:b("local"),execution:vt([oy,bd]),case:dP,trace:UK}).strict(),doe=l({items:p(bd).max(100),nextCursor:gn.nullable()}).strict(),uoe=l({execution:bd,graders:p(Li).min(1).max(100),graderPackageHash:ra}).strict(),hx=l({execution:bd,manifest:uo,result:mo}).strict().superRefine((e,t)=>{try{if(Pr(e),e.manifest.id!==e.execution.id||e.manifest.teamId!==e.execution.teamId||e.manifest.lineage?.execution.id!==(e.execution.sourceExecution?.id??e.execution.id)||e.manifest.lineage.execution.contentHash!==(e.execution.sourceExecution?.executionHash??e.execution.executionHash)||e.manifest.lineage.scoringPassId!==(e.execution.kind==="scoring"?e.execution.id:null)||e.manifest.maximumCostUsd!==e.execution.maximumCostUsd)throw new Error("Portable evidence differs from its retained local execution.")}catch(n){t.addIssue({code:"custom",message:n instanceof Error?n.message:"Local portable evidence verification failed."})}}),moe=l({location:b("local"),baseline:hx,candidate:hx}).strict(),gs=i().trim().min(1).max(240),kh=i().regex(/^[a-f0-9]{64}$/),poe=l({location:b("local"),harnesses:p(l({id:gs,name:i().max(500),source:ld}).strict()).max(100),profiles:p(l({id:gs,name:i().max(500),profileRef:Bi,sourceRevision:i().min(1).max(500),harnessRelease:l({id:gs,contentHash:kh}).strict(),definitionId:gs,definitionHash:kh,taskset:l({id:gs,revision:d().int().positive(),contentHash:kh}).strict(),taskCount:d().int().nonnegative(),taskIds:p(gs).max(1e4),seeds:p(i()).max(1e4)}).strict()).max(100)}).strict(),zK=l({id:Pm(),action:v(["advanced-refiner-start","experiment-evaluation-schedule"]),intentHash:i().regex(/^[a-f0-9]{64}$/),createdAt:on(),reviewedIntent:ce().nullable(),command:ce().nullable(),phase:v(["reviewed","dispatching"]).nullable(),recoveryReady:I()}).strict().superRefine((e,t)=>{e.recoveryReady!==(e.reviewedIntent!==null&&e.command!==null&&e.phase!==null)&&t.addIssue({code:"custom",message:"Only the actual retained intent and command admit automatic recovery."})}),foe=l({items:p(zK).max(100),nextCursor:Pm().nullable()}).strict(),BK={teamInvitations:e=>z(e,"/v1/team-invitations"),decideTeamInvitation:(e,t,n)=>z(e,`/v1/team-invitations/${t}`,{method:"POST",body:JSON.stringify({token:n})}),organizations:e=>z(e,"/v1/organizations"),createOrganization:(e,t)=>z(e,"/v1/organizations",{method:"POST",body:JSON.stringify(t)}),updateOrganization:(e,t,n)=>z(e,`/v1/organizations/${encodeURIComponent(t)}`,{method:"PATCH",body:JSON.stringify(n)}),organizationMembers:(e,t)=>z(e,`/v1/organizations/${encodeURIComponent(t)}/members`),upsertOrganizationMember:(e,t,n)=>z(e,`/v1/organizations/${encodeURIComponent(t)}/members`,{method:"POST",body:JSON.stringify(n)}),organizationMcpServer:(e,t)=>z(e,`/v1/organizations/${encodeURIComponent(t)}/mcp-server`),generateOrganizationMcpServer:(e,t,n)=>z(e,`/v1/organizations/${encodeURIComponent(t)}/mcp-server`,{method:"POST",body:JSON.stringify(n)}),setOrganizationMcpServerStatus:(e,t,n)=>z(e,`/v1/organizations/${encodeURIComponent(t)}/mcp-server/${n}`,{method:"POST"})},FK={taskInbox:(e,t)=>z(e,`/v1/sessions/${encodeURIComponent(t)}/inbox`),steerTurn:(e,t,n)=>z(e,`/v1/sessions/${encodeURIComponent(t)}/turns/steer`,{method:"POST",body:JSON.stringify(n)}),queueTaskInput:(e,t,n,a)=>z(e,`/v1/sessions/${encodeURIComponent(t)}/inbox`,{method:"POST",body:JSON.stringify({input:n,idempotencyKey:a})}),updateTaskInput:(e,t,n,a)=>z(e,`/v1/sessions/${encodeURIComponent(t)}/inbox/${encodeURIComponent(n)}`,{method:"PATCH",body:JSON.stringify(a)}),sendTurn:(e,t,n)=>z(e,`/v1/sessions/${t}/turns`,{method:"POST",body:JSON.stringify(n)}),runSessionCommand:(e,t,n)=>z(e,`/v1/sessions/${encodeURIComponent(t)}/commands`,{method:"POST",body:JSON.stringify(n)}),recordPreflightTurnFailure:(e,t,n)=>z(e,`/v1/sessions/${t}/preflight-turns/failure`,{method:"POST",body:JSON.stringify(n)}),listCreateImproveRuns:(e,t={})=>z(e,`/v1/create-improve-runs?${VK(t).toString()}`),getCreateImproveRun:(e,t)=>z(e,`/v1/create-improve-runs/${encodeURIComponent(t)}`),getCreateImproveCandidateDiff:(e,t,n)=>z(e,`/v1/create-improve-runs/${encodeURIComponent(t)}/candidates/${encodeURIComponent(n)}/diff`),applyCreateImproveAction:(e,t,n)=>z(e,`/v1/create-improve-runs/${encodeURIComponent(t)}/actions`,{method:"POST",body:JSON.stringify(n)}),interruptTurn:(e,t,n)=>z(e,`/v1/sessions/${t}/turns/interrupt`,{method:"POST",body:JSON.stringify({reason:n})}),compactSession:(e,t,n={reason:"manual"})=>z(e,`/v1/sessions/${t}/compact`,{method:"POST",body:JSON.stringify(n)}),workspaceTool:(e,t,n)=>z(e,`/v1/sessions/${t}/workspace-tools`,{method:"POST",body:JSON.stringify(n)}),ensureCloudWorkspaceReady:(e,t,n)=>z(e,`/v1/sessions/${encodeURIComponent(t)}/workspace/ensure-ready`,{method:"POST",body:JSON.stringify(n)})};function VK(e){const t=new URLSearchParams;return e.profileId&&t.set("profileId",e.profileId),e.conversationId&&t.set("conversationId",e.conversationId),e.targetKind&&t.set("targetKind",e.targetKind),e.targetId&&t.set("targetId",e.targetId),e.limit&&t.set("limit",String(e.limit)),t}const KK={sandboxFiles:(e,t,n={})=>{const a=new URLSearchParams({list:"1"});return n.path&&a.set("path",n.path),n.recursive!==void 0&&a.set("recursive",String(n.recursive)),n.maxEntries!==void 0&&a.set("maxEntries",String(n.maxEntries)),z(e,`/v1/sandboxes/${encodeURIComponent(t)}/files?${a.toString()}`)},sandboxUploadFile:(e,t,n)=>z(e,`/v1/sandboxes/${encodeURIComponent(t)}/files`,{method:"POST",body:JSON.stringify(n)}),preserveSandboxSource:(e,t,n={})=>z(e,`/v1/sandboxes/${encodeURIComponent(t)}/preserve-source`,{method:"POST",body:JSON.stringify(n)}),sandboxDownloadFile:async(e,t,n,a={})=>{const o=new URLSearchParams({path:n});a.offsetBytes!==void 0&&o.set("offsetBytes",String(a.offsetBytes)),a.maxBytes!==void 0&&o.set("maxBytes",String(a.maxBytes));const r=await z(e,`/v1/sandboxes/${encodeURIComponent(t)}/files?${o.toString()}`);return{...r,contents:r.file.isBinary?"":BE(r.file.contentsBase64)}}},WK={sandboxGitStatus:(e,t)=>z(e,`/v1/sandboxes/${encodeURIComponent(t)}/git/status`),sandboxGitDiff:(e,t,n)=>z(e,`/v1/sandboxes/${encodeURIComponent(t)}/git/diff`,{method:"POST",body:JSON.stringify(n)})},GK={connectedAppStatus:(e,t={})=>{const n=r0(t);return n.set("status",t.status??"all"),z(e,`/v1/connected-apps/status${n.size>0?`?${n.toString()}`:""}`)},integrationConnections:(e,t={})=>{const n=r0(t);return t.status&&n.set("status",t.status),z(e,`/v1/integrations/connections${n.size>0?`?${n.toString()}`:""}`)},sandboxIntegrationLeases:(e,t)=>z(e,`/v1/sandboxes/${encodeURIComponent(t)}/integrations`),attachSandboxIntegrationConnection:(e,t,n)=>z(e,`/v1/sandboxes/${encodeURIComponent(t)}/integrations`,{method:"POST",body:JSON.stringify(n)}),removeSandboxIntegrationLease:(e,t,n)=>z(e,`/v1/sandboxes/${encodeURIComponent(t)}/integrations`,{method:"DELETE",body:JSON.stringify({leaseId:n})})},JK={listSandboxProjects:(e,t)=>{const n=new URLSearchParams({teamId:t.teamId});return z(e,`/v1/sandbox-projects?${n.toString()}`)},getSandboxProject:(e,t,n)=>{const a=new URLSearchParams({teamId:n.teamId});return z(e,`/v1/sandbox-projects/${encodeURIComponent(t)}?${a.toString()}`)},getSandboxProjectWorkspace:(e,t,n)=>{const a=new URLSearchParams({teamId:n.teamId});return z(e,`/v1/sandbox-projects/${encodeURIComponent(t)}/workspace?${a.toString()}`)},upsertSandboxProject:(e,t)=>z(e,"/v1/sandbox-projects",{method:"POST",body:JSON.stringify(t)}),syncSandboxProject:(e,t,n)=>{const a=new URLSearchParams({teamId:n.teamId});return z(e,`/v1/sandbox-projects/${encodeURIComponent(t)}/sync?${a.toString()}`,{method:"POST"})},uploadSandboxProjectSource:(e,t,n)=>{const a=new URLSearchParams({teamId:n.teamId}),{teamId:o,...r}=n;return z(e,`/v1/sandbox-projects/${encodeURIComponent(t)}/source?${a.toString()}`,{method:"POST",body:JSON.stringify(r)})},archiveSandboxProject:(e,t,n)=>{const a=new URLSearchParams({teamId:n.teamId});return z(e,`/v1/sandbox-projects/${encodeURIComponent(t)}?${a.toString()}`,{method:"DELETE"})},listSandboxAgents:(e,t)=>{const n=new URLSearchParams({teamId:t.teamId});return z(e,`/v1/sandbox-agents?${n.toString()}`)},upsertSandboxAgent:(e,t)=>z(e,"/v1/sandbox-agents",{method:"POST",body:JSON.stringify(t)}),runSandboxAgent:(e,t,n)=>z(e,`/v1/sandbox-agents/${encodeURIComponent(t)}/run`,{method:"POST",body:JSON.stringify(n)}),runProfileAction:(e,t)=>z(e,"/v1/profile/run",{method:"POST",body:JSON.stringify(t)})},ZK={sandbox:(e,t)=>z(e,`/v1/sandboxes/${encodeURIComponent(t)}`)},YK={...GK,...JK,...ZK,...WK,...KK},QK={communities:(e,t)=>{const n=new URLSearchParams;return t&&n.set("cursor",t),z(e,`/v1/communities${n.size?`?${n}`:""}`)},communityPreview:(e,t)=>z(e,`/v1/communities/${encodeURIComponent(t)}/preview`),communityRules:(e,t)=>z(e,`/v1/communities/${encodeURIComponent(t)}/rules/current`),joinCommunity:(e,t,n)=>z(e,`/v1/communities/${encodeURIComponent(t)}/join`,{method:"POST",body:JSON.stringify({acceptedRulesVersionId:n})}),acceptCommunityRules:(e,t,n)=>z(e,`/v1/communities/${encodeURIComponent(t)}/rules/accept`,{method:"POST",body:JSON.stringify({acceptedRulesVersionId:n})}),leaveCommunity:(e,t)=>z(e,`/v1/communities/${encodeURIComponent(t)}/leave`,{method:"POST",body:"{}"}),communityChannels:(e,t)=>z(e,`/v1/communities/${encodeURIComponent(t)}/channels`),communityMessages:(e,t,n,a={})=>{const o=new URLSearchParams;return a.beforeSequence!=null&&o.set("beforeSequence",String(a.beforeSequence)),a.limit!=null&&o.set("limit",String(a.limit)),z(e,`/v1/communities/${encodeURIComponent(t)}/channels/${encodeURIComponent(n)}/messages${o.size?`?${o}`:""}`)},sendCommunityMessage:(e,t,n,a)=>z(e,`/v1/communities/${encodeURIComponent(t)}/channels/${encodeURIComponent(n)}/messages`,{method:"POST",body:JSON.stringify(a)}),editCommunityMessage:(e,t,n,a,o)=>z(e,`/v1/communities/${encodeURIComponent(t)}/channels/${encodeURIComponent(n)}/messages/${encodeURIComponent(a)}`,{method:"PATCH",body:JSON.stringify({body:o})}),deleteCommunityMessage:(e,t,n,a)=>z(e,`/v1/communities/${encodeURIComponent(t)}/channels/${encodeURIComponent(n)}/messages/${encodeURIComponent(a)}`,{method:"DELETE",body:"{}"}),markCommunityRead:(e,t,n,a)=>z(e,`/v1/communities/${encodeURIComponent(t)}/channels/${encodeURIComponent(n)}/read`,{method:"POST",body:JSON.stringify({sequence:a})}),setCommunityChannelMuted:(e,t,n,a)=>z(e,`/v1/communities/${encodeURIComponent(t)}/channels/${encodeURIComponent(n)}/mute`,{method:"POST",body:JSON.stringify({muted:a})}),searchCommunityMembers:(e,t,n={})=>{const a=new URLSearchParams;return n.query&&a.set("query",n.query),n.cursor&&a.set("cursor",n.cursor),n.limit!=null&&a.set("limit",String(n.limit)),z(e,`/v1/communities/${encodeURIComponent(t)}/members/search${a.size?`?${a}`:""}`)},updateCommunityNotifications:(e,t,n)=>z(e,`/v1/communities/${encodeURIComponent(t)}/notifications`,{method:"POST",body:JSON.stringify({mode:n})}),communityEvents:(e,t,n={})=>{const a=new URLSearchParams;return n.after!=null&&a.set("after",String(n.after)),n.limit!=null&&a.set("limit",String(n.limit)),z(e,`/v1/communities/${encodeURIComponent(t)}/events${a.size?`?${a}`:""}`)},communityRealtimeSession:(e,t)=>z(e,`/v1/communities/${encodeURIComponent(t)}/realtime-session`),uploadCommunityAttachment:(e,t,n,a)=>z(e,`/v1/communities/${encodeURIComponent(t)}/channels/${encodeURIComponent(n)}/attachments/upload`,{method:"POST",body:JSON.stringify({attachment:a})}),communityAttachmentDownload:(e,t,n,a)=>z(e,`/v1/communities/${encodeURIComponent(t)}/channels/${encodeURIComponent(n)}/attachments/${encodeURIComponent(a)}/download`)},ry="openpond-app-server-url",Hc="openpond-app-token",XK=750;function uP(){return window.location.protocol!=="http:"&&window.location.protocol!=="https:"?null:window.location.origin&&window.location.origin!=="null"?window.location.origin:null}function Og(e){const t=e.getItem(ry)?.trim(),n=e.getItem(Hc)?.trim();return t&&n?{serverUrl:t,token:n}:null}function um(e){if(!e)return null;try{const t="__openpond_storage_probe__";return e.setItem(t,"1"),e.removeItem(t),e}catch{return null}}function vs(e,t){e.setItem(ry,t.serverUrl),e.setItem(Hc,t.token)}function gx(e,t){const n=Og(e);n?.serverUrl!==t.serverUrl||n.token!==t.token||(e.removeItem(ry),e.removeItem(Hc))}function eW(){const e=window.__OPENPOND_WEB_CONNECTION__,t=e?.serverUrl?.trim(),n=e?.token?.trim();return t&&n?{serverUrl:t,token:n}:null}function tW(){const e=window.location.hash.startsWith("#")?window.location.hash.slice(1):window.location.hash;if(!e)return null;const t=new URLSearchParams(e),n=t.get("openpondToken")?.trim(),a=t.get("openpondServerUrl")?.trim()||uP();return!a||!n?null:{serverUrl:a,token:n}}function nW(){window.location.hash&&window.history.replaceState(null,"",`${window.location.pathname}${window.location.search}`)}function ou(e,t){t&&(e.some(n=>n.serverUrl===t.serverUrl&&n.token===t.token)||e.push(t))}function aW(){const e=[],t=um(window.sessionStorage),n=um(window.localStorage),a=uP(),o=t?.getItem(Hc)??n?.getItem(Hc);return ou(e,null),ou(e,a&&o?{serverUrl:a,token:o.trim()}:null),ou(e,t?Og(t):null),ou(e,n?Og(n):null),e}async function wh(e){const t=new AbortController,n=window.setTimeout(()=>t.abort(),XK);try{const a=await fetch(`${e}/health`,{signal:t.signal}),o=await a.json().catch(()=>null);return a.ok&&o?.server==="openpond-app-server"}catch{return!1}finally{window.clearTimeout(n)}}async function iW(){if(window.openpond)return window.openpond.getConnection();const e=um(window.sessionStorage),t=um(window.localStorage),n=tW();if(n&&await wh(n.serverUrl))return t&&vs(t,n),e&&vs(e,n),nW(),{...n,platform:navigator.platform};const a=eW();if(a&&await wh(a.serverUrl))return t&&vs(t,a),e&&vs(e,a),{...a,platform:navigator.platform};const o=aW();for(const r of o){if(await wh(r.serverUrl))return t&&vs(t,r),e&&vs(e,r),{...r,platform:navigator.platform};e&&gx(e,r),t&&gx(t,r)}throw new Error("No reachable OpenPond app server. Start `openpond ui` again and open the full printed URL.")}const ae={...QK,bootstrap:e=>z(e,"/v1/bootstrap?refreshCodex=1"),localProjectActions:(e,t)=>z(e,`/v1/projects/${encodeURIComponent(t)}/actions`),extensionCatalog:e=>z(e,"/v1/extensions"),extensionPreview:(e,t)=>z(e,"/v1/extensions/preview",{method:"POST",body:JSON.stringify(t)}),extensionAdd:(e,t)=>z(e,"/v1/extensions",{method:"POST",body:JSON.stringify(t)}),extensionUpdate:(e,t,n={})=>z(e,`/v1/extensions/github/${encodeURIComponent(t.owner)}/${encodeURIComponent(t.repo)}/update`,{method:"POST",body:JSON.stringify(n)}),extensionUpdateAll:e=>z(e,"/v1/extensions/update-all",{method:"POST"}),extensionRemove:(e,t)=>z(e,`/v1/extensions/github/${encodeURIComponent(t.owner)}/${encodeURIComponent(t.repo)}`,{method:"DELETE"}),skillSourceFile:(e,t,n,a)=>z(e,`/v1/skills/${t}/${encodeURIComponent(n)}/source?path=${encodeURIComponent(a)}`),teamChatMembers:(e,t)=>z(e,`/v1/team-chat/members?teamId=${encodeURIComponent(t)}`),teamChatAgents:(e,t)=>z(e,`/v1/team-chat/agents?teamId=${encodeURIComponent(t)}`),teamChatThreads:(e,t)=>z(e,`/v1/team-chat/threads?teamId=${encodeURIComponent(t)}`),teamChatRealtimeSession:(e,t)=>z(e,`/v1/team-chat/realtime-session?teamId=${encodeURIComponent(t)}`),teamChatEvents:(e,t,n={})=>{const a=new URLSearchParams({teamId:t});return n.after!=null&&a.set("after",String(n.after)),n.limit!=null&&a.set("limit",String(n.limit)),z(e,`/v1/team-chat/events?${a.toString()}`)},teamChatGeneral:(e,t)=>z(e,"/v1/team-chat/threads/general",{method:"POST",body:JSON.stringify({teamId:t})}),teamChatDm:(e,t,n)=>z(e,"/v1/team-chat/threads/dm",{method:"POST",body:JSON.stringify({teamId:t,otherUserId:n})}),teamChatThread:(e,t,n,a={})=>{const o=new URLSearchParams({teamId:t});return a.beforeSequence!=null&&o.set("beforeSequence",String(a.beforeSequence)),a.limit!=null&&o.set("limit",String(a.limit)),z(e,`/v1/team-chat/threads/${encodeURIComponent(n)}?${o.toString()}`)},uploadTeamChatAttachment:(e,t,n)=>z(e,`/v1/team-chat/threads/${encodeURIComponent(t)}/attachments/upload`,{method:"POST",body:JSON.stringify(n)}),teamChatAttachmentDownload:(e,t,n)=>z(e,`/v1/team-chat/attachments/${encodeURIComponent(n)}/download?teamId=${encodeURIComponent(t)}`),sendTeamChatMessage:(e,t,n)=>z(e,`/v1/team-chat/threads/${encodeURIComponent(t)}/messages`,{method:"POST",body:JSON.stringify(n)}),createTeamChatAgentRun:(e,t,n)=>z(e,`/v1/team-chat/threads/${encodeURIComponent(t)}/agent-runs`,{method:"POST",body:JSON.stringify(n)}),teamChatAgentConversation:(e,t,n)=>z(e,`/v1/team-chat/agent-runs/${encodeURIComponent(n)}?teamId=${encodeURIComponent(t)}`),editTeamChatMessage:(e,t,n,a)=>z(e,`/v1/team-chat/threads/${encodeURIComponent(t)}/messages/${encodeURIComponent(n)}`,{method:"PATCH",body:JSON.stringify(a)}),deleteTeamChatMessage:(e,t,n,a)=>z(e,`/v1/team-chat/threads/${encodeURIComponent(t)}/messages/${encodeURIComponent(n)}`,{method:"DELETE",body:JSON.stringify({teamId:a})}),markTeamChatRead:(e,t,n,a)=>z(e,`/v1/team-chat/threads/${encodeURIComponent(t)}/read`,{method:"POST",body:JSON.stringify({teamId:n,sequence:a})}),setTeamChatThreadMuted:(e,t,n,a)=>z(e,`/v1/team-chat/threads/${encodeURIComponent(t)}/mute`,{method:"POST",body:JSON.stringify({teamId:n,muted:a})}),createTeamChatAiThread:(e,t,n)=>z(e,`/v1/team-chat/threads/${encodeURIComponent(t)}/ai-threads`,{method:"POST",body:JSON.stringify(n)}),teamChatAiThread:(e,t,n)=>z(e,`/v1/team-chat/ai-threads/${encodeURIComponent(n)}?teamId=${encodeURIComponent(t)}`),sendTeamChatAiTurn:(e,t,n)=>z(e,`/v1/team-chat/ai-threads/${encodeURIComponent(t)}/turns`,{method:"POST",body:JSON.stringify(n)}),executeTeamChatAiTurn:(e,t,n)=>z(e,`/v1/team-chat/ai-turns/${encodeURIComponent(t)}/execute`,{method:"POST",body:JSON.stringify({teamId:n})}),cancelTeamChatAiTurnExecution:(e,t,n)=>z(e,`/v1/team-chat/ai-turns/${encodeURIComponent(t)}/execute/cancel`,{method:"POST",body:JSON.stringify({teamId:n})}),usage:(e,t={})=>{const n=vx(t),a=n.size?`?${n.toString()}`:"";return z(e,`/v1/usage${a}`)},usageRecords:(e,t={})=>{const n=vx(t);t.sessionId&&n.set("sessionId",t.sessionId),t.turnId&&n.set("turnId",t.turnId),t.limit!==void 0&&n.set("limit",String(t.limit));const a=n.size?`?${n.toString()}`:"";return z(e,`/v1/usage/records${a}`)},usageTurnCache:(e,t)=>z(e,`/v1/usage/turn-cache?sessionId=${encodeURIComponent(t)}`),runtimeEventsPage:(e,t={})=>{const n=new URLSearchParams;t.sessionId&&n.set("sessionId",t.sessionId),t.afterSequence!==void 0&&n.set("afterSequence",String(t.afterSequence)),t.beforeSequence!==void 0&&t.beforeSequence!==null&&n.set("beforeSequence",String(t.beforeSequence)),t.limit!==void 0&&n.set("limit",String(t.limit));const a=n.size?`?${n.toString()}`:"";return z(e,`/v1/events/page${a}`)},workOutputs:e=>z(e,"/v1/work/outputs"),harnessHistory:e=>z(e,"/v1/harness"),refinerHistory:e=>z(e,"/v1/refiner"),updateRefinerProfile:(e,t)=>z(e,"/v1/refiner/update",{method:"POST",body:JSON.stringify(t)}),activateRefinerRelease:(e,t)=>z(e,"/v1/refiner/activate",{method:"POST",body:JSON.stringify(t)}),rollbackRefinerRelease:(e,t)=>z(e,"/v1/refiner/rollback",{method:"POST",body:JSON.stringify(t)}),updateHarnessBackgroundReview:(e,t)=>z(e,"/v1/harness/background-review",{method:"POST",body:JSON.stringify(t)}),reviewHarnessEvaluation:(e,t)=>z(e,"/v1/harness/evaluation-review",{method:"POST",body:JSON.stringify(t)}),updateHarnessEvaluationReviewSchedule:(e,t)=>z(e,"/v1/harness/evaluation-review/settings",{method:"POST",body:JSON.stringify(t)}),harnessReleaseDiff:(e,t)=>z(e,"/v1/harness/diff",{method:"POST",body:JSON.stringify(t)}),rollbackHarness:(e,t)=>z(e,"/v1/harness/rollback",{method:"POST",body:JSON.stringify(t)}),reviewHarnessProposal:(e,t)=>z(e,"/v1/harness/review",{method:"POST",body:JSON.stringify(t)}),runSubagentLifecycleAction:(e,t,n)=>z(e,`/v1/subagents/${encodeURIComponent(t)}/lifecycle`,{method:"POST",body:JSON.stringify(n)}),trainingState:(e,t)=>z(e,`/v1/training?profileId=${encodeURIComponent(t)}`),trainingActivity:(e,t)=>z(e,`/v1/training/activity?profileId=${encodeURIComponent(t)}`),portableTrainingCatalog:(e,t="",n)=>{const a=new URLSearchParams;return t.trim()&&a.set("query",t.trim()),n&&a.set("method",n),z(e,`/v1/training/catalog${a.size?`?${a.toString()}`:""}`)},datasetCatalog:(e,t)=>z(e,`/v1/training/datasets?profileId=${encodeURIComponent(t)}`),trainingRunDetail:(e,t,n={})=>z(e,`/v1/training/jobs/${encodeURIComponent(t)}/detail?evaluation=${n.includeEvaluation===!1?"false":"true"}`),candidateReview:(e,t,n=!1,a="models")=>z(e,`/v1/training/${a}/${encodeURIComponent(t)}/candidate-decision?refresh=${n}`),recordCandidateReview:(e,t,n,a="models")=>z(e,`/v1/training/${a}/${encodeURIComponent(t)}/candidate-decision`,{method:"POST",body:JSON.stringify(n)}),candidateReviewHistory:(e,t,n,a="models")=>z(e,`/v1/training/${a}/${encodeURIComponent(t)}/candidate-decision-history?decisionId=${encodeURIComponent(n.id)}&decisionHash=${n.contentHash}`),trainingEvaluationTasks:async(e,t,n,a)=>{const o=new URLSearchParams({limit:"25"});return a&&o.set("cursor",a),z(e,`/v1/training/jobs/${encodeURIComponent(t)}/evaluations/${encodeURIComponent(n.id)}/tasks?${o}`)},trainingRequest:(e,t,n,a="POST")=>z(e,`/v1/training${t}`,{method:a,body:a==="GET"||a==="DELETE"?void 0:JSON.stringify(n)}),datasetStorageState:e=>z(e,"/v1/settings/dataset-storage"),updateDatasetStorage:(e,t)=>z(e,"/v1/settings/dataset-storage",{method:"PATCH",body:JSON.stringify({datasetStorePath:t})}),hostedSavedWork:e=>z(e,"/v1/saved-work"),createHostedSavedWork:(e,t)=>z(e,"/v1/saved-work",{method:"POST",body:JSON.stringify(t)}),updateHostedSavedWork:(e,t,n)=>z(e,`/v1/saved-work/schedules/${encodeURIComponent(t)}`,{method:"PATCH",body:JSON.stringify(n)}),deleteHostedSavedWork:(e,t)=>z(e,`/v1/saved-work/schedules/${encodeURIComponent(t)}`,{method:"DELETE"}),runHostedSavedWork:(e,t,n)=>z(e,`/v1/saved-work/schedules/${encodeURIComponent(t)}/run`,{method:"POST",body:JSON.stringify({clientRequestId:n})}),chatWorkflows:(e,t)=>{const n=t?`?sessionId=${encodeURIComponent(t)}`:"";return z(e,`/v1/chat-workflows${n}`)},createChatWorkflow:(e,t)=>z(e,"/v1/chat-workflows",{method:"POST",body:JSON.stringify(t)}),updateChatWorkflow:(e,t,n)=>z(e,`/v1/chat-workflows/${encodeURIComponent(t)}`,{method:"PATCH",body:JSON.stringify(n)}),deleteChatWorkflow:(e,t)=>z(e,`/v1/chat-workflows/${encodeURIComponent(t)}`,{method:"DELETE"}),runChatWorkflow:(e,t)=>z(e,`/v1/chat-workflows/${encodeURIComponent(t)}/run`,{method:"POST",body:JSON.stringify({})}),localAgentSchedules:(e,t={})=>{const n=new URLSearchParams;t.localProjectId&&n.set("localProjectId",t.localProjectId);const a=n.size?`?${n.toString()}`:"";return z(e,`/v1/local-agent-schedules${a}`)},syncLocalAgentSchedules:e=>z(e,"/v1/local-agent-schedules/sync",{method:"POST",body:JSON.stringify({})}),patchLocalAgentSchedule:(e,t,n)=>z(e,`/v1/local-agent-schedules/${encodeURIComponent(t)}`,{method:"PATCH",body:JSON.stringify(n)}),runLocalAgentSchedule:(e,t,n={})=>z(e,`/v1/local-agent-schedules/${encodeURIComponent(t)}/run`,{method:"POST",body:JSON.stringify(n)}),localAgentScheduleRuns:(e,t,n={})=>{const a=new URLSearchParams;n.limit!==void 0&&a.set("limit",String(n.limit));const o=a.size?`?${a.toString()}`:"";return z(e,`/v1/local-agent-schedules/${encodeURIComponent(t)}/runs${o}`)},refreshOpenPondAccounts:e=>z(e,"/v1/openpond/accounts/refresh",{method:"POST",body:JSON.stringify({})}),refreshOpenPondAccount:e=>z(e,"/v1/openpond/account?refresh=1"),loadMoreOpenPondApps:(e,t)=>z(e,`/v1/openpond/apps/more?offset=${encodeURIComponent(String(t.offset))}&limit=${encodeURIComponent(String(t.limit))}`),switchOpenPondAccount:(e,t)=>z(e,"/v1/openpond/accounts/switch",{method:"POST",body:JSON.stringify(t)}),removeOpenPondAccount:(e,t)=>z(e,"/v1/openpond/accounts",{method:"DELETE",body:JSON.stringify(t)}),signOutOpenPondAccount:e=>z(e,"/v1/openpond/accounts/logout",{method:"POST",body:JSON.stringify({})}),saveOpenPondAccount:(e,t)=>z(e,"/v1/openpond/accounts/login",{method:"POST",body:JSON.stringify(t)}),updateOpenPondAccountConfig:(e,t)=>z(e,"/v1/openpond/accounts/config",{method:"PATCH",body:JSON.stringify(t)}),savePreferences:(e,t)=>z(e,"/v1/preferences",{method:"PATCH",body:JSON.stringify(t)}),saveProviderSettings:(e,t)=>z(e,"/v1/providers",{method:"PATCH",body:JSON.stringify(t)}),providerSettings:e=>z(e,"/v1/providers"),loadProviderModels:(e,t,n={})=>{const a=new URLSearchParams;n.query?.trim()&&a.set("query",n.query.trim()),n.limit&&a.set("limit",String(n.limit));const o=a.size?`?${a.toString()}`:"";return z(e,`/v1/providers/${encodeURIComponent(t)}/models${o}`)},refreshProviderModels:(e,t,n)=>z(e,`/v1/providers/${encodeURIComponent(t)}/models`,{method:"POST",body:JSON.stringify(n)}),saveProviderCredential:(e,t,n)=>z(e,`/v1/providers/${encodeURIComponent(t)}/credential`,{method:"PUT",body:JSON.stringify(n)}),deleteProviderCredential:(e,t,n)=>z(e,`/v1/providers/${encodeURIComponent(t)}/credential`,{method:"DELETE",body:JSON.stringify(n)}),startOpenAiSubscriptionAuth:(e,t)=>z(e,"/v1/providers/openai/subscription-auth",{method:"POST",body:JSON.stringify(t)}),validateProviderCredential:(e,t,n)=>z(e,`/v1/providers/${encodeURIComponent(t)}/validate`,{method:"POST",body:JSON.stringify(n)}),savePersonalization:(e,t)=>z(e,"/v1/personalization",{method:"PATCH",body:JSON.stringify(t)}),recordClientDiagnostic:(e,t)=>z(e,"/v1/diagnostics/client",{method:"POST",body:JSON.stringify(t)}),profileCurrent:e=>z(e,"/v1/profile"),profileCatalog:e=>z(e,"/v1/profile/catalog"),profileWorkflows:e=>z(e,"/v1/profile/workflows"),profileEvaluations:e=>z(e,"/v1/profile/evaluations"),profileEvaluationDiscovery:(e,t,n)=>z(e,"/v1/profile/evaluations/discover",{method:"POST",body:JSON.stringify({profileRef:t}),signal:n}),profileEvaluationPrepare:(e,t)=>z(e,"/v1/profile/evaluations/prepare",{method:"POST",body:JSON.stringify(t)}),profileEvaluationRun:(e,t)=>z(e,"/v1/profile/evaluations/run",{method:"POST",body:JSON.stringify(t)}),profileEvaluationRunSuite:(e,t)=>z(e,"/v1/profile/evaluations/run-suite",{method:"POST",body:JSON.stringify(t)}),profileEvaluationCompare:(e,t)=>z(e,"/v1/profile/evaluations/compare",{method:"POST",body:JSON.stringify({id:`comparison-${crypto.randomUUID()}`,runIds:t})}),profileEvaluationSaveReport:(e,t,n)=>z(e,"/v1/profile/evaluations/reports",{method:"POST",body:JSON.stringify({id:`report-${crypto.randomUUID()}`,evidenceKind:t,evidenceId:n})}),profileSelect:(e,t)=>z(e,"/v1/profile/select",{method:"POST",body:JSON.stringify({ref:t})}),profileRemove:(e,t)=>z(e,"/v1/profile/remove",{method:"POST",body:JSON.stringify({ref:t})}),profilePublicationPreview:(e,t)=>z(e,"/v1/profile/publication/preview",{method:"POST",body:JSON.stringify(t)}),profilePublicationPublish:(e,t)=>z(e,"/v1/profile/publication/publish",{method:"POST",body:JSON.stringify(t)}),profileInstall:(e,t)=>z(e,"/v1/profile/install",{method:"POST",body:JSON.stringify(t)}),profileUpdate:(e,t)=>z(e,"/v1/profile/update",{method:"POST",body:JSON.stringify({ref:t})}),profileInit:(e,t)=>z(e,"/v1/profile/init",{method:"POST",body:JSON.stringify(t)}),profileLoad:(e,t)=>z(e,"/v1/profile/load",{method:"POST",body:JSON.stringify(t)}),profileCheck:(e,t)=>z(e,"/v1/profile/check",{method:"POST",body:JSON.stringify(t)}),profileAgentRename:(e,t,n)=>z(e,`/v1/profile/agents/${encodeURIComponent(t)}/name`,{method:"PATCH",body:JSON.stringify(n)}),profileCommit:(e,t)=>z(e,"/v1/profile/commit",{method:"POST",body:JSON.stringify(t)}),profilePush:(e,t)=>z(e,"/v1/profile/push",{method:"POST",body:JSON.stringify(t)}),workspaceLspSettingsStatus:e=>z(e,"/v1/lsp/settings-status"),workspaceLspRuntimeStatus:e=>z(e,"/v1/lsp/status"),restartWorkspaceLsp:e=>z(e,"/v1/lsp/restart",{method:"POST"}),remoteAccess:e=>z(e,"/v1/remote-access"),enableRemoteAccess:e=>z(e,"/v1/remote-access/enable",{method:"POST"}),disableRemoteAccess:e=>z(e,"/v1/remote-access/disable",{method:"POST"}),voiceTranscriptionStatus:(e,t={})=>z(e,"/v1/audio/transcriptions/status",{signal:t.signal}),transcribeVoice:(e,t,n={})=>z(e,"/v1/audio/transcriptions",{method:"POST",body:JSON.stringify(t),signal:n.signal}),createSession:(e,t)=>z(e,"/v1/sessions",{method:"POST",body:JSON.stringify(t)}),patchSession:(e,t,n)=>z(e,`/v1/sessions/${t}`,{method:"PATCH",body:JSON.stringify(n)}),codexHistoryThread:(e,t,n={})=>{const a=new URLSearchParams;n.limit!==void 0&&a.set("limit",String(n.limit)),n.tail&&a.set("tail","1");const o=a.size?`?${a.toString()}`:"";return z(e,`/v1/codex-history/${encodeURIComponent(t)}${o}`)},codexHistoryThreadIncremental:(e,t,n={})=>{const a=new URLSearchParams({incremental:"1"});return n.afterEventId&&a.set("afterEventId",n.afterEventId),n.limit!==void 0&&a.set("limit",String(n.limit)),n.revision&&a.set("revision",n.revision),n.tail&&a.set("tail","1"),z(e,`/v1/codex-history/${encodeURIComponent(t)}?${a.toString()}`)},sendCodexHistoryTurn:(e,t,n)=>z(e,`/v1/codex-history/${encodeURIComponent(t)}/turns`,{method:"POST",body:JSON.stringify(n)}),interruptCodexHistoryTurn:(e,t)=>z(e,`/v1/codex-history/${encodeURIComponent(t)}/turns/interrupt`,{method:"POST"}),patchSidebarAppPreference:(e,t,n)=>z(e,`/v1/sidebar/apps/${encodeURIComponent(t)}`,{method:"PATCH",body:JSON.stringify(n)}),reorderSidebarApps:(e,t)=>z(e,"/v1/sidebar/apps/reorder",{method:"POST",body:JSON.stringify(t)}),sidebarFiles:e=>z(e,"/v1/sidebar/files"),patchSidebarFile:(e,t)=>z(e,"/v1/sidebar/files",{method:"PATCH",body:JSON.stringify(t)}),workspaceStatus:(e,t,n=!1,a={})=>z(e,`/v1/workspaces/${encodeURIComponent(t)}${n?"?ensure=1":""}`,{signal:a.signal}),createWorkspaceBranch:(e,t,n)=>z(e,`/v1/workspaces/${encodeURIComponent(t)}/branches`,{method:"POST",body:JSON.stringify(n)}),checkoutWorkspaceBranch:(e,t,n)=>z(e,`/v1/workspaces/${encodeURIComponent(t)}/branch`,{method:"PATCH",body:JSON.stringify(n)}),workspaceDiff:(e,t,n={})=>z(e,`/v1/workspaces/${encodeURIComponent(t)}/diff`,{signal:n.signal}),workspaceFile:(e,t,n)=>z(e,`/v1/workspaces/${encodeURIComponent(t)}/file?path=${encodeURIComponent(n)}`),saveWorkspaceFile:(e,t,n)=>z(e,`/v1/workspaces/${encodeURIComponent(t)}/file`,{method:"PATCH",body:JSON.stringify(n)}),signWorkspaceImageUrl:(e,t)=>z(e,"/v1/assets/workspace-image-url",{method:"POST",body:JSON.stringify(t)}),signLocalImageUrl:(e,t)=>z(e,"/v1/assets/local-image-url",{method:"POST",body:JSON.stringify(t)}),signLocalVideoUrl:(e,t)=>z(e,"/v1/assets/local-video-url",{method:"POST",body:JSON.stringify(t)}),signChatAttachmentImageUrl:(e,t)=>z(e,"/v1/assets/chat-attachment-image-url",{method:"POST",body:JSON.stringify(t)}),chatAttachmentFile:(e,t)=>z(e,"/v1/assets/chat-attachment-file",{method:"POST",body:JSON.stringify(t)}),workspaceLspTouch:(e,t,n,a={})=>z(e,`/v1/workspaces/${encodeURIComponent(t)}/lsp/touch`,{method:"POST",body:JSON.stringify(n),signal:a.signal}),workspaceLspAction:(e,t,n)=>z(e,`/v1/workspaces/${encodeURIComponent(t)}/lsp/action`,{method:"POST",body:JSON.stringify(n)}),workspaceTemplateConfig:(e,t)=>z(e,`/v1/openpond/apps/${encodeURIComponent(t)}/template-config`),...BK,...YK,createLocalProject:(e,t)=>z(e,"/v1/projects",{method:"POST",body:JSON.stringify(t)}),updateLocalProjectAgentSetup:(e,t,n)=>z(e,`/v1/projects/${encodeURIComponent(t)}`,{method:"PATCH",body:JSON.stringify(n)}),uploadLocalProjectCloudSource:(e,t,n)=>z(e,`/v1/projects/${encodeURIComponent(t)}/cloud-source`,{method:"POST",body:JSON.stringify(n)}),previewLocalProjectCloudSource:(e,t,n={})=>{const a=new URLSearchParams;n.branch?.trim()&&a.set("branch",n.branch.trim());const o=a.toString()?`?${a.toString()}`:"";return z(e,`/v1/projects/${encodeURIComponent(t)}/cloud-source/preview${o}`)},deleteLocalProject:(e,t)=>z(e,`/v1/projects/${encodeURIComponent(t)}`,{method:"DELETE"}),gitAvailability:e=>z(e,"/v1/system/git"),installMacOSCommandLineTools:e=>z(e,"/v1/system/git/install-command-line-tools",{method:"POST",body:JSON.stringify({})}),...FK,resolveApproval:(e,t,n)=>z(e,`/v1/approvals/${t}`,{method:"POST",body:JSON.stringify(n)})};function vx(e){const t=new URLSearchParams;return e.range&&t.set("range",e.range),e.visibility&&t.set("visibility",e.visibility),e.status&&t.set("status",e.status),e.provider&&t.set("provider",e.provider),e.model&&t.set("model",e.model),t}const oW=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase(),rW=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(t,n,a)=>a?a.toUpperCase():n.toLowerCase()),bx=e=>{const t=rW(e);return t.charAt(0).toUpperCase()+t.slice(1)},mP=(...e)=>e.filter((t,n,a)=>!!t&&t.trim()!==""&&a.indexOf(t)===n).join(" ").trim(),sW=e=>{for(const t in e)if(t.startsWith("aria-")||t==="role"||t==="title")return!0};var lW={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};const cW=y.forwardRef(({color:e="currentColor",size:t=24,strokeWidth:n=2,absoluteStrokeWidth:a,className:o="",children:r,iconNode:s,...c},m)=>y.createElement("svg",{ref:m,...lW,width:t,height:t,stroke:e,strokeWidth:a?Number(n)*24/Number(t):n,className:mP("lucide",o),...!r&&!sW(c)&&{"aria-hidden":"true"},...c},[...s.map(([u,f])=>y.createElement(u,f)),...Array.isArray(r)?r:[r]]));const st=(e,t)=>{const n=y.forwardRef(({className:a,...o},r)=>y.createElement(cW,{ref:r,iconNode:t,className:mP(`lucide-${oW(bx(e))}`,`lucide-${e}`,a),...o}));return n.displayName=bx(e),n};const dW=[["path",{d:"M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2",key:"169zse"}]],uW=st("activity",dW);const mW=[["rect",{width:"20",height:"5",x:"2",y:"3",rx:"1",key:"1wp1u1"}],["path",{d:"M4 8v11a2 2 0 0 0 2 2h2",key:"tvwodi"}],["path",{d:"M20 8v11a2 2 0 0 1-2 2h-2",key:"1gkqxj"}],["path",{d:"m9 15 3-3 3 3",key:"1pd0qc"}],["path",{d:"M12 12v9",key:"192myk"}]],pW=st("archive-restore",mW);const fW=[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]],hW=st("arrow-left",fW);const gW=[["path",{d:"m19 21-7-4-7 4V5a2 2 0 0 1 2-2h10a2 2 0 0 1 2 2v16z",key:"1fy3hk"}]],pP=st("bookmark",gW);const vW=[["path",{d:"m19 21-7-4-7 4V5a2 2 0 0 1 2-2h10a2 2 0 0 1 2 2Z",key:"169p4p"}],["path",{d:"m14.5 7.5-5 5",key:"3lb6iw"}],["path",{d:"m9.5 7.5 5 5",key:"ko136h"}]],fP=st("bookmark-x",vW);const bW=[["path",{d:"M12 7v14",key:"1akyts"}],["path",{d:"M16 12h2",key:"7q9ll5"}],["path",{d:"M16 8h2",key:"msurwy"}],["path",{d:"M3 18a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h5a4 4 0 0 1 4 4 4 4 0 0 1 4-4h5a1 1 0 0 1 1 1v13a1 1 0 0 1-1 1h-6a3 3 0 0 0-3 3 3 3 0 0 0-3-3z",key:"ruj8y"}],["path",{d:"M6 12h2",key:"32wvfc"}],["path",{d:"M6 8h2",key:"30oboj"}]],yx=st("book-open-text",bW);const yW=[["path",{d:"M12 8V4H8",key:"hb8ula"}],["rect",{width:"16",height:"12",x:"4",y:"8",rx:"2",key:"enze0r"}],["path",{d:"M2 14h2",key:"vft8re"}],["path",{d:"M20 14h2",key:"4cs60a"}],["path",{d:"M15 13v2",key:"1xurst"}],["path",{d:"M9 13v2",key:"rq6x2g"}]],SW=st("bot",yW);const xW=[["path",{d:"M2.97 12.92A2 2 0 0 0 2 14.63v3.24a2 2 0 0 0 .97 1.71l3 1.8a2 2 0 0 0 2.06 0L12 19v-5.5l-5-3-4.03 2.42Z",key:"lc1i9w"}],["path",{d:"m7 16.5-4.74-2.85",key:"1o9zyk"}],["path",{d:"m7 16.5 5-3",key:"va8pkn"}],["path",{d:"M7 16.5v5.17",key:"jnp8gn"}],["path",{d:"M12 13.5V19l3.97 2.38a2 2 0 0 0 2.06 0l3-1.8a2 2 0 0 0 .97-1.71v-3.24a2 2 0 0 0-.97-1.71L17 10.5l-5 3Z",key:"8zsnat"}],["path",{d:"m17 16.5-5-3",key:"8arw3v"}],["path",{d:"m17 16.5 4.74-2.85",key:"8rfmw"}],["path",{d:"M17 16.5v5.17",key:"k6z78m"}],["path",{d:"M7.97 4.42A2 2 0 0 0 7 6.13v4.37l5 3 5-3V6.13a2 2 0 0 0-.97-1.71l-3-1.8a2 2 0 0 0-2.06 0l-3 1.8Z",key:"1xygjf"}],["path",{d:"M12 8 7.26 5.15",key:"1vbdud"}],["path",{d:"m12 8 4.74-2.85",key:"3rx089"}],["path",{d:"M12 13.5V8",key:"1io7kd"}]],ru=st("boxes",xW);const kW=[["path",{d:"M16 14v2.2l1.6 1",key:"fo4ql5"}],["path",{d:"M16 2v4",key:"4m81vk"}],["path",{d:"M21 7.5V6a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h3.5",key:"1osxxc"}],["path",{d:"M3 10h5",key:"r794hk"}],["path",{d:"M8 2v4",key:"1cmpym"}],["circle",{cx:"16",cy:"16",r:"6",key:"qoo3c4"}]],hP=st("calendar-clock",kW);const wW=[["path",{d:"M11 13H7",key:"t0o9gq"}],["path",{d:"M19 9h-4",key:"rera1j"}],["path",{d:"M3 3v16a2 2 0 0 0 2 2h16",key:"c24i48"}],["rect",{x:"15",y:"5",width:"4",height:"12",rx:"1",key:"q8uenq"}],["rect",{x:"7",y:"8",width:"4",height:"9",rx:"1",key:"sr5ea"}]],gP=st("chart-column-stacked",wW);const IW=[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]],Pi=st("check",IW);const _W=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]],Eu=st("circle-check",_W);const CW=[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]],Go=st("chevron-down",CW);const RW=[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]],Jo=st("chevron-right",RW);const PW=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12",key:"1pkeuh"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16",key:"4dfq90"}]],mm=st("circle-alert",PW);const AW=[["path",{d:"M17.5 19H9a7 7 0 1 1 6.71-9h1.79a4.5 4.5 0 1 1 0 9Z",key:"p7xjir"}]],up=st("cloud",AW);const TW=[["rect",{width:"20",height:"14",x:"2",y:"5",rx:"2",key:"ynyp8z"}],["line",{x1:"2",x2:"22",y1:"10",y2:"10",key:"1b3vmo"}]],EW=st("credit-card",TW);const jW=[["path",{d:"M12 15V3",key:"m9g1x1"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["path",{d:"m7 10 5 5 5-5",key:"brsn70"}]],MW=st("download",jW);const OW=[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"M10 14 21 3",key:"gplh6r"}],["path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6",key:"a6xqqp"}]],Ih=st("external-link",OW);const $W=[["path",{d:"M4.226 20.925A2 2 0 0 0 6 22h12a2 2 0 0 0 2-2V8a2.4 2.4 0 0 0-.706-1.706l-3.588-3.588A2.4 2.4 0 0 0 14 2H6a2 2 0 0 0-2 2v3.127",key:"wfxp4w"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"m5 11-3 3",key:"1dgrs4"}],["path",{d:"m5 17-3-3h10",key:"1mvvaf"}]],vP=st("file-output",$W);const NW=[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M10 9H8",key:"b1mrlr"}],["path",{d:"M16 13H8",key:"t4e002"}],["path",{d:"M16 17H8",key:"z1uh3a"}]],sy=st("file-text",NW);const DW=[["path",{d:"M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z",key:"1kt360"}]],bP=st("folder",DW);const HW=[["path",{d:"M18 19a5 5 0 0 1-5-5v8",key:"sz5oeg"}],["path",{d:"M9 20H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H20a2 2 0 0 1 2 2v5",key:"1w6njk"}],["circle",{cx:"13",cy:"12",r:"2",key:"1j92g6"}],["circle",{cx:"20",cy:"19",r:"2",key:"1obnsp"}]],ly=st("folder-git-2",HW);const LW=[["line",{x1:"6",x2:"6",y1:"3",y2:"15",key:"17qcm7"}],["circle",{cx:"18",cy:"6",r:"3",key:"1h7g24"}],["circle",{cx:"6",cy:"18",r:"3",key:"fqmcym"}],["path",{d:"M18 9a9 9 0 0 1-9 9",key:"n2h4wq"}]],qW=st("git-branch",LW);const UW=[["path",{d:"M15 22v-4a4.8 4.8 0 0 0-1-3.5c3 0 6-2 6-5.5.08-1.25-.27-2.48-1-3.5.28-1.15.28-2.35 0-3.5 0 0-1 0-3 1.5-2.64-.5-5.36-.5-8 0C6 2 5 2 5 2c-.3 1.15-.3 2.35 0 3.5A5.403 5.403 0 0 0 4 9c0 3.5 3 5.5 6 5.5-.39.49-.68 1.05-.85 1.65-.17.6-.22 1.23-.15 1.85v4",key:"tonef"}],["path",{d:"M9 18c-4.51 2-5-2-7-2",key:"9comsn"}]],zW=st("github",UW);const BW=[["path",{d:"M21.54 15H17a2 2 0 0 0-2 2v4.54",key:"1djwo0"}],["path",{d:"M7 3.34V5a3 3 0 0 0 3 3a2 2 0 0 1 2 2c0 1.1.9 2 2 2a2 2 0 0 0 2-2c0-1.1.9-2 2-2h3.17",key:"1tzkfa"}],["path",{d:"M11 21.95V18a2 2 0 0 0-2-2a2 2 0 0 1-2-2v-1a2 2 0 0 0-2-2H2.05",key:"14pb5j"}],["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]],yP=st("earth",BW);const FW=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3",key:"1u773s"}],["path",{d:"M12 17h.01",key:"p32p05"}]],VW=st("circle-question-mark",FW);const KW=[["path",{d:"M2 5h20",key:"1fs1ex"}],["path",{d:"M6 12h12",key:"8npq4p"}],["path",{d:"M9 19h6",key:"456am0"}]],WW=st("list-filter",KW);const GW=[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]],cy=st("loader-circle",GW);const JW=[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"m21 3-7 7",key:"1l2asr"}],["path",{d:"m3 21 7-7",key:"tjx5ai"}],["path",{d:"M9 21H3v-6",key:"wtvkvv"}]],ZW=st("maximize-2",JW);const YW=[["path",{d:"M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z",key:"18887p"}]],mp=st("message-square",YW);const QW=[["circle",{cx:"12",cy:"12",r:"1",key:"41hilf"}],["circle",{cx:"19",cy:"12",r:"1",key:"1wjl8i"}],["circle",{cx:"5",cy:"12",r:"1",key:"1pcz8c"}]],yd=st("ellipsis",QW);const XW=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M9 3v18",key:"fh3hqa"}]],SP=st("panel-left",XW);const e8=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M15 3v18",key:"14nvp0"}]],$g=st("panel-right",e8);const t8=[["path",{d:"M12 17v5",key:"bb1du9"}],["path",{d:"M9 10.76a2 2 0 0 1-1.11 1.79l-1.78.9A2 2 0 0 0 5 15.24V16a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-.76a2 2 0 0 0-1.11-1.79l-1.78-.9A2 2 0 0 1 15 10.76V7a1 1 0 0 1 1-1 2 2 0 0 0 0-4H8a2 2 0 0 0 0 4 1 1 0 0 1 1 1z",key:"1nkz8b"}]],dy=st("pin",t8);const n8=[["path",{d:"M12 17v5",key:"bb1du9"}],["path",{d:"M15 9.34V7a1 1 0 0 1 1-1 2 2 0 0 0 0-4H7.89",key:"znwnzq"}],["path",{d:"m2 2 20 20",key:"1ooewy"}],["path",{d:"M9 9v1.76a2 2 0 0 1-1.11 1.79l-1.78.9A2 2 0 0 0 5 15.24V16a1 1 0 0 0 1 1h11",key:"c9qhm2"}]],uy=st("pin-off",n8);const a8=[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]],i8=st("plus",a8);const o8=[["path",{d:"M12 2v10",key:"mnfbl"}],["path",{d:"M18.4 6.6a9 9 0 1 1-12.77.04",key:"obofu9"}]],r8=st("power",o8);const s8=[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]],xP=st("refresh-cw",s8);const l8=[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}]],c8=st("rotate-ccw",l8);const d8=[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]],u8=st("search",d8);const m8=[["path",{d:"M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915",key:"1i5ecw"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]],kP=st("settings",m8);const p8=[["path",{d:"M8.3 10a.7.7 0 0 1-.626-1.079L11.4 3a.7.7 0 0 1 1.198-.043L16.3 8.9a.7.7 0 0 1-.572 1.1Z",key:"1bo67w"}],["rect",{x:"3",y:"14",width:"7",height:"7",rx:"1",key:"1bkyp8"}],["circle",{cx:"17.5",cy:"17.5",r:"3.5",key:"w3z12y"}]],my=st("shapes",p8);const f8=[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}]],Ng=st("shield",f8);const h8=[["path",{d:"M12 3H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7",key:"1m0v6g"}],["path",{d:"M18.375 2.625a1 1 0 0 1 3 3l-9.013 9.014a2 2 0 0 1-.853.505l-2.873.84a.5.5 0 0 1-.62-.62l.84-2.873a2 2 0 0 1 .506-.852z",key:"ohrbg2"}]],pp=st("square-pen",h8);const g8=[["path",{d:"m7 11 2-2-2-2",key:"1lz0vl"}],["path",{d:"M11 13h4",key:"1p7l4v"}],["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",ry:"2",key:"1m3agn"}]],wP=st("square-terminal",g8);const v8=[["circle",{cx:"12",cy:"8",r:"5",key:"1hypcn"}],["path",{d:"M20 21a8 8 0 0 0-16 0",key:"rfgkzh"}]],Sx=st("user-round",v8);const b8=[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]],Sd=st("x",b8);const y8=[["polyline",{points:"22 12 16 12 14 15 10 15 8 12 2 12",key:"o97t9d"}],["path",{d:"M5.45 5.11 2 12v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6l-3.45-6.89A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z",key:"oot6mr"}]],py=st("inbox",y8);const S8=[["path",{d:"M3 5h.01",key:"18ugdj"}],["path",{d:"M3 12h.01",key:"nlz23k"}],["path",{d:"M3 19h.01",key:"noohij"}],["path",{d:"M8 5h13",key:"1pao27"}],["path",{d:"M8 12h13",key:"1za7za"}],["path",{d:"M8 19h13",key:"m83p4d"}]],x8=st("list",S8);const k8=[["path",{d:"M12 19h8",key:"baeox8"}],["path",{d:"m4 17 6-6-6-6",key:"1yngyt"}]],w8=st("terminal",k8);function I8({platform:e}){return!fy()||IP(e)?null:S.jsxs("div",{className:"window-controls","aria-label":"Window controls",children:[S.jsx("button",{type:"button",className:"window-control minimize",title:"Minimize",onClick:()=>{_h("minimize")},children:S.jsx(Go,{size:14})}),S.jsx("button",{type:"button",className:"window-control maximize",title:"Maximize",onClick:()=>{_h("toggleMaximize")},children:S.jsx(ZW,{size:12})}),S.jsx("button",{type:"button",className:"window-control close",title:"Close",onClick:()=>{_h("close")},children:S.jsx(Sd,{size:13})})]})}function IP(e){const t=e?.toLowerCase()??"";return t==="darwin"||t.includes("mac")}function fy(){if(typeof window>"u")return!1;const e=window.openpond;return!!(e?.minimizeWindow||e?.toggleMaximizeWindow||e?.closeWindow)}async function _h(e){const t=window.openpond;if(!(t&&(e==="minimize"?await t.minimizeWindow?.():e==="toggleMaximize"?await t.toggleMaximizeWindow?.():await t.closeWindow?.())!==!1)){if(e==="toggleMaximize"&&document.fullscreenEnabled){document.fullscreenElement?await document.exitFullscreen():await document.documentElement.requestFullscreen();return}if(e==="close"){window.close();return}console.warn("Window controls require the Electron desktop shell.")}}const _8=[["path",{d:"M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8",key:"5wwlr5"}],["path",{d:"M3 10a2 2 0 0 1 .709-1.528l7-6a2 2 0 0 1 2.582 0l7 6A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z",key:"r6nss1"}]],_P=st("house",_8);function C8({value:e,options:t,disabled:n,compact:a,className:o,icon:r,placement:s="bottom",label:c,tooltip:m,searchable:u=!1,floating:f=!1,onChange:h}){const[x,k]=y.useState(!1),[_,P]=y.useState(""),E=y.useRef(null),[A,$]=y.useState();y.useLayoutEffect(()=>{if(!x||!f)return;function R(){const O=E.current?.getBoundingClientRect();if(!O)return;const N=window.innerHeight-O.bottom-12,F=O.top-12,L=N<180&&F>N;$({position:"fixed",left:Math.max(12,O.left),width:Math.min(O.width,window.innerWidth-24),minWidth:0,maxWidth:"calc(100vw - 24px)",right:"auto",top:L?"auto":O.bottom+5,bottom:L?window.innerHeight-O.top+5:"auto",maxHeight:Math.max(80,Math.min(320,L?F-5:N-5)),overflowY:"auto",zIndex:1e3})}return R(),window.addEventListener("resize",R),window.addEventListener("scroll",R,!0),()=>{window.removeEventListener("resize",R),window.removeEventListener("scroll",R,!0)}},[x,f]);const j=t.find(R=>R.value===e)??t[0],M=_.trim().toLowerCase(),w=M?t.filter(R=>[R.label,R.shortLabel,R.description].some(O=>O?.toLowerCase().includes(M))):t;return y.useEffect(()=>{if(!x){P("");return}function R(N){E.current?.contains(N.target)||k(!1)}function O(N){N.key==="Escape"&&k(!1)}return document.addEventListener("pointerdown",R),document.addEventListener("keydown",O),()=>{document.removeEventListener("pointerdown",R),document.removeEventListener("keydown",O)}},[x]),S.jsxs("div",{className:`dropdown-select ${o??""} ${a?"compact":""} ${s==="top"?"open-up":""}`,"data-tooltip":m,ref:E,children:[S.jsxs("button",{type:"button",className:`dropdown-trigger ${x?"active":""}`,disabled:n,"aria-label":c,"aria-haspopup":"menu","aria-expanded":x,onClick:()=>k(R=>!R),children:[r,S.jsx("span",{children:j?.shortLabel??j?.label??e}),S.jsx(Go,{size:14})]}),x&&S.jsxs("div",{className:"dropdown-menu",role:"menu",style:f?A:void 0,children:[u?S.jsxs("label",{className:"dropdown-search",onClick:R=>R.stopPropagation(),children:[S.jsxs("span",{className:"sr-only",children:["Search ",c]}),S.jsx("input",{autoFocus:!0,placeholder:`Search ${c.toLowerCase()}`,value:_,onChange:R=>P(R.target.value)})]}):null,w.map(R=>S.jsxs("button",{type:"button",role:"menuitemradio","aria-checked":R.value===e,disabled:R.disabled,className:[R.value===e?"selected":"",R.separatorBefore?"separator-before":"",R.icon?"with-icon":""].filter(Boolean).join(" "),onClick:()=>{R.disabled||(h(R.value),P(""),k(!1))},children:[S.jsxs("span",{children:[R.icon==="plus"?S.jsx(i8,{size:13}):null,S.jsx("span",{children:R.label})]}),R.description&&S.jsx("small",{children:R.description})]},R.value)),w.length?null:S.jsx("div",{className:"dropdown-empty",children:"No matches"})]})]})}const hoe=[{value:"chat",label:"Chat"},{value:"work",label:"Work"}];function CP(e){return e==="chat"?"New chat":"New task"}const Dg=["get-started","home","inbox","models","datasets","graders","experiments","tasks","tasksets","labeling","rewards","evaluations","runs","versions","serving"],R8={"get-started":"Get started",home:"Home",inbox:"Inbox",models:"Models",datasets:"Datasets",graders:"Graders",experiments:"Experiments",tasks:"Tasks",tasksets:"Tasksets",labeling:"Labeling",rewards:"Rewards",evaluations:"Runs",runs:"Runs",versions:"Versions",serving:"Serving"},P8={tasks:["drafts"],tasksets:["drafts","formats","batches"],rewards:["scorers","combined"],evaluations:["results","review","comparisons"],runs:["series","new"]},A8={datasets:["tasks","experiments","graders","versions"],graders:["overview","checks","usage","versions"],experiments:["overview","cases","compare","configuration"],tasksets:["overview","tasks","reward","attempts","releases"],rewards:["definition","usage","evidence"],evaluations:["overview","comparison","activity"],runs:["details","metrics","evaluation","rollouts","activity","artifacts"],versions:["overview","metrics","evaluation","rollouts","activity","artifacts"]};function Fa(e="models",t=null,n={}){return e==="evaluations"&&n.collection==="review"?Fa("labeling",t,{...n,collection:"default"}):{page:e,modelId:["get-started","home","inbox","datasets","graders","experiments"].includes(e)?null:t,collection:e==="evaluations"?"results":"default",resourceId:null,detailTab:null,query:"",after:null,...n}}function hy(e){const t=e.pathname.split("/").filter(Boolean);if(t[0]!=="models"&&t[0]!=="console")return null;let n;try{n=t.slice(1).map(decodeURIComponent)}catch{return null}if(n.some(re=>!re.trim()||re.length>2e3||re.includes("\0")))return null;const a=n[0]&&!Dg.includes(n[0])?n.shift():null;if(a&&(a.length>500||["projects","scorers"].includes(a)))return null;n[0]==="runs"&&n[1]==="evaluations"&&n.splice(0,2,"evaluations","results"),n[0]==="runs"&&n[1]==="comparisons"&&n.splice(0,2,"evaluations","comparisons");const o=n.shift(),r=o??"models";if(!Dg.includes(r)||o==="models"||a&&r==="get-started")return null;let s=r==="evaluations"?"results":"default";if(P8[r]?.includes(n[0]))s=n.shift();else if(r==="evaluations"&&n.length)return null;if(r==="experiments"&&n[0]==="history")return null;const c=n.shift()??null,m=n.shift()??null;if(n.length||m&&!c||(r==="models"||r==="get-started"||r==="home")&&c)return null;if(s==="drafts"||s==="new"){if(!c||m)return null}else if(s!=="series"){if(["review","formats","batches","comparisons","scorers","combined"].includes(s)){if(m)return null}else if(m&&!A8[r]?.includes(m))return null}if(r==="serving"&&m)return null;const u=new URLSearchParams(e.search??"");if([...u.keys()].some(re=>!["model","q","after","source","project","pass","dataset","revision","hash","sort","location","kind","review_source","review_snapshot","review_boundary","review_revision"].includes(re))||[...u.keys()].some(re=>u.getAll(re).length!==1))return null;const f=["review_source","review_snapshot","review_boundary","review_revision"],h=f.some(re=>u.has(re));if(h&&(r!=="datasets"||c||u.get("location")==="local"||f.some(re=>!u.get(re))||[u.get("review_source"),u.get("review_boundary")].some(re=>!re.trim()||re.length>500||re.includes("\0"))||[u.get("review_snapshot"),u.get("review_revision")].some(re=>!/^[a-f0-9]{64}$/.test(re))))return null;const x=h?{id:u.get("review_source"),snapshotHash:u.get("review_snapshot"),boundaryId:u.get("review_boundary"),boundaryRevisionHash:u.get("review_revision")}:void 0,k=u.get("sort");if(k!==null&&(r!=="datasets"||!["id","name","updated"].includes(k)))return null;const _=u.has("revision")?Number(u.get("revision")):void 0,P=u.get("hash")??void 0,E=["datasets","graders"].includes(r);if((_!==void 0||P!==void 0)&&(!c||!E||!Number.isSafeInteger(_)||_<=0||!/^[a-f0-9]{64}$/.test(P??"")))return null;const A=u.get("source");if(A!==null&&(r!=="labeling"&&(r!=="evaluations"||s!=="review")||!A.trim()||A.length>500)||u.has("dataset")&&(r!=="datasets"||!c||u.get("dataset")!=="release"))return null;const $=["home","inbox","datasets","graders","experiments"].includes(r),j=r==="runs"&&!!(c?.startsWith("hosted-run:")||c?.startsWith("hosted-policy:")),M=u.get("location");if(M!==null&&(!$||!["local","hosted"].includes(M)))return null;const w=u.get("kind");if(w!==null&&(r!=="experiments"||!c||M==="local"||w!=="recorded_evidence")||t[0]==="console"&&!$)return null;const R=u.get("project")==="all"?null:u.get("project"),O=u.get("pass");if([R,O].some(re=>re!==null&&(!re.trim()||re.length>240))||!$&&!j&&(R||O)||r!=="experiments"&&O||($||j)&&a||O&&!c)return null;const N=u.get("model");if($&&N!==null||a&&N&&a!==N)return null;const F=a??N;if(r==="get-started"&&u.size!==0)return null;const L=u.get("q")??"",Y=u.get("after");return F!==null&&(!F.trim()||F.length>500)||L.length>1e3||Y!==null&&(!Y.trim()||Y.length>2e3)?null:Fa(r,F,{...x?{reviewSource:x}:{},collection:s,resourceId:c,detailTab:m,query:L,after:Y,...w?{executionKind:"recorded_evidence"}:{},...M?{executionLocation:M}:{},...k?{sort:k}:{},..._!==void 0?{revision:_,contentHash:P}:{},...u.get("dataset")==="release"?{datasetKind:"release"}:{},...t[0]==="console"?{area:"console"}:{},...$||j?{...u.has("project")?{projectId:R}:{},...u.has("pass")?{passId:O}:{}}:{},...A!==null?{sourceId:A}:{}})}function fp(e){const t=[e.area==="console"?"/console":"/models"];if(e.modelId&&t.push(encodeURIComponent(e.modelId)),e.page==="evaluations"&&e.collection==="review")return fp(Fa("labeling",e.modelId,{collection:"default",resourceId:e.resourceId,sourceId:e.sourceId,query:e.query,after:e.after}));e.page==="evaluations"?t.push("runs",e.collection==="comparisons"?"comparisons":"evaluations"):(e.page!=="models"&&t.push(e.page),e.collection!=="default"&&t.push(e.collection)),e.resourceId&&t.push(encodeURIComponent(e.resourceId)),e.resourceId&&e.detailTab&&t.push(encodeURIComponent(e.detailTab));const n=new URLSearchParams;return e.page==="datasets"&&!e.resourceId&&e.reviewSource&&(n.set("review_source",e.reviewSource.id),n.set("review_snapshot",e.reviewSource.snapshotHash),n.set("review_boundary",e.reviewSource.boundaryId),n.set("review_revision",e.reviewSource.boundaryRevisionHash)),e.executionLocation&&n.set("location",e.executionLocation),e.projectId?n.set("project",e.projectId):e.projectId===null&&["home","inbox","datasets","graders","experiments"].includes(e.page)&&n.set("project","all"),e.page==="datasets"&&e.resourceId&&e.datasetKind==="release"&&n.set("dataset","release"),e.page==="datasets"&&e.sort&&n.set("sort",e.sort),e.revision!==void 0&&e.contentHash&&e.resourceId&&["datasets","graders"].includes(e.page)&&(n.set("revision",String(e.revision)),n.set("hash",e.contentHash)),e.passId&&n.set("pass",e.passId),e.page==="experiments"&&e.resourceId&&e.executionKind&&n.set("kind",e.executionKind),e.query&&n.set("q",e.query),e.after&&n.set("after",e.after),(e.page==="labeling"||e.page==="evaluations"&&e.collection==="review")&&e.sourceId&&n.set("source",e.sourceId),`${t.join("/")}${n.size?`?${n}`:""}`}function T8(e,t){return Fa(e.page,t,{...e.area?{area:e.area}:{},...["home","inbox","datasets","graders","experiments"].includes(e.page)&&e.projectId!==void 0?{projectId:e.projectId}:{},collection:e.collection==="new"||e.collection==="drafts"?"default":e.collection})}function goe(e,t,n=null){return{...e,resourceId:t,detailTab:n,after:null,...t!==e.resourceId?{revision:void 0,contentHash:void 0}:{}}}const pm=new Set,Hg=new Set,E8=new Set(["account","notifications","harness","harness-refiner","harness-continuous-review","harness-contents","harness-releases","profile","skills","configuration","context","training","subagents","editor","providers","dataset-storage","remote","usage","personalization","diagnostics"]),Lg={apps:"/apps",outputs:"/outputs",projects:"/projects",scheduled:"/workflows","get-started":"/get-started",team:"/team",community:"/community"};let qg=!1,Ug="",ju=null,RP=null,Lc="",ri=0,Kl=null,hc=!1,Ch=null,Mu=!1;function gy(e){const t=hy(e);if(t)return{kind:"models",route:t};const n=e.pathname.split("/").filter(Boolean);if(n[0]==="models"||n[0]==="console")return{kind:"models_unavailable",pathname:e.pathname,search:e.search??""};if(n[0]==="settings"&&n.length===2&&E8.has(n[1])){const o=vy(new URLSearchParams(e.search??"").get("returnTo"));return{kind:"settings",section:n[1],...o?{returnTo:o}:{}}}if(n[0]==="chat"&&n.length<=2)try{return{kind:"chat",sessionId:n[1]&&n[1]!=="new"?decodeURIComponent(n[1]):null}}catch{return null}const a=Object.keys(Lg).find(o=>Lg[o]===e.pathname);return a?{kind:"view",view:a}:null}function PP(e){if(e.kind==="models")return fp(e.route);if(e.kind==="models_unavailable")return`${e.pathname}${e.search}`;if(e.kind==="settings"){const t=vy(e.returnTo??null);return`/settings/${e.section}${t?`?${new URLSearchParams({returnTo:t})}`:""}`}return e.kind==="chat"?e.sessionId?`/chat/${encodeURIComponent(e.sessionId)}`:"/chat/new":Lg[e.view]}function j8(e){const t=e?.kind==="settings"?vy(e.returnTo??null):null;if(t){const n=new URL(t,"https://local.openpond.invalid"),a=hy(n);if(a)return{kind:"models",route:a}}return{kind:"chat",sessionId:null}}function vy(e){if(!e||e.length>6e3||!["/models","/console"].some(a=>e.startsWith(a))||e.startsWith("//"))return null;const t=new URL(e,"https://local.openpond.invalid");if(t.origin!=="https://local.openpond.invalid"||t.hash)return null;const n=hy(t);return n?fp(n):null}function xd(){return`${window.location.pathname}${window.location.search}`}function by(){if(typeof window>"u")return;const e=qg?Lc:xd();e!==Ug&&(Ug=e,ju=gy(new URL(e,window.location.origin)),RP=ju?.kind==="models"?ju.route:null)}function AP(){Ug="",by();for(const e of Hg)e()}async function yy(e){if(Mu)return!1;Mu=!0;try{for(const t of[...pm].reverse())if(!await t(e))return!1;return!0}finally{Mu=!1}}function Sy(e){return{...window.history.state,openpondNavigationIndex:e}}async function M8(){const e=xd(),t=typeof window.history.state?.openpondNavigationIndex=="number"?window.history.state.openpondNavigationIndex:ri-1;if(Kl&&t===ri){const a=Kl;Kl=null,a();return}if(Ch===t||pm.size===0){Ch=null,Lc=e,ri=t,window.history.replaceState(Sy(ri),"",e),AP();return}if(t===ri)return;if(hc||Mu){Kl??=()=>{},window.history.go(ri-t);return}hc=!0;const n=t-ri;try{await new Promise(a=>{Kl=a,window.history.go(-n)}),await yy(e)&&(Ch=t,window.history.go(n))}finally{hc=!1}}function xy(){if(qg||typeof window>"u")return;const e=gy(window.location);Lc=e?PP(e):xd(),ri=typeof window.history.state?.openpondNavigationIndex=="number"?window.history.state.openpondNavigationIndex:0,window.history.replaceState(Sy(ri),"",Lc),window.addEventListener("popstate",M8),qg=!0}function TP(e){return Hg.add(e),xy(),()=>{Hg.delete(e)}}function voe(e){return pm.add(e),xy(),()=>{pm.delete(e)}}async function boe(e){!hc&&await yy(xd())&&e()}function O8(){return y.useSyncExternalStore(TP,()=>(by(),RP),()=>null)}function $8(){return y.useSyncExternalStore(TP,()=>(by(),ju),()=>null)}async function Ft(e,t="push"){if(typeof window>"u"||(xy(),hc))return!1;if(e.kind==="settings"&&!e.returnTo){const a=gy(window.location),o=a?.kind==="models"?fp(a.route):a?.kind==="settings"?a.returnTo:void 0;o&&(e={...e,returnTo:o})}const n=PP(e);return xd()===n?!0:await yy(n)?(t==="push"&&ri++,window.history[t==="replace"?"replaceState":"pushState"](Sy(ri),"",n),Lc=n,AP(),!0):!1}function Ar(e,t="push"){return Ft({kind:"models",route:e},t)}function N8({experience:e="work",beginNewChat:t}){return S.jsx("div",{className:"sidebar-new-task",children:S.jsxs("button",{className:"sidebar-row sidebar-task-row sidebar-new-task-entry",type:"button",onClick:async()=>{await Ft({kind:"chat",sessionId:null})&&t(null)},children:[S.jsx("span",{className:"conversation-source-icon","aria-hidden":"true",children:S.jsx(pp,{size:18})}),S.jsx("span",{children:CP(e)})]})})}function D8({productArea:e="chat",setSectionMenuOpen:t,setSelectedAppId:n,setSelectedProjectId:a,setSelectedSessionId:o,setView:r,view:s,modelProjects:c=[],modelTrainingActivityByProjectId:m={}}){const u=O8(),f=u?.modelId??null,h=u?.page??"models";function x(){n(null),a(null),o(null),t(null)}async function k(A){await Ar(Fa(A,["home","inbox","datasets","graders","experiments"].includes(A)?null:f,{...e==="console"?{area:"console"}:{},...u?.projectId!==void 0?{projectId:u.projectId}:{}}))&&(x(),r("labs"))}async function _(A){await Ar(T8(u??Fa(),A||null))&&(x(),r("labs"))}async function P(A){await Ft({kind:"view",view:A})&&(x(),r(A))}const E=f?m[f]??null:null;return S.jsxs("nav",{className:"sidebar-nav","aria-label":"Primary",children:[e!=="chat"?S.jsxs(S.Fragment,{children:[["home","inbox","datasets","graders","experiments"].includes(h)?null:S.jsxs("div",{className:"sidebar-model-project-picker",children:[S.jsx("span",{className:"sidebar-nav-group-label",children:"Model"}),S.jsx(C8,{label:"Model",searchable:c.length>8,value:f??"",options:[{value:"",label:"All models"},...f&&!c.some(A=>A.id===f)?[{value:f,label:"Unavailable model",disabled:!0}]:[],...c.map(A=>({value:A.id,label:A.name}))],onChange:A=>{_(A)}})]}),Dg.filter(A=>e==="console"?["home","inbox","datasets","graders","experiments"].includes(A):A!=="home"&&A!=="tasksets"&&A!=="evaluations").map(A=>{const $={"get-started":ru,home:_P,inbox:py,models:uW,datasets:ru,graders:Ng,experiments:Eu,tasks:ru,tasksets:ru,labeling:Eu,rewards:Ng,evaluations:Eu,runs:gP,versions:qW,serving:up}[A];return S.jsxs("button",{className:`nav-command ${s==="labs"&&(h===A||A==="runs"&&h==="evaluations")?"active":""}`,"aria-current":s==="labs"&&(h===A||A==="runs"&&h==="evaluations")?"page":void 0,type:"button",onClick:()=>{k(A)},children:[S.jsx($,{size:16}),S.jsx("span",{children:R8[A]}),A==="runs"&&E?S.jsx("span",{className:"sidebar-running-dot","aria-label":E.label}):null]},A)})]}):null,e==="chat"?S.jsxs(S.Fragment,{children:[S.jsxs("button",{className:`nav-command nav-command-prominent ${s==="scheduled"?"active":""}`,"aria-label":"Workflows",type:"button",onClick:()=>{P("scheduled")},children:[S.jsx(hP,{size:18}),S.jsx("span",{children:"Workflows"})]}),S.jsxs("button",{className:`nav-command nav-command-prominent ${s==="outputs"?"active":""}`,"aria-label":"Outputs",type:"button",onClick:()=>{P("outputs")},children:[S.jsx(vP,{size:18}),S.jsx("span",{children:"Outputs"})]}),S.jsxs("button",{className:`nav-command nav-command-prominent ${s==="apps"?"active":""}`,"aria-label":"Apps",type:"button",onClick:()=>{P("apps")},children:[S.jsx(my,{size:18}),S.jsx("span",{children:"Apps"})]}),S.jsxs("button",{className:`nav-command nav-command-prominent ${s==="projects"?"active":""}`,"aria-label":"Projects",type:"button",onClick:()=>{P("projects")},children:[S.jsx(ly,{size:18}),S.jsx("span",{children:"Projects"})]})]}):null]})}const EP=Of({chatMode:v(["chat","work"]).optional(),sidebarPresentation:v(["grouped","inbox"]).optional(),notificationMode:v(["all","direct_mentions","none"]).optional(),learningNoticeDismissed:I().optional(),sidebarVisibility:Of({showCodexChats:I(),onlyRunningTasks:I()}).optional(),scheduledWorkView:v(["calendar","list"]).optional(),editorControlsVisible:I().optional(),voiceNoticeAcknowledged:I().optional(),lessonProgress:le(i().min(1).max(200),Of({completed:I(),currentTime:d().finite().nonnegative(),duration:d().finite().positive(),updatedAt:d().finite().nonnegative()})).refine(e=>Object.keys(e).length<=200,"Too many lessons").optional()}),zg={"openpond:last-chat-task-mode":"chatMode","openpond.sidebar.presentation.v1":"sidebarPresentation","openpond.team-chat.notification-mode":"notificationMode","openpond.sidebar.continuous-learning.dismissed.v1":"learningNoticeDismissed","openpond.sidebar-task-visibility.v1":"sidebarVisibility","openpond.scheduled-work.view.v1":"scheduledWorkView","openpond.workspace.editorControlsVisible":"editorControlsVisible","openpond.voice.setupNoticeAcknowledged":"voiceNoticeAcknowledged","openpond.post-training-progress.v1":"lessonProgress"},Bg=new Set;let gc=null,vo=null,li={},qc={},Rh=!1,Ou=0,zs=null,xx=0;const H8="openpond-client-choices-changed";function ky(){Bg.forEach(e=>e()),typeof window<"u"&&window.dispatchEvent(new Event(H8))}function L8(){return zs}function q8(e){return Bg.add(e),()=>{Bg.delete(e)}}function al(e){const t=y.useRef(e);t.current=e,y.useEffect(()=>q8(()=>t.current()),[])}async function kx(e){const t=++xx,n=await z(e,"/v1/configuration");if(n.clientState?.revision===null){const o=U8();if(Object.keys(o.patch).length){n.clientState=await z(e,"/v1/configuration",{method:"POST",body:JSON.stringify({action:"client-state",owner:n.clientState.owner,patch:o.patch,importOnly:!0})});for(const r of o.keys)try{window.localStorage.removeItem(r)}catch{}}}if(t!==xx)return;const a=gc?.serverUrl!==e.serverUrl||gc?.token!==e.token||vo?.owner!==n.clientState?.owner;a&&(Ou++,li={},qc={},zs=null),gc=e,(a||(n.clientState?.revision??0)>=(vo?.revision??0))&&(vo=n.clientState),ky()}async function wy(){if(Rh||!gc||!vo||!Object.keys(li).length)return;Rh=!0;const e=li,t=gc,n=vo.owner,a=Ou;li={},qc=e;try{const o=await z(t,"/v1/configuration",{method:"POST",body:JSON.stringify({action:"client-state",owner:n,patch:e})});a===Ou&&(vo=o,zs=null)}catch(o){a===Ou&&(li={...e,...li},zs=`Preference changes have not been saved. ${o instanceof Error?o.message:String(o)}`)}finally{qc={},Rh=!1,ky(),!zs&&Object.keys(li).length&&wy()}}function yoe(){zs=null,wy()}const Fo={getItem(e){const t=zg[e];if(!t)return null;const n={...vo?.value,...qc,...li}[t];return n===void 0?null:typeof n=="string"?n:JSON.stringify(n)},setItem(e,t){if(!vo)return;const n=zg[e];if(!n)throw new Error("Unregistered client preference.");let a;try{a=JSON.parse(t)}catch{a=t}const o=EP.parse({[n]:a});JSON.stringify({...vo.value,...qc,...li}[n])!==JSON.stringify(o[n])&&(li={...li,...o},ky(),wy())}};function U8(){const e={},t=[];if(typeof window>"u")return{patch:e,keys:t};for(const[n,a]of Object.entries(zg))try{const o=window.localStorage.getItem(n);if(o===null)continue;let r;try{r=JSON.parse(o)}catch{r=o}const s=EP.safeParse({[a]:r});s.success&&(Object.assign(e,s.data),t.push(n))}catch{}return{patch:e,keys:t}}function jP(e){return e.replace(/\s+\(default\)$/i,"").replace(/^(?:openai|anthropic|google|xai|deepseek|qwen|meta-llama)\//i,"").replace(/^gpt-/i,"GPT-")}const $u=5,Fn=15,Fg=10,Dt={defaultChatProvider:Tr,subagents:sN(),codexPermissionMode:Dv,codexReasoningEffort:Hv,openPondCommandAccessMode:Om,defaultBranchPrefix:"feat/",defaultNewProjectDirectory:"",advancedWorkspaceControls:!1,steerActiveResponses:!0,contextCompaction:{autoEnabled:!0,triggerPercent:85,summaryModel:"same_model"},training:{defaultModelRef:null,creationMode:"customize",autoApproveEvidence:!1},sidebarWidth:332,diffPanelWidth:560,sidebarSectionsCollapsed:{pinned:!1,projects:!1,cloudProjects:!1,chats:!1,savedForLater:!0},editor:{languageServers:"auto",diagnosticsWhileEditing:!0,checkOnSave:!0,languages:{typescript:{mode:"auto",customCommand:""},python:{mode:"auto",customCommand:""},rust:{mode:"auto",customCommand:""}}}},Soe={activeTemplateId:"default",customized:!1,soul:"",soulPath:null,updatedAt:null,templates:[]},MP=[{value:"accounts/fireworks/models/deepseek-v4-pro",label:"DeepSeek V4 Pro",description:"reasoning"},{value:"accounts/fireworks/models/kimi-k3",label:"Kimi K3",description:"reasoning"},{value:"accounts/fireworks/models/glm-5p3",label:"GLM-5.3",description:"reasoning"},{value:"accounts/fireworks/models/deepseek-v4-flash",label:"DeepSeek V4 Flash",description:"reasoning"},{value:"accounts/fireworks/models/nemotron-lightning-3p5-30b-a3b",label:"Nemotron Lightning 3.5 30B A3B",description:"reasoning"},{value:"accounts/fireworks/models/minimax-m3",label:"MiniMax M3",description:"reasoning"}],Ph=[{value:"openpond",label:"OpenPond Chat"},{value:"codex",label:"OpenAI Codex",description:"Codex login"}],z8=["openai","xai","openrouter","deepseek","zai","moonshot","together","groq","custom-openai-compatible"],B8=["openpond","codex","claude-code","grok-build","opencode",...z8],OP=new Set(B8),$P=[{value:Nv,label:"GPT-5.6 Sol"},{value:"gpt-5.6-terra",label:"GPT-5.6 Terra"},{value:"gpt-5.6-luna",label:"GPT-5.6 Luna"},{value:"gpt-5.5",label:"GPT-5.5"},{value:"gpt-5.4",label:"GPT-5.4"},{value:"gpt-5.4-mini",label:"GPT-5.4 Mini"},{value:"gpt-5.3-codex",label:"GPT-5.3 Codex"},{value:"gpt-5.3-codex-spark",label:"GPT-5.3 Codex Spark"},{value:"gpt-5.2",label:"GPT-5.2"}],xoe=[{value:"default",label:"Default permissions",shortLabel:"Default",description:"Workspace sandbox; asks before crossing boundaries."},{value:"auto-review",label:"Auto-review",description:"Workspace sandbox; reviewer handles eligible approvals."},{value:"full-access",label:"Full access",description:"No sandbox or approval prompts."}],Vg=[{value:"low",label:"Low"},{value:"medium",label:"Medium"},{value:"high",label:"High"},{value:"xhigh",label:"Extra High",shortLabel:"Extra High"}],F8=[{value:"off",label:"Off"},...Vg,{value:"max",label:"Max"}],koe=[{value:"ask",label:"Ask",description:"Ask before running shell commands."},{value:"full-access",label:"Full access",description:"Run shell commands without approval prompts."}],woe=[{value:"auto",label:"Auto",description:"Use installed language servers when available."},{value:"off",label:"Off",description:"Disable editor language servers."}],Ioe=[{value:"auto",label:"Auto",description:"Find the local executable automatically."},{value:"disabled",label:"Disabled",description:"Do not start this language server."},{value:"custom",label:"Custom",description:"Use a specific executable path or command name."}];function Iy(e){return e.kind==="local"}function V8(e){return e.kind==="cloud"}function kt(e,t){return`${e}:${t}`}function NP(e){const t=e?.trim();if(!t)return null;const n=t.indexOf(":");if(n<=0)return{kind:"local",id:t};const a=t.slice(0,n),o=t.slice(n+1);return(a==="local"||a==="cloud")&&o?{kind:a,id:o}:{kind:"local",id:t}}function _r(e){return`${e.type}:${e.id}`}function fm(e){const t=e.currentTarget.getBoundingClientRect();return e.clientY<t.top+t.height/2?"before":"after"}function hm(e,t,n,a="before"){if(t===n)return e;const o=e.filter(s=>s!==t),r=o.indexOf(n);return r===-1?e:(o.splice(a==="after"?r+1:r,0,t),o)}function wx(e,t){return e.length===t.length&&e.every((n,a)=>n===t[a])}function K8(e,t){if(!t)return e;const n=new Map(e.map(r=>[r.key,r])),a=t.map(r=>n.get(r)).filter(r=>!!r),o=new Set(a.map(r=>r.key));return[...a,...e.filter(r=>!o.has(r.key))]}function _y(e,t){return e?.statuses?.[t]??null}function DP(e,t){return e?.providers?.[t]??null}function Cy(e,t){return e?.modelCaches?.[t]??null}function W8(e){const t=[e.contextWindow?`${Math.round(e.contextWindow/1e3)}K context`:"",e.capabilities.reasoning?"reasoning":"",e.source].filter(Boolean);return{value:e.id,label:jP(e.displayName||e.id),description:t.join(" · ")||void 0}}function G8(e){return e==="openpond"?MP:e==="codex"||e==="openai"?$P:[]}function J8(e){const t=new Set,n=[];for(const a of e)!a.value||t.has(a.value)||(t.add(a.value),n.push(a));return n}function _oe(e){return OP.has(e)}function Kg(e,t={}){if(!e)return t.localOnly,Ph;const n=t.includeUnavailable??!1,a=t.enabledOnly??!1,o=[];for(const r of _v){if(!["openpond","codex","openai","claude-code","grok-build","opencode"].includes(r)||!OP.has(r)||t.localOnly&&r==="openpond")continue;const s=_y(e,r);s&&(!n&&(r==="codex"&&!s.available&&!s.credential.connected||r!=="openpond"&&r!=="codex"&&!s.enabled)||a&&r!=="openpond"&&!s.enabled||a&&r==="codex"&&!s.available&&!s.credential.connected||o.push({value:r,label:r==="openpond"?"OpenPond Chat":s.displayName,description:r==="openpond"?void 0:s.available?"Connected":s.credential.connected?"Configured":s.routing.localByok?"Set up key":s.enabled?"Enabled":void 0}))}return o.length>0?o:Ph}function Uc(e,t){const a=(Cy(t,e)?.models??[]).filter(c=>e!=="openpond"||c.id!==Ws).map(W8),o=DP(t,e),r=[...o?.modelOverrides??[],o?.defaultModel].filter(c=>!!c?.trim()&&(e!=="openpond"||c!==Ws)).map(c=>({value:c,label:jP(c)})),s=e==="openpond"&&a.length>0?[]:G8(e);return J8([...a,...r,...s])}function HP(e,t,n){if(e!=="openpond")return Vg;const a=Cy(n,e)?.models.find(r=>r.id===t)?.capabilities;if(!a?.reasoningEfforts.length)return Vg;const o=new Set(a.reasoningEfforts);return F8.filter(r=>o.has(r.value))}function Z8(e,t,n){const a=HP(e,t,n),o=e==="openpond"&&(t==="gpt-6-luna"||t==="gpt-6-sol"||t==="claude-opus-5-5")?"medium":"high";return a.some(r=>r.value===o)?o:a[0]?.value??"high"}function Y8(e,t,n,a){return HP(e,t,a).some(o=>o.value===n)?n:Z8(e,t,a)}function Q8(e,t,n){if(e==="codex"||e==="openai")return!0;const a=t.trim();if(!a)return!1;const o=Cy(n,e)?.models.find(r=>r.id===a);return o?!!o.capabilities.reasoning:Uc(e,n).some(r=>r.value===a&&/\breasoning\b/i.test(r.description??""))}function gm(e,t){const n=DP(t,e)?.defaultModel?.trim();if(n)return n;const a=_y(t,e)?.defaultModel?.trim();if(a)return a;const o=Uc(e,t)[0]?.value?.trim();return o||(e==="codex"?Nv:e==="openpond"?Ws:"")}function nr(e,t,n){const a=t?.trim();if(a&&["opencode","grok-build","claude-code"].includes(e))return a;if(e==="codex"&&(a==="codex-default"||a==="gpt-5.5"))return Nv;const o=Uc(e,n);return a&&o.some(r=>r.value===a)||a&&e!=="codex"&&o.length===0&&!n?a:gm(e,n)}function LP(e,t){const n=e.modelRef?.providerId??e.provider;return{provider:n,model:nr(n,e.modelRef?.modelId,t)}}function Ry(e,t,n){return nr(e,t,n)||void 0}function ii(e,t,n){const a=Ry(e,t,n);return a?{providerId:e,modelId:a}:void 0}function Ix(e){return e==="full-access"?{approvalPolicy:"never",sandbox:"danger-full-access"}:{approvalPolicy:"on-request",sandbox:"workspace-write"}}function La(e){const t=e?.defaultChatProvider??Dt.defaultChatProvider;return{defaultChatProvider:t,defaultChatModel:nr(t,e?.defaultChatModel),subagents:xc.parse(e?.subagents??Dt.subagents),codexPermissionMode:e?.codexPermissionMode??Dt.codexPermissionMode,codexReasoningEffort:e?.codexReasoningEffort??Dt.codexReasoningEffort,openPondCommandAccessMode:e?.openPondCommandAccessMode??Dt.openPondCommandAccessMode,defaultBranchPrefix:qP(e?.defaultBranchPrefix),defaultNewProjectDirectory:e?.defaultNewProjectDirectory??Dt.defaultNewProjectDirectory,defaultTeamId:e?.defaultTeamId?.trim()||null,advancedWorkspaceControls:e?.advancedWorkspaceControls??Dt.advancedWorkspaceControls,steerActiveResponses:e?.steerActiveResponses??Dt.steerActiveResponses,contextCompaction:{autoEnabled:e?.contextCompaction?.autoEnabled??Dt.contextCompaction.autoEnabled,triggerPercent:e?.contextCompaction?.triggerPercent??Dt.contextCompaction.triggerPercent,summaryModel:e?.contextCompaction?.summaryModel??Dt.contextCompaction.summaryModel},training:{defaultModelRef:e?.training?.defaultModelRef??Dt.training.defaultModelRef,creationMode:e?.training?.creationMode??Dt.training.creationMode,autoApproveEvidence:e?.training?.autoApproveEvidence??Dt.training.autoApproveEvidence},sidebarWidth:e?.sidebarWidth??Dt.sidebarWidth,diffPanelWidth:e?.diffPanelWidth??Dt.diffPanelWidth,sidebarSectionsCollapsed:{pinned:e?.sidebarSectionsCollapsed?.pinned??Dt.sidebarSectionsCollapsed.pinned,projects:e?.sidebarSectionsCollapsed?.projects??Dt.sidebarSectionsCollapsed.projects,cloudProjects:e?.sidebarSectionsCollapsed?.cloudProjects??Dt.sidebarSectionsCollapsed.cloudProjects,chats:e?.sidebarSectionsCollapsed?.chats??Dt.sidebarSectionsCollapsed.chats,savedForLater:e?.sidebarSectionsCollapsed?.savedForLater??Dt.sidebarSectionsCollapsed.savedForLater},editor:{languageServers:e?.editor?.languageServers??Dt.editor.languageServers,diagnosticsWhileEditing:e?.editor?.diagnosticsWhileEditing??Dt.editor.diagnosticsWhileEditing,checkOnSave:e?.editor?.checkOnSave??Dt.editor.checkOnSave,languages:{typescript:{mode:e?.editor?.languages?.typescript?.mode??Dt.editor.languages.typescript.mode,customCommand:e?.editor?.languages?.typescript?.customCommand??Dt.editor.languages.typescript.customCommand},python:{mode:e?.editor?.languages?.python?.mode??Dt.editor.languages.python.mode,customCommand:e?.editor?.languages?.python?.customCommand??Dt.editor.languages.python.customCommand},rust:{mode:e?.editor?.languages?.rust?.mode??Dt.editor.languages.rust.mode,customCommand:e?.editor?.languages?.rust?.customCommand??Dt.editor.languages.rust.customCommand}}}}}function qP(e){const t=e?.trim()??Dt.defaultBranchPrefix;if(!t)return"";const a=t.toLowerCase().replace(/[^a-z0-9._/-]+/g,"-").replace(/\/{2,}/g,"/").replace(/^-+/,"").slice(0,48).split("/").map(o=>o.replace(/^-+|-+$/g,"")).filter(Boolean).join("/");return a?`${a}/`:""}function Coe(e,t){return e==="openpond"?"OpenPond Chat":_y(t,e)?.displayName??(e==="codex"?"OpenAI Codex":e)}function Roe(e,t,n){if(n){const a=Uc(n,t).find(o=>o.value===e);if(a)return a.label}if(t)for(const a of _v){const o=Uc(a,t).find(r=>r.value===e);if(o)return o.label}return[...MP,...$P].find(a=>a.value===e)?.label??e}function X8(e,t){return t==="chat"?e.filter(n=>n.experience==="chat"):e.filter(n=>n.experience==="work"||n.experience==="development")}function eG(e){return e.experience==="chat"?"Chat":"Work"}const Py="taskDraft";function UP(e){if(e?.experience!=="work")return null;const t=e.metadata?.[Py];if(!t||typeof t!="object"||Array.isArray(t))return null;const n=t.prompt;return typeof n=="string"&&n.trim()?n:null}function zc(e){return UP(e)!==null}function tG(e){return(e.split(/\r?\n/u).map(n=>n.trim()).find(Boolean)||"Task draft").slice(0,64)}function Ah(e,t,n=new Date().toISOString()){const a={version:1,prompt:t,savedAt:n};return{...e??{},[Py]:a}}function nG(e){const t={...e??{}};return delete t[Py],t}function js(e){const t=su(e.metadata?.trainingTasksetId)??su(e.metadata?.tasksetId);return t?{id:t,name:su(e.metadata?.trainingTasksetName)??su(e.metadata?.tasksetName)??aG(t)}:null}function aG(e){const n=e.replace(/[-_][a-f0-9]{8,}$/i,"").replace(/^(?:benchmark[-_])?taskset[-_]/i,"").replace(/^benchmark[-_]/i,"").split(/[-_]+/).filter(Boolean);return n.length===0?"Taskset":n.map(a=>/^[A-Z0-9]{2,}$/.test(a)?a:`${a.charAt(0).toUpperCase()}${a.slice(1)}`).join(" ")}function su(e){return typeof e=="string"&&e.trim()?e.trim():null}const iG="codex_history_";function en(e){return!!e?.startsWith(iG)}function zP(e){const t=[],n=new Set;for(const a of e)for(const o of[a.workspacePath,a.path]){const r=hp(o);if(!r)continue;const s=`${a.id}:${r}`;n.has(s)||(n.add(s),t.push({projectId:a.id,path:r}))}return t.sort((a,o)=>o.path.length-a.path.length)}function oG(e,t,n,a=new Set){if(e.localProjectId&&t.has(e.localProjectId))return e.localProjectId;if(e.workspaceKind==="local_project"&&e.workspaceId&&t.has(e.workspaceId))return e.workspaceId;if(e.metadata?.workspaceTarget==="hybrid"&&e.cwd){const r=BP(e.cwd,n);if(r)return r}if(e.cloudProjectId&&a.has(e.cloudProjectId))return e.cloudProjectId;if(!e.cwd||e.workspaceKind==="sandbox"||e.workspaceKind==="sandbox_template"||e.workspaceKind==="sandbox_app"||!FP(e))return null;const o=hp(e.cwd);if(!o)return null;for(const r of n)if(Ay(o,r.path))return r.projectId;return null}function _x(e,t,n,a=new Set){if(e.localProjectId&&t.has(e.localProjectId))return kt("local",e.localProjectId);if(e.workspaceKind==="local_project"&&e.workspaceId&&t.has(e.workspaceId))return kt("local",e.workspaceId);if(e.metadata?.workspaceTarget==="hybrid"&&e.cwd){const r=BP(e.cwd,n);if(r)return kt("local",r)}if(e.cloudProjectId&&a.has(e.cloudProjectId))return kt("cloud",e.cloudProjectId);if(!e.cwd||e.workspaceKind==="sandbox"||e.workspaceKind==="sandbox_template"||e.workspaceKind==="sandbox_app"||!FP(e))return null;const o=hp(e.cwd);if(!o)return null;for(const r of n)if(Ay(o,r.path))return kt("local",r.projectId);return null}function BP(e,t){const n=hp(e);if(!n)return null;for(const a of t)if(Ay(n,a.path))return a.projectId;return null}function FP(e){return e.workspaceKind==="local_project"||e.provider==="codex"||en(e.id)}function hp(e){const t=e?.trim();if(!t)return null;let n=t.replace(/^file:\/\/+/i,"/").replace(/\\/g,"/").replace(/\/+/g,"/");return/^[a-z]:/i.test(n)&&(n=n[0].toUpperCase()+n.slice(1)),n=n.replace(/\/+$/g,""),n||"/"}function Ay(e,t){const n=Cx(e),a=Cx(t);return n===a||n.startsWith(`${a}/`)}function Cx(e){return/^[A-Z]:\//.test(e)?e.toLowerCase():e}const Rx=[{value:"active",label:"Active"},{value:"in_progress",label:"In progress"},{value:"pinned",label:"Pinned"},{value:"saved_for_later",label:"Save for later"},{value:"tasksets",label:"Tasksets"},{value:"done",label:"Done"},{value:"all",label:"All"}],rG=[{value:"recent",label:"Recent first"},{value:"manual",label:"Manual order"}];function Th(e){const t=[];if(e.filter==="done")t.push(...e.doneSessions.filter(o=>!js(o)));else if(e.filter==="all")t.push(...e.activeSessions.filter(o=>!js(o)),...e.doneSessions.filter(o=>!js(o)));else if(e.filter==="tasksets")t.push(...e.activeSessions.filter(o=>Px(o,e.selectedTasksetId)),...e.doneSessions.filter(o=>Px(o,e.selectedTasksetId)));else for(const o of e.activeSessions)js(o)||(e.filter==="active"?o.savedForLater||t.push(o):e.filter==="in_progress"?!o.savedForLater&&e.inProgressSessionIds.has(o.id)&&t.push(o):e.filter==="pinned"?o.pinned&&!o.savedForLater&&t.push(o):e.filter==="saved_for_later"&&o.savedForLater&&t.push(o));const n=t.filter(o=>Nu(o,{inProgressSessionIds:e.inProgressSessionIds,onlyRunningTasks:e.onlyRunningTasks,showCodexChats:e.showCodexChats})),a=e.previewSessionIds?new Map(e.previewSessionIds.map((o,r)=>[o,r])):null;return e.sort==="recent"?n.sort((o,r)=>Ex(o,r,a)):n.sort((o,r)=>{const s=a?.get(o.id),c=a?.get(r.id);if(s!==void 0||c!==void 0){if(s===void 0)return 1;if(c===void 0)return-1;if(s!==c)return s-c}return o.order!==r.order?o.order-r.order:Ex(o,r)})}function Nu(e,t){return t.showCodexChats===!1&&(e.provider==="codex"||en(e.id))?!1:!t.onlyRunningTasks||t.inProgressSessionIds.has(e.id)}function Px(e,t){const n=js(e);return!!(n&&(!t||n.id===t))}function Ax(e,t){switch(e){case"active":return`No active ${t}`;case"in_progress":return"No work in progress";case"pinned":return`No pinned ${t}`;case"saved_for_later":return"Nothing saved for later";case"tasksets":return"No Taskset chats yet";case"done":return`No done ${t}`;case"all":return`No ${t}`}}function Tx(e,t,n){const a=new Set(t);let o=0;return e.map(r=>{if(!a.has(r))return r;const s=n[o];return o+=1,s??r})}function Ex(e,t,n=null){const a=vc(e),o=vc(t);if(a!==o)return a?-1:1;if(a&&o){const s=n?.get(e.id),c=n?.get(t.id);if(s!==void 0||c!==void 0){if(s===void 0)return 1;if(c===void 0)return-1;if(s!==c)return s-c}if(e.order!==t.order)return e.order-t.order}const r=Date.parse(t.updatedAt)-Date.parse(e.updatedAt);return r!==0?r:e.title.localeCompare(t.title)}function vc(e){return e.pinned&&!e.savedForLater&&!e.archived}const lu={showCodexChats:!0,onlyRunningTasks:!1},VP="openpond.sidebar-task-visibility.v1";function jx(e=KP()){try{const t=e?.getItem(VP);if(!t)return lu;const n=JSON.parse(t);return{showCodexChats:typeof n.showCodexChats=="boolean"?n.showCodexChats:lu.showCodexChats,onlyRunningTasks:typeof n.onlyRunningTasks=="boolean"?n.onlyRunningTasks:lu.onlyRunningTasks}}catch{return lu}}function Mx(e,t=KP()){try{t?.setItem(VP,JSON.stringify(e))}catch{}}function KP(){return typeof window>"u"?null:Fo}function WP(e){return`${e.kind}:${e.id}`}function Bc(e,t){return!!(e&&t&&e.kind===t.kind&&e.id===t.id)}function sG(e){return{kind:"session",id:e}}function lG(e){return{kind:"project",id:e}}function cG(e){return{kind:"draft",id:e}}function dG(e){return e.selectedSessionId?sG(e.selectedSessionId):e.selectedProjectId?lG(e.selectedProjectId):cG(e.selectedAppId?`app:${e.selectedAppId}`:"new-chat")}function uG(e){if(!e.previousScope||e.previousScope.kind!=="draft"||e.activeScope.kind!=="session")return[...e.tabs];if(Bc(e.previousScope,e.activeScope))return[...e.tabs];const t=e.now??Date.now();return e.tabs.map(n=>Bc(n.scope,e.previousScope)?{...n,scope:e.activeScope,updatedAt:t}:n)}function Poe(e,t){return e.filter(n=>Bc(n.scope,t))}function Aoe(e,t){return!!(e&&Bc(e.scope,t))}function mG(e){const t={};for(const n of e){const a=WP(n.scope),o=t[a]??{scope:n.scope,tabCount:0,runningCount:0,failedCount:0,lastExitCode:null,status:"none"};o.tabCount+=1,n.commandStatus==="running"&&(o.runningCount+=1),(n.commandStatus==="failed"||n.status==="error")&&(o.failedCount+=1),n.lastExitCode!==null&&(o.lastExitCode=n.lastExitCode),o.status=fG(o.status,n.status,n.commandStatus),t[a]=o}return t}function pG(e){return!e||e.status==="none"||e.tabCount===0?null:e.status==="running"?{status:"running",label:"Terminal running"}:e.status==="failed"?{status:"failed",label:"Terminal last command failed"}:e.status==="success"?{status:"success",label:"Terminal last command succeeded"}:e.status==="idle"?{status:"idle",label:"Terminal idle"}:{status:"unknown",label:"Terminal open"}}function fG(e,t,n){return n==="running"?"running":e==="running"?e:n==="failed"||t==="error"?"failed":e==="failed"?e:n==="success"?e==="none"||e==="unknown"||e==="idle"?"success":e:n==="idle"?e==="none"||e==="unknown"?"idle":e:e==="none"?"unknown":e}function GP(e,t){if(!e)return t?.path??"Use files on this machine";if(e.error)return"status unavailable";if(!e.initialized)return"not checked out";const a=[e.currentBranch??t?.branch??e.defaultBranch??"no branch"],o=gG(e),r=t?.linkedCloudSourceKnown===!1&&!!e.headCommit;return o?a.push(o):r?a.push("upload required"):e.diverged?(e.ahead>0&&a.push(zo("ahead",e.ahead)),e.behind>0&&a.push(zo("behind",e.behind)),a.push("diverged")):(e.ahead>0&&a.push(zo("ahead",e.ahead)),e.behind>0&&a.push(zo("behind",e.behind))),e.changedFilesCount>0?a.push(`${e.changedFilesCount} changed`):e.dirty&&a.push("dirty"),e.untrackedFilesCount>0&&a.push(`${e.untrackedFilesCount} untracked`),a.length===1&&a.push("synced"),a.join(" / ")}function JP(e,t,n,a={}){const o=e?.linkedSandboxProject??null;if(!o?.projectId&&!t)return"upload required";if(o?.projectId&&a.cloudLinkTrusted===!1)return"uploaded to a different account";const r=o?.defaultBranch??t?.defaultBranch??"main",s=o?.manifestHash??null,c=e?.sandboxTemplate?.manifestHash??null,m=o?.syncedAt??t?.syncedAt??null,u=!!(s&&c&&s!==c),f=!!(o?.projectId&&n?.headCommit&&!o.lastUploadedCommit),h=vG(n);return h?`${r} / ${h}`:f?`${r} / upload required`:`${r} / ${u||!m?"needs sync":"setup ready"}`}function hG(e,t,n={}){if(!e)return"select a local project";if(e.linkedSandboxProject?.projectId&&n.cloudLinkTrusted===!1)return"sync to this account";if(!t)return e.linkedSandboxProject?"sync source to cloud":"push local source to cloud";if(t.error)return"repo status unavailable";if(!t.initialized)return"local repo unavailable";const a=[],o=t.aheadOfLinkedSource>0?t.aheadOfLinkedSource:t.ahead;return e.linkedSandboxProject?.projectId||a.push("upload required"),e.linkedSandboxProject?.projectId&&t.headCommit&&!e.linkedSandboxProject.lastUploadedCommit&&a.push("upload required"),o>0&&a.push(ZP(o)),t.linkedSourceHeadCommit&&t.headCommit&&t.linkedSourceHeadCommit!==t.headCommit&&t.linkedSourceComparisonError&&o===0&&a.push("source changed"),t.changedFilesCount>0&&a.push(`${t.changedFilesCount} changed file${t.changedFilesCount===1?"":"s"}`),t.untrackedFilesCount>0&&a.push(`${t.untrackedFilesCount} untracked skipped`),a.length>0?a.join(" / "):"nothing to upload"}function gG(e){return e.linkedSourceHeadCommit?e.divergedFromLinkedSource?"diverged":e.aheadOfLinkedSource>0?zo("local ahead",e.aheadOfLinkedSource):e.behindLinkedSource>0?zo("cloud ahead",e.behindLinkedSource):e.linkedSourceComparisonError&&e.headCommit&&e.linkedSourceHeadCommit!==e.headCommit?"sync unknown":null:null}function vG(e){return e?.linkedSourceHeadCommit?e.dirty?"local dirty files not in cloud":e.divergedFromLinkedSource?"diverged from local":e.aheadOfLinkedSource>0?zo("cloud behind local",e.aheadOfLinkedSource):e.behindLinkedSource>0?zo("cloud ahead local",e.behindLinkedSource):e.linkedSourceComparisonError&&e.headCommit&&e.linkedSourceHeadCommit!==e.headCommit?"source check unavailable":"synced":null}function zo(e,t){return`${e} by ${ZP(t)}`}function ZP(e){return`${e} commit${e===1?"":"s"}`}function bG({size:e=14,className:t}){return S.jsxs("svg",{className:["lucide lucide-cloud-upload",t??""].filter(Boolean).join(" "),xmlns:"http://www.w3.org/2000/svg",width:e,height:e,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:[S.jsx("path",{d:"M12 13v8"}),S.jsx("path",{d:"M4 14.899A7 7 0 1 1 15.71 8h1.79a4.5 4.5 0 0 1 2.5 8.242"}),S.jsx("path",{d:"m8 17 4-4 4 4"})]})}function YP({kind:e,linkedCloud:t=!1,open:n=!1,className:a,baseSize:o=15}){const r=e==="cloud"?"cloud":n?"folder-open":"folder";return S.jsx("span",{className:["project-kind-icon",e,t?"linked-cloud":"",a??""].filter(Boolean).join(" "),"aria-hidden":"true",children:S.jsxs("svg",{className:`lucide lucide-${r} project-kind-icon-svg`,xmlns:"http://www.w3.org/2000/svg",width:o,height:o,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[e==="cloud"?S.jsx(xG,{}):n?S.jsx(SG,{}):S.jsx(yG,{}),t&&e==="local"?S.jsx(kG,{}):null]})})}function yG(){return S.jsx("path",{className:"project-kind-icon-base",d:"M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z"})}function SG(){return S.jsx("path",{className:"project-kind-icon-base",d:"m6 14 1.5-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.54 6a2 2 0 0 1-1.95 1.5H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H18a2 2 0 0 1 2 2v2"})}function xG(){return S.jsx("path",{className:"project-kind-icon-base",d:"M17.5 19H9a7 7 0 1 1 6.71-9h1.79a4.5 4.5 0 1 1 0 9Z"})}function kG(){return S.jsxs("g",{className:"project-kind-icon-cloud-badge",children:[S.jsx("circle",{cx:"18",cy:"17",r:"5"}),S.jsx("path",{d:"M20.4 18.6h-4.2a2.2 2.2 0 1 1 2.08-2.9h.88a1.45 1.45 0 1 1 1.24 2.9Z"})]})}var vm=VT();function wG({title:e,pinned:t,savedForLater:n,archived:a,onRename:o,onTogglePin:r,onToggleSaveForLater:s,onDockRight:c,onArchive:m}){const u=y.useRef(null),f=y.useRef(null),[h,x]=y.useState(null),k=[...o?[{label:"Rename",Icon:pp,action:o}]:[],{label:t?"Unpin":"Pin",Icon:t?uy:dy,action:r},...s?[{label:n?"Return to active":"Save for later",Icon:n?fP:pP,action:s}]:[],...c?[{label:"Open in right panel",Icon:$g,action:c}]:[],{label:a?"Reopen":"Mark done",Icon:a?pW:Pi,action:m}];function _(P=!1){x(null),P&&u.current?.focus()}return y.useEffect(()=>{if(!h)return;f.current?.querySelector("button")?.focus();const P=A=>{!f.current?.contains(A.target)&&!u.current?.contains(A.target)&&x(null)},E=()=>x(null);return document.addEventListener("pointerdown",P),window.addEventListener("resize",E),()=>{document.removeEventListener("pointerdown",P),window.removeEventListener("resize",E)}},[h]),S.jsxs(S.Fragment,{children:[S.jsx("div",{className:`sidebar-row-actions sidebar-task-menu-trigger${h?" is-open":""}`,children:S.jsx("button",{ref:u,type:"button",className:"sidebar-row-action","aria-label":`More actions for task ${e}`,"aria-haspopup":"menu","aria-expanded":!!h,draggable:!1,onDoubleClick:P=>P.stopPropagation(),onClick:P=>{if(P.stopPropagation(),h){_(!0);return}const E=P.currentTarget.getBoundingClientRect();x({left:Math.max(8,Math.min(E.right-192,window.innerWidth-200)),top:Math.max(8,Math.min(E.bottom+4,window.innerHeight-(k.length*32+17)))})},children:S.jsx(yd,{size:16})})}),h&&vm.createPortal(S.jsx("div",{ref:f,role:"menu","aria-label":`Actions for ${e}`,className:"sidebar-task-menu",style:h,onClick:P=>P.stopPropagation(),onDoubleClick:P=>P.stopPropagation(),onBlur:P=>{P.currentTarget.contains(P.relatedTarget)||_()},onKeyDown:P=>{P.stopPropagation();const E=Array.from(P.currentTarget.querySelectorAll("button")),A=E.indexOf(document.activeElement);if(P.key==="Escape"&&(P.preventDefault(),_(!0)),["ArrowDown","ArrowUp","Home","End"].includes(P.key)){P.preventDefault();const $=P.key==="Home"?0:P.key==="End"?E.length-1:(A+(P.key==="ArrowDown"?1:-1)+E.length)%E.length;E[$]?.focus()}},children:k.map(({label:P,Icon:E,action:A},$)=>S.jsxs("button",{type:"button",role:"menuitem",className:$===k.length-1?"task-menu-done":void 0,onClick:()=>{_(!0),A()},children:[S.jsx(E,{size:15}),P]},P))}),document.body)]})}function IG({session:e,onSave:t,onClose:n}){const[a,o]=y.useState(e.title),r=y.useRef(null);y.useEffect(()=>{const m=r.current;m&&(m.focus(),m.select())},[]),y.useEffect(()=>{function m(u){u.key==="Escape"&&n()}return document.addEventListener("keydown",m),()=>document.removeEventListener("keydown",m)},[n]);function s(){const m=a.trim();m&&(t(m),n())}function c(m){m.key==="Enter"&&!m.shiftKey&&(m.preventDefault(),s())}return S.jsx("div",{className:"git-dialog-backdrop rename-chat-backdrop",role:"presentation",onMouseDown:n,children:S.jsxs("section",{className:"git-dialog rename-chat-dialog",role:"dialog","aria-modal":"true","aria-labelledby":"rename-chat-title",onMouseDown:m=>m.stopPropagation(),children:[S.jsx("h2",{id:"rename-chat-title",children:"Rename chat"}),S.jsx("textarea",{ref:r,className:"rename-chat-input",value:a,rows:1,maxLength:200,onChange:m=>o(m.target.value),onKeyDown:c,"aria-label":"Chat title"}),S.jsxs("div",{className:"git-dialog-footer",children:[S.jsx("button",{type:"button",className:"git-dialog-secondary",onClick:n,children:"Cancel"}),S.jsx("button",{type:"button",className:"git-dialog-primary",autoFocus:!0,onClick:s,disabled:!a.trim(),children:"Save"})]})]})})}const _G=24;function CG({title:e}){const t=y.useRef(e),[n,a]=y.useState(e);return y.useEffect(()=>{const o=t.current;if(t.current=e,!e){a("");return}if(o||window.matchMedia("(prefers-reduced-motion: reduce)").matches){a(e);return}const r=Array.from(e);let s=0;a("");const c=window.setInterval(()=>{s+=1,a(r.slice(0,s).join("")),s>=r.length&&window.clearInterval(c)},_G);return()=>window.clearInterval(c)},[e]),S.jsx("span",{className:"sidebar-task-title-text","aria-label":e||"New task",children:n||"New task"})}const RG="/";function va(e){return`${RG}${e.replace(/^\.?\//,"")}`}const Ty=va("openpond-icon.png"),PG=va("openpond-wordlogo-white.png"),Toe=va("tutorials/what-is-an-openpond-agent-poster.png"),Eoe=va("tutorials/what-is-an-openpond-agent.vtt"),joe=va("tutorials/how-to-make-an-agent-poster.png"),Moe=va("tutorials/how-to-make-an-agent.vtt");function Ooe(e){return va(`tutorials/how-to-make-an-agent-${e}-poster.png`)}function $oe(e){return va(`tutorials/how-to-make-an-agent-${e}.vtt`)}const Ox={github:va("connected-apps/github.svg"),google:va("connected-apps/google.svg"),microsoft_teams:va("connected-apps/microsoft.svg"),mcp:va("connected-apps/openpond-mcp.svg"),slack:va("connected-apps/slack.svg"),x:va("connected-apps/x.svg")};function Noe(e){return Ox[e]??Ox.mcp}const AG={codex:"Codex","claude-code":"Claude Code",opencode:"OpenCode","grok-build":"Grok Build"};function TG({session:e}){const t=AG[e.provider],n=t??(e.provider==="openpond"?"OpenPond":e.provider);return S.jsx("span",{className:"conversation-source-icon",role:"img","aria-label":n,title:n,children:t?S.jsx("img",{src:`/agent-sources/${e.provider}.svg`,alt:""}):e.provider==="openpond"?S.jsx("img",{src:Ty,alt:""}):e.metadata?.nativeSource?S.jsx(w8,{size:15,"aria-hidden":"true"}):e.provider==="openai"?S.jsx(SW,{size:15,"aria-hidden":"true"}):S.jsx(mp,{size:15,"aria-hidden":"true"})})}var Du={exports:{}},EG=Du.exports,$x;function jG(){return $x||($x=1,(function(e,t){(function(n,a){e.exports=a()})(EG,(function(){var n=1e3,a=6e4,o=36e5,r="millisecond",s="second",c="minute",m="hour",u="day",f="week",h="month",x="quarter",k="year",_="date",P="Invalid Date",E=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,A=/\[([^\]]+)]|YYYY|YY|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,$={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(oe){var K=["th","st","nd","rd"],H=oe%100;return"["+oe+(K[(H-20)%10]||K[H]||K[0])+"]"}},j=function(oe,K,H){var de=String(oe);return!de||de.length>=K?oe:""+Array(K+1-de.length).join(H)+oe},M={s:j,z:function(oe){var K=-oe.utcOffset(),H=Math.abs(K),de=Math.floor(H/60),X=H%60;return(K<=0?"+":"-")+j(de,2,"0")+":"+j(X,2,"0")},m:function oe(K,H){if(K.date()<H.date())return-oe(H,K);var de=12*(H.year()-K.year())+(H.month()-K.month()),X=K.clone().add(de,h),Z=H-X<0,pe=K.clone().add(de+(Z?-1:1),h);return+(-(de+(H-X)/(Z?X-pe:pe-X))||0)},a:function(oe){return oe<0?Math.ceil(oe)||0:Math.floor(oe)},p:function(oe){return{M:h,y:k,w:f,d:u,D:_,h:m,m:c,s,ms:r,Q:x}[oe]||String(oe||"").toLowerCase().replace(/s$/,"")},u:function(oe){return oe===void 0}},w="en",R={};R[w]=$;var O="$isDayjsObject",N=function(oe){return oe instanceof re||!(!oe||!oe[O])},F=function oe(K,H,de){var X;if(!K)return w;if(typeof K=="string"){var Z=K.toLowerCase();R[Z]&&(X=Z),H&&(R[Z]=H,X=Z);var pe=K.split("-");if(!X&&pe.length>1)return oe(pe[0])}else{var ee=K.name;R[ee]=K,X=ee}return!de&&X&&(w=X),X||!de&&w},L=function(oe,K){if(N(oe))return oe.clone();var H=typeof K=="object"?K:{};return H.date=oe,H.args=arguments,new re(H)},Y=M;Y.l=F,Y.i=N,Y.w=function(oe,K){return L(oe,{locale:K.$L,utc:K.$u,x:K.$x,$offset:K.$offset})};var re=(function(){function oe(H){this.$L=F(H.locale,null,!0),this.parse(H),this.$x=this.$x||H.x||{},this[O]=!0}var K=oe.prototype;return K.parse=function(H){this.$d=(function(de){var X=de.date,Z=de.utc;if(X===null)return new Date(NaN);if(Y.u(X))return new Date;if(X instanceof Date)return new Date(X);if(typeof X=="string"&&!/Z$/i.test(X)){var pe=X.match(E);if(pe){var ee=pe[2]-1||0,me=(pe[7]||"0").substring(0,3);return Z?new Date(Date.UTC(pe[1],ee,pe[3]||1,pe[4]||0,pe[5]||0,pe[6]||0,me)):new Date(pe[1],ee,pe[3]||1,pe[4]||0,pe[5]||0,pe[6]||0,me)}}return new Date(X)})(H),this.init()},K.init=function(){var H=this.$d;this.$y=H.getFullYear(),this.$M=H.getMonth(),this.$D=H.getDate(),this.$W=H.getDay(),this.$H=H.getHours(),this.$m=H.getMinutes(),this.$s=H.getSeconds(),this.$ms=H.getMilliseconds()},K.$utils=function(){return Y},K.isValid=function(){return this.$d.toString()!==P},K.isSame=function(H,de){var X=L(H);return this.startOf(de)<=X&&X<=this.endOf(de)},K.isAfter=function(H,de){return L(H)<this.startOf(de)},K.isBefore=function(H,de){return this.endOf(de)<L(H)},K.$g=function(H,de,X){return Y.u(H)?this[de]:this.set(X,H)},K.unix=function(){return Math.floor(this.valueOf()/1e3)},K.valueOf=function(){return this.$d.getTime()},K.startOf=function(H,de){var X=this,Z=!!Y.u(de)||de,pe=Y.p(H),ee=function(Fe,Xe){var Ze=Y.w(X.$u?Date.UTC(X.$y,Xe,Fe):new Date(X.$y,Xe,Fe),X);return Z?Ze:Ze.endOf(u)},me=function(Fe,Xe){return Y.w(X.toDate()[Fe].apply(X.toDate("s"),(Z?[0,0,0,0]:[23,59,59,999]).slice(Xe)),X)},be=this.$W,Me=this.$M,ke=this.$D,ue="set"+(this.$u?"UTC":"");switch(pe){case k:return Z?ee(1,0):ee(31,11);case h:return Z?ee(1,Me):ee(0,Me+1);case f:var Ie=this.$locale().weekStart||0,Le=(be<Ie?be+7:be)-Ie;return ee(Z?ke-Le:ke+(6-Le),Me);case u:case _:return me(ue+"Hours",0);case m:return me(ue+"Minutes",1);case c:return me(ue+"Seconds",2);case s:return me(ue+"Milliseconds",3);default:return this.clone()}},K.endOf=function(H){return this.startOf(H,!1)},K.$set=function(H,de){var X,Z=Y.p(H),pe="set"+(this.$u?"UTC":""),ee=(X={},X[u]=pe+"Date",X[_]=pe+"Date",X[h]=pe+"Month",X[k]=pe+"FullYear",X[m]=pe+"Hours",X[c]=pe+"Minutes",X[s]=pe+"Seconds",X[r]=pe+"Milliseconds",X)[Z],me=Z===u?this.$D+(de-this.$W):de;if(Z===h||Z===k){var be=this.clone().set(_,1);be.$d[ee](me),be.init(),this.$d=be.set(_,Math.min(this.$D,be.daysInMonth())).$d}else ee&&this.$d[ee](me);return this.init(),this},K.set=function(H,de){return this.clone().$set(H,de)},K.get=function(H){return this[Y.p(H)]()},K.add=function(H,de){var X,Z=this;H=Number(H);var pe=Y.p(de),ee=function(Me){var ke=L(Z);return Y.w(ke.date(ke.date()+Math.round(Me*H)),Z)};if(pe===h)return this.set(h,this.$M+H);if(pe===k)return this.set(k,this.$y+H);if(pe===u)return ee(1);if(pe===f)return ee(7);var me=(X={},X[c]=a,X[m]=o,X[s]=n,X)[pe]||1,be=this.$d.getTime()+H*me;return Y.w(be,this)},K.subtract=function(H,de){return this.add(-1*H,de)},K.format=function(H){var de=this,X=this.$locale();if(!this.isValid())return X.invalidDate||P;var Z=H||"YYYY-MM-DDTHH:mm:ssZ",pe=Y.z(this),ee=this.$H,me=this.$m,be=this.$M,Me=X.weekdays,ke=X.months,ue=X.meridiem,Ie=function(Xe,Ze,Be,Ge){return Xe&&(Xe[Ze]||Xe(de,Z))||Be[Ze].slice(0,Ge)},Le=function(Xe){return Y.s(ee%12||12,Xe,"0")},Fe=ue||function(Xe,Ze,Be){var Ge=Xe<12?"AM":"PM";return Be?Ge.toLowerCase():Ge};return Z.replace(A,(function(Xe,Ze){return Ze||(function(Be){switch(Be){case"YY":return String(de.$y).slice(-2);case"YYYY":return Y.s(de.$y,4,"0");case"M":return be+1;case"MM":return Y.s(be+1,2,"0");case"MMM":return Ie(X.monthsShort,be,ke,3);case"MMMM":return Ie(ke,be);case"D":return de.$D;case"DD":return Y.s(de.$D,2,"0");case"d":return String(de.$W);case"dd":return Ie(X.weekdaysMin,de.$W,Me,2);case"ddd":return Ie(X.weekdaysShort,de.$W,Me,3);case"dddd":return Me[de.$W];case"H":return String(ee);case"HH":return Y.s(ee,2,"0");case"h":return Le(1);case"hh":return Le(2);case"a":return Fe(ee,me,!0);case"A":return Fe(ee,me,!1);case"m":return String(me);case"mm":return Y.s(me,2,"0");case"s":return String(de.$s);case"ss":return Y.s(de.$s,2,"0");case"SSS":return Y.s(de.$ms,3,"0");case"Z":return pe}return null})(Xe)||pe.replace(":","")}))},K.utcOffset=function(){return 15*-Math.round(this.$d.getTimezoneOffset()/15)},K.diff=function(H,de,X){var Z,pe=this,ee=Y.p(de),me=L(H),be=(me.utcOffset()-this.utcOffset())*a,Me=this-me,ke=function(){return Y.m(pe,me)};switch(ee){case k:Z=ke()/12;break;case h:Z=ke();break;case x:Z=ke()/3;break;case f:Z=(Me-be)/6048e5;break;case u:Z=(Me-be)/864e5;break;case m:Z=Me/o;break;case c:Z=Me/a;break;case s:Z=Me/n;break;default:Z=Me}return X?Z:Y.a(Z)},K.daysInMonth=function(){return this.endOf(h).$D},K.$locale=function(){return R[this.$L]},K.locale=function(H,de){if(!H)return this.$L;var X=this.clone(),Z=F(H,de,!0);return Z&&(X.$L=Z),X},K.clone=function(){return Y.w(this.$d,this)},K.toDate=function(){return new Date(this.valueOf())},K.toJSON=function(){return this.isValid()?this.toISOString():null},K.toISOString=function(){return this.$d.toISOString()},K.toString=function(){return this.$d.toUTCString()},oe})(),ve=re.prototype;return L.prototype=ve,[["$ms",r],["$s",s],["$m",c],["$H",m],["$W",u],["$M",h],["$y",k],["$D",_]].forEach((function(oe){ve[oe[1]]=function(K){return this.$g(K,oe[0],oe[1])}})),L.extend=function(oe,K){return oe.$i||(oe(K,re,L),oe.$i=!0),L},L.locale=F,L.isDayjs=N,L.unix=function(oe){return L(1e3*oe)},L.en=R[w],L.Ls=R,L.p={},L}))})(Du)),Du.exports}var MG=jG();const QP=s1(MG);var Hu={exports:{}},OG=Hu.exports,Nx;function $G(){return Nx||(Nx=1,(function(e,t){(function(n,a){e.exports=a()})(OG,(function(){return function(n,a,o){n=n||{};var r=a.prototype,s={future:"in %s",past:"%s ago",s:"a few seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"};function c(u,f,h,x){return r.fromToBase(u,f,h,x)}o.en.relativeTime=s,r.fromToBase=function(u,f,h,x,k){for(var _,P,E,A=h.$locale().relativeTime||s,$=n.thresholds||[{l:"s",r:44,d:"second"},{l:"m",r:89},{l:"mm",r:44,d:"minute"},{l:"h",r:89},{l:"hh",r:21,d:"hour"},{l:"d",r:35},{l:"dd",r:25,d:"day"},{l:"M",r:45},{l:"MM",r:10,d:"month"},{l:"y",r:17},{l:"yy",d:"year"}],j=$.length,M=0;M<j;M+=1){var w=$[M];w.d&&(_=x?o(u).diff(h,w.d,!0):h.diff(u,w.d,!0));var R=(n.rounding||Math.round)(Math.abs(_));if(E=_>0,R<=w.r||!w.r){R<=1&&M>0&&(w=$[M-1]);var O=A[w.l];k&&(R=k(""+R)),P=typeof O=="string"?O.replace("%d",R):O(R,f,w.l,E);break}}if(f)return P;var N=E?A.future:A.past;return typeof N=="function"?N(P):N.replace("%s",P)},r.to=function(u,f){return c(u,f,this,!0)},r.from=function(u,f){return c(u,f,this)};var m=function(u){return u.$u?o.utc():o()};r.toNow=function(u){return this.to(m(this),u)},r.fromNow=function(u){return this.from(m(this),u)}}}))})(Hu)),Hu.exports}var NG=$G();const DG=s1(NG);QP.extend(DG);let Wg=Date.now(),cu;const du=new Set,Dx=()=>Wg;function HG(e){return du.add(e),cu||(Wg=Date.now(),cu=setInterval(()=>{Wg=Date.now();for(const t of du)t()},3e4)),()=>{du.delete(e),du.size===0&&(clearInterval(cu),cu=void 0)}}function XP({value:e,className:t}){const n=y.useSyncExternalStore(HG,Dx,Dx),a=e==null?null:QP(e);return a?.isValid()?S.jsx("time",{className:t,dateTime:a.toISOString(),title:`Last activity ${a.format("MMM D, YYYY h:mm A")}`,children:a.from(n)}):null}const LG=2650,qG=304,UG=260;function zG(){return{animationDelay:`${-(Date.now()%LG)}ms`}}function BG(e){const t=e.currentTarget,n=t.firstElementChild;if(!(n instanceof HTMLElement))return;const a=Math.max(0,n.scrollWidth-t.clientWidth),o=a>2;t.dataset.overflowing=String(o),t.style.setProperty("--sidebar-title-ticker-distance",`${-a}px`),t.style.setProperty("--sidebar-title-ticker-duration",`${Math.min(6.5,Math.max(2.8,a/42+2.4))}s`)}function Eh({label:e,actions:t,actionsVisible:n=!1,className:a,titleAccessory:o,children:r,collapsed:s=!1,titleActive:c=!1,onTitleClick:m,onToggleCollapsed:u}){return S.jsxs("section",{className:["sidebar-section",a,n?"actions-visible":""].filter(Boolean).join(" "),children:[S.jsxs("div",{className:"section-header",children:[S.jsxs("div",{className:"section-title-row",children:[m?S.jsxs("div",{className:"section-title-combo",children:[S.jsx("button",{type:"button",className:`section-title-link${c?" active":""}`,onClick:m,children:S.jsx("span",{children:e})}),u&&S.jsx("button",{type:"button",className:"section-chevron-button","aria-label":`${s?"Expand":"Collapse"} ${e}`,"aria-expanded":!s,onClick:u,children:s?S.jsx(Jo,{size:13}):S.jsx(Go,{size:13})})]}):u?S.jsxs("button",{type:"button",className:"section-title-button","aria-label":`${s?"Expand":"Collapse"} ${e}`,"aria-expanded":!s,onClick:u,children:[S.jsx("span",{children:e}),s?S.jsx(Jo,{size:13}):S.jsx(Go,{size:13})]}):S.jsx("span",{children:e}),o]}),t&&S.jsx("div",{className:"section-actions",children:t})]}),!s&&S.jsx("div",{className:"sidebar-section-body",children:r})]})}function Hx({children:e,expanded:t=!1,onClick:n}){return S.jsx("button",{type:"button",className:"sidebar-show-more",onClick:n,children:e??(t?"Show less":"Show more")})}function jh({session:e,selected:t,icon:n,archived:a=!1,nested:o=!1,dragging:r,placeholder:s,running:c,goalRuntime:m,subagentRuntime:u,terminalIndicator:f,projectLabel:h,inbox:x=!1,activityAt:k,ariaDescribedBy:_,childSessionCount:P=0,childSessionsExpanded:E=!1,onSelect:A,onToggleChildSessions:$,onTogglePin:j,onToggleSaveForLater:M,onDockRight:w,onArchive:R,onDragStart:O,onDragEnd:N,onDragOver:F,onDrop:L,onRename:Y}){const[re,ve]=y.useState(!1),oe=m?.status==="queued",K=m?.tone==="active"&&!oe,H=(u?.activeCount??0)>0,de=P>0&&!!$,X=H||K||!oe&&(c??e.status==="active"),Z=H&&u?u.label:K&&m?VG(m):"Running",pe=["sidebar-task-row",zc(e)?"is-draft":"",X?"has-running-dot":"",x?"sidebar-inbox-row":""].filter(Boolean).join(" "),ee=y.useMemo(zG,[]),me=S.jsx(wG,{title:e.title,pinned:!!e.pinned,savedForLater:!!e.savedForLater,archived:a,onRename:Y?()=>ve(!0):void 0,onTogglePin:j,onToggleSaveForLater:M,onDockRight:w,onArchive:R}),be=S.jsxs(Ey,{selected:t,dataSessionId:e.id,dragging:r,nested:o,placeholder:s,className:pe||void 0,ariaExpanded:de?E:void 0,ariaDescribedBy:_,onSelect:A,onDragStart:O,onDragEnd:N,onDragOver:F,onDrop:L,onDoubleClick:Y?()=>ve(!0):void 0,children:[S.jsx("span",{className:"sidebar-source-slot",children:n??S.jsx(TG,{session:e})}),S.jsxs("span",{className:"sidebar-title-slot",children:[de?S.jsx("button",{type:"button",className:"sidebar-child-toggle","data-tooltip":E?"Hide subagent conversations":"Show subagent conversations","aria-label":`${E?"Hide":"Show"} ${P} subagent ${P===1?"conversation":"conversations"}`,"aria-expanded":E,onClick:ke=>{ke.stopPropagation(),$?.()},children:E?S.jsx(Go,{size:13}):S.jsx(Jo,{size:13})}):null,S.jsxs("span",{className:"row-label-shell",title:e.title,children:[S.jsx("span",{className:"sidebar-session-title-line",children:S.jsx("span",{className:"row-label sidebar-task-title","data-overflowing":"false",onPointerEnter:BG,children:S.jsx(CG,{title:e.title})})}),x?S.jsxs("span",{className:"sidebar-inbox-project",children:[h?S.jsxs(S.Fragment,{children:[S.jsx("span",{className:"sidebar-inbox-project-name",children:h}),S.jsx("span",{"aria-hidden":"true",children:"|"})]}):null,S.jsx(XP,{value:k??e.createdAt})]}):null]})]}),S.jsxs("div",{className:"row-meta",children:[S.jsxs("span",{className:"row-meta-status",children:[f?S.jsx(eA,{indicator:f}):null,X?S.jsx("span",{className:`sidebar-running-dot${H?" subagent":K?" goal":""}`,style:ee,"aria-label":Z}):null]}),me,x?S.jsx("button",{type:"button",className:"sidebar-inbox-done","aria-label":`${a?"Reopen":"Mark done"}: ${e.title}`,title:a?"Reopen":"Mark done (does not stop running work)",onClick:ke=>{ke.stopPropagation(),R()},children:a?S.jsx(c8,{size:19}):S.jsx(Pi,{size:21})}):null]})]}),Me=re&&Y?S.jsx(IG,{session:e,onSave:ke=>Y(e,ke),onClose:()=>ve(!1)}):null;return S.jsxs(S.Fragment,{children:[be,Me]})}function FG({file:e,selected:t=!1,placeholder:n,onSelect:a,onTogglePin:o,onToggleSaveForLater:r,onDragStart:s,onDragEnd:c,onDragOver:m,onDrop:u}){const f=e.path.split("/").at(-1)??e.path,h=`${e.workspaceName} · ${e.path}`;return S.jsxs(Ey,{selected:t,placeholder:n,className:`sidebar-file-row actions-2${e.available?"":" unavailable"}`,onSelect:a,onDragStart:s,onDragEnd:c,onDragOver:m,onDrop:u,children:[e.available?S.jsx(sy,{size:15}):S.jsx(mm,{size:15}),S.jsx("span",{className:"row-label-shell",title:h,children:S.jsx("span",{className:"row-label",children:f})}),S.jsx("div",{className:"row-meta",children:S.jsxs("div",{className:"sidebar-row-actions",children:[S.jsx(bm,{label:e.status==="pinned"?"Unpin file":"Pin file",onClick:o,children:e.status==="pinned"?S.jsx(uy,{size:13}):S.jsx(dy,{size:13})}),S.jsx(bm,{label:e.status==="saved_for_later"?"Remove from Save for later":"Save file for later",onClick:r,children:e.status==="saved_for_later"?S.jsx(fP,{size:13}):S.jsx(pP,{size:13})})]})})]})}function VG(e){return e.actionLabel}function KG({kind:e="local",project:t,pinned:n=!1,selected:a,expanded:o=!1,disclosure:r=!0,workspaceState:s,cloudLinkTrusted:c=!0,cloudLinkWarning:m=null,placeholder:u,terminalIndicator:f,onSelect:h,onNewChat:x,onMoveToCloud:k,onWorkspaceTargetSelect:_,onTogglePin:P,onRemove:E,onDragStart:A,onDragEnd:$,onDragOver:j,onDrop:M}){const[w,R]=y.useState(!1),O=y.useRef(null),[N,F]=y.useState({}),L=!!k||!!E,Y=e==="local"&&c!==!1&&!!t.linkedSandboxProject?.projectId,re=y.useCallback(()=>{if(typeof window>"u")return;const K=O.current?.getBoundingClientRect();if(!K)return;const H=Math.max(12,window.innerWidth-qG-12),de=Math.max(12,window.innerHeight-UG),X=Math.max(12,Math.min(K.right+10,H)),Z=Math.max(12,Math.min(K.top-4,de)),pe={"--sidebar-project-locations-left":`${Math.round(X)}px`,"--sidebar-project-locations-top":`${Math.round(Z)}px`};F(ee=>ee["--sidebar-project-locations-left"]===pe["--sidebar-project-locations-left"]&&ee["--sidebar-project-locations-top"]===pe["--sidebar-project-locations-top"]?ee:pe)},[]),ve=y.useCallback(()=>{re(),h()},[h,re]);function oe(){R(!1)}return S.jsxs("div",{ref:O,className:["sidebar-project-row-shell",w?"project-menu-open":""].filter(Boolean).join(" "),onFocusCapture:re,onPointerEnter:re,children:[S.jsxs(Ey,{selected:a,placeholder:u,className:["sidebar-project-row",w?"project-menu-open":""].filter(Boolean).join(" "),ariaExpanded:r?o:void 0,onSelect:ve,onDragStart:A,onDragEnd:$,onDragOver:j,onDrop:M,children:[S.jsx(YP,{kind:e,linkedCloud:Y,open:e==="local"&&o,className:"sidebar-row-icon",baseSize:15}),S.jsx("span",{className:"row-label-shell",children:S.jsxs("span",{className:"sidebar-project-title-line",children:[S.jsx("span",{className:"row-label",children:t.name}),S.jsxs("span",{className:"sidebar-row-updated-at",children:[S.jsx("span",{"aria-hidden":"true",children:"| "}),S.jsx(XP,{value:t.updatedAt})]}),r?S.jsx("span",{className:"sidebar-project-caret","aria-hidden":"true",children:o?S.jsx(Go,{size:13}):S.jsx(Jo,{size:13})}):null]})}),S.jsxs("div",{className:"row-meta",children:[S.jsx("span",{className:"row-meta-status",children:f?S.jsx(eA,{indicator:f}):null}),S.jsxs("div",{className:"sidebar-row-actions",children:[S.jsx(bm,{label:n?"Unpin project":"Pin project",onClick:P,children:n?S.jsx(uy,{size:13}):S.jsx(dy,{size:13})}),L&&S.jsx(o7,{open:w,onToggleOpen:()=>R(K=>!K)}),S.jsx(bm,{label:"New task",onClick:x,children:S.jsx(pp,{size:13})})]})]})]}),S.jsx(WG,{kind:e,project:t,workspaceState:s,cloudLinkTrusted:c,cloudLinkWarning:m,onWorkspaceTargetSelect:_,style:N}),w&&S.jsx(r7,{onClose:oe,onMoveToCloud:k?()=>{oe(),k()}:void 0,onRemove:()=>{oe(),E()}})]})}function eA({indicator:e}){return S.jsx("span",{className:`sidebar-terminal-indicator ${e.status}`,"data-tooltip":e.label,"aria-label":e.label,title:e.label,children:S.jsx(wP,{size:13})})}function WG({kind:e,project:t,workspaceState:n,cloudLinkTrusted:a,cloudLinkWarning:o,onWorkspaceTargetSelect:r,style:s}){const c=ZG(e,t,n,a,o);return S.jsxs("aside",{className:"sidebar-project-locations-popover","aria-label":`${t.name} status`,style:s,children:[S.jsx("div",{className:"sidebar-project-locations-title",children:t.name}),S.jsx("div",{className:"sidebar-project-location-list",children:c.map(m=>{const u=["sidebar-project-location-row",m.tone??"",m.actionTarget?"clickable":""].filter(Boolean).join(" "),f=S.jsxs(S.Fragment,{children:[S.jsx("span",{className:["sidebar-project-location-icon",m.key].filter(Boolean).join(" "),"aria-hidden":"true",children:m.icon}),S.jsx("span",{className:"sidebar-project-location-copy",children:S.jsx(GG,{value:m.value})})]});return m.actionTarget?S.jsx("button",{type:"button",className:u,"data-workspace-target":m.actionTarget,disabled:m.disabled||!r,title:m.disabledReason??void 0,onClick:h=>{h.stopPropagation(),!m.disabled&&r?.(m.actionTarget)},children:f},m.key):S.jsx("div",{className:u,children:f},m.key)})})]})}function GG({value:e}){const t=JG(e);return S.jsxs("span",{className:"sidebar-project-location-value","aria-label":e,children:[t.branch?S.jsxs(S.Fragment,{children:[S.jsx("span",{className:"sidebar-project-location-branch",children:t.branch}),S.jsx("span",{className:"sidebar-project-location-separator","aria-hidden":"true",children:"/"})]}):null,S.jsx("span",{className:"sidebar-project-location-status",children:t.status})]})}function JG(e){const n=e.indexOf(" / ");return n===-1?{branch:null,status:e}:{branch:e.slice(0,n),status:e.slice(n+3)}}function ZG(e,t,n,a=!0,o=null){return e==="cloud"?QG(t):YG(t,n,a,o)}function YG(e,t,n=!0,a=null){const o=XG(e,t,n),r=e7(t),s=n7(e,n),c=n===!1&&a;return[{key:"local",value:o,tone:r?"attention":"local",icon:e.source==="git"?S.jsx(ly,{size:13}):S.jsx(bP,{size:13}),actionTarget:"local"},{key:"cloud",value:c||(s?a7(e,t,n):"not in cloud"),tone:c?"attention":"cloud",icon:S.jsx(up,{size:13}),actionTarget:s?"cloud":"upload_cloud"}]}function QG(e){return[{key:"cloud",value:i7(e),tone:e.syncedAt?"cloud":"attention",icon:S.jsx(up,{size:13}),actionTarget:"cloud"}]}function XG(e,t,n){const a=t7(e,t);return t?t.error?`${a} / status unavailable`:t.initialized?GP(t,{branch:e.linkedSandboxProject?.defaultBranch??null,linkedCloudSourceKnown:e.linkedSandboxProject?.projectId&&n?!!e.linkedSandboxProject.lastUploadedCommit||!t.headCommit:!0}):`${a} / not checked out`:`${a} / available`}function e7(e){return!!(e?.dirty||(e?.changedFilesCount??0)>0||(e?.untrackedFilesCount??0)>0)}function t7(e,t){return t?.currentBranch??t?.defaultBranch??e.linkedSandboxProject?.defaultBranch??"local"}function n7(e,t=!0){return!!(t&&e.linkedSandboxProject?.projectId||e.linkedOpenPondApp?.appId)}function a7(e,t,n){return JP(e,null,t,{cloudLinkTrusted:n})}function i7(e){const t=e.defaultBranch??"main",n=e.syncedAt?"setup ready":"needs setup";return`${t} / ${n}`}function o7({open:e,onToggleOpen:t}){return S.jsx("button",{type:"button",className:`sidebar-row-action ${e?"active":""}`,"data-tooltip":"More project actions","aria-label":"More project actions","aria-haspopup":"menu","aria-expanded":e,onClick:n=>{n.stopPropagation(),t()},children:S.jsx(yd,{size:13})})}function r7({onClose:e,onMoveToCloud:t,onRemove:n}){return S.jsxs(S.Fragment,{children:[S.jsx("button",{type:"button",className:"sidebar-project-menu-backdrop","aria-label":"Close project actions",onClick:a=>{a.stopPropagation(),e()}}),S.jsxs("div",{className:"section-menu-popover sidebar-project-row-popover",role:"menu",children:[t&&S.jsxs("button",{type:"button",role:"menuitem",onClick:a=>{a.stopPropagation(),t()},children:[S.jsx(bG,{size:13}),S.jsx("span",{children:"Move to Cloud"})]}),S.jsxs("button",{type:"button",role:"menuitem",onClick:a=>{a.stopPropagation(),n()},children:[S.jsx(Sd,{size:13}),S.jsx("span",{children:"Remove from Projects"})]})]})]})}function Ey({children:e,className:t,dataSessionId:n,dragging:a,iconless:o=!1,nested:r=!1,placeholder:s=!1,selected:c,ariaExpanded:m,ariaDescribedBy:u,onSelect:f,onDragStart:h,onDragEnd:x,onDragOver:k,onDrop:_,onDoubleClick:P}){const E=!!h;return S.jsx("div",{className:["sidebar-row",t??"",c?"selected":"",a?"dragging":"",o?"iconless":"",r?"nested":"",s?"placeholder":""].filter(Boolean).join(" "),draggable:E,"data-session-id":n,role:"button",tabIndex:0,"aria-expanded":m,"aria-describedby":u,onClick:f,onDoubleClick:P,onKeyDown:A=>{A.target===A.currentTarget&&(A.key==="Enter"||A.key===" ")&&(A.preventDefault(),f())},onDragStart:h,onDragEnd:x,onDragEnter:A=>{k&&(A.preventDefault(),A.dataTransfer.dropEffect="move",k(A))},onDragOver:A=>{k&&(A.preventDefault(),A.dataTransfer.dropEffect="move",k(A))},onDrop:A=>{_&&(A.preventDefault(),_(A))},children:e})}function bm({children:e,label:t,onClick:n}){return S.jsx("button",{type:"button",className:"sidebar-row-action","data-tooltip":t,"aria-label":t,onClick:a=>{a.stopPropagation(),n()},children:e})}function s7({filter:e,activityOrder:t=!1,groupByProject:n,noun:a,onFilterChange:o,onGroupByProjectChange:r,onOnlyRunningTasksChange:s,onShowCodexChatsChange:c,onTasksetChange:m,onSortChange:u,onlyRunningTasks:f,openMenu:h,setOpenMenu:x,showCodexChats:k,sort:_,selectedTasksetId:P,tasksets:E}){const A=y.useRef(null),[$,j]=y.useState(!1),w=E.find(N=>N.id===P)?.name??Rx.find(N=>N.value===e)?.label??"Active",R=h==="tasks-filter",O=h==="chats";return y.useEffect(()=>{if(!R&&!O)return;function N(F){A.current?.contains(F.target)||x(null)}return document.addEventListener("pointerdown",N),()=>document.removeEventListener("pointerdown",N)},[R,x,O]),S.jsxs("div",{className:"sidebar-task-list-controls",ref:A,children:[S.jsxs("div",{className:"section-menu",children:[S.jsx("button",{type:"button",className:`section-icon ${O?"active":""}`,"aria-label":`${a==="tasks"?"Task":"Chat"} list options`,"aria-haspopup":"menu","aria-expanded":O,onClick:()=>x(N=>N==="chats"?null:"chats"),children:S.jsx(yd,{size:14})}),O?S.jsxs("div",{className:"section-menu-popover",role:"menu","aria-label":`${a==="tasks"?"Task":"Chat"} list options`,children:[S.jsxs("button",{type:"button",role:"menuitemcheckbox","aria-checked":k,onClick:()=>c(!k),children:[S.jsx("span",{className:"section-menu-check","aria-hidden":"true",children:k?S.jsx(Pi,{size:13}):null}),S.jsx("span",{children:"Show Codex chats, including pinned"})]}),S.jsxs("button",{type:"button",role:"menuitemcheckbox","aria-checked":f,onClick:()=>s(!f),children:[S.jsx("span",{className:"section-menu-check","aria-hidden":"true",children:f?S.jsx(Pi,{size:13}):null}),S.jsxs("span",{children:["Only running ",a,", including pinned"]})]}),a==="tasks"&&!t?S.jsxs("button",{type:"button",role:"menuitemcheckbox","aria-checked":n,onClick:()=>r(!n),children:[S.jsx("span",{className:"section-menu-check","aria-hidden":"true",children:n?S.jsx(Pi,{size:13}):null}),S.jsx("span",{children:"Group by project"})]}):null,t?S.jsx("p",{className:"empty-row",children:"Latest activity first"}):rG.map(N=>S.jsxs("button",{type:"button",role:"menuitemradio","aria-checked":_===N.value,onClick:()=>{u(N.value),x(null)},children:[S.jsx("span",{className:"section-menu-check","aria-hidden":"true",children:_===N.value?S.jsx(Pi,{size:13}):null}),S.jsx("span",{children:N.label})]},N.value))]}):null]}),S.jsxs("div",{className:"section-menu",children:[S.jsx("button",{type:"button",className:`section-icon ${R?"active":""}`,"aria-label":`Filter ${a}: ${w}`,"aria-haspopup":"menu","aria-expanded":R,onClick:()=>x(N=>N==="tasks-filter"?null:"tasks-filter"),children:S.jsx(WW,{size:14})}),R?S.jsx("div",{className:"section-menu-popover",role:"menu","aria-label":`Filter ${a}`,children:Rx.map(N=>S.jsxs(y.Fragment,{children:[N.value==="tasksets"?S.jsxs("button",{type:"button",role:"menuitem","aria-expanded":$,onClick:()=>j(F=>!F),children:[S.jsx("span",{className:"section-menu-check","aria-hidden":"true",children:$?S.jsx(Go,{size:13}):S.jsx(Jo,{size:13})}),S.jsx("span",{children:N.label})]}):S.jsxs("button",{type:"button",role:"menuitemradio","aria-checked":e===N.value,onClick:()=>{o(N.value),x(null)},children:[S.jsx("span",{className:"section-menu-check","aria-hidden":"true",children:e===N.value?S.jsx(Pi,{size:13}):null}),S.jsx("span",{children:N.label})]}),N.value==="tasksets"&&$?S.jsxs(S.Fragment,{children:[S.jsxs("button",{className:"section-menu-taskset-option",type:"button",role:"menuitemradio","aria-checked":e==="tasksets"&&!P,onClick:()=>{m(null),x(null)},children:[S.jsx("span",{className:"section-menu-check","aria-hidden":"true",children:e==="tasksets"&&!P?S.jsx(Pi,{size:13}):null}),S.jsx("span",{children:"All Tasksets"})]}),E.map(F=>S.jsxs("button",{className:"section-menu-taskset-option",type:"button",role:"menuitemradio","aria-checked":e==="tasksets"&&P===F.id,onClick:()=>{m(F.id),x(null)},children:[S.jsx("span",{className:"section-menu-check","aria-hidden":"true",children:e==="tasksets"&&P===F.id?S.jsx(Pi,{size:13}):null}),S.jsx("span",{children:F.name}),S.jsx("span",{className:"section-menu-option-count","aria-hidden":"true",children:F.chatCount})]},F.id))]}):null]},N.value))}):null]})]})}function l7({onAddProject:e,onViewProjects:t}){const[n,a]=y.useState(!1),o=y.useRef(null),r=y.useRef(null);return y.useEffect(()=>{if(!n)return;o.current?.querySelector('[role="menuitem"]')?.focus();const s=c=>{o.current?.contains(c.target)||a(!1)};return document.addEventListener("pointerdown",s),()=>document.removeEventListener("pointerdown",s)},[n]),S.jsxs(S.Fragment,{children:[S.jsxs("div",{className:"section-menu",ref:o,onKeyDown:s=>{s.key==="Escape"&&(s.stopPropagation(),a(!1),r.current?.focus())},children:[S.jsx("button",{ref:r,type:"button",className:`section-icon${n?" active":""}`,"aria-label":"Project options","aria-haspopup":"menu","aria-expanded":n,onClick:()=>a(s=>!s),children:S.jsx(yd,{size:14})}),n?S.jsxs("div",{className:"section-menu-popover",role:"menu","aria-label":"Project options",children:[S.jsx("button",{type:"button",role:"menuitem",onClick:()=>{a(!1),t()},children:"View all projects"}),S.jsx("button",{type:"button",role:"menuitem",onClick:()=>{a(!1),e()},children:"Add project"})]}):null]}),S.jsx("button",{type:"button",className:"section-icon",onClick:e,"aria-label":"Add project",title:"Add project",children:"+"})]})}const c7=240,d7=36;function u7(e,t,n=!1){const a=Math.max(12,t.width-c7-12),o=Math.max(12,t.height-d7-(n?22:0)-12);return{"--sidebar-task-detail-left":`${Math.round(Math.max(12,Math.min(e.right+10,a)))}px`,"--sidebar-task-detail-top":`${Math.round(Math.max(12,Math.min(e.top-4,o)))}px`}}function m7({detail:e,onClose:t}){if(y.useEffect(()=>{if(!e||typeof window>"u")return;const o=c=>{c.key==="Escape"&&t()};let r=!1;const s=window.requestAnimationFrame(()=>{window.addEventListener("scroll",t,!0),r=!0});return window.addEventListener("keydown",o),()=>{window.cancelAnimationFrame(s),window.removeEventListener("keydown",o),r&&window.removeEventListener("scroll",t,!0)}},[e,t]),!e)return null;const n=new Date(e.updatedAt),a=new Intl.DateTimeFormat(void 0,{dateStyle:"medium",timeStyle:"short"}).format(n);return S.jsxs("aside",{id:e.descriptionId,className:"sidebar-task-detail-popover",style:e.style,role:"tooltip","aria-label":`Last updated for ${e.title}`,children:[S.jsx("time",{dateTime:e.updatedAt,children:a}),e.folderName?S.jsxs("div",{className:"sidebar-task-detail-folder",children:[S.jsx(bP,{size:13,"aria-hidden":"true"}),S.jsx("span",{children:e.folderName})]}):null]})}function p7({children:e,expanded:t,groupKey:n,kind:a,label:o,onToggle:r,onNewTask:s,onOpenProject:c,onRemoveProject:m,project:u}){const f=`sidebar-task-group-${n.replace(/[^a-zA-Z0-9_-]/g,"-")}`,h=a==="draft"?sy:mp,[x,k]=y.useState(!1),_=!!(s||c||m);return S.jsxs("section",{className:"sidebar-task-project-group",children:[S.jsxs("div",{className:`sidebar-task-project-group-header-shell${x?" menu-open":""}`,children:[S.jsxs("button",{type:"button",className:"sidebar-task-project-group-header","aria-controls":f,"aria-expanded":t,onClick:()=>{k(!1),r()},children:[u?S.jsx(YP,{kind:u.kind,linkedCloud:!!(u.kind==="local"&&u.project.linkedSandboxProject?.projectId),open:u.kind==="local"&&t,className:"sidebar-task-project-group-icon",baseSize:14}):S.jsx(h,{className:"sidebar-task-project-group-icon",size:14,"aria-hidden":"true"}),S.jsx("span",{className:"sidebar-task-project-group-name",children:o}),S.jsx("span",{className:"sidebar-task-project-group-caret","aria-hidden":"true",children:t?S.jsx(Go,{size:13}):S.jsx(Jo,{size:13})})]}),u&&_?S.jsxs("div",{className:"sidebar-task-project-group-actions",children:[c||m?S.jsx("button",{type:"button",className:`sidebar-row-action${x?" active":""}`,"data-tooltip":"More project actions","aria-label":"More project actions","aria-expanded":x,"aria-haspopup":"menu",onClick:()=>k(P=>!P),children:S.jsx(yd,{size:13})}):null,s?S.jsx("button",{type:"button",className:"sidebar-row-action","data-tooltip":"New task","aria-label":"New task",onClick:s,children:S.jsx(pp,{size:13})}):null]}):null,x?S.jsxs(S.Fragment,{children:[S.jsx("button",{type:"button",className:"sidebar-task-project-group-menu-backdrop","aria-label":"Close project actions",onClick:()=>k(!1)}),S.jsxs("div",{className:"section-menu-popover sidebar-task-project-group-menu",role:"menu",children:[c?S.jsx("button",{type:"button",role:"menuitem",onClick:()=>{k(!1),c()},children:S.jsx("span",{children:"Open project"})}):null,m?S.jsxs("button",{type:"button",role:"menuitem",onClick:()=>{k(!1),m()},children:[S.jsx(Sd,{size:13}),S.jsx("span",{children:"Remove from Projects"})]}):null]})]}):null]}),t?S.jsx("div",{id:f,className:"sidebar-task-project-group-content",children:e}):null]})}const f7={},h7=new Map,g7=new Map;function v7(e,t){return Math.min(Math.max(e,Fn)+Fg,t)}function b7(e,t){const n=Math.max(Fn,Math.min(e,t));if(n<=Fn)return Fn;const a=Math.ceil((n-Fn)/Fg);return Math.max(Fn,Fn+(a-1)*Fg)}function y7(e,t){const n=new Map;for(const a of e){const o=t(a),r=n.get(o.key);r?r.sessions.push(a):n.set(o.key,{...o,sessions:[a]})}return[...n.values()]}function S7({activeSessions:e,activityTimes:t={},onSelectSession:n,archiveSession:a,archivedSessions:o,chatRowsVisibleCount:r,childSessionRowsByParentId:s={},cloudProjectRows:c,beginProjectChat:m,onAddProject:u,commitTaskDrop:f,commitTaskPreviewDrop:h,dockSessionRight:x,experience:k="work",goalRuntimeBySessionId:_=h7,localProjectRows:P,openSidebarFile:E,pinnedCollapsed:A,pinnedRows:$,previewTaskDrop:j,previewPinnedDrop:M,projectRows:w,renameSession:R,restoreSession:O,runningSessionIds:N,sectionMenuOpen:F,selectedProjectId:L,selectedSessionId:Y,setChatRowsVisibleCount:re,setSectionMenuOpen:ve,setSelectedAppId:oe,setSelectedProjectId:K,setSelectedSessionId:H,setView:de,sidebarProjectIdBySessionId:X,startTaskDrag:Z,startPinnedDrag:pe,subagentRuntimeBySessionId:ee=g7,taskDragSessionId:me,taskPreviewSessionIds:be,terminalSummaries:Me=f7,toggleSessionPinned:ke,toggleSessionSavedForLater:ue,view:Ie,clearTaskDrag:Le,removeProject:Fe,toggleProjectPinned:Xe,onTogglePinnedCollapsed:Ze,setSidebarFileStatus:Be,commitPinnedDrop:Ge,commitPinnedPreviewDrop:Ve,clearSidebarDrag:U,dragItem:J}){const[q,ie]=y.useState(()=>Fo.getItem("openpond.sidebar.presentation.v1")==="inbox"?"inbox":"grouped");al(()=>ie(Fo.getItem("openpond.sidebar.presentation.v1")==="inbox"?"inbox":"grouped"));const he=q==="inbox",[Pe,qe]=y.useState("active"),[Je,et]=y.useState("recent"),[ut,_t]=y.useState(!0);y.useEffect(()=>{k!=="chat"&&_t(!0)},[k]);const[Ne,Ye]=y.useState({work:!1,chat:!0}),[g,B]=y.useState({work:!1,chat:!1}),ne=k==="chat"?"chat":"work",we=Ne[ne],[fe,Q]=y.useState(jx);al(()=>Q(jx()));const{onlyRunningTasks:C,showCodexChats:G}=fe,[se,te]=y.useState(null),[ge,Se]=y.useState(()=>new Set),[xe,Oe]=y.useState(()=>new Map),[Te,Ue]=y.useState(null);y.useEffect(()=>{L&&Ye(V=>V[ne]?{...V,[ne]:!1}:V)},[ne,L]);const Ee=k==="chat"?"chats":"tasks",tt=w??[...P,...c],ht=y.useMemo(()=>new Map(tt.map(V=>[V.id,V.project.name])),[tt]),xn=y.useMemo(()=>new Map(tt.map(V=>[V.id,V])),[tt]),xt=y.useMemo(()=>{const V=new Set(N);for(const Ae of[...e,...Object.values(s).flat()]){const De=_.get(Ae.id),rt=ee.get(Ae.id);(De?.tone==="active"&&De.status!=="queued"||(rt?.activeCount??0)>0||ea(Ae.id)?.status==="running")&&V.add(Ae.id)}return V},[e,s,_,N,ee,Me]),Xn=y.useMemo(()=>Th({activeSessions:e,doneSessions:o,filter:"all",inProgressSessionIds:xt,sort:"manual"}),[e,o,xt]),kn=y.useMemo(()=>Th({activeSessions:e,doneSessions:o,filter:Pe,inProgressSessionIds:xt,onlyRunningTasks:C,selectedTasksetId:se,previewSessionIds:be,showCodexChats:G,sort:Je}),[e,o,xt,C,se,G,Pe,be,Je]),Rn=y.useMemo(()=>{const V=new Map;for(const Ae of[...e,...o]){if(!Nu(Ae,{inProgressSessionIds:xt,onlyRunningTasks:C,showCodexChats:G}))continue;const De=js(Ae);if(!De)continue;const rt=V.get(De.id);rt?rt.chatCount+=1:V.set(De.id,{...De,chatCount:1})}return[...V.values()].sort((Ae,De)=>Ae.name.localeCompare(De.name))},[e,o,xt,C,G]),Zt=y.useMemo(()=>$.filter(V=>V.type!=="session"||Nu(V.session,{inProgressSessionIds:xt,onlyRunningTasks:C,showCodexChats:G})),[xt,C,$,G]),On=y.useMemo(()=>kn.filter(V=>!vc(V)),[kn]),Pn=y.useMemo(()=>On.slice(0,Math.max(Fn,r)),[r,On]),$n=y.useMemo(()=>{const V=y7(Pn,Ae=>{if(zc(Ae))return{key:"draft",label:"Drafts",projectId:null,project:null,kind:"draft"};const De=X[Ae.id],rt=$t(Ae)??"Work";return{key:De?`project:${De}`:`projectless:${rt}`,label:rt,projectId:De??null,project:De?xn.get(De)??null:null,kind:De?"project":"projectless"}});for(const Ae of tt)V.some(De=>De.projectId===Ae.id)||V.push({key:`project:${Ae.id}`,label:Ae.project.name,projectId:Ae.id,project:Ae,kind:"project",sessions:[]});return V},[tt,ht,xn,X,Pn]),Un=Pn.length<On.length,Gt=Pn.length>Fn,Ct=y.useMemo(()=>new Set($n.filter(V=>V.sessions.some(Ae=>Ae.id===Y||xt.has(Ae.id))).map(V=>V.key)),[$n,xt,Y]),Nn=Xn.filter(V=>!vc(V)).map(V=>V.id),pt=Pn.map(V=>V.id),Nt=JSON.stringify(Object.entries(s).filter(([V,Ae])=>Ae.some(De=>!De.archived)&&(ee.get(V)?.activeCount??0)>0).flatMap(([V,Ae])=>Ae.filter(De=>!De.archived).map(De=>[V,De.id])).sort(([V,Ae],[De,rt])=>V.localeCompare(De)||Ae.localeCompare(rt)));y.useEffect(()=>{const V=JSON.parse(Nt);if(V.length===0)return;const Ae=new Set(V.map(([De])=>De));Se(De=>[...Ae].every(rt=>De.has(rt))?De:new Set([...De,...Ae]))},[Nt]);function ea(V){return pG(Me[WP({kind:"session",id:V})])}function $t(V){if(zc(V))return"Draft";const Ae=X[V.id];return Ae?ht.get(Ae)??V.workspaceName??"Project":eG(V)}function zn(V){if(n){n(V);return}Ft({kind:"chat",sessionId:V.id}),H(V.id);const Ae=X[V.id]??null;oe(Ae?null:V.appId),K(Ae),de("chat")}function xa(V){return(s[V.id]??[]).filter(Ae=>!Ae.archived&&Nu(Ae,{inProgressSessionIds:xt,onlyRunningTasks:C,showCodexChats:G}))}function lt(V,Ae){return ge.has(V.id)||Ae.some(De=>De.id===Y)}function Dn(V){Se(Ae=>{const De=new Set(Ae);return De.has(V)?De.delete(V):De.add(V),De})}function gi(V){const Ae=xa(V);return Ae.length===0||!lt(V,Ae)?null:S.jsx("div",{className:"sidebar-child-session-group",children:Ae.map(De=>S.jsx(jh,{session:De,selected:Ie==="chat"&&Y===De.id,nested:!0,running:xt.has(De.id),goalRuntime:_.get(De.id)??null,subagentRuntime:ee.get(De.id)??null,terminalIndicator:ea(De.id),projectLabel:$t(V),onSelect:()=>zn(De),onTogglePin:()=>ke(De),onToggleSaveForLater:()=>ue(De),onDockRight:()=>x(De),onArchive:()=>De.archived?O(De):a(De),onRename:R},De.id))})}function ka(V,Ae){if(typeof window>"u")return;const De=vc(V)?$t(V):null;Ue({descriptionId:`sidebar-task-detail-${V.id}`,sessionId:V.id,title:V.title,updatedAt:V.updatedAt,folderName:De,style:u7(Ae.getBoundingClientRect(),{width:window.innerWidth,height:window.innerHeight},!!De)})}function Gn(V,Ae={}){const De=V.archived,rt=me===V.id,Vt=xa(V),ca="sidebar-session-group",vi=!he&&Je==="manual"?{onDragStart:wn=>Z(wn,{allSessionIds:Nn,visibleSessionIds:pt,sessionId:V.id}),onDragEnd:Le,onDragOver:wn=>{rt||j(wn,V.id)},onDrop:wn=>{rt?h():f(wn,V.id)}}:{};return S.jsxs("div",{className:ca,onPointerEnter:wn=>ka(V,wn.currentTarget),onPointerLeave:()=>Ue(null),onFocusCapture:wn=>ka(V,wn.currentTarget),onBlurCapture:wn=>{wn.currentTarget.contains(wn.relatedTarget)||Ue(null)},children:[S.jsx(jh,{session:V,selected:!De&&Ie==="chat"&&Y===V.id,archived:De,inbox:he,activityAt:Fu(V,t),placeholder:rt,running:xt.has(V.id),goalRuntime:_.get(V.id)??null,subagentRuntime:ee.get(V.id)??null,terminalIndicator:ea(V.id),projectLabel:Ae.projectLabel===void 0?$t(V):Ae.projectLabel,metadataPresentation:Ae.metadataPresentation,ariaDescribedBy:Te?.sessionId===V.id?Te.descriptionId:void 0,childSessionCount:Vt.length,childSessionsExpanded:lt(V,Vt),onToggleChildSessions:()=>Dn(V.id),onSelect:()=>{Ue(null),De&&O(V),zn(V)},onTogglePin:()=>ke(V),onToggleSaveForLater:()=>ue(V),onDockRight:()=>x(V),onArchive:()=>De?O(V):a(V),onRename:R,...vi}),!he&&!rt?gi(V):null]},V.id)}function Hn(V){V!=="tasksets"&&te(null),qe(V),re(Fn)}function Vi(V){te(V),qe("tasksets"),re(Fn)}function Ki(V){et(V),re(Fn)}function ei(){re(V=>v7(V,On.length))}function wt(){re(V=>b7(V,On.length))}function pn(V){const Ae={id:V.id,type:V.type};return{onDragStart:De=>pe(De,Ae),onDragEnd:U,onDragOver:De=>M(De,Ae),onDrop:De=>{J?.id===V.id&&J.type===V.type?Ve():Ge(De,Ae)}}}function it(V){const Ae=pn(V),De=J?.id===V.id&&J.type===V.type;if(V.type==="project"){const Vt=V.item;return S.jsx(KG,{kind:Vt.kind,project:Vt.project,pinned:!0,selected:Ie==="chat"&&L===Vt.id,expanded:!1,disclosure:!1,placeholder:De,onSelect:()=>{oe(null),K(Vt.id),H(null),de("chat")},onNewChat:()=>m(Vt.id),onTogglePin:()=>Xe(Vt),onRemove:()=>Fe(Vt),...Ae},V.key)}if(V.type==="file")return S.jsx(FG,{file:V.file,placeholder:De,onSelect:()=>E(V.file),onTogglePin:()=>Be(V.file,"none"),onToggleSaveForLater:()=>Be(V.file,"saved_for_later"),...Ae},V.key);const rt=V.session;return S.jsx("div",{onPointerEnter:Vt=>ka(rt,Vt.currentTarget),onPointerLeave:()=>Ue(null),onFocusCapture:Vt=>ka(rt,Vt.currentTarget),onBlurCapture:Vt=>{Vt.currentTarget.contains(Vt.relatedTarget)||Ue(null)},children:S.jsx(jh,{ariaDescribedBy:Te?.sessionId===rt.id?Te.descriptionId:void 0,session:rt,selected:Ie==="chat"&&Y===rt.id,placeholder:De,running:xt.has(rt.id),goalRuntime:_.get(rt.id)??null,subagentRuntime:ee.get(rt.id)??null,terminalIndicator:ea(rt.id),projectLabel:$t(rt),metadataPresentation:"flyout",onSelect:()=>{Ue(null),zn(rt)},onTogglePin:()=>ke(rt),onToggleSaveForLater:()=>ue(rt),onDockRight:()=>x(rt),onArchive:()=>a(rt),onRename:R,...Ae})},V.key)}function Et(V){const Ae=Ct.has(V.key)||xe.get(V.key)!==!1;return S.jsx(p7,{expanded:Ae,groupKey:V.key,kind:V.kind,label:V.label,onToggle:()=>{Oe(De=>{const rt=new Map(De);return rt.set(V.key,!Ae),rt})},onNewTask:V.project?()=>m(V.project.id):void 0,onOpenProject:V.project?()=>{oe(null),K(V.project.id),H(null),de("chat")}:void 0,onRemoveProject:V.project?()=>Fe(V.project):void 0,project:V.project,children:V.sessions.map(De=>Gn(De,{metadataPresentation:"flyout",projectLabel:V.label}))},V.key)}const ln=S.jsx(s7,{activityOrder:he,filter:Pe,groupByProject:ut,noun:Ee,onFilterChange:Hn,onGroupByProjectChange:_t,onOnlyRunningTasksChange:V=>{Q(Ae=>{const De={...Ae,onlyRunningTasks:V};return Mx(De),De}),re(Fn)},onShowCodexChatsChange:V=>{Q(Ae=>{const De={...Ae,showCodexChats:V};return Mx(De),De}),re(Fn)},onTasksetChange:Vi,onSortChange:Ki,onlyRunningTasks:C,openMenu:F,setOpenMenu:ve,showCodexChats:G,sort:Je,selectedTasksetId:se,tasksets:Rn}),Ln=Th({activeSessions:Object.values(s).flat().filter(V=>!V.archived),doneSessions:Object.values(s).flat().filter(V=>V.archived),filter:Pe,inProgressSessionIds:xt,onlyRunningTasks:C,selectedTasksetId:se,showCodexChats:G,sort:"recent"}),mt=jE([...kn,...Ln],t,xt);return S.jsxs("div",{className:"sidebar-sections",children:[S.jsxs("div",{className:"sidebar-threads-header",children:[S.jsx("span",{children:"Threads"}),S.jsxs("div",{className:"sidebar-threads-header-actions",children:[he?ln:null,S.jsx("button",{type:"button",className:`sidebar-icon${he?" active":""}`,"aria-label":he?"Show grouped threads":"Show thread inbox",title:he?"Grouped threads":"Thread inbox","aria-pressed":he,onClick:()=>{const V=he?"grouped":"inbox";ie(V),Fo.setItem("openpond.sidebar.presentation.v1",V)},children:he?S.jsx(x8,{size:16}):S.jsx(py,{size:16})})]})]}),he?S.jsxs("section",{className:"sidebar-thread-inbox","aria-label":"Thread inbox",children:[ME(mt,t,xt).map(V=>S.jsxs("div",{children:[V.label?S.jsx("h3",{className:"sidebar-inbox-date",children:V.label}):null,V.sessions.map(Ae=>Gn(Ae,{projectLabel:X[Ae.id]?$t(Ae):null}))]},V.key)),mt.length===0?S.jsx("div",{className:"empty-row",children:Ax(Pe,Ee)}):null]}):S.jsxs(S.Fragment,{children:[Zt.length>0?S.jsx(Eh,{label:"Pinned",className:"sidebar-pinned-section",collapsed:A,onToggleCollapsed:Ze,children:Zt.map(it)}):null,S.jsx(Eh,{label:"Projects",className:`sidebar-projects-section${k!=="chat"?" development":""}`,collapsed:we,onToggleCollapsed:()=>Ye(V=>({...V,[ne]:!V[ne]})),actions:S.jsx(l7,{onAddProject:u,onViewProjects:()=>{(async()=>await Ft({kind:"view",view:"projects"})&&(oe(null),K(null),H(null),de("projects")))()}}),children:$n.filter(V=>V.kind==="project").map(V=>Et(k==="chat"||!ut?{...V,sessions:[]}:V))}),S.jsxs(Eh,{label:k==="chat"?"Chat":"Work",className:"sidebar-task-section sidebar-ordinary-section",collapsed:g[ne],onToggleCollapsed:()=>B(V=>({...V,[ne]:!V[ne]})),actionsVisible:F==="chats"||F==="tasks-filter"||Pe!=="active"||C||!G,actions:ln,children:[(k==="chat"||!ut?Pn:Pn.filter(V=>!X[V.id])).map(V=>Gn(V)),On.length===0&&Zt.length===0?S.jsx("div",{className:"empty-row",children:Ax(Pe,Ee)}):null,On.length>Fn&&(Un||Gt)?S.jsxs("div",{className:"sidebar-pagination-controls","aria-label":`Showing ${Pn.length} of ${On.length} ${Ee}`,children:[Un?S.jsx(Hx,{onClick:ei,children:"Show more"}):null,Gt?S.jsx(Hx,{onClick:wt,children:"Show less"}):null]}):null]})]}),S.jsx(m7,{detail:Te,onClose:()=>Ue(null)})]})}const x7=y.lazy(()=>Zo(()=>import("./TerminalOverlay-CFlH51DD.js"),__vite__mapDeps([0,1,2,3])).then(e=>({default:e.TerminalOverlay})));function k7({connection:e,command:t,onClose:n,onComplete:a}){const[o,r]=y.useState([]),[s]=y.useState(()=>({kind:"draft",id:`native-setup-${crypto.randomUUID()}`})),c=y.useRef(!1),[m]=y.useState(()=>({id:Date.now(),scope:s,command:t}));return y.useEffect(()=>{!c.current&&o.some(u=>u.lastExitCode!==null&&(u.commandStatus==="success"||u.commandStatus==="failed"))&&(c.current=!0,a?.())},[o,a]),vm.createPortal(S.jsx("div",{className:"native-setup-terminal",children:S.jsx(y.Suspense,{fallback:S.jsx("p",{role:"status",children:"Opening setup terminal…"}),children:S.jsx(x7,{open:!0,disposeOnUnmount:!0,connection:e,scope:s,tabs:o,onTabsChange:r,cwd:null,appId:null,workspaceName:"Agent setup",queuedCommand:m,onClose:n})})}),document.body)}const uu={codex:"Codex",claude_code:"Claude Code",opencode:"OpenCode",grok_build:"Grok Build",hermes:"Hermes",pi:"Pi",oh_my_pi:"Oh My Pi",openclaw:"OpenClaw"};function w7({status:e,busy:t,onControl:n,onConnectionControl:a,onReconnect:o}){const r=e.desiredState==="stopped",s=r?"Importer stopped":e.running?"Importer running":"Importer offline";return S.jsxs("div",{className:"sidebar-section native-importer-status",children:[S.jsx("strong",{children:s}),e.connections.map(c=>{const m=c.backfill,u=m.stage==="complete",f=m.admitted+m.skipped;return S.jsxs("div",{className:"native-importer-connection",children:[S.jsxs("span",{children:[c.error?S.jsx(mm,{size:12}):u?S.jsx(Pi,{size:12}):S.jsx(cy,{size:12}),uu[c.source]??c.source]}),S.jsx("small",{children:c.state==="paused"?"Paused":c.state==="disconnected"?"Disconnected":u?e.running&&!r?"Watching for new conversations":`${m.admitted} conversations imported`:m.stage==="discovering"?"Finding conversations":`${f} of ${m.total} conversations processed`}),S.jsxs("small",{children:[c.admitted," tasks admitted",m.skipped>0?`, ${m.skipped} conversations skipped`:"",m.failed>0?`, ${m.failed} failed`:""]}),!u&&m.total>0?S.jsx("progress",{"aria-label":`${uu[c.source]??c.source} import progress`,value:f,max:m.total}):null,c.queued>0?S.jsxs("small",{children:[c.queued," updates waiting to upload (",new Intl.NumberFormat(void 0,{notation:"compact"}).format(c.pendingBytes)," bytes)"]}):null,c.lastAdmissionAt?S.jsxs("small",{children:["Last synced ",S.jsx("time",{dateTime:c.lastAdmissionAt,children:new Date(c.lastAdmissionAt).toLocaleString()})]}):S.jsx("small",{children:"No uploads acknowledged yet"}),c.destinationLinks?.tasks?S.jsx("a",{href:c.destinationLinks.tasks,target:"_blank",rel:"noopener noreferrer",children:"View tasks"}):null,c.destinationLinks?.conversations?S.jsx("a",{href:c.destinationLinks.conversations,target:"_blank",rel:"noopener noreferrer",children:"View conversations"}):null,c.error?S.jsx("small",{role:"status",children:c.error}):null,c.state==="disconnected"?S.jsx("button",{type:"button",disabled:t,onClick:()=>o(c.id),children:"Reconnect source"}):S.jsxs("div",{children:[S.jsxs("button",{type:"button",disabled:t,onClick:()=>a(c.state==="paused"?"resume":"pause",c.id),children:[c.state==="paused"?"Resume":"Pause"," ",uu[c.source]??c.source]}),S.jsxs("button",{type:"button",disabled:t,onClick:()=>a("disconnect",c.id),children:["Disconnect ",uu[c.source]??c.source]})]})]},c.id)}),S.jsx("button",{type:"button",disabled:t||r,onClick:()=>n("sync"),children:"Sync now"}),S.jsxs("button",{type:"button",disabled:t,onClick:()=>n(r||!e.running?"start":"stop"),children:[r?"Start":e.running?"Stop":"Restart"," importer"]}),!e.running&&!r?S.jsx("button",{type:"button",disabled:t,onClick:()=>n("stop"),children:"Stop importer"}):null,!e.running&&!r?S.jsx("button",{type:"button",disabled:t,onClick:()=>n("install"),children:"Reinstall background service"}):null]})}function I7({title:e,inspection:t,busy:n,onSelect:a,onRefresh:o,onClose:r}){return S.jsxs("section",{className:"native-branch-picker","aria-label":"Choose Claude conversation branch",children:[S.jsx("strong",{children:e||"Claude conversation"}),S.jsx("p",{children:"This conversation has multiple branches. Choose the history to view. Each branch opens as a read-only snapshot."}),t.branches.map(s=>S.jsxs("button",{type:"button",disabled:n,onClick:()=>a({leafId:s.leafId,revision:t.revision}),children:[S.jsx("span",{children:s.title||"Branch without a text message"}),S.jsxs("small",{children:[s.messages," messages · ",s.updatedAt?new Date(s.updatedAt).toLocaleString():"Date unavailable"]}),S.jsx("code",{children:s.leafId})]},s.leafId)),S.jsxs("div",{children:[S.jsx("button",{type:"button",disabled:n,onClick:o,children:"Refresh branches"}),S.jsx("button",{type:"button",disabled:n,onClick:r,children:"Cancel"})]})]})}function _7({connection:e,selectedSessionId:t,selectedSession:n,active:a=!0,onOpen:o}){const r=y.useRef({selectedSessionId:t,active:a});r.current={selectedSessionId:t,active:a};const s=y.useRef(null),c=y.useRef(0),m=y.useRef(null);y.useEffect(()=>(c.current++,s.current=null,$(null),_(null),E(null),x(null),R(null),f(null),()=>{c.current++}),[e]);const[u,f]=y.useState(null),[h,x]=y.useState(null),[k,_]=y.useState(null),[P,E]=y.useState(null),[A,$]=y.useState(null),[j,M]=y.useState(!1),[w,R]=y.useState(null),O=y.useCallback(async()=>{if(!e||m.current===c.current)return;const oe=c.current;m.current=oe,$("refresh");try{const K=await z(e,"/v1/native-history/list",{method:"POST",body:JSON.stringify({retain:!0})});oe===c.current&&(_(K),E(null))}catch(K){oe===c.current&&E(K instanceof Error?K.message:"Local history is unavailable.")}finally{m.current===oe&&(m.current=null),oe===c.current&&$(null)}},[e]);y.useEffect(()=>{O()},[O]),y.useEffect(()=>{const oe=window.setInterval(()=>{document.hidden||O()},3e4);return()=>window.clearInterval(oe)},[O]),y.useEffect(()=>{if(!a||!e||!u||u.sessionId!==t)return;const oe=c.current,K=window.setInterval(()=>{document.hidden||z(e,"/v1/native-history/open",{method:"POST",body:JSON.stringify({id:u.id})}).catch(H=>{oe===c.current&&E(H.message)})},1e4);return()=>window.clearInterval(K)},[a,e,u,t]);async function N(){const oe=c.current;if(!(!e||!k)){$("more");try{const K=await z(e,"/v1/native-history/list",{method:"POST",body:JSON.stringify({cursors:k.nextCursors,retain:!0})});if(oe!==c.current)return;_(H=>({...K,items:[...new Map([...H?.items??[],...K.items].map(de=>[de.id,de])).values()]}))}catch(K){oe===c.current&&E(K instanceof Error?K.message:"Could not load more conversations.")}finally{oe===c.current&&$(null)}}}async function F(oe,K,H=r.current.selectedSessionId){const de=c.current;if(e&&A===null){$(oe);try{if(!K){const Z=await z(e,"/v1/native-history/branches",{method:"POST",body:JSON.stringify({id:oe})});if(de!==c.current)return;if(Z.branches.length>1){r.current.active&&r.current.selectedSessionId===H&&R({id:oe,inspection:Z,originSessionId:H}),E(null);return}}const X=await z(e,"/v1/native-history/open",{method:"POST",body:JSON.stringify({id:oe,branch:K})});if(de!==c.current)return;f(K?null:{id:oe,sessionId:X.id}),R(null),E(X.metadata?.nativeHistoryProjection&&!X.nativeAgent?typeof X.metadata.nativeReadOnlyReason=="string"?X.metadata.nativeReadOnlyReason:"Read-only history: the native source does not report its original working directory.":null),r.current.active&&r.current.selectedSessionId===H&&await o(X)}catch(X){de===c.current&&E(X instanceof Error?X.message:"Could not read this conversation.")}finally{de===c.current&&$(null)}}}y.useEffect(()=>{if(!a||!e||A!==null||!n||n.metadata?.nativeHistoryLoaded!==!1||n.metadata.nativeBranch)return;const oe=n.metadata.nativeHistoryId;if(typeof oe!="string")return;const K=`${c.current}:${n.id}`;s.current!==K&&(s.current=K,F(oe,void 0,n.id))},[e,n,A,a]);async function L(oe){const K=c.current;if(e){$(oe);try{await z(e,"/v1/native-history/collector",{method:"POST",body:JSON.stringify({command:oe})}),K===c.current&&await O()}catch(H){K===c.current&&E(H instanceof Error?H.message:"Collector action failed.")}finally{K===c.current&&$(null)}}}async function Y(oe,K){const H=c.current;if(e){$(oe);try{const de=await z(e,"/v1/native-history/collector",{method:"POST",body:JSON.stringify({command:oe,connectionId:K})});if(H!==c.current)return;x(de.command),E(null)}catch(de){H===c.current&&E(de instanceof Error?de.message:"Could not change Importer connection.")}finally{H===c.current&&$(null)}}}async function re(oe){const K=c.current;if(e){$("connect");try{const H=await z(e,"/v1/native-history/collector",{method:"POST",body:JSON.stringify({command:oe?"reconnect":"connect",connectionId:oe})});if(K!==c.current)return;x(H.command),E(null)}catch(H){K===c.current&&E(H instanceof Error?H.message:"Could not open Importer setup.")}finally{K===c.current&&$(null)}}}async function ve(oe){const K=oe.metadata?.nativeHistoryId;await o(oe)&&oe.metadata?.nativeHistoryProjection&&!oe.metadata.nativeBranch&&typeof K=="string"&&F(K,void 0,oe.id)}return{connection:e,history:k,error:P,busy:A,command:h,expanded:j,branchSelection:w,setCommand:x,setExpanded:M,setBranchSelection:R,refresh:O,more:N,open:F,control:L,connectionControl:Y,connect:re,select:ve}}function C7({history:e}){const{connection:t,history:n,error:a,busy:o,command:r,expanded:s,branchSelection:c,setCommand:m,setExpanded:u,setBranchSelection:f,refresh:h,more:x,open:k,control:_,connectionControl:P,connect:E}=e;return t?S.jsxs("section",{className:"sidebar-section native-conversations","aria-label":"Conversation import controls",children:[S.jsxs("div",{className:"sidebar-section-heading",children:[S.jsx("button",{type:"button",onClick:()=>u(A=>!A),"aria-expanded":s,children:"Import conversations"}),S.jsx("button",{type:"button",className:"sidebar-icon","aria-label":"Refresh saved conversation history",disabled:o!==null,onClick:()=>{h()},children:o==="refresh"?S.jsx(cy,{size:14}):S.jsx(xP,{size:14})})]}),r?S.jsx(k7,{connection:t,command:r,onClose:()=>{m(null),h()}}):null,c?S.jsx(I7,{title:n?.items.find(A=>A.id===c.id)?.title??"",inspection:c.inspection,busy:o!==null,onSelect:A=>{k(c.id,A,c.originSessionId??null)},onRefresh:()=>{k(c.id,void 0,c.originSessionId??null)},onClose:()=>f(null)}):null,s?S.jsxs(S.Fragment,{children:[S.jsx("button",{type:"button",disabled:o!==null,onClick:()=>{E()},children:"Connect an import source"}),n&&Object.keys(n.nextCursors).length?S.jsx("button",{type:"button",disabled:o!==null,onClick:()=>{x()},children:"Load more saved conversations"}):null,n&&n.items.length===0?S.jsx("p",{children:"No saved conversations found in configured source locations."}):null,n?.warnings.map(A=>S.jsxs("p",{children:[S.jsx(mm,{size:12,"aria-hidden":"true"})," ",A]},A)),n?.collector.connections.length?S.jsx(w7,{status:n.collector,busy:o!==null,onControl:A=>{_(A)},onConnectionControl:(A,$)=>{P(A,$)},onReconnect:A=>{E(A)}}):S.jsx("p",{children:"Connect an import source to upload conversations. Local history remains available without cloud sync."})]}):null,a?S.jsxs("p",{role:"status",children:[S.jsx(mm,{size:12,"aria-hidden":"true"})," ",a]}):null]}):null}function Lx(e){const t=/^v?(\d+)\.(\d+)\.(\d+)(?:[-+].*)?$/.exec(e?.trim()??"");return t?[Number.parseInt(t[1],10),Number.parseInt(t[2],10),Number.parseInt(t[3],10)]:null}function R7(e,t){const n=Lx(e),a=Lx(t);if(!n||!a)return!1;for(let o=0;o<a.length;o+=1){if(a[o]>n[o])return!0;if(a[o]<n[o])return!1}return!1}function tA(e){const t=e?.toLowerCase()??"";return t==="darwin"||t.includes("mac")?"mac":t==="linux"||t.includes("linux")?"linux":null}function P7(e){const t=e?.toLowerCase()??"";return t==="arm64"||t==="aarch64"?"arm64":t==="x64"||t==="x86_64"||t==="amd64"?"x64":null}function A7(e,t,n){const a=tA(t),o=P7(n);if(a==="mac"){const r=e.filter(s=>/-mac-.*\.zip$/i.test(s.name));return o==="arm64"?r.find(s=>/-mac-arm64\.zip$/i.test(s.name))??null:o==="x64"?r.find(s=>/-mac-x64\.zip$/i.test(s.name))??r.find(s=>/-mac-universal\.zip$/i.test(s.name))??null:r.find(s=>/-mac-universal\.zip$/i.test(s.name))??r.find(s=>/-mac-arm64\.zip$/i.test(s.name))??r[0]??null}if(a==="linux"){const r=e.filter(s=>/\.AppImage$/i.test(s.name));return o==="arm64"?r.find(s=>/(?:arm64|aarch64).*\.AppImage$/i.test(s.name))??null:o==="x64"?r.find(s=>/(?:x86_64|x64|amd64).*\.AppImage$/i.test(s.name))??r[0]??null:r[0]??null}return null}function T7(e){if(!e.payload||typeof e.payload!="object")return null;const t=e.payload,a=(typeof t.tag_name=="string"?t.tag_name.trim():"").replace(/^v/,"");if(!R7(e.currentVersion,a))return null;const o=typeof t.html_url=="string"?t.html_url:"",s=(Array.isArray(t.assets)?t.assets:[]).flatMap(m=>{if(!m||typeof m!="object")return[];const u=m;return typeof u.name!="string"||typeof u.browser_download_url!="string"?[]:[{name:u.name,downloadUrl:u.browser_download_url}]}),c=A7(s,e.platform,e.arch);return!c||!o?null:{version:a,releaseUrl:o,assetName:c.name,downloadUrl:c.downloadUrl}}const E7=3600*1e3,j7="https://api.github.com/repos/openpond/openpond/releases/latest";function M7(e){const[t,n]=y.useState({status:"idle",update:null,lastCheckedAt:null}),a=e.currentVersion?.trim()??"",o=e.platform??"",r=e.arch??"",s=e.enabled&&!!a&&!!tA(o);return y.useEffect(()=>{if(!s){n({status:"idle",update:null,lastCheckedAt:null});return}let c=!1;async function m(){n(f=>({...f,status:f.update?"available":"checking"}));try{const f=await fetch(j7,{headers:{Accept:"application/vnd.github+json"}});if(!f.ok)throw new Error(`GitHub release check failed: ${f.status}`);const h=await f.json(),x=T7({payload:h,currentVersion:a,platform:o,arch:r});if(c)return;n({status:x?"available":"current",update:x,lastCheckedAt:Date.now()})}catch{if(c)return;n(f=>({status:f.update?"available":"error",update:f.update,lastCheckedAt:Date.now()}))}}m();const u=window.setInterval(()=>{m()},E7);return()=>{c=!0,window.clearInterval(u)}},[r,a,s,o]),t}const nA="openpond.sidebar.continuous-learning.dismissed.v1";function qx(e=aA()){if(!e)return!1;try{return e.getItem(nA)==="true"}catch{return!1}}function O7(e=aA()){if(e)try{e.setItem(nA,"true")}catch{}}function aA(){return typeof window>"u"?null:Fo}function $7({connection:e,onOpenSettings:t}){const[n,a]=y.useState(null),[o,r]=y.useState(qx);al(()=>r(qx()));const s=y.useCallback(async()=>{if(!e){a(null);return}try{a(await ae.harnessHistory(e))}catch{a(null)}},[e]);if(y.useEffect(()=>{s()},[s]),o||!e||!n?.workspace)return null;const c=n.evaluationReviewSchedule,m=c.activityEnabled?`${c.activityBatchSize} outcomes${c.enabled?` + ${c.cadence}`:""}`:c.enabled?c.cadence:"Manual";return S.jsxs("section",{className:"sidebar-learning-notice","aria-label":"Continuous learning",children:[S.jsxs("header",{children:[S.jsx("strong",{children:"Continuous learning"}),S.jsxs("div",{className:"sidebar-learning-notice-actions",children:[S.jsx("button",{className:"sidebar-learning-notice-action","aria-label":"Open Continuous learning settings",onClick:t,type:"button",children:S.jsx(kP,{size:14})}),S.jsx("button",{className:"sidebar-learning-notice-action","aria-label":"Close continuous learning",onClick:()=>{r(!0),O7()},type:"button",children:S.jsx(Sd,{size:14})})]})]}),S.jsxs("div",{className:"sidebar-learning-status",children:[S.jsx("strong",{children:"Refiner"}),S.jsx("span",{children:n.backgroundReview.enabled?"On":"Off"})]}),S.jsxs("div",{className:"sidebar-learning-status",children:[S.jsx("strong",{children:"Continuous Review"}),S.jsx("span",{children:m})]})]})}function N7(e){const{arch:t,currentVersion:n,productArea:a,platform:o,setSectionMenuOpen:r,setSelectedAppId:s,setSelectedProjectId:c,setSelectedSessionId:m,setSidebarOpen:u,setView:f,view:h,modelProjects:x,modelTrainingActivityByProjectId:k}=e,_=y.useCallback(j=>{r(j)},[r]),P=M7({currentVersion:n,platform:o,arch:t,enabled:fy()}),E=P.status==="available"?P.update:null,A=y.useCallback(async j=>{if(!await Ft({kind:"chat",sessionId:j.id}))return!1;m(j.id);const M=e.sidebarProjectIdBySessionId[j.id]??null;return c(M),s(M?null:j.appId),f("chat"),!0},[m,c,s,f,e.sidebarProjectIdBySessionId]),$=_7({connection:a==="chat"?e.connection:null,active:h==="chat",selectedSessionId:e.selectedSessionId,selectedSession:[...e.activeSessions,...e.archivedSessions,...Object.values(e.childSessionRowsByParentId??{}).flat()].find(j=>j.id===e.selectedSessionId)??null,onOpen:A});return S.jsxs("aside",{className:"sidebar",inert:e.open===!1,children:[S.jsxs("div",{className:"sidebar-toolbar",children:[S.jsx("button",{className:"sidebar-icon","aria-label":"Hide sidebar",onClick:()=>u(!1),children:S.jsx(SP,{size:16})}),S.jsx("div",{className:"sidebar-brand",children:S.jsx("img",{className:"sidebar-wordmark",src:PG,alt:"OpenPond"})}),E&&S.jsxs("button",{type:"button",className:"sidebar-update-pill",title:`Download OpenPond ${E.version}: ${E.assetName}`,"aria-label":`Download OpenPond ${E.version}`,onClick:()=>{D7(E.downloadUrl)},children:[S.jsx(MW,{size:14}),S.jsx("span",{children:"Update"})]})]}),a==="chat"?S.jsxs("div",{className:"sidebar-fixed-actions",children:[S.jsx(N8,{experience:e.experience,beginNewChat:e.beginNewChat}),a==="chat"&&h==="chat"&&e.account?.activeProfile&&e.onOpenPonder?S.jsx("div",{className:"sidebar-ponder-fixed",children:S.jsxs("button",{type:"button",className:"sidebar-row sidebar-task-row sidebar-ponder-entry",onClick:e.onOpenPonder,children:[S.jsx("span",{className:"conversation-source-icon","aria-hidden":"true",children:S.jsx("img",{src:Ty,alt:""})}),S.jsx("span",{children:"Ponder Pal"})]})}):null]}):null,S.jsxs("div",{className:"sidebar-scroll",children:[a!=="chat"?S.jsx(D8,{productArea:a,setSectionMenuOpen:_,setSelectedAppId:s,setSelectedProjectId:c,setSelectedSessionId:m,setView:f,view:h,modelProjects:x,modelTrainingActivityByProjectId:k}):null,a!=="chat"||h!=="chat"?null:S.jsx(S7,{...e,onSelectSession:$.select,setSectionMenuOpen:_}),a==="chat"&&h==="chat"?S.jsx(C7,{history:$}):null]}),S.jsx("div",{className:"sidebar-bottom-stack",children:a!=="chat"?null:S.jsx($7,{connection:e.connection,onOpenSettings:()=>{r(null),Ft({kind:"settings",section:"harness"})}})})]})}async function D7(e){const t=window.openpond?.browser;t?.openExternal&&(await t.openExternal({conversationId:"openpond-update",url:e})).ok||window.open(e,"_blank","noopener,noreferrer")}const H7=[{destination:"walkthroughs",icon:yx,label:"Walkthroughs"},{destination:"external",icon:yx,label:"Docs",url:"https://openpond.ai/docs"},{destination:"external",icon:sy,label:"Blog",url:"https://openpond.ai/blog"},{destination:"external",icon:EW,label:"Pricing",url:"https://openpond.ai/pricing"},{destination:"external",icon:yP,label:"Web app",url:"https://openpond.ai/sandboxes"},{destination:"external",icon:zW,label:"GitHub",url:"https://github.com/openpond/openpond"},{destination:"external",icon:mp,label:"Submit issue",url:"https://github.com/openpond/openpond/issues/new/choose"}];function L7({onOpenWalkthroughs:e,onCloseAccount:t,walkthroughsActive:n}){const[a,o]=y.useState(!1),r=y.useRef(null),s=y.useRef(null);y.useLayoutEffect(()=>{a&&s.current?.querySelector('[role="menuitem"]')?.focus()},[a]);function c(){o(!0)}function m(){o(!1),r.current?.focus()}return S.jsxs("div",{className:"user-auth-help",onKeyDown:u=>{a&&(u.key==="Escape"||u.key==="ArrowLeft")&&(u.preventDefault(),u.stopPropagation(),m())},children:[S.jsxs("button",{ref:r,type:"button",className:"user-auth-menu-link",role:"menuitem","aria-haspopup":"menu","aria-expanded":a,onClick:()=>a?m():c(),onKeyDown:u=>{u.key==="ArrowRight"&&(u.preventDefault(),c())},children:[S.jsx(VW,{size:15}),S.jsx("span",{children:"Help"}),S.jsx(Jo,{className:"user-auth-help-chevron",size:14})]}),a?S.jsx("div",{ref:s,className:"user-auth-help-submenu",role:"menu","aria-label":"Help",onKeyDown:u=>{if(!["ArrowDown","ArrowUp","Home","End"].includes(u.key))return;u.preventDefault();const f=Array.from(s.current?.querySelectorAll('[role="menuitem"]')??[]),h=f.indexOf(document.activeElement),x=u.key==="Home"?0:u.key==="End"?f.length-1:(h+(u.key==="ArrowDown"?1:-1)+f.length)%f.length;f[x]?.focus()},children:H7.map(u=>{const f=u.icon,h=S.jsxs(S.Fragment,{children:[S.jsx(f,{size:15}),S.jsx("span",{children:u.label})]});return u.destination==="walkthroughs"?S.jsx("button",{type:"button",role:"menuitem",className:"user-auth-menu-link","aria-current":n?"page":void 0,onClick:()=>{t(),e()},children:h},u.label):S.jsx("a",{className:"user-auth-menu-link",role:"menuitem",href:u.url,target:"_blank",rel:"noreferrer",onClick:x=>{x.preventDefault(),t(),q7(u.url)},children:h},u.label)})}):null]})}async function q7(e){const t=window.openpond?.browser;t?.openExternal&&(await t.openExternal({conversationId:"openpond-help",url:e})).ok||window.open(e,"_blank","noopener,noreferrer")}const Ux=new WeakMap,Gg=new WeakMap;function iA(e){if(!e)return"disconnected";let t=Ux.get(e);return(!t||t.serverUrl!==e.serverUrl||t.token!==e.token)&&(t={serverUrl:e.serverUrl,token:e.token,id:crypto.randomUUID()},Ux.set(e,t)),t.id}function Doe(e,t){return Gg.set(e,t),e}function Hoe(e){if(!e)return["learning","disconnected"];let t=Gg.get(e);return t||(t=["learning",crypto.randomUUID()],Gg.set(e,t)),t}function U7(e,t){return x1({queryKey:["provider-plan-usage",iA(e),t],enabled:!!e,queryFn:({signal:n})=>z(e,`/v1/providers/${t}/plan-usage`,{signal:AbortSignal.any([n,AbortSignal.timeout(25e3)])}),staleTime:3e4,refetchInterval:6e4,refetchOnWindowFocus:"always",retry:!1,gcTime:3e5})}function Mh(e){return`${Math.floor(e)}%`}function zx(e){return e.resetsAt?`Resets ${new Date(e.resetsAt).toLocaleString(void 0,{month:"short",day:"numeric",hour:"numeric",minute:"2-digit"})}`:"Reset time unavailable"}function z7(e,t){return t?"Loading…":e?.status==="signed_out"?"Sign in":e?.status==="unsupported"?"Not available":"Unavailable"}function B7({connection:e,provider:t,compact:n=!1,onOpen:a}){const o=U7(e,t),r=o.data,s=r?.windows.filter(k=>k.shared)??[],c=!!r?.windows.some(k=>k.resetsAt&&Date.parse(k.resetsAt)<=Date.now()),m=o.isError||c||!!(r&&Date.parse(r.refreshAfter)+6e4<Date.now()),u=t==="claude-code"?"Claude":"Codex",f=r?.status==="ready",h=z7(r,o.isPending&&!!e),x=r?.windows.map(k=>`${k.label}: ${Mh(k.remainingPercent)} remaining. ${zx(k)}.`).join(`
192
- `);return n?S.jsxs("button",{type:"button",role:"menuitem",className:"plan-usage-compact",onClick:a,title:m?`Usage needs refreshing. ${x??""}`:x||r?.message||"View plan usage in Providers",children:[S.jsx("span",{children:u}),S.jsx("span",{className:"plan-usage-compact-values",children:!m&&f&&s.length?s.map(k=>S.jsxs("span",{className:"plan-usage-compact-value",children:[S.jsx("small",{children:k.label}),S.jsx("strong",{children:Mh(k.remainingPercent)})]},k.id)):S.jsx("strong",{children:m?"Unavailable":h})})]}):S.jsxs("section",{className:"provider-plan-usage","aria-label":`${u} plan usage`,children:[S.jsx("div",{className:"plan-usage-heading",children:S.jsx("button",{type:"button",className:"plan-usage-refresh","aria-label":`Refresh ${u} plan usage`,title:`Check usage (cached for up to ${t==="claude-code"?"5 minutes":"1 minute"})`,disabled:!e||o.isFetching,onClick:()=>{o.refetch()},children:S.jsx(xP,{size:13,className:o.isFetching?"settings-spin":void 0})})}),f?S.jsxs(S.Fragment,{children:[r.windows.map(k=>S.jsxs("div",{className:"plan-usage-window",children:[S.jsxs("div",{children:[S.jsx("span",{children:k.label}),S.jsxs("strong",{children:[Mh(k.remainingPercent),m?" · last known":""]})]}),S.jsx("meter",{min:0,max:100,low:10,high:25,optimum:100,value:k.remainingPercent,"aria-label":`${u} ${k.label} remaining`}),S.jsx("small",{children:zx(k)})]},k.id)),m?S.jsxs("small",{role:"status",children:["Usage needs refreshing. Last checked ",new Date(r.fetchedAt).toLocaleTimeString([],{hour:"numeric",minute:"2-digit"}),"."]}):S.jsx("small",{className:"plan-usage-note",children:"Shared across your account. Updates automatically."})]}):S.jsx("p",{role:"status",children:o.isError?"Could not load usage. Try refreshing.":r?.message??(e?"Loading plan usage…":"Connect to load plan usage.")})]})}function F7(...e){for(const t of e){const n=t?.trim();if(n)return n}return null}function V7(e){const t=e?.accounts.find(s=>s.isActive)??null,n=e?.profile??null,a=e?.activeProfile?.handle??null;return{label:(e?.state==="signed_in"?F7(e?.label,n?.handle,n?.name,n?.email,t?.displayLabel,t?.handle,a,e?.email,"Signed in"):e?.state==="loading"||e?.state==="switching"?"Loading account":"Sign in")??"Account",image:e?.avatarUrl??n?.image??t?.avatarUrl??null}}function K7({connection:e,onOpenProviders:t,account:n,open:a,organizations:o,selectedTeamId:r,onOpenActivity:s,onOpenChange:c,onOpenSettings:m,onOpenWalkthroughs:u,walkthroughsActive:f,onSelectTeam:h,onLogOut:x,railTooltip:k}){const[_,P]=y.useState(null),[E,A]=y.useState(!1),$=y.useRef(null),j=y.useMemo(()=>V7(n),[n]),M=j.label.trim().slice(0,1).toUpperCase(),w=o.find(R=>R.teamId===r)??o[0]??null;return y.useEffect(()=>{if(!a)return;function R(N){$.current?.contains(N.target)||c(!1)}function O(N){N.key==="Escape"&&c(!1)}return document.addEventListener("pointerdown",R),document.addEventListener("keydown",O),()=>{document.removeEventListener("pointerdown",R),document.removeEventListener("keydown",O)}},[c,a]),S.jsxs("div",{className:"user-auth-footer",ref:$,children:[S.jsxs("button",{type:"button",className:`user-auth-trigger ${a?"active":""}`,"aria-haspopup":"menu","aria-expanded":a,"aria-label":`${j.label} account menu`,"data-rail-tooltip":k,onClick:()=>c(!a),children:[S.jsx("span",{className:"user-auth-avatar","aria-hidden":"true",children:j.image?S.jsx("img",{src:j.image,alt:""}):M?S.jsx("span",{children:M}):S.jsx(Sx,{size:16})}),S.jsx("span",{className:"user-auth-name",children:j.label})]}),a?S.jsxs("div",{className:"user-auth-menu",role:"menu","aria-label":"Account",children:[S.jsxs("div",{className:"user-auth-menu-header",children:[S.jsx("span",{className:"user-auth-menu-avatar","aria-hidden":"true",children:j.image?S.jsx("img",{src:j.image,alt:""}):M?S.jsx("span",{children:M}):S.jsx(Sx,{size:17})}),S.jsx("span",{className:"user-auth-menu-identity",children:S.jsx("strong",{children:j.label})})]}),o.length>0&&h?S.jsxs("label",{className:"user-auth-team-picker",children:[S.jsx(my,{size:15,"aria-hidden":"true"}),S.jsx("span",{className:"user-auth-team-picker-label",children:"Team"}),S.jsx("select",{"aria-label":"Active team",disabled:_!==null,value:w?.teamId??"",onChange:async R=>{const O=R.currentTarget.value;P(O);try{await h(O)}catch{}finally{P(null)}},children:o.map(R=>S.jsx("option",{value:R.teamId,children:R.displayName},R.teamId))})]}):null,S.jsx("div",{className:"user-auth-plan-usage",children:["claude-code","codex"].map(R=>S.jsx(B7,{connection:e,provider:R,compact:!0,onOpen:()=>{c(!1),t()}},R))}),S.jsx("div",{className:"user-auth-menu-divider"}),s?S.jsxs("button",{type:"button",className:"user-auth-menu-link",role:"menuitem",onClick:()=>{c(!1),s()},children:[S.jsx(gP,{size:15}),S.jsx("span",{children:"Activity"})]}):null,S.jsxs("button",{type:"button",className:"user-auth-menu-link",role:"menuitem",onClick:()=>{c(!1),m()},children:[S.jsx(kP,{size:15}),S.jsx("span",{children:"Settings"})]}),S.jsx(L7,{onOpenWalkthroughs:u,walkthroughsActive:f,onCloseAccount:()=>c(!1)}),n?.state==="signed_in"&&x?S.jsxs("button",{type:"button",className:"user-auth-menu-link",role:"menuitem",disabled:E,onClick:async()=>{A(!0);try{await x(),c(!1)}catch{}finally{A(!1)}},children:[S.jsx(r8,{size:15}),S.jsx("span",{children:E?"Logging out…":"Log out"})]}):null]}):null]})}function W7({sidebar:e,open:t}){const[n,a]=y.useState(!1),o=[{view:"chat",label:"Home",Icon:_P},{view:"scheduled",label:"Workflows",Icon:hP},{view:"apps",label:"Apps",Icon:my},{view:"outputs",label:"Outputs",Icon:vP},{view:"projects",label:"Projects",Icon:ly}];async function r(c){if(a(!1),e.productArea==="chat"&&e.view===c){c==="chat"&&e.setSidebarOpen(!t);return}const m=c==="chat"?{kind:"chat",sessionId:e.selectedSessionId}:{kind:"view",view:c};await Ft(m)&&(e.setSectionMenuOpen(null),e.setView(c),c==="chat"&&e.setSidebarOpen(!0))}async function s(){await Ft({kind:"view",view:"get-started"})&&(e.setSelectedAppId(null),e.setSelectedProjectId(null),e.setSelectedSessionId(null),e.setSectionMenuOpen(null),e.setView("get-started"))}return S.jsxs("nav",{className:"desktop-navigation-rail","aria-label":"Desktop destinations",children:[S.jsxs("div",{className:"desktop-rail-destinations",children:[o.map(({view:c,label:m,Icon:u})=>{const f=e.productArea==="chat"&&e.view===c;return S.jsx("button",{type:"button","data-rail-tooltip":m,"aria-label":m,"aria-current":f?"page":void 0,"aria-expanded":c==="chat"?f&&t:void 0,className:`desktop-rail-button${f?" active":""}`,onClick:()=>{r(c)},children:S.jsx(u,{size:19})},c)}),S.jsx("button",{type:"button","data-rail-tooltip":"Console","aria-label":"Console",className:`desktop-rail-button${e.productArea==="console"?" active":""}`,"aria-expanded":e.productArea==="console"&&t,onClick:()=>{e.productArea==="console"?e.setSidebarOpen(!t):(e.onProductAreaChange("console"),e.setSidebarOpen(!0))},children:S.jsx(Ng,{size:19})}),[{view:"team",label:"Team chat",Icon:mp,onOpen:e.onOpenTeamChat},{view:"community",label:"Discover communities",Icon:yP,onOpen:e.discoverCommunities}].map(({view:c,label:m,Icon:u,onOpen:f})=>S.jsx("button",{type:"button","data-rail-tooltip":m,"aria-label":m,className:`desktop-rail-button${e.productArea==="chat"&&e.view===c?" active":""}`,"aria-current":e.productArea==="chat"&&e.view===c?"page":void 0,onClick:()=>{a(!1),(e.productArea!=="chat"||e.view!==c)&&f()},children:S.jsx(u,{size:19})},c))]}),S.jsx("div",{className:"desktop-rail-account",children:S.jsx(K7,{account:e.account,open:n,onOpenChange:a,connection:e.connection,onOpenProviders:()=>{Ft({kind:"settings",section:"providers"})},railTooltip:n?void 0:"Account",organizations:e.organizations,selectedTeamId:e.teamChatOrganization?.teamId??null,onSelectTeam:e.onSelectTeam,onLogOut:e.onLogOut,walkthroughsActive:e.view==="get-started",onOpenWalkthroughs:()=>{s()},onOpenActivity:()=>{Ft({kind:"settings",section:"usage"})},onOpenSettings:()=>{Ft({kind:"settings",section:"account"})}})})]})}const G7=[/^(?:(?:type)?error:\s*)?failed to fetch\.?$/i,/^networkerror when attempting to fetch resource\.?$/i,/^load failed\.?$/i];function oA(e,t="Something went wrong."){const a=(e instanceof Error?e.message:String(e??"")).trim();return a?rA(a)?"Couldn’t connect to OpenPond.":a:t}function rA(e){const t=e.trim();return G7.some(n=>n.test(t))}const sA=y.createContext(null);function Bx({children:e,showToast:t}){return S.jsx(sA.Provider,{value:t,children:e})}function J7(){return y.useContext(sA)}function Fx(e,t={}){const n=J7(),a=y.useRef(null),o=t.enabled??!0,r=t.fallback??"Something went wrong.",s=t.prefix?.trim()??"",c=e==null||e===""?null:`${s}${s?": ":""}${oA(e,r)}`;y.useEffect(()=>{if(!o||!c){a.current=null;return}a.current!==c&&(a.current=c,n?.(c,"error"))},[o,c,n])}function Z7({state:e,onClose:t,onOpenBrowserUrl:n,onStart:a}){if(Fx(e?.previewError,{prefix:"Upload preview"}),Fx(e?.error,{prefix:"Cloud setup"}),!e)return null;const o=e.status==="uploading",r=e.status==="ready",s=e.status==="error",c=e.projectKind==="cloud",m=e.preview??null;return S.jsx("div",{className:"git-dialog-backdrop",role:"presentation",children:S.jsxs("section",{className:"git-dialog cloud-setup-dialog",role:"dialog","aria-modal":"true","aria-label":"Set up Cloud coding",children:[S.jsx("button",{className:"git-dialog-close",disabled:o,type:"button",onClick:t,"aria-label":"Close Cloud setup",title:"Close",children:S.jsx(Sd,{size:14})}),S.jsx("div",{className:"git-dialog-icon",children:r?S.jsx(Eu,{size:18}):S.jsx(up,{size:18})}),S.jsx("h2",{children:r?"Cloud repo ready":"Set up Cloud coding"}),S.jsx("p",{children:r?"Your source is ready in OpenPond Git. Finish by creating the Cloud sandbox environment.":c?"This Cloud Project is ready for a sandbox environment.":"OpenPond will upload tracked and unignored files into OpenPond Git, then send you to the Cloud sandbox setup page."}),S.jsxs("div",{className:"cloud-setup-summary",children:[S.jsxs("div",{className:"git-dialog-row",children:[S.jsx("span",{children:"Project"}),S.jsx("strong",{children:e.projectName})]}),S.jsxs("div",{className:"git-dialog-row",children:[S.jsx("span",{children:"Source"}),S.jsx("strong",{children:c?"OpenPond Git":"Local project upload"})]}),S.jsxs("div",{className:"git-dialog-row",children:[S.jsx("span",{children:"Branch"}),S.jsx("strong",{children:m?.branch??e.branch??"main"})]}),!c&&S.jsxs("div",{className:"git-dialog-row",children:[S.jsx("span",{children:"Cloud project"}),S.jsx("strong",{children:m?.targetProjectId??e.cloudProjectId??"New on upload"})]})]}),!r&&!c&&S.jsx("div",{className:"cloud-setup-upload-preview",role:"status","aria-live":"polite",children:e.previewLoading?S.jsxs(S.Fragment,{children:[S.jsx("strong",{children:"Calculating upload preview"}),S.jsx("span",{children:"Checking tracked and unignored files before anything is pushed."})]}):e.previewError?S.jsxs(S.Fragment,{children:[S.jsx("strong",{children:"Preview unavailable"}),S.jsx("span",{children:"Close and reopen setup to try the preview again."})]}):m?S.jsxs(S.Fragment,{children:[S.jsx("strong",{children:m.initializedEmptyProject?"Will initialize an empty project":`Will upload ${m.fileCount} files`}),S.jsx("span",{children:Vx({byteCount:m.byteCount,skippedCount:m.skippedCount,headCommit:m.headCommit,targetProjectName:m.targetProjectName})})]}):S.jsxs(S.Fragment,{children:[S.jsx("strong",{children:"Upload preview pending"}),S.jsx("span",{children:"File count, byte count, and skipped files will appear here before upload."})]})}),o&&S.jsxs("div",{className:"cloud-setup-progress",role:"status","aria-live":"polite",children:[S.jsx(cy,{className:"cloud-setup-spinner",size:16}),S.jsx("span",{children:"Uploading source to OpenPond Git..."})]}),r&&e.upload&&S.jsxs("div",{className:"cloud-setup-upload-result",children:[S.jsx("strong",{children:e.upload.initializedEmptyProject?"Initialized empty project":`Uploaded ${e.upload.fileCount} files`}),S.jsx("span",{children:Vx({byteCount:e.upload.byteCount,skippedCount:e.upload.skippedCount,headCommit:e.upload.headCommit,targetProjectName:e.upload.branch})})]}),r&&e.setupUrl&&S.jsxs("div",{className:"cloud-setup-next",children:[e.projectUrl?S.jsxs("span",{children:["Your repo is ready here:"," ",S.jsxs("a",{href:e.projectUrl,target:"_blank",rel:"noreferrer",onClick:u=>Oh(u,e.projectUrl,n,{newTab:!0}),children:["Project page",S.jsx(Ih,{size:13})]})]}):S.jsx("span",{children:"Your repo is ready. Next step:"}),S.jsxs("a",{href:e.setupUrl,target:"_blank",rel:"noreferrer",onClick:u=>Oh(u,e.setupUrl,n),children:["Setup the Cloud sandbox",S.jsx(Ih,{size:13})]})]}),S.jsxs("div",{className:"git-dialog-footer",children:[S.jsx("button",{className:"git-dialog-secondary",disabled:o,type:"button",onClick:t,children:r?"Done":"Cancel"}),r?e.setupUrl?S.jsxs("a",{className:"git-dialog-primary cloud-setup-primary-link",href:e.setupUrl,target:"_blank",rel:"noreferrer",onClick:u=>Oh(u,e.setupUrl,n),children:["Open setup",S.jsx(Ih,{size:13})]}):null:S.jsx("button",{className:"git-dialog-primary",disabled:o,type:"button",onClick:a,children:o?"Uploading":s?"Try again":c?"Show setup link":"Upload source"})]})]})})}function Oh(e,t,n,a={}){!t||!n||(e.preventDefault(),n(t,a))}function Y7(e){return!Number.isFinite(e)||e<=0?"0 B":e<1024?`${Math.round(e)} B`:e<1024*1024?`${Math.round(e/1024)} KB`:`${(e/1024/1024).toFixed(1)} MB`}function Vx({byteCount:e,skippedCount:t,headCommit:n,targetProjectName:a}){const o=[Y7(e),`${t} skipped`],r=Q7(n);return r&&o.push(`local ${r}`),o.push(a),o.join(" · ")}function Q7(e){const t=e?.trim();return t?t.slice(0,7):null}const X7=y.lazy(()=>Zo(()=>import("./CommandMenu-DZct7zUJ.js"),__vite__mapDeps([4,1,2,5])).then(e=>({default:e.CommandMenu}))),eJ=y.lazy(()=>Zo(()=>import("./SettingsView-RA9OXgcu.js"),__vite__mapDeps([6,1,2,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25])).then(e=>({default:e.SettingsView}))),tJ=y.lazy(()=>Zo(()=>import("./NewProjectDialog-Cu1q75gq.js"),__vite__mapDeps([26,1,2,11,17,27])).then(e=>({default:e.NewProjectDialog}))),nJ=y.lazy(()=>Zo(()=>import("./WorkspaceGitDialogs-Dgmg-6XG.js"),__vite__mapDeps([28,1,2,14,15,29,25])).then(e=>({default:e.CommitDialog}))),aJ=y.lazy(()=>Zo(()=>import("./WorkspaceGitDialogs-Dgmg-6XG.js"),__vite__mapDeps([28,1,2,14,15,29,25])).then(e=>({default:e.BranchDialog})));function iJ({payload:e,connection:t,diagnostics:n,initialSection:a,onPayload:o,onError:r,onToast:s,onBack:c,onOpenSourceSession:m,onStartRefinerAuthoring:u,onAcceptEvaluationReview:f,onOpenSkill:h,onOpenExtension:x,teamChatCurrentUserId:k,teamChatEnabled:_,teamChatNotificationMode:P,teamChatThreads:E,onTeamChatNotificationModeChange:A,onTeamChatThreadMuteChange:$,diffPanelWidth:j,diffPanelResizing:M,diffPanelExpanded:w,onDiffPanelResizeStart:R,onDiffPanelExpandedChange:O}){return S.jsx(y.Suspense,{fallback:null,children:S.jsx(eJ,{payload:e,connection:t,diagnostics:n,initialSection:a,onPayload:o,onError:r,onToast:s,onBack:c,onOpenSourceSession:m,onStartRefinerAuthoring:u,onAcceptEvaluationReview:f,onOpenSkill:h,onOpenExtension:x,teamChatCurrentUserId:k,teamChatEnabled:_,teamChatNotificationMode:P,teamChatThreads:E,onTeamChatNotificationModeChange:A,onTeamChatThreadMuteChange:$,diffPanelWidth:j,diffPanelResizing:M,diffPanelExpanded:w,onDiffPanelResizeStart:R,onDiffPanelExpandedChange:O})})}function oJ({activeSessions:e,branchDialogName:t,branchDialogOpen:n,commitDialogOpen:a,commitDraft:o,commitIncludeUnstaged:r,commitMessage:s,commitNextStep:c,canPublishOpenPondProject:m,expandProject:u,newProjectBusy:f,newProjectDialogOpen:h,newProjectDirectory:x,newProjectMode:k,newProjectName:_,newProjectPath:P,projectRows:E,query:A,searchOpen:$,visibleWorkspaceDiff:j,visibleWorkspaceState:M,workspaceBusy:w,appDispatch:R,beginNewChat:O,openDefaultsSettingsFromBranchDialog:N,setBranchDialogName:F,setBranchDialogOpen:L,setCommitDialogOpen:Y,setCommitDraft:re,setCommitIncludeUnstaged:ve,setCommitMessage:oe,setCommitNextStep:K,setNewProjectDialogOpen:H,setNewProjectName:de,setNewProjectPath:X,setQuery:Z,setSearchOpen:pe,submitCommitDialog:ee,submitCreateWorkspaceBranch:me,submitNewProjectDialog:be}){return S.jsxs(S.Fragment,{children:[$&&S.jsx(y.Suspense,{fallback:null,children:S.jsx(X7,{open:$,query:A,projects:E,sessions:e,onQueryChange:Z,onClose:()=>{pe(!1),Z("")},onNewChat:()=>{pe(!1),Z(""),O()},onOpenProject:Me=>{R({type:"selectProject",projectId:Me.id}),R({type:"patch",patch:{searchOpen:!1,query:""}}),u(Me.id)},onOpenSession:Me=>{R({type:"selectSession",sessionId:Me.id,appId:Me.appId,projectId:Me.workspaceKind==="local_project"&&Me.workspaceId?kt("local",Me.workspaceId):null}),R({type:"patch",patch:{searchOpen:!1,query:""}})}})}),h&&S.jsx(y.Suspense,{fallback:null,children:S.jsx(tJ,{open:h,mode:k,name:_,path:P,directory:x,busy:f,onNameChange:de,onPathChange:X,onClose:()=>{f||H(!1)},onSubmit:be})}),a&&S.jsx(y.Suspense,{fallback:null,children:S.jsx(nJ,{open:a,branch:M?.currentBranch??null,filesChanged:j?.filesChanged??M?.changedFilesCount??0,additions:j?.additions??0,deletions:j?.deletions??0,message:s,includeUnstaged:r,nextStep:c,draft:o,busy:w,canPush:!!M?.remoteUrl,canPublish:m,onMessageChange:oe,onIncludeUnstagedChange:ve,onNextStepChange:K,onDraftChange:re,onClose:()=>{w||Y(!1)},onSubmit:ee})}),n&&S.jsx(y.Suspense,{fallback:null,children:S.jsx(aJ,{open:n,branchName:t,busy:w,onBranchNameChange:F,onSetPrefix:N,onClose:()=>{w||L(!1)},onSubmit:me})})]})}function lA({toast:e,onDismiss:t}){if(!e)return null;const n=!!(e.actionLabel&&e.onAction);return S.jsxs("div",{className:`app-toast ${e.tone} ${e.placement??"bottom-right"}`,role:e.tone==="error"?"alert":"status","aria-live":"polite",children:[S.jsx("span",{className:"app-toast-message",children:e.message}),n&&S.jsx("div",{className:"app-toast-actions",children:S.jsx("button",{type:"button","aria-label":e.actionLabel,onClick:()=>{t(),e.onAction?.()},children:e.actionLabel})})]})}async function mu(e,t,n){if(t.scope!==e.scope)throw new Error("Review workspace changed. Reload the assignment.");return z(e.connection,`/v1/human-review?location=${e.location}`,{method:"POST",body:JSON.stringify(Tz.parse(t)),signal:n})}function Kx(e,t,n){const a=g_.parse(e);if(a.scope!==t.scope||a.id!==n)throw new Error("Review response identity differs from the requested assignment.");return a}const rJ={inbox:async(e,t,n)=>sJ(await mu(e,{...t,endpoint:"inbox",scope:e.scope},n),e),get:async(e,t,n)=>Kx(await mu(e,{endpoint:"get",scope:e.scope,id:t},n),e,t),inspect:async(e,t,n,a,o)=>lJ(await mu(e,{endpoint:"inspect",scope:e.scope,id:t,...n===void 0?{}:{slot:n},...a?{afterId:a}:{}},o),t),command:async(e,t)=>Kx(await mu(e,{endpoint:"command",scope:e.scope,command:t}),e,t.id)};function sJ(e,t){const n=vz.parse(e);if(n.items.some(a=>a.scope!==t.scope))throw new Error("Inbox response belongs to another workspace.");return n}function lJ(e,t){const n=Ez.parse(e);if(n.some(a=>a.reviewId!==t))throw new Error("Evidence response belongs to another assignment.");return n}function cJ({context:e,onOpen:t}){const[n,a]=y.useState(null);return y.useEffect(()=>{const o=new AbortController;let r=0;async function s(){const m=++r;try{const u=await rJ.inbox(e,{view:"mine",status:"active",limit:1},o.signal);!o.signal.aborted&&m===r&&a(u.actionCount)}catch{!o.signal.aborted&&m===r&&a(null)}}a(null),s();const c=window.setInterval(()=>{document.visibilityState==="visible"&&s()},15e3);return window.addEventListener("human-review-changed",s),()=>{o.abort(),window.clearInterval(c),window.removeEventListener("human-review-changed",s)}},[e.scope,e.actorId,e.location,e.connection]),S.jsxs("button",{type:"button",className:"titlebar-icon human-review-inbox-control",title:n?`Inbox · ${n} actions`:"Inbox","aria-label":n?`Inbox, ${n} actions`:"Inbox",onClick:t,children:[S.jsx(py,{size:17,"aria-hidden":"true"}),n?S.jsx("span",{className:"human-review-inbox-count","aria-hidden":"true",children:n>99?"99+":n}):null]})}function dJ({connection:e,teamId:t,actorId:n,projectId:a}){if(!e||!t||!n)return null;const o=()=>{Ar(Fa("inbox",null,{area:"console",projectId:a}))};return S.jsx(cJ,{context:{connection:e,scope:t,actorId:n,location:"hosted"},onOpen:o})}const kd=y.createContext(null);function uJ({children:e}){const[t,n]=y.useState(null),[a,o]=y.useState(null),[r,s]=y.useState(null),c=y.useMemo(()=>({title:t,actions:a,activity:r,setTitle:n,setActions:o,setActivity:s}),[t,a,r]);return S.jsx(kd.Provider,{value:c,children:e})}function Loe({children:e}){return S.jsx(kd.Provider,{value:null,children:e})}function mJ({children:e,className:t=""}){const n=y.useContext(kd);return S.jsx("div",{ref:n?.setTitle,className:`page-chrome-title-target ${t}`,children:e?S.jsx("div",{className:"page-chrome-fallback",children:e}):null})}function pJ({className:e=""}){const t=y.useContext(kd);return S.jsx("div",{ref:t?.setActions,className:e})}function qoe({title:e,actions:t,fallback:n,children:a}){const o=y.useContext(kd);return o?S.jsxs(S.Fragment,{children:[o.title?vm.createPortal(S.jsx("div",{className:"page-chrome-title",children:e}),o.title):null,o.actions&&t?vm.createPortal(t,o.actions):null,a]}):n??S.jsxs("header",{children:[e,t]})}const fJ=y.lazy(()=>Zo(()=>import("./WorkspaceEnvironmentMenu-Byjngd9V.js"),__vite__mapDeps([30,1,2,21,27,12,15,31,29,32])).then(e=>({default:e.WorkspaceEnvironmentMenu})));function hJ({sidebarOpen:e,sidebarAvailable:t=!0,title:n,breadcrumbs:a,backAction:o,workspaceName:r,workspaceId:s,busy:c,workspaceState:m,workspaceKind:u,selectedApp:f,selectedProject:h,workspaceDiff:x,managedWorkspace:k,workspaceBusy:_,defaultTeamId:P,activityActorId:E,activityProjectId:A,showDiffControls:$,diffPanelOpen:j,terminalOpen:M,rightSidebarAvailable:w=!1,rightSidebarOpen:R=!1,onToggleDiffPanel:O,onToggleRightSidebar:N,onOpenSearch:F,onToggleTerminal:L,onRunTerminalCommand:Y,onWorkspaceToolAction:re,onOpenCommitDialog:ve,onWorkspaceBranchChange:oe,onWorkspaceBranchCreate:K,connection:H,onBootstrap:de,onOpenSandboxWorkspace:X,onShowSidebar:Z,platform:pe,showWorkspaceControls:ee=!0}){const me=x?.filesChanged??0;return S.jsxs("header",{className:"app-titlebar",children:[S.jsxs("div",{className:"titlebar-left",children:[t&&!e&&S.jsx("button",{className:"titlebar-icon",title:"Show sidebar",onClick:Z,children:S.jsx(SP,{size:16})}),o?S.jsx("button",{className:"titlebar-icon",type:"button","aria-label":o.label,title:o.label,onClick:o.onSelect,children:S.jsx(hW,{size:16})}):null,S.jsx(mJ,{children:a?.length?S.jsx("nav",{className:"titlebar-breadcrumbs","aria-label":"Breadcrumb",children:a.map((be,Me)=>{const ke=Me===a.length-1;return S.jsxs("div",{className:"titlebar-breadcrumb-item",children:[be.onSelect&&!ke?S.jsx("button",{type:"button",onClick:be.onSelect,children:be.label}):S.jsx("strong",{children:be.label}),!ke&&S.jsx(Jo,{size:14})]},`${be.label}-${Me}`)})}):S.jsxs("div",{className:"titlebar-title",children:[S.jsx("strong",{children:n}),r&&S.jsx("span",{children:r})]})})]}),S.jsxs("div",{className:"titlebar-right",children:[S.jsx(pJ,{className:"page-chrome-actions"}),S.jsx(dJ,{connection:H,teamId:P??null,actorId:E??null,projectId:A??null}),ee&&S.jsxs("div",{className:"titlebar-actions",children:[S.jsx(y.Suspense,{fallback:null,children:S.jsx(fJ,{mode:"topbar",busy:c,workspaceState:m,workspaceId:s,workspaceKind:u,selectedApp:f,selectedProject:h,workspaceBusy:_,defaultTeamId:P,workspaceDiff:x,managedWorkspace:k,showDiffControls:$,diffPanelOpen:j,onToggleDiffPanel:O,onRunTerminalCommand:Y,onWorkspaceToolAction:re,onOpenCommitDialog:ve,onWorkspaceBranchChange:oe,onWorkspaceBranchCreate:K,connection:H,onBootstrap:de,onOpenSandboxWorkspace:X})}),S.jsx("button",{type:"button",className:"titlebar-icon",title:"Search chats and projects","aria-label":"Search chats and projects",onClick:F,children:S.jsx(u8,{size:16})}),S.jsx("button",{type:"button",className:`titlebar-icon ${M?"active":""}`,title:`${M?"Hide":"Show"} terminal`,"aria-label":`${M?"Hide":"Show"} terminal`,"aria-pressed":M,onClick:L,children:S.jsx(wP,{size:16})}),$&&S.jsx("button",{type:"button",className:`topbar-diff-button ${R?"active":""}`,title:`${R?"Hide":"Show"} sidebar${me?`, ${me} changed files`:""}`,"aria-label":`${R?"Hide":"Show"} sidebar`,"aria-pressed":R,onClick:O,children:S.jsx($g,{size:16})})]}),w&&N&&!$?S.jsx("div",{className:"titlebar-actions",children:S.jsx("button",{type:"button",className:`topbar-diff-button ${R?"active":""}`,title:`${R?"Hide":"Show"} sidebar`,"aria-label":`${R?"Hide":"Show"} sidebar`,"aria-pressed":R,onClick:N,children:S.jsx($g,{size:16})})}):null,S.jsx(I8,{platform:pe})]})]})}function gJ(){const[e,t]=y.useState(null),n=y.useRef(null),a=y.useCallback(r=>new Promise(s=>{n.current?.resolve(!1);const c={...r,cancelLabel:r.cancelLabel??"Cancel",tone:r.tone??"default",resolve:s};n.current=c,t(c)}),[]),o=y.useCallback(r=>{const s=n.current;n.current=null,t(null),s?.resolve(r)},[]);return{confirmAction:a,confirmDialog:e,resolveConfirmDialog:o}}function vJ({state:e,onResolve:t}){const n=y.useId(),a=y.useId();if(y.useEffect(()=>{if(!e)return;function r(s){s.key==="Escape"&&t(!1)}return document.addEventListener("keydown",r),()=>document.removeEventListener("keydown",r)},[t,e]),!e)return null;const o=e.tone==="danger"?"git-dialog-primary danger":"git-dialog-primary";return S.jsx("div",{className:"git-dialog-backdrop",role:"presentation",onMouseDown:()=>t(!1),children:S.jsxs("section",{className:"git-dialog project-confirm-dialog",role:"alertdialog","aria-modal":"true","aria-labelledby":n,"aria-describedby":a,onMouseDown:r=>r.stopPropagation(),children:[S.jsx("h2",{id:n,children:e.title}),S.jsx("p",{id:a,children:e.body}),S.jsxs("div",{className:"git-dialog-footer",children:[S.jsx("button",{type:"button",className:"git-dialog-secondary",onClick:()=>t(!1),children:e.cancelLabel}),S.jsx("button",{type:"button",className:o,autoFocus:!0,onClick:()=>t(!0),children:e.confirmLabel})]})]})})}function bJ(){const{confirmAction:e,confirmDialog:t,resolveConfirmDialog:n}=gJ();return{confirmProjectAction:y.useCallback(o=>e({tone:"danger",...o}),[e]),projectConfirmDialog:t,resolveProjectConfirmDialog:n}}function yJ({state:e,onResolve:t}){return S.jsx(vJ,{state:e,onResolve:t})}const ym=new Map,SJ=(e,t,n)=>{const a=ym.get(e)??{commits:0,maxActualDurationMs:0,totalActualDurationMs:0};a.commits+=1,a.maxActualDurationMs=Math.max(a.maxActualDurationMs,n),a.totalActualDurationMs+=n,ym.set(e,a)};function xJ({children:e,id:t}){return S.jsx(y.Profiler,{id:t,onRender:SJ,children:e})}typeof window<"u"&&(window.__OPENPOND_RENDER_COMMITS__={get:()=>Object.fromEntries([...ym.entries()].map(([e,t])=>[e,{...t}])),reset:()=>ym.clear()});const kJ=y.lazy(()=>Zo(()=>import("./MainPane-CakOBCHw.js").then(e=>e.q),__vite__mapDeps([33,1,2,9,14,34,31,11,12,35])).then(e=>({default:e.MainPane})));function wJ({className:e,style:t,sidebar:n,topBar:a,mainPane:o,cloudSetup:r,projectConfirm:s,lazyPanels:c,toast:m}){return S.jsx(uJ,{children:S.jsxs("div",{className:e,style:t,children:[S.jsx(W7,{sidebar:n,open:a.sidebarOpen}),a.sidebarAvailable!==!1?S.jsxs(xJ,{id:"sidebar",children:[S.jsx(N7,{...n,open:a.sidebarOpen}),a.sidebarOpen?S.jsx("div",{className:"sidebar-resize-handle",role:"separator","aria-orientation":"vertical","aria-label":"Resize sidebar",onPointerDown:n.onSidebarResizeStart}):null]}):null,S.jsxs("div",{className:"content-shell",children:[S.jsx(hJ,{...a}),S.jsx(y.Suspense,{fallback:S.jsx("main",{className:"main-pane","aria-busy":"true","aria-label":"Loading workspace"}),children:S.jsx(kJ,{...o})})]}),S.jsx(Z7,{...r}),S.jsx(yJ,{...s}),S.jsx(oJ,{...c}),S.jsx(lA,{...m})]})})}function IJ({settings:e,toast:t}){return S.jsxs(S.Fragment,{children:[S.jsx(iJ,{...e}),S.jsx(lA,{...t})]})}const Lu="OpenPond".split("");function _J({visibleLetterCount:e=Lu.length}){const t=Lu.slice(0,Math.max(0,Math.min(e,Lu.length)));return S.jsxs("div",{className:"app-splash-lockup",children:[S.jsx("div",{className:"app-splash-mark",children:S.jsx("img",{alt:"OpenPond",className:"app-splash-logo",decoding:"async",src:Ty})}),S.jsx("span",{"aria-hidden":"true",className:`app-splash-wordmark${t.length>0?" is-visible":""}`,children:t.map((n,a)=>S.jsx("span",{className:"app-splash-letter",children:n},`${n}-${a}`))})]})}const $h=Lu.length,CJ=520,RJ=240;function Wx(){return typeof window>"u"?!1:window.matchMedia("(prefers-reduced-motion: reduce)").matches}function PJ({startup:e}){const[t,n]=y.useState(()=>Wx()?$h:0);return y.useEffect(()=>{if(Wx()){n($h);return}const a=Array.from({length:$h},(o,r)=>window.setTimeout(()=>n(r+1),CJ+RJ*r));return()=>{a.forEach(o=>window.clearTimeout(o))}},[]),S.jsxs("main",{className:"app-splash","aria-busy":"true","aria-label":e.label,role:"status",children:[S.jsx(_J,{visibleLetterCount:t}),S.jsx("span",{className:"app-splash-status",children:e.label})]})}const jy=5e3;function Bs(e,t){if(e.length===0)return t;if(t.length===0)return e;const n=new Set,a=[];for(const o of[...e,...t])n.has(o.id)||(n.add(o.id),a.push(o));return a}function io(e,t,n=jy){return qu(Bs(e,t),n)}function qu(e,t=jy){return e.length<=t?e:e.slice(e.length-t)}function AJ(e,t){if(t.length===0)return qu(e);if(e.length===0)return qu(t);const n=new Map;let a=0;for(const o of[...e,...t])n.has(o.id)||n.set(o.id,{event:o,index:a}),a+=1;return qu([...n.values()].sort((o,r)=>EJ(o,r)).map(({event:o})=>o))}function Jg(e){let t=null;for(const n of e)typeof n.sequence=="number"&&(t=t===null?n.sequence:Math.max(t,n.sequence));return t}function TJ(e){let t=null;for(const n of e)n.sequence!==void 0&&(t===null||n.sequence<t)&&(t=n.sequence);return t}function EJ(e,t){const n=e.event.sequence,a=t.event.sequence;if(typeof n=="number"&&typeof a=="number"){const s=n-a;if(s!==0)return s}const o=Date.parse(e.event.timestamp),r=Date.parse(t.event.timestamp);if(Number.isFinite(o)&&Number.isFinite(r)){const s=o-r;if(s!==0)return s}return e.index-t.index}function Gx(e){if(e<1e3)return String(e);const t=e/1e3;return t>=10||Number.isInteger(t)?`${Math.round(t)}k`:`${t.toFixed(1)}k`}function jJ(e){return e===null?"unknown":e>=85?"high":e>=65?"medium":"low"}function MJ(e,t){const n=e?.triggerPercent??85;return e?.autoEnabled===!1?t>=n?"Auto compaction is off. Start a new chat or turn it on before the provider limit is reached.":"Auto compaction is off.":`Auto compacts at ${n}% context when supported.`}function Jx(e){return e==="codex"||e==="claude-code"}function OJ(e){return e==="openpond"}function cA(e){for(let t=e.length-1;t>=0;t-=1){const n=e[t];if(n?.name!=="session.context.updated")continue;const a=qD.safeParse(n.data);if(a.success)return a.data}return null}function dA(e){if(e.snapshot&&e.snapshot.provider===e.provider){const n=e.snapshot.usedTokens,a=e.snapshot.maxContextTokens,o=Math.min(100,Math.round(e.snapshot.percentFull)),r=`${o}% full`,s=`${Gx(n)} / ${Gx(a)} tokens used`,c=Jx(e.provider)?`Context and compaction are managed by ${e.provider==="claude-code"?"Claude Code":"Codex app-server"}.`:MJ(e.preferences,o);return{usedTokens:n,maxTokens:a,percent:o,summary:r,tokensLabel:s,detail:c,tooltip:`Context window: ${r} ${s}. ${c}`,tone:jJ(o)}}if(Jx(e.provider)){const n=e.provider==="claude-code"?"Claude Code":"Codex app-server",a=`Context is managed by ${n}.`;return{usedTokens:0,maxTokens:null,percent:null,summary:"Managed externally",tokensLabel:n,detail:a,tooltip:`Context window: ${a}`,tone:"unknown"}}if(!OJ(e.provider)){const n="Context pressure is unavailable until this provider has model context metadata.";return{usedTokens:0,maxTokens:null,percent:null,summary:"Limit unknown",tokensLabel:"Provider metadata unavailable",detail:n,tooltip:`Context window: ${n}`,tone:"unknown"}}const t="Send a message to measure hosted context.";return{usedTokens:0,maxTokens:null,percent:null,summary:"Not measured yet",tokensLabel:"Hosted context",detail:t,tooltip:`Context window: ${t}`,tone:"unknown"}}function My(e){let t=!1;const n=uA(e);for(let a=e.length-1;a>=0;a-=1){const o=e[a];if($J(o)){t=!0;continue}const r=il(o?.data);if(!(o?.name!=="diagnostic"||!r)){if(r.kind==="thread_goal_cleared")return null;if(r.kind==="thread_goal"){const s=Oy(il(r.goal),fa(r.provider),n);if(s){const c=Fc(s);return t&&c.tone==="active"?null:c}}if(r.kind==="goal_context"){const s=pA(o.output??"",fa(r.provider)??"codex",n);if(s){const c=Fc(s);return t&&c.tone==="active"?null:c}}}}return null}function Sm(e){const t=uA(e);for(let n=e.length-1;n>=0;n-=1){const a=e[n],o=il(a?.data);if(!(a?.name!=="diagnostic"||!o)){if(o.kind==="thread_goal_cleared"&&o.synthetic!==!0)return null;if(o.kind==="thread_goal"){const r=Oy(il(o.goal),fa(o.provider),t);if(!r)continue;const s=Fc(r);return s.tone==="active"?s:null}if(o.kind==="goal_context"){const r=pA(a.output??"",fa(o.provider)??"codex",t);if(!r)continue;const s=Fc(r);return s.tone==="active"?s:null}}}return null}function Nh(e){const t=il(il(e)?.codexGoalRuntime),n=Oy(t,fa(t?.provider)??"codex");if(!n)return null;const a=Fc(n);return a.tone==="active"?a:null}function $J(e){return e?.name==="turn.completed"||e?.name==="turn.interrupted"||e?.name==="turn.failed"}function Fc(e){const t=fA(e.status),n=vA(e.timeUsedSeconds),a=`Goal ${n}`,o=e.tokensUsed===null?null:e.tokenBudget===null?`${Dh(e.tokensUsed)} tokens`:`${Dh(e.tokensUsed)} / ${Dh(e.tokenBudget)} tokens`,r=o?`${e.statusLabel} · ${o}`:e.statusLabel;return{objective:e.objective,status:e.status,timeUsedSeconds:e.timeUsedSeconds,tokensUsed:e.tokensUsed,tokenBudget:e.tokenBudget,actionLabel:t.actionLabel,timeLabel:n,label:a,detail:r,tooltip:`Goal runtime: ${bA(e.timeUsedSeconds)}. ${r}. ${e.objective}`,tone:t.tone,observedAt:e.observedAt}}function NJ(e,t){if(!e||e.tone!=="active"||!e.observedAt)return e;const n=mA(e.observedAt,t);if(n<=0)return e;const a=e.timeUsedSeconds+n,o=vA(a);return{...e,timeUsedSeconds:a,timeLabel:o,label:`Goal ${o}`,tooltip:`Goal runtime: ${bA(a)}. ${e.detail}. ${e.objective}`,observedAt:t}}function Oy(e,t=null,n=null){if(!e)return null;const a=fa(e.objective)??"Active goal",o=fa(e.status)??"active";if((Zg(t)??Zg(fa(e.provider)))!=="codex")return null;const s=n??fa(e.updatedAt)??fa(e.updated_at)??null,c=bs(e.timeUsedSeconds)??bs(e.time_used_seconds)??0,m=fa(e.activeSinceAt)??fa(e.active_since_at),u=fA(o).tone==="active"?mA(m??fa(e.createdAt)??fa(e.created_at),s):0,f=m?c+u:Math.max(c,u),h=bs(e.tokensUsed)??bs(e.tokens_used),x=bs(e.tokenBudget)??bs(e.token_budget);return{objective:a,status:o,statusLabel:gA(o),timeUsedSeconds:Math.max(0,Math.floor(f)),tokensUsed:h===null?null:Math.max(0,Math.floor(h)),tokenBudget:x===null?null:Math.max(0,Math.floor(x)),observedAt:s}}function uA(e){for(let t=e.length-1;t>=0;t-=1){const n=e[t]?.timestamp;if(n&&Number.isFinite(Date.parse(n)))return n}return null}function mA(e,t){if(!e||!t)return 0;const n=Date.parse(e),a=Date.parse(t);return!Number.isFinite(n)||!Number.isFinite(a)||a<=n?0:Math.floor((a-n)/1e3)}function pA(e,t=null,n=null){if(!e.trim()||Zg(t)!=="codex")return null;const a=hA(e,"Status")??"active",o=Wl(e,"Tokens used"),r=Wl(e,"Token budget"),s=Wl(e,"Time used seconds")??Wl(e,"Time spent pursuing goal")??Wl(e,"Elapsed seconds")??0;return{objective:Zx(e,"objective")??Zx(e,"untrusted_objective")??"Active goal",status:a,statusLabel:gA(a),timeUsedSeconds:Math.max(0,Math.floor(s)),tokensUsed:o,tokenBudget:r,observedAt:n}}function fA(e){switch(DJ(e)){case"active":case"running":return{tone:"active",actionLabel:"Pursuing goal"};case"paused":return{tone:"paused",actionLabel:"Goal paused"};case"blocked":return{tone:"limited",actionLabel:"Goal blocked"};case"complete":case"completed":case"achieved":return{tone:"done",actionLabel:"Goal achieved"};case"failed":return{tone:"limited",actionLabel:"Goal failed"};case"cancelled":case"canceled":case"stopped":return{tone:"limited",actionLabel:"Goal cancelled"};case"budget_limited":return{tone:"limited",actionLabel:"Goal budget limited"};default:return{tone:"active",actionLabel:"Goal status unknown"}}}function DJ(e){return e.trim().toLowerCase().replace(/[-\s]+/g,"_")}function hA(e,t){const n=t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(`^\\s*-?\\s*${n}:\\s*(.+?)\\s*$`,"im").exec(e)?.[1]?.trim()||null}function Wl(e,t){const n=hA(e,t);if(!n)return null;const a=n.replace(/,/g,""),o=/-?\d+(?:\.\d+)?/.exec(a);if(!o)return null;const r=Number(o[0]);return Number.isFinite(r)?r:null}function Zx(e,t){return new RegExp(`<${t}>\\s*([\\s\\S]*?)\\s*<\\/${t}>`,"i").exec(e)?.[1]?.trim()||null}function gA(e){return e.replace(/([a-z])([A-Z])/g,"$1 $2").replace(/[_-]+/g," ").replace(/\b\w/g,t=>t.toUpperCase())}function vA(e){if(e<60)return`${e}s`;const t=Math.floor(e/60);if(t<60)return`${t}m`;const n=Math.floor(t/60),a=t%60;return a>0?`${n}h ${a}m`:`${n}h`}function bA(e){if(e<60)return`${e} ${e===1?"second":"seconds"}`;const t=Math.floor(e/60);if(t<60)return`${t} ${t===1?"minute":"minutes"}`;const n=Math.floor(t/60),a=t%60;return a===0?`${n} ${n===1?"hour":"hours"}`:`${n}h ${a}m`}function Dh(e){if(e<1e3)return String(e);if(e>=1e6){const n=e/1e6;return n<10?`${Yx(n,2)}M`:n<100?`${Yx(n,1)}M`:`${Math.round(n)}M`}const t=e/1e3;return t>=10||Number.isInteger(t)?`${Math.round(t)}k`:`${t.toFixed(1)}k`}function Yx(e,t){return e.toFixed(t).replace(/\.?0+$/,"")}function il(e){return e&&typeof e=="object"&&!Array.isArray(e)?e:null}function fa(e){return typeof e=="string"&&e.trim()?e.trim():null}function Zg(e){return e?.trim().toLowerCase()||null}function bs(e){return typeof e=="number"&&Number.isFinite(e)?e:null}const HJ=new Set(["planning","applying_source","running_checks","evaluating","pushing_hosted","running_hosted_checks"]),LJ=new Set(["awaiting_questions","awaiting_plan_approval","paused"]);function Yg(e){const t=yA(e);return t?BJ(t):null}function yA(e){for(let t=e.length-1;t>=0;t-=1){const n=e[t];if(n?.name!=="create_improve.updated")continue;const a=zJ(GJ(n.data));if(a)return a}return null}function qJ(e){if(e.events)return yA(e.events);const t=e.messages??[];for(let n=t.length-1;n>=0;n-=1){const a=t[n]?.createImproveRun??null;if(a)return a}return null}function UJ(e,t){const n=e?.target.displayName?.trim()??"",a=n.toLowerCase().replace(/[^a-z0-9]+/g," ").trim();return n&&!/^(?:create|creating|improve|improving|new) (?:an )?agent$/.test(a)?n:t}function zJ(e){const t=Qc.safeParse(e?.createImproveRun);return t.success?t.data:null}function BJ(e){const t=FJ(e);if(!t)return null;const n=VJ(e.createdAt,e.updatedAt),a=e.blockedReason??KJ(e.state);return{objective:e.objective,status:e.state,timeUsedSeconds:n,tokensUsed:null,tokenBudget:null,actionLabel:t.actionLabel,timeLabel:WJ(n),label:t.actionLabel,detail:a,tooltip:`${t.actionLabel}: ${a}. ${e.objective}`,tone:t.tone}}function FJ(e){const t=e.state,n=e.target.kind==="agent"?"Agent":"Work";return HJ.has(t)?{tone:"active",actionLabel:`${n} running`}:LJ.has(t)?{tone:"active",actionLabel:`${n} awaiting input`}:t==="blocked"?{tone:"limited",actionLabel:`${n} blocked`}:t==="failed"?{tone:"limited",actionLabel:`${n} failed`}:t==="cancelled"?{tone:"limited",actionLabel:`${n} cancelled`}:t==="ready"||t==="ready_local"?{tone:"done",actionLabel:e.target.kind==="agent"?"Agent ready":"Workproduct ready"}:t==="published_hosted"?{tone:"done",actionLabel:e.target.kind==="agent"?"Agent published":"Workproduct published"}:null}function VJ(e,t){const n=Date.parse(e),a=Date.parse(t);return!Number.isFinite(n)||!Number.isFinite(a)||a<n?0:Math.floor((a-n)/1e3)}function KJ(e){return e.replace(/([a-z])([A-Z])/g,"$1 $2").replace(/[_-]+/g," ").replace(/\b\w/g,t=>t.toUpperCase())}function WJ(e){if(e<60)return`${e}s`;const t=Math.floor(e/60);if(t<60)return`${t}m`;const n=Math.floor(t/60),a=t%60;return a>0?`${n}h ${a}m`:`${n}h`}function GJ(e){return e&&typeof e=="object"&&!Array.isArray(e)?e:null}function SA(e,t){if(!t)return null;const n=new Map,a=[];for(const M of e){if(!M.name.startsWith("subagent."))continue;const w=YJ(M);w&&a.push(w);const R=ZJ(M);R?.parentSessionId===t&&n.set(R.id,R)}if(n.size===0)return null;const o=[...n.values()].sort((M,w)=>Ss(w).localeCompare(Ss(M))),r=o.filter(M=>M.status==="queued"||M.status==="running"),s=o.filter(M=>M.status==="completed"),c=o.filter(M=>M.status==="failed"),m=o.filter(M=>M.status==="cancelled"),u=o.filter(M=>M.status==="needs_resume"),f=[...s,...c,...m].sort((M,w)=>Ss(w).localeCompare(Ss(M))),h=o.reduce((M,w)=>{const R=ol(w.metadata?.usage);return M.totalTokens+=fu(R?.totalTokens),M.promptTokens+=fu(R?.promptTokens),M.completionTokens+=fu(R?.completionTokens),M.requestCount+=fu(R?.requestCount),M},{totalTokens:0,promptTokens:0,completionTokens:0,requestCount:0}),x=o.flatMap(M=>xA([...M.report?.blockers??[],M.error,M.progress.currentBlocker]).map(w=>({runId:M.id,roleId:M.roleId,status:M.status,message:w}))),k=o.flatMap(M=>kA([...M.report?.artifacts??[],M.report?.patchRef,M.report?.diffRef,...M.progress.patchRefs]).map(w=>({...w,runId:M.id,roleId:M.roleId}))),_=f.map(M=>JJ(M,a)),P=o[0]??null,E=P?{runId:P.id,roleId:P.roleId,status:P.status,message:P.progress.latestMeaningfulActivity||P.report?.summary||P.objective,updatedAt:Ss(P)}:null,A=r.length>0?`${r.length} ${r.length===1?"child":"children"} running`:`${f.length} ${f.length===1?"child":"children"} finished`,$=[r.length?`${r.length} active`:null,s.length?`${s.length} completed`:null,c.length?`${c.length} failed`:null,m.length?`${m.length} cancelled`:null,u.length?`${u.length} paused`:null].filter(Boolean).join(" · "),j=E?`${eZ(E.roleId)}: ${E.message}`:"";return{sessionId:t,runs:o,activeRuns:r,completedRuns:s,failedRuns:c,cancelledRuns:m,needsResumeRuns:u,terminalRuns:f,latestRun:P,latestMeaningfulUpdate:E,activeCount:r.length,completedCount:s.length,failedCount:c.length,cancelledCount:m.length,needsResumeCount:u.length,terminalCount:f.length,usage:h,blockers:x,evidenceRefs:k,finalResults:_,testsRunCount:o.reduce((M,w)=>M+w.progress.validationAttempts.length,0),label:A,tooltip:[$,j].filter(Boolean).join(". ")}}function JJ(e,t){return{runId:e.id,roleId:e.roleId,status:e.status,objective:e.objective,summary:e.report?.summary||e.error||"Child conversation finished.",findings:e.report?.findings??[],changedFiles:e.progress.changedFiles,refs:kA([...e.report?.artifacts??[],e.report?.patchRef,e.report?.diffRef]),testsRun:e.report?.testsRun??[],validationAttempts:e.progress.validationAttempts.map(n=>n.command),blockers:xA([...e.report?.blockers??[],e.error]),confidence:e.report?.confidence??null,importantMessages:t.filter(n=>n.fromRunId===e.id).map(n=>({id:n.id,runId:e.id,fromRunId:n.fromRunId,kind:n.kind,body:n.body,createdAt:n.createdAt})),workspaceRetention:QJ(e),updatedAt:Ss(e)}}function ZJ(e){const t=ol(e.data),n=[t?.run,ol(t?.message)?.run];for(const a of n){const o=gw.safeParse(a);if(o.success)return o.data}return null}function YJ(e){const t=rN.safeParse(ol(e.data)?.message);return t.success?t.data:null}function QJ(e){const t=ol(ol(e.metadata?.workspaceHandoff)?.workspaceRetention);return t?.status!=="retained"?null:{status:"retained",reason:pu(t.reason),retainedAt:pu(t.retainedAt),expiresAt:pu(t.expiresAt),retentionDays:XJ(t.retentionDays),trigger:pu(t.trigger),cleanupAfterExpiry:t.cleanupAfterExpiry===!0}}function Ss(e){return e.updatedAt??e.completedAt??e.startedAt??e.createdAt}function xA(e){return[...new Set(e.map(t=>t?.trim()).filter(t=>!!t))]}function kA(e){const t=new Map;for(const n of e)n&&t.set(`${n.kind}:${n.id}`,n);return[...t.values()]}function ol(e){return e&&typeof e=="object"&&!Array.isArray(e)?e:null}function pu(e){return typeof e=="string"&&e.trim()?e.trim():null}function fu(e){return typeof e=="number"&&Number.isFinite(e)?e:0}function XJ(e){return typeof e=="number"&&Number.isFinite(e)?e:null}function eZ(e){return e.slice(0,1).toUpperCase()+e.slice(1).replace(/[-_]+/g," ")}const Qg=[];function Xg(e,t){return wA(e,t,null)}function wA(e,t,n){const a=n&&oZ(n.events,e)?nZ(n.indexes,n.events.length,e):tZ(e),o=iZ(t);return{...a,...o}}function tZ(e){const t=new Map;for(const n of e){if(!n.sessionId)continue;const a=t.get(n.sessionId);a?a.push(n):t.set(n.sessionId,[n])}return aZ(t)}function nZ(e,t,n){const a=new Map(e.eventsBySessionId),o=new Map(e.latestContextUsageBySessionId),r=new Map(e.latestGoalRuntimeBySessionId),s=new Map(e.latestSubagentRuntimeBySessionId),c=new Set(e.activeGoalSessionIds),m=new Set(e.activeSubagentSessionIds),u=new Set;for(let f=t;f<n.length;f+=1){const h=n[f];if(!h.sessionId)continue;if(u.has(h.sessionId)){a.get(h.sessionId).push(h);continue}const x=a.get(h.sessionId);a.set(h.sessionId,x?[...x,h]:[h]),u.add(h.sessionId)}for(const f of u){const h=a.get(f)??Qg,x=cA(h);x?o.set(f,x):o.delete(f);const k=_A(h);k?(r.set(f,k),k.tone==="active"?c.add(f):c.delete(f)):(r.delete(f),c.delete(f));const _=SA(h,f);_?(s.set(f,_),IA({sessionEvents:h,sessionId:f,latestGoalRuntimeBySessionId:r,activeGoalSessionIds:c}),_.activeCount>0?m.add(f):m.delete(f)):(s.delete(f),m.delete(f))}return{eventsBySessionId:a,latestContextUsageBySessionId:o,latestGoalRuntimeBySessionId:r,latestSubagentRuntimeBySessionId:s,activeGoalSessionIds:c,activeSubagentSessionIds:m}}function aZ(e){const t=new Map,n=new Map,a=new Map,o=new Set,r=new Set;for(const[s,c]of e){const m=cA(c);m&&t.set(s,m);const u=_A(c);u&&(n.set(s,u),u.tone==="active"&&o.add(s))}for(const[s,c]of e){const m=SA(c,s);m&&(a.set(s,m),IA({sessionEvents:c,sessionId:s,latestGoalRuntimeBySessionId:n,activeGoalSessionIds:o}),m.activeCount>0&&r.add(s))}return{eventsBySessionId:e,latestContextUsageBySessionId:t,latestGoalRuntimeBySessionId:n,latestSubagentRuntimeBySessionId:a,activeGoalSessionIds:o,activeSubagentSessionIds:r}}function IA(e){if(e.latestGoalRuntimeBySessionId.has(e.sessionId))return;const t=Sm(e.sessionEvents);t&&(e.latestGoalRuntimeBySessionId.set(e.sessionId,t),t.tone==="active"&&e.activeGoalSessionIds.add(e.sessionId))}function _A(e){return Yg(e)??My(e)??Sm(e)}function iZ(e){const t=new Map,n=new Map,a=new Map,o=new Map;for(const r of e){t.set(r.id,r);const s=n.get(r.status);if(s?s.push(r):n.set(r.status,[r]),r.status!=="pending")continue;const c=a.get(r.sessionId);c?c.push(r):a.set(r.sessionId,[r]);const m=o.get(r.sessionId);(!m||Qx(r.createdAt)>Qx(m.createdAt))&&o.set(r.sessionId,r)}return{approvalsById:t,approvalsByStatus:n,pendingApprovalsBySessionId:a,latestPendingApprovalBySessionId:o}}function oZ(e,t){return e===t?!0:e.length>t.length||e.length===t.length?!1:e.length===0?!0:e[0]===t[0]&&e[e.length-1]===t[e.length-1]}function wd(e,t){return t?e.eventsBySessionId.get(t)??Qg:Qg}function CA(e,t){return t?e.latestContextUsageBySessionId.get(t)??null:null}function RA(e,t){return t?e.latestGoalRuntimeBySessionId.get(t)??null:null}function rZ(e,t){return t?e.latestSubagentRuntimeBySessionId.get(t)??null:null}function sZ(e,t){return t?e.latestPendingApprovalBySessionId.get(t)??null:null}function Qx(e){const t=Date.parse(e);return Number.isFinite(t)?t:Number.NEGATIVE_INFINITY}function lZ(e,t){return e?.conversationId===t}function cZ(e,t){return e?.id===t?null:e}function dZ(e){const t=new Set;if(e.readmePath){const n=e.readmePath.replaceAll("\\","/").split("/").at(-1);n&&t.add(n)}for(const n of e.skills){t.add(n.relativePath);const a=n.relativePath.lastIndexOf("/"),o=a>=0?n.relativePath.slice(0,a):"";for(const r of n.resourceFiles)t.add(o?`${o}/${r}`:r)}return{name:`${e.owner}/${e.repo}`,description:`${e.skills.length} installed skill${e.skills.length===1?"":"s"} from GitHub.`,scope:"extension",packagePath:e.sourcePath,files:[...t]}}function uZ(e){return JSON.stringify([e.source,e.repositoryId,e.profileId])}function Uoe(e,t){return e.profiles.find(n=>uZ(n.ref)===t)?.ref??null}function mZ(e,t){return!!(e&&t&&e.source===t.source&&e.repositoryId===t.repositoryId&&e.profileId===t.profileId)}function zoe(e,t){return e.profiles.find(n=>mZ(n.ref,t))?.state??null}function pZ(e,t){const n=new Map(Eq.map(a=>[a.name,{...a,validationMessages:[...a.validationMessages],resourceFiles:[...a.resourceFiles]}]));for(const a of e?.skills??[])n.has(a.name)||n.set(a.name,a);for(const a of t?.extensions??[])if(a.validationStatus==="valid")for(const o of a.skills)o.validationStatus!=="valid"||n.has(o.name)||n.set(o.name,{name:o.name,description:o.description,path:o.relativePath,scope:"profile",enabled:!0,sourcePath:a.sourcePath,charCount:o.charCount,sourceHash:o.sourceHash,validationStatus:"valid",validationMessages:[],resourceFiles:o.resourceFiles});return[...n.values()].sort((a,o)=>a.name.localeCompare(o.name))}function fZ(e){return{sourceTaskId:e.sourceTaskId,sourceExperience:e.sourceExperience,targetExperience:e.targetExperience,sourceMessageIds:[...e.sourceMessageIds??[]],sourceContext:e.sourceContext?.trim()||null,outputId:e.output?.id??null,outputRevision:e.output?.revision??null,createdAt:e.createdAt??new Date().toISOString(),checkoutMutation:"none"}}function Boe(e,t){const n=`Continue from the attached Work output "${e.title}" (revision ${e.revision}).`;return t==="work"?`${n} Choose a Project or repository before making source changes; do not mutate a checkout until I choose it.`:n}const PA="openpond:last-chat-task-mode";function hZ(e,t){return e==="labs"?"models":"chat"}function gZ(e){try{return e.getItem(PA)==="work"?"work":"chat"}catch{return"chat"}}function $y(){if(typeof window>"u")return"chat";try{return gZ(Fo)}catch{return"chat"}}function vZ(e,t){try{e.setItem(PA,t==="chat"?"chat":"work")}catch{}}function bZ(e){if(!(typeof window>"u"))try{vZ(Fo,e)}catch{}}const yZ="uploaded to a different account";function AA(e,t){const n=e?.linkedSandboxProject??null;if(!n?.projectId||!n.teamId)return{state:"none",linked:null,cloudProject:null};const a=t?.find(o=>o.id===n.projectId&&o.teamId===n.teamId)??null;return a?{state:"confirmed",linked:n,cloudProject:a}:{state:"different_account",linked:n,cloudProject:null}}function Ga(e,t){const n=AA(e,t);return n.state==="confirmed"?n.cloudProject:null}function SZ(e,t){return AA(e,t).state==="different_account"?yZ:null}function Ui(e){return e==="sandbox"||e==="sandbox_template"||e==="sandbox_app"}function TA(e={}){return{...e,workspaceTarget:"hybrid"}}function xZ(e={}){return{...e,workspaceTarget:"local"}}function zi(e){return e?.metadata?.workspaceTarget==="hybrid"}function kZ(e){return!!(e&&e.provider==="openpond"&&e.workspaceKind==="local_project"&&e.cloudProjectId&&e.title.trim().endsWith(" Cloud"))}function EA({cloudProjects:e,selectedCloudProject:t,selectedProject:n}){const a=n?.linkedSandboxProject??null,o=e?Ga(n,e):null,r=t?.id??o?.id??(e?null:a?.projectId??null),s=t?.teamId??o?.teamId??(e?null:a?.teamId??null);return!r||!s?{kind:"missing_cloud_project",message:"Upload/sync this Project to Cloud before using Hybrid."}:{kind:"ready",cloudProjectId:r,cloudTeamId:s,cwd:n?.workspacePath??null,localProjectId:n?.id??null,workspaceName:t?.name??o?.name??a?.projectName??n?.name??"Hybrid workspace"}}function jA({modelRef:e,provider:t,target:n,title:a}){return{provider:t,...e?{modelRef:e}:{},appId:null,appName:null,workspaceKind:"sandbox",workspaceId:null,workspaceName:n.workspaceName,localProjectId:n.localProjectId,cloudProjectId:n.cloudProjectId,cloudTeamId:n.cloudTeamId,metadata:TA(),cwd:n.cwd,title:a}}function wZ(e){return y.useEffect(()=>{const t=UP(e.selectedSession);!t||e.composerDraftStore.getSnapshot()||e.composerDraftStore.set(t)},[e.composerDraftStore,e.selectedSession?.id]),y.useCallback(async t=>{const n=t.trim();if(!e.connection||!n||e.activeExperience==="chat")return!1;const a=tG(n);try{let o;const r=e.selectedSession;if(r&&zc(r))o=await ae.patchSession(e.connection,r.id,{title:a,metadata:Ah(r.metadata,n)}),e.setSessions(s=>s.map(c=>c.id===o.id?o:c));else{const s=r?.metadata?.workspaceTarget==="hybrid"?"hybrid":r?.metadata?.workspaceTarget==="local"?"local":null,c=r?.provider??(e.selectedCloudProject?"openpond":e.activeProvider),m=r?.modelRef??(c==="openpond"?{providerId:"openpond",modelId:Ws}:{providerId:c,modelId:e.activeModel}),u=s?{workspaceTarget:s}:!r&&e.workspaceTarget==="local"?{workspaceTarget:"local"}:{};let f;if(!r&&e.workspaceTarget==="hybrid"){const h=EA({cloudProjects:e.cloudProjects,selectedCloudProject:e.selectedCloudProject,selectedProject:e.selectedProject});if(h.kind!=="ready")throw new Error(h.message);const x=jA({modelRef:m,provider:c,target:h,title:a});f={...x,experience:"work",metadata:Ah(x.metadata,n)}}else f={experience:"work",provider:c,modelRef:m,openPondCommandAccessMode:r?.openPondCommandAccessMode??e.activeOpenPondCommandAccessMode,appId:r?.appId??null,appName:r?.appName??null,workspaceKind:r?.workspaceKind??(e.selectedCloudProject?"sandbox":e.selectedProject?"local_project":void 0),workspaceId:r?.workspaceId??e.selectedCloudProject?.id??e.selectedProject?.id??null,workspaceName:r?.workspaceName??e.selectedCloudProject?.name??e.selectedProject?.name??null,localProjectId:r?.localProjectId??e.selectedProject?.id??null,cloudProjectId:r?.cloudProjectId??e.selectedCloudProject?.id??null,cloudTeamId:r?.cloudTeamId??e.selectedCloudProject?.teamId??null,cwd:r?.cwd??e.selectedProject?.workspacePath??null,metadata:Ah(u,n),title:a};o=await ae.createSession(e.connection,f),e.setSessions(h=>[o,...h])}return e.composerDraftStore.set(""),e.setMentionedAppId(null),e.setSelectedSessionId(null),e.setView("chat"),e.requestComposerFocus(),e.showToast("Task draft saved.","success"),!0}catch(o){return e.showToast(o instanceof Error?o.message:"Could not save task draft.","error"),!1}},[e.activeExperience,e.activeModel,e.activeOpenPondCommandAccessMode,e.activeProvider,e.cloudProjects,e.composerDraftStore,e.connection,e.requestComposerFocus,e.selectedCloudProject,e.selectedProject,e.selectedSession,e.setMentionedAppId,e.setSelectedSessionId,e.setSessions,e.setView,e.showToast,e.workspaceTarget])}const IZ=[];function _Z({primary:e,secondary:t}){const[n,a]=y.useState(null),o=y.useRef(new Set),[r,s]=y.useState(!1),[c,m]=y.useState(null),u=$8(),f=u?.kind==="models"&&["home","inbox","datasets","graders","experiments"].includes(u.route.page),{composerDraftStore:h,appDispatch:x,pendingTerminalCommand:k,setPendingTerminalCommand:_,terminalTabs:P,setTerminalTabs:E,trainingDetailTasksetId:A,setTrainingDetailTasksetId:$,mentionedAppId:j,setMentionedAppId:M,cloudSetupDialog:w,setCloudSetupDialog:R,rightPanelTabRequest:O,workspaceDiffPanelViewState:N,mainComposerFocusRequestId:F,requestMainComposerFocus:L,projectConfirmDialog:Y,resolveProjectConfirmDialog:re,query:ve,searchOpen:oe,archivedChatsOpen:K,sectionMenuOpen:H,cloudProjectsExpanded:de,sidebarOpen:X,view:Z,selectedAppId:pe,selectedProjectId:ee,selectedSessionId:me,codexPermissionMode:be,codexReasoningEffort:Me,busy:ke,diffPanelOpen:ue,diffPanelExpanded:Ie,rightPanelMode:Le,activeExperience:Fe,changeNewExperience:Xe,terminalOpen:Ze,settingsSection:Be,newProjectDialogOpen:Ge,newProjectMode:Ve,newProjectName:U,newProjectPath:J,newProjectBusy:q,commitDialogOpen:ie,commitMessage:he,commitIncludeUnstaged:Pe,commitNextStep:qe,commitDraft:Je,branchDialogOpen:et,branchDialogName:ut,toast:_t,labDetailNavigation:Ne,setQuery:Ye,setSearchOpen:g,setArchivedChatsOpen:B,setSectionMenuOpen:ne,setCloudProjectsExpanded:we,setChatRowsVisibleCount:fe,setSidebarOpen:Q,setView:C,setSelectedAppId:G,setSelectedProjectId:se,setSelectedSessionId:te,setPrompt:ge,setDraftProvider:Se,setDraftModel:xe,setDraftExperience:Oe,setDiffPanelOpen:Te,setDiffPanelExpanded:Ue,setRightPanelMode:Ee,setTerminalOpen:tt,setSettingsSection:ht,setNewProjectDialogOpen:xn,setNewProjectName:xt,setNewProjectPath:Xn,setCommitDialogOpen:kn,setCommitMessage:Rn,setCommitIncludeUnstaged:Zt,setCommitNextStep:On,setCommitDraft:Pn,setBranchDialogOpen:$n,setBranchDialogName:Un,setError:Gt,showToast:Ct,applyBootstrapPayload:Nn,bootstrap:pt,connection:Nt,startup:ea,training:$t,pinnedCollapsed:zn,cloudProjectsCollapsed:xa,chatsCollapsed:lt,savedForLaterCollapsed:Dn,sidebarWidth:gi,sidebarResizing:ka,diffPanelWidth:Gn,diffPanelResizing:Hn,togglePinnedCollapsed:Vi,toggleCloudProjectsCollapsed:Ki,toggleChatsCollapsed:ei,toggleSavedForLaterCollapsed:wt,startSidebarResize:pn,startDiffPanelResize:it,selectedApp:Et,selectedCloudProject:ln,selectedProject:Ln,selectedProjectLinkedApp:mt,selectedSession:V,sidebarSessions:Ae,runtimeIndexes:De,runtimeEventStore:rt,chatMentionApps:Vt,connectedAppMentions:ca,pendingApproval:vi,pendingChatUserMessages:wn,account:Wi,activeModel:Jn,activeProvider:Ma,appDefaults:da,startMessage:xo,organizations:ir,teamChatOrganization:ko,teamChatTeamId:wo,teamChat:It,publishTeamProfileAgent:bl,communitySidebar:or,communityView:yl,teamAiThreadId:zr,toggleTeamAiSidebar:Sl,activeOpenPondCommandAccessMode:Gi,viewWorkspaceAppId:xl,viewWorkspaceId:Br,viewWorkspaceKind:Fr,viewWorkspaceName:Vr,selectedActionCatalog:kl,expandedProjectIds:wl,expandProject:bi,toggleProjectExpanded:Il,changeCodexPermissionMode:Kr,changeCodexReasoningEffort:Wr,changeOpenPondCommandAccessMode:Io,resolveApproval:Gr,beginNewChat:wa,beginNewChatWithTrainingModel:_l,dismissTrainingChatHandoff:rr,trainingChatHandoff:Ji,selectTrainingChatTaskForComposer:ua,chatHistoryLoadStates:Cl,loadMoreSelectedChatHistory:Rl,selectedPagedSessionEvents:An,activeSessions:_o,archivedSessions:Oa,pinnedSessions:ti,savedForLaterSessions:sr,savedForLaterFiles:Co,sidebarFileBookmarks:Pl,setSidebarFileStatus:Jr,setSessions:lr,projectRows:Zi,localProjectRows:Ro,cloudProjectRows:Po,projectSessionRowsByProjectId:Zr,childSessionRowsByParentId:Yr,sidebarProjectIdBySessionId:$a,chatRows:Na,visibleChatRows:Qr,chatRowsVisibleCount:cr,sessionEvents:yi,goalRuntime:dr,subagentRuntime:Yi,visibleChatMessages:Xr,activeTerminalScope:es,terminalSummaries:ts,runningSessionIds:Al,selectedSessionRunning:ns,sidebarGoalRuntimeBySessionId:as,sidebarSubagentRuntimeBySessionId:Tl,taskDragSessionId:Ao,taskPreviewSessionIds:is,startTaskDrag:ur,clearTaskDrag:Si,previewTaskDrop:El,commitTaskDrop:jl,commitTaskPreviewDrop:Ml,dragItem:Ol,startPinnedDrag:xi,clearSidebarDrag:os,previewPinnedDrop:$l,commitPinnedDrop:Nl,commitPinnedPreviewDrop:Dl,commandProjectRows:Ia,contextWindowStatus:rs,pinnedRows:Hl,workspaceBusy:gt,diffBusy:cn,visibleWorkspaceState:ma,visibleWorkspaceDiff:vn,refreshVisibleWorkspaceDiff:Bn,managedWorkspace:_a,canSyncActiveWorkspace:wp,canPublishOpenPondProject:Ip,projectTarget:_p,workspaceTarget:_d}=e,{title:Cp,browserConversationId:mr,handleWorkspaceDiffPanelViewStateChange:Cd,openSessionInChat:ss,changeProjectTarget:Rp,submitNewProjectDialog:Pp,changeWorkspaceBranch:Ap,openCommitDialog:Tp,openCreateWorkspaceBranchDialog:Ep,openDefaultsSettingsFromBranchDialog:jp,runWorkspaceTool:Mp,submitCommitDialog:Op,submitCreateWorkspaceBranch:$p,syncWorkspaceLocally:Np,answerCreateImproveQuestion:Rd,applyCreateImproveCandidate:Dp,approveCreateImproveRun:Hp,cancelCreateImproveRun:Lp,changeDraftProvider:Ll,openCreateImprovePullRequest:Pd,reconcileCreateImprovePullRequest:qp,rejectCreateImproveCandidate:Up,pauseCreateImproveRun:Ad,resumeCreateImproveRun:Td,reviseCreateImproveRun:zp,stopTurn:ls,archiveSession:Bp,restoreSession:Ed,renameSession:Fp,toggleSessionPinned:ql,toggleProjectPinned:jd,toggleSessionSavedForLater:Md,moveProjectToCloud:Vp,startCloudSetupUpload:Od,changeWorkspaceTarget:Kp,sendPromptFromMainComposer:Wp,openSandboxWorkspace:$d,openCloudProjectDialog:Gp,openExistingProjectPathDialog:Nd,openUrlInBrowserPanel:Jp,showBrowserPanel:Zp,showChangesPanel:Yp,showGoalSidebarTab:To,rightChatTrainingLaunchRequest:Dd,setRightChatTrainingLaunchRequest:Qp,closeRightChatPanel:Xp,openRightChatPanel:Ul,rightChatPanelViews:ef,showRightChatPanel:tf,showRightPanelDiffTab:nf,submitRightChatPrompt:af,activateRightChatPanel:of,updateRightChatModel:rf,updateRightChatPrompt:sf,updateRightChatProvider:lf,updateRightChatScrollState:cf,openProfileSettings:df,diagnosticEvents:uf,toggleRightSidebar:Hd,removeProject:mf}=t;FE(Nt,pt?.account.activeProfile&&pt.preferences.defaultTeamId?JSON.stringify([pt.account.baseUrl,pt.account.activeProfile,pt.account.profile?.id,pt.account.state,pt.preferences.defaultTeamId]):null,()=>{Ft({kind:"chat",sessionId:null}).then(je=>{je&&(te(null),C("chat"),a("activity"))})});const ni=pt?.account.activeProfile&&pt?.preferences.defaultTeamId?`${pt.account.activeProfile.handle}:${pt.preferences.defaultTeamId}`:null;y.useEffect(()=>{if(!(!ni||Z!=="chat"||u?.kind!=="chat"||u.sessionId||me||o.current.has(ni))){o.current.add(ni);try{const je=localStorage.getItem(`openpond:ponder-mode:v1:${ni}`);(je==="clean"||je==="activity")&&a(je)}catch{}}},[ni,u,Z,me]),y.useEffect(()=>{if(!(!ni||!o.current.has(ni)))try{localStorage.setItem(`openpond:ponder-mode:v1:${ni}`,n??"off")}catch{}},[ni,n]);const cs=y.useCallback(je=>{G(null),se(je),te(null),C("chat"),bi(je),L()},[bi,L,G,se,te,C]),pf=y.useCallback((je=null)=>{a(null);const ft=me?$a[me]??null:null;if(!je&&ft){cs(ft);return}wa(je)},[wa,cs,me,$a]),ff=y.useCallback(async je=>{if(!(!Nt||!pt))try{const ft=await ae.savePreferences(Nt,{defaultTeamId:je});Nn({...pt,preferences:ft.preferences})}catch(ft){const Ut=ft instanceof Error?ft.message:String(ft);throw Gt(Ut),Ct("Could not switch teams","error"),ft}},[Nn,pt,Nt,Gt,Ct]),hf=y.useCallback(async()=>{if(Nt)try{const je=await ae.signOutOpenPondAccount(Nt);Nn(je);const ft=await ae.savePreferences(Nt,{defaultTeamId:null});Nn({...je,preferences:ft.preferences}),Ct("Logged out","success")}catch(je){const ft=je instanceof Error?je.message:String(je);throw Gt(ft),Ct("Could not log out","error"),je}},[Nn,Nt,Gt,Ct]),zl=wo??da.defaultTeamId??null,gf=y.useMemo(()=>Zi.filter(je=>je.kind==="local"||zl!==null&&je.project.teamId===zl),[Zi,zl]),vf=y.useMemo(()=>{const je={};for(const ft of _o){const Ut=$a[ft.id];Ut&&(je[Ut]=(je[Ut]??0)+1)}for(const ft of Ro){if(ft.kind!=="local")continue;const Ut=ft.project.linkedSandboxProject?.projectId;if(!Ut||!ft.cloudLinkTrusted)continue;const Da=kt("cloud",Ut);je[ft.id]=(je[ft.id]??0)+(je[Da]??0)}return je},[_o,Ro,$a]),[Ld,Qi]=y.useState(null),[ds,us]=y.useState(null),bf=pZ(pt?.profile,pt?.extensionCatalog),[pr,Bl]=y.useState(null),[ms,Fl]=y.useState(null),[ki,qd]=y.useState(null),yf=y.useCallback(async()=>{await Ft({kind:"view",view:"team"})&&(G(null),se(null),te(null),ne(null),C("team"))},[ne,G,se,te,C]),Sf=y.useCallback(async()=>{await Ft({kind:"view",view:"community"})&&(G(null),se(null),te(null),ne(null),or.discoverCommunities())},[or.discoverCommunities,ne,G,se,te]),xf=wZ({activeExperience:Fe,activeModel:Jn,activeOpenPondCommandAccessMode:Gi,activeProvider:Ma,cloudProjects:pt?.cloudProjects??IZ,composerDraftStore:h,connection:Nt,requestComposerFocus:L,selectedCloudProject:ln,selectedProject:Ln,selectedSession:V,setMentionedAppId:M,setSelectedSessionId:te,setSessions:lr,setView:C,showToast:Ct,workspaceTarget:_d.value}),kf=y.useCallback(async je=>{if(!Nt)throw new Error("OpenPond is not connected.");let ft=Ma,Ut=Jn;ft==="codex"&&(ft=Kg(pt?.providers,{enabledOnly:!0}).find(Tn=>Tn.value!=="codex")?.value??Tr,Ut=gm(ft,pt?.providers)??wc);const Da=Ae.find(Tn=>Tn.id===je.sourceSessionId),Xi=await ae.createSession(Nt,{experience:je.target,provider:ft,modelRef:{providerId:ft,modelId:Ut},openPondCommandAccessMode:Gi,appId:null,appName:null,workspaceId:null,workspaceName:null,localProjectId:null,cloudProjectId:null,cloudTeamId:null,cwd:null,title:`Continue ${Da?.title??"task"}`.slice(0,120),metadata:{experienceHandoff:fZ({sourceTaskId:je.sourceSessionId,sourceExperience:Da?.experience??null,targetExperience:je.target,sourceMessageIds:je.sourceMessageIds??[],sourceContext:je.sourceContext,output:je.output})}});return lr(Tn=>[Xi,...Tn]),Oe(je.target),Se(ft),xe(Ut),h.set(je.prompt),Ft({kind:"chat",sessionId:Xi.id}),x({type:"selectSession",sessionId:Xi.id,appId:null,projectId:null}),G(null),se(null),tt(!1),C("chat"),Ee("home"),Te(je.target==="work"),Ue(!1),Xi},[Jn,Gi,Ma,x,pt?.providers,h,Nt,Ue,Te,Oe,xe,Se,Ee,G,se,lr,tt,C,Ae]),wf=y.useCallback(je=>{Bl(je),Fl(null),wa(null),Q(!0)},[wa,Q]),If=y.useCallback(je=>{wa(null),Oe("work"),h.set(`$openpond-refiner-authoring ${je}`),C("chat"),Q(!0)},[wa,h,Oe,Q,C]),Ud=y.useCallback(je=>{Fl(dZ(je)),Bl(null),wa(null),Q(!0)},[wa,Q]);y.useEffect(()=>{!pr&&!ms||Z!=="chat"||me||ee||pe||(Qi(pr),us(ms),Bl(null),Fl(null),Ee("home"),Ue(!1),Te(!0))},[pr,ms,pe,ee,me,Ue,Te,Ee,Z]),y.useEffect(()=>{!Ld&&!ds||Z==="chat"&&ue&&Le==="home"||(Qi(null),us(null))},[ue,ds,Ld,Le,Z]);const zd=y.useCallback(()=>{Qi(null),us(null),Ue(!1),Te(!1)},[Ue,Te]),_f=y.useCallback(je=>{let ft;if(je.workspaceKind==="local"){const Ut=kt("local",je.workspaceId);ft=`draft:${Ut}`,G(null),se(Ut),te(null),bi(Ut),C("chat")}else{const Ut=Ae.find(Da=>Da.id===je.sourceSessionId||Da.workspaceId===je.workspaceId);if(!Ut){Ct("This saved file's cloud chat is no longer available.","error");return}ft=Ut.id,ss(Ut.id)}Ee("changes"),Te(!0),qd({id:Date.now(),conversationId:ft,file:je}),je.available||Ct(`File unavailable: ${je.path}`,"error")},[bi,ss,Te,Ee,G,se,te,C,Ct,Ae]);y.useEffect(()=>{if(!lZ(ki,mr))return;const je=window.setTimeout(()=>{Ee("changes"),Te(!0),qd(ft=>cZ(ft,ki.id))},0);return()=>window.clearTimeout(je)},[mr,Te,Ee,ki]);const Bd=u?.kind==="models"&&u.route.area==="console"?"console":hZ(Z);y.useEffect(()=>{if(u){if(u.kind==="models"||u.kind==="models_unavailable"){Z!=="labs"&&C("labs");return}if(u.kind==="settings"){G(null),se(null),te(null),ht(u.section),Z!=="settings"&&C("settings");return}if(u.kind==="view"){G(null),se(null),te(null),Z!==u.view&&C(u.view);return}u.sessionId!==null&&(a(null),G(null),se(null)),te(u.sessionId),Z!=="chat"&&C("chat")}},[u,G,se,te,ht,C,Z]);const Cf=y.useCallback(je=>{if(ne(null),G(null),se(null),te(null),je==="models"||je==="console"){Ar(je==="console"?Fa("datasets",null,{area:"console"}):Fa()),C("labs");return}je==="chat"&&Ft({kind:"chat",sessionId:null}),Xe($y())},[Xe,Ft,ne,G,se,te,C]),Rf=y.useCallback(async(je,ft)=>{const Ut=await $t.actions.acceptHarnessReview(je,ft,{providerId:Ma,modelId:Jn},Me);return Ut?($(Ut.materializedTasksetId??null),Ar(Fa()),C("labs"),!0):(Ct("Taskset review could not be opened.","error"),!1)},[Jn,Ma,Me,Ar,Fa,$,C,Ct,$t.actions]),at=y.useMemo(()=>EE([...De.eventsBySessionId.values()].flat()),[De.eventsBySessionId]);if(!ea.ready)return S.jsx(PJ,{startup:ea});if(Z==="settings")return S.jsx(Bx,{showToast:Ct,children:S.jsx(IJ,{settings:{payload:pt,connection:Nt,diagnostics:uf,initialSection:Be,onPayload:Nn,onError:Gt,onToast:Ct,onOpenSourceSession:ss,onStartRefinerAuthoring:If,onAcceptEvaluationReview:Rf,onOpenSkill:wf,onOpenExtension:Ud,teamChatCurrentUserId:It.currentUserId,teamChatEnabled:wo!==null,teamChatNotificationMode:It.notificationMode,teamChatThreads:It.threads,onTeamChatNotificationModeChange:It.setNotificationMode,onTeamChatThreadMuteChange:It.setThreadMuted,diffPanelWidth:Gn,diffPanelResizing:Hn,diffPanelExpanded:Ie,onDiffPanelResizeStart:it,onDiffPanelExpandedChange:Ue,onBack:()=>{const je=j8(u);Ft(je),C(je.kind==="models"?"labs":"chat"),Q(!0)}},toast:{toast:_t,onDismiss:()=>x({type:"field",key:"toast",value:null})}})});const dn=fy(),Jt=Bd==="console"||Z==="chat",Yt=Jt&&X,Ca=Nt?.platform??navigator.platform,Pf=dn&&IP(Ca),Jy=es,NT=ma?.initialized?ma.repoPath:V?.cwd??null,DT={"--sidebar-width":`${gi}px`,"--diff-panel-width":`${Gn}px`},HT=Z==="chat"&&Fe!=="chat"||Z==="labs"||Z==="scheduled"&&r||Z==="team"&&!!zr,LT=["app-shell",Pf?"platform-macos":"",Yt?"sidebar-open":"sidebar-closed",ka?"sidebar-resizing":"",Hn?"diff-panel-resizing":""].filter(Boolean).join(" "),Af=me?Cl[me]:null,qT=me?Af?.cursorSequence??TJ(io(An,wd(De,me))):null,UT=!!me&&!!Nt&&(en(me)?!0:!!pt?.eventWindow?.hasMoreBefore&&!!qT)&&(Af?.hasMore??!0),zT=!!Af?.loading,BT=(()=>{const je=$t.payload;if(!je)return{};const ft=new Map(je.plans.map(Tn=>[Tn.id,Tn])),Ut=new Set(["queued","starting","running","cancelling","reconciling"]),Da={queued:"Queued",starting:"Starting",running:"Running",cancelling:"Cancelling",reconciling:"Reconciling"},Xi={};for(const Tn of[...je.modelRuns].sort((ai,ps)=>ps.updatedAt.localeCompare(ai.updatedAt))){if(Tn.kind==="evaluation"||!["prepared","running"].includes(Tn.status))continue;const ai=je.jobs.filter(Tf=>Tf.metadata.modelRunId===Tn.id).sort((Tf,FT)=>FT.updatedAt.localeCompare(Tf.updatedAt))[0];if(ai&&!Ut.has(ai.status))continue;const ps=ai?.status??(Tn.status==="prepared"?"starting":"running");Xi[Tn.modelId]={label:Da[ps]??"Running",status:ps}}for(const Tn of[...je.jobs].sort((ai,ps)=>ps.updatedAt.localeCompare(ai.updatedAt))){if(!Ut.has(Tn.status))continue;const ai=ft.get(Tn.planId)?.modelId;!ai||Xi[ai]||(Xi[ai]={label:Da[Tn.status]??"Active",status:Tn.status})}return Xi})();return S.jsx(Bx,{showToast:Ct,children:S.jsx(wJ,{className:LT,style:DT,sidebar:{activityTimes:at,onOpenPonder:()=>{Ft({kind:"chat",sessionId:null}),te(null),C("chat"),a("activity")},productArea:Bd,modelProjects:($t.payload?.modelProjects??[]).filter(je=>je.hosted===null||je.hosted.teamId===(da.defaultTeamId?.trim()??null)),modelTrainingActivityByProjectId:BT,onProductAreaChange:Cf,experience:Fe,view:Z,selectedAppId:pe,selectedProjectId:ee,selectedSessionId:me,selectedTeamThreadId:It.selectedThreadId,teamChatEnabled:wo!==null,organizations:ir,teamChatOrganization:ko,teamChatLoading:It.loading,currentUserId:It.currentUserId,teamMembers:It.members,teamThreads:It.threads,...or,onOpenTeamChat:yf,discoverCommunities:Sf,account:Wi,connection:Nt,profile:pt?.profile,pinnedCollapsed:zn,cloudProjectsCollapsed:xa,chatsCollapsed:lt,savedForLaterCollapsed:Dn,archivedChatsOpen:K,cloudProjectsExpanded:de,sectionMenuOpen:H,dragItem:Ol,taskDragSessionId:Ao,taskPreviewSessionIds:is,activeSessions:_o,archivedSessions:Oa,pinnedRows:Hl,pinnedSessions:ti,savedForLaterSessions:sr,savedForLaterFiles:Co,projectRows:Zi,localProjectRows:Ro,cloudProjectRows:Po,projectSessionRowsByProjectId:Zr,childSessionRowsByParentId:Yr,sidebarProjectIdBySessionId:$a,terminalSummaries:ts,runningSessionIds:Al,goalRuntimeBySessionId:as,subagentRuntimeBySessionId:Tl,visibleChatRows:Qr,chatRows:Na,chatRowsVisibleCount:cr,expandedProjectIds:wl,currentVersion:pt?.server.version??null,platform:Ca,arch:Nt?.arch??null,onSidebarResizeStart:pn,setSidebarOpen:Q,setView:C,setSelectedAppId:G,setSelectedProjectId:se,setSelectedSessionId:te,setSearchOpen:g,setSectionMenuOpen:ne,setSettingsSection:ht,onSelectTeam:ff,onLogOut:hf,onTogglePinnedCollapsed:Vi,onToggleCloudProjectsCollapsed:Ki,onToggleChatsCollapsed:ei,onToggleSavedForLaterCollapsed:wt,setArchivedChatsOpen:B,setCloudProjectsExpanded:we,setChatRowsVisibleCount:fe,beginNewChat:pf,beginProjectChat:cs,onAddProject:Nd,dockSessionRight:Ul,selectTeamThread:je=>{C("team"),It.selectThread(je)},openTeamDm:je=>{C("team"),It.openDm(je)},toggleSessionPinned:ql,toggleProjectPinned:jd,toggleSessionSavedForLater:Md,openSidebarFile:_f,setSidebarFileStatus:(je,ft)=>{Jr(je,ft)},archiveSession:Bp,restoreSession:Ed,renameSession:Fp,removeProject:mf,expandProject:bi,toggleProjectExpanded:Il,startPinnedDrag:xi,clearSidebarDrag:os,previewPinnedDrop:$l,commitPinnedDrop:Nl,commitPinnedPreviewDrop:Dl,startTaskDrag:ur,clearTaskDrag:Si,previewTaskDrop:El,commitTaskDrop:jl,commitTaskPreviewDrop:Ml},topBar:{sidebarOpen:Yt,sidebarAvailable:Jt,title:Z==="chat"&&n?"Ponder Pal":Cp,backAction:Ne.backAction,breadcrumbs:Ne.breadcrumbs,workspaceName:Vr,workspaceId:Br,busy:ke,workspaceState:ma,workspaceKind:Fr,selectedApp:mt??Et,selectedProject:Ln,workspaceDiff:vn,managedWorkspace:_a,workspaceBusy:gt,defaultTeamId:da.defaultTeamId,activityActorId:pt?.account.profile?.id??null,activityProjectId:u?.kind==="models"?u.route.projectId??null:null,showDiffControls:Z==="chat"&&Fe==="development",diffPanelOpen:ue,terminalOpen:Ze,rightSidebarAvailable:HT,rightSidebarOpen:Z==="labs"&&f?c?.open??!1:Z==="scheduled"?r:ue,onToggleDiffPanel:Hd,onToggleRightSidebar:Z==="labs"&&f?c?.toggle:Z==="scheduled"?()=>s(je=>!je):Z==="team"&&zr?Sl:Hd,onOpenSearch:()=>{ne(null),g(!0)},onToggleTerminal:()=>tt(je=>!je),onRunTerminalCommand:je=>{_({id:Date.now(),scope:Jy,command:je}),tt(!0)},onWorkspaceToolAction:Mp,onOpenCommitDialog:Tp,onWorkspaceBranchChange:Ap,onWorkspaceBranchCreate:Ep,connection:Nt,onBootstrap:Nn,onOpenSandboxWorkspace:$d,onShowSidebar:()=>Q(!0),platform:Ca,showWorkspaceControls:Z!=="team"&&Z!=="community"&&Z!=="labs"&&Z!=="scheduled"&&Z!=="outputs"&&Z!=="projects"&&(Fe==="development"||Fe==="work"&&!!(Ln||V?.localProjectId||V?.cloudProjectId||V?.workspaceKind==="local_project"))},mainPane:{ponderMode:n,onPonderModeChange:a,experience:Fe,onNewExperienceChange:Xe,view:Z,teamChat:{currentUserId:It.currentUserId,members:It.members,agents:It.agents,profile:pt?.profile??null,teamId:wo,teamName:ko?.displayName??null,detail:It.detail,aiThread:It.aiThread,agentConversation:It.agentConversation,loading:It.loading,busy:It.busy,error:It.error,connection:Nt,providerSettings:pt?.providers??null,provider:Ma,model:Jn,codexPermissionMode:be,codexReasoningEffort:Me,openPondCommandAccessMode:Gi,contextWindowStatus:rs,showToast:Ct,onProviderChange:Ll,onModelChange:xe,onCodexPermissionModeChange:Kr,onCodexReasoningEffortChange:Wr,onOpenPondCommandAccessModeChange:Io,onOpenProviderSettings:()=>{Ft({kind:"view",view:"apps"})},onSendMessage:It.sendMessage,onPublishProfileAgent:bl,onOpenAiThread:async je=>{await It.openAiThread(je),Ee("chat"),Te(!0)},onOpenAgentConversation:async je=>{await It.openAgentConversation(je),Ee("chat"),Te(!0)},onCloseAiThread:()=>Te(!1),onCloseAgentConversation:()=>{It.closeAgentConversation(),Te(!1)},onSendAgentTurn:It.sendAgentTurn,onSendAiTurn:It.sendAiTurn,onStopAiTurn:It.stopAiTurn,onEditMessage:It.editMessage,onDeleteMessage:It.deleteMessage,onRetryMessage:It.retryMessage,onDismissFailedMessage:It.dismissFailedMessage,onLoadMoreMessages:It.loadMoreMessages,onRetryLoad:It.refresh},community:yl,bootstrap:pt,runtimeEvents:yi,chatMessages:Xr,pendingUserMessage:me?wn[me]??null:null,contextWindowStatus:rs,goalRuntime:dr,subagentRuntime:Yi,selectedSessionId:me,composerDraftStore:h,mainComposerFocusRequestId:F,labCloseDetailRequestId:Ne.closeDetailRequestId,labCloseDetailKind:Ne.closeDetailKind,sideChatTrainingLaunchRequest:Dd,onSideChatTrainingLaunchHandled:je=>Qp(ft=>ft?.id===je?null:ft),mentionApps:Vt,connectedAppMentions:ca,profileSkills:bf,selectedMentionAppId:j,busy:ke,turnRunning:ns,activeProvider:Ma,activeModel:Jn,codexPermissionMode:be,codexReasoningEffort:Me,openPondCommandAccessMode:Gi,pendingApproval:vi,activeWorkspaceAppId:xl,activeWorkspaceId:Br,activeWorkspaceKind:Fr,projectTarget:_p,actionCatalog:kl,workspaceTarget:_d,connection:Nt,workspaceName:Vr,workspaceState:ma,workspaceDiff:vn,workspaceBusy:gt,diffBusy:cn,forceChatThread:!!me,diffPanelOpen:ue,diffPanelExpanded:Ie,rightPanelMode:Le,rightPanelTabRequest:O,rightChatPanels:ef,runtimeEventStore:rt,nativeSkillSidebar:Ld,extensionSkillSidebar:ds,workspaceDiffPanelViewState:N,sidebarFileOpenRequest:ki,sidebarFileBookmarks:Pl,onSetSidebarFileStatus:(je,ft)=>{Jr(je,ft)},browserConversationId:mr,terminalScope:Jy,terminalTabs:P,terminalCwd:NT,pendingTerminalCommand:k,terminalOpen:Ze,onToggleTerminal:()=>tt(je=>!je),onWorkspaceDiffPanelViewStateChange:Cd,training:$t,trainingSessions:Ae,trainingChatHandoff:Ji,trainingDetailTasksetId:A,onTrainingDetailTasksetIdChange:$,onTrainingChatTaskSelect:ua,onTrainingChatHandoffDismiss:rr,onOpenSession:ss,onExperienceHandoff:kf,cloudProjects:pt?.cloudProjects??[],projects:gf,projectsAccountBaseUrl:Wi?.baseUrl??Wi?.activeProfile?.baseUrl??null,projectsTeamName:ko?.displayName??null,projectTaskCounts:vf,onNewCloudProject:Gp,onNewLocalProject:Nd,onNewProjectTask:je=>cs(je.id),onToggleProjectPinned:jd,onUploadLocalProject:Vp,chatHistoryHasMore:UT,chatHistoryLoading:zT,onDiffPanelResizeStart:it,onToggleDiffPanelExpanded:()=>Ue(je=>!je),onShowDiffPanel:Yp,onShowBrowserPanel:Zp,onShowFilesPanel:()=>nf("files"),onShowGoalSidebarTab:To,onShowTrainingDraftPanel:()=>{Ee("training"),Te(!0)},onShowRightChatPanel:tf,onAddRightChat:()=>Ul(null),onOpenRightChatForSession:(je,ft)=>{const Ut=ft??Ae.find(Da=>Da.id===je)??null;Ut&&Ul(Ut,{preserveView:!0})},onLabDetailOpenChange:Ne.onDetailOpenChange,evaluationSidebarActive:Z==="labs"&&f,onEvaluationSidebarControl:m,scheduledDetailOpen:r,onScheduledDetailOpenChange:s,onTerminalTabsChange:E,onCloseRightChatPanel:Xp,onCloseNativeSkillSidebar:zd,onActivateRightChatPanel:of,onRightChatModelChange:rf,onRightChatPromptChange:sf,onRightChatScrollStateChange:cf,onRightChatProviderChange:lf,onSubmitRightChat:af,onStopRightChat:je=>ls(je),onCloseTerminal:()=>tt(!1),onLoadMoreChatHistory:Rl,canSyncWorkspace:wp,startMessage:xo,onPayload:Nn,onError:Gt,setView:C,onOpenProfileSettings:df,onOpenProviderSettings:()=>{Ft({kind:"view",view:"apps"})},onOpenTrainingSettings:()=>{Ft({kind:"settings",section:"training"})},onOpenDatasetStorageSettings:()=>{Ft({kind:"settings",section:"dataset-storage"})},changeDraftProvider:Ll,changeProjectTarget:Rp,changeWorkspaceTarget:Kp,setDraftProvider:Se,setDraftModel:xe,onBeginNewChatWithModel:_l,changeCodexPermissionMode:Kr,changeCodexReasoningEffort:Wr,changeOpenPondCommandAccessMode:Io,resolveApproval:Gr,answerCreateImproveQuestion:Rd,applyCreateImproveCandidate:Dp,approveCreateImproveRun:Hp,cancelCreateImproveRun:Lp,openCreateImprovePullRequest:Pd,reconcileCreateImprovePullRequest:qp,rejectCreateImproveCandidate:Up,pauseCreateImproveRun:Ad,resumeCreateImproveRun:Td,reviseCreateImproveRun:zp,setMentionedAppId:M,showToast:Ct,onSaveTaskDraft:xf,sendPrompt:Wp,stopTurn:je=>ls(void 0,je),syncWorkspaceLocally:Np,refreshWorkspaceDiff:Bn},cloudSetup:{state:w,onClose:()=>R(null),onOpenBrowserUrl:Jp,onStart:()=>{Od()}},projectConfirm:{state:Y,onResolve:re},lazyPanels:{activeSessions:_o,branchDialogName:ut,branchDialogOpen:et,commitDialogOpen:ie,commitDraft:Je,commitIncludeUnstaged:Pe,commitMessage:he,commitNextStep:qe,canPublishOpenPondProject:Ip,connection:Nt,expandProject:bi,newProjectBusy:q,newProjectDialogOpen:Ge,newProjectDirectory:da.defaultNewProjectDirectory,newProjectMode:Ve,newProjectName:U,newProjectPath:J,projectRows:Ia,query:ve,searchOpen:oe,visibleWorkspaceDiff:vn,visibleWorkspaceState:ma,workspaceBusy:gt,appDispatch:x,beginNewChat:()=>wa(null),openDefaultsSettingsFromBranchDialog:jp,setBranchDialogName:Un,setBranchDialogOpen:$n,setCommitDialogOpen:kn,setCommitDraft:Pn,setCommitIncludeUnstaged:Zt,setCommitMessage:Rn,setCommitNextStep:On,setNewProjectDialogOpen:xn,setNewProjectName:xt,setNewProjectPath:Xn,setPrompt:ge,setQuery:Ye,setSearchOpen:g,submitCommitDialog:Op,submitCreateWorkspaceBranch:$p,submitNewProjectDialog:Pp},toast:{toast:_t,onDismiss:()=>x({type:"field",key:"toast",value:null})}})})}const Ms=new Map,Uu=new Map;function ev(e){if(!e||e.state!=="signed_in")return null;const t=e.accounts.find(o=>o.isActive)??null,n=e.activeProfile?.handle?.trim()||t?.handle?.trim()||e.label.trim()||"signed_in",a=e.activeProfile?.baseUrl??t?.baseUrl??e.baseUrl??"";return[n,a,e.apiBaseUrl??"",e.chatApiBaseUrl??""].join("|")}function CZ(e){const t=e?.trim();if(!t)return null;const n=Ms.get(t);return n?.updatedAt?n.organizations:null}function RZ(e,t){const n=e?.trim();if(n){Ms.set(n,{organizations:t,promise:null,updatedAt:Date.now()});for(const a of Uu.get(n)??[])a()}}function PZ(e,t){const n=e?.trim();if(!n)return()=>{};const a=Uu.get(n)??new Set;return a.add(t),Uu.set(n,a),()=>{a.delete(t),a.size===0&&Uu.delete(n)}}function Xx(e){const t=e.accountKey?.trim();if(!t)return Promise.resolve([]);const n=Ms.get(t);if(!e.force){if(n?.updatedAt)return Promise.resolve(n.organizations);if(n?.promise)return n.promise}const a=e.fetchOrganizations().then(o=>(RZ(t,o),o)).catch(o=>{const r=Ms.get(t);throw r?.promise===a&&Ms.set(t,{organizations:r.organizations,promise:null,updatedAt:r.updatedAt}),o});return Ms.set(t,{organizations:n?.organizations??[],promise:a,updatedAt:n?.updatedAt??0}),a}const Foe="openpond.config.json";function Voe(e,t,n){return t<=0?-1:n==="Home"?0:n==="End"?t-1:n==="ArrowRight"?(e+1)%t:(e-1+t)%t}function MA(){return{activeTab:"files",openFilePaths:[],selectedPath:null}}function Hh(e){return{activeTab:e.activeTab,openFilePaths:[...e.openFilePaths],selectedPath:e.selectedPath}}function Koe(e,t=null){const n=TZ(e.openFilePaths.map(o=>tk(o,t)).filter(Boolean)),a=e.selectedPath&&tk(e.selectedPath,t)||null;return{activeTab:e.activeTab==="file"&&!a?"files":e.activeTab,openFilePaths:n,selectedPath:a}}function ek(e,t){return e.activeTab===t.activeTab&&e.selectedPath===t.selectedPath&&e.openFilePaths.length===t.openFilePaths.length&&e.openFilePaths.every((n,a)=>n===t.openFilePaths[a])}function tk(e,t=null){let n=AZ(e);const a=t?.trim().replace(/\\/g,"/").replace(/\/+$/,"");if(!a)return n;if(n===a)return"";n.startsWith(`${a}/`)&&(n=n.slice(a.length+1));const o=a.split("/").filter(Boolean).at(-1);return o&&n.startsWith(`${o}/`)&&(n=n.slice(o.length+1)),n}function Woe(e){return e.startsWith("/")||/^[A-Za-z]:\//.test(e)}function Goe(e){return{path:e,status:"unchanged",additions:0,deletions:0,patch:"",content:null}}function Joe(e,t){const n=nk(e.path);return!n||e.path.endsWith("/")||e.content==null&&/Could not access .+\/null['"]?/.test(e.patch)?!0:t.some(a=>{const o=nk(a);return!!(o&&o.startsWith(`${n}/`))})}function Zoe(e){return/\.(?:md|markdown|mdx)$/i.test(e)||/(?:^|\/)readme$/i.test(e)}function Yoe(e){return/\.(?:doc|docx|pdf)$/i.test(e)}function AZ(e){let t=e.trim().replace(/^['"`]+|['"`]+$/g,"");if(/^file:\/\//i.test(t))try{t=decodeURIComponent(new URL(t).pathname)}catch{t=t.replace(/^file:\/\//i,"")}return t.replace(/\\/g,"/").replace(/^\.\/+/,"")}function TZ(e){return Array.from(new Set(e))}function nk(e){const n=e.replace(/\\/g,"/").replace(/^\.\/+/,"").split("/").filter(Boolean);return n.length===0?null:n.join("/")}function EZ(e){if(!e||e.state!=="signed_in")return null;const t=e.accounts.find(c=>c.isActive)??null,n=e.profile?.id?.trim()??"",a=e.activeProfile?.handle?.trim()||t?.handle?.trim()||e.label.trim()||"signed_in",o=e.activeProfile?.baseUrl??t?.baseUrl??e.baseUrl??"",r=e.apiBaseUrl??t?.apiBaseUrl??"",s=e.chatApiBaseUrl??t?.chatApiBaseUrl??"";return[n?`profile:${n}`:"profile:unknown",a,o,r,s].join("|")}function OA(e){return e.trim().toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"").slice(0,48)||"cloud-project"}function jZ(e){const t=new TextEncoder().encode(e);let n="";for(const a of t)n+=String.fromCharCode(a);return btoa(n)}function gp(e){const t=e,n=t.teamId||t.id||"";if(!n)return null;const a=t.displayName||t.name||n,o=t.workspaceKind==="personal"||t.isPersonalDefault===!0||t.kind==="personal_default"||t.name?.trim().toLowerCase()==="personal";return{teamId:n,slug:t.slug||OA(a),name:t.name||a,displayName:a,role:t.role==="owner"||t.role==="admin"||t.role==="member"?t.role:"member",workspaceKind:t.workspaceKind==="personal"||t.workspaceKind==="shared"?t.workspaceKind:o?"personal":"shared",status:t.status==="disabled"||t.status==="archived"?t.status:"active",kind:t.kind==="personal_default"||t.kind==="managed_client"||t.kind==="team"?t.kind:void 0,isPersonalDefault:o,isManagedClient:t.isManagedClient===!0||t.kind==="managed_client",primaryContactEmail:t.primaryContactEmail??null,customDomain:t.customDomain??null,planKey:typeof t.planKey=="string"?t.planKey:null,effectiveAccessState:t.effectiveAccessState==="checkout_pending"||t.effectiveAccessState==="active"||t.effectiveAccessState==="grace"||t.effectiveAccessState==="suspended"||t.effectiveAccessState==="cancelling"||t.effectiveAccessState==="cancelled"?t.effectiveAccessState:null,canManageBilling:t.canManageBilling===!0||t.role==="owner",createdAt:t.createdAt??"",updatedAt:t.updatedAt??""}}function MZ(e){return e.find(t=>t.workspaceKind==="personal"||t.isPersonalDefault===!0||t.kind==="personal_default")??e.find(t=>t.name.trim().toLowerCase()==="default")??e.find(t=>t.isManagedClient!==!0&&t.kind!=="managed_client")??e[0]??null}function OZ(e,t){const n=e.filter(o=>o.status==="active"&&o.workspaceKind==="shared"),a=t?.trim()??"";if(a){const o=n.find(r=>r.teamId===a);if(o)return o}return n.find(o=>o.role==="owner")??n.find(o=>o.role==="admin")??n[0]??null}function $Z(...e){for(const t of e){const n=t?.trim();if(n)return n}return""}function NZ({draftProvider:e,hasSelectedCloudProject:t,selectedSessionHybridWorkspace:n}){return t&&!n?"openpond":e}const DZ=[{value:"action:new-local-project",label:"New local project",detail:"Create a new project folder on this machine",kind:"action"},{value:"action:add-local-project",label:"Use existing folder",detail:"Choose a folder on this machine",kind:"action"},{value:"action:add-local-project-path",label:"Use existing folder path",detail:"Enter a local folder path manually",kind:"action"},{value:"action:new-cloud-project",label:"New cloud project",detail:"Create a project in OpenPond Cloud",kind:"action"},{value:"action:create-cloud-environment",label:"Create cloud environment",detail:"Set up compute for a cloud project",kind:"action"}];function HZ(...e){return $Z(...e.map(t=>{const n=t?.trim();return n&&!n.includes("@")?n:null}))}function LZ(e){if(e?.state!=="signed_in")return"";const t=e.accounts.find(n=>n.isActive)??null;return HZ(e.profile?.name,e.label,t?.displayLabel,e.profile?.handle,t?.handle,e.activeProfile?.handle)}function qZ({bootstrap:e,draftModel:t,draftProvider:n,selectedApp:a,selectedAppId:o,selectedCloudProject:r,selectedProject:s,selectedSession:c,selectedSessionId:m,selectedSessionLinkedProject:u}){const f=c?.workspaceKind==="local_project"?c.workspaceId??null:u?.id??null,h=en(m)&&!c,x=c?Ui(c.workspaceKind):!1,k=zi(c),_=c?kZ(c):!1,P=c?.cwd&&(!x||k)?Bw(c.cwd):null,E=e?.providers??null,A=Ga(s,e?.cloudProjects??[]),$=NZ({draftProvider:n,hasSelectedCloudProject:!!r,selectedSessionHybridWorkspace:k}),j=nr($,t,E),M=La(e?.preferences),w=h?null:c?x?c.workspaceKind??"sandbox":_?"sandbox":f?"local_project":c.workspaceKind??(c.appId?"sandbox_app":P?"local_project":null):r?"sandbox":s?"local_project":o?"sandbox_app":null,R=h?null:c?x&&!k||_?null:f||(c.workspaceId??c.appId??P):r?null:s?.id??o,O=h?null:c?x?c.workspaceId??null:_?null:f??c.workspaceId??c.appId??P:r?null:s?.id??o,N=e?.account??null,F=!e||N?.state==="loading"||N?.state==="switching",L=!F&&N?.state==="signed_out",Y=F?null:L?"Sign in":N?.label??N?.activeProfile?.handle??"Account",re=LZ(N),ve=re?`Welcome, ${re}`:"Welcome",oe=c?.workspaceName??c?.appName??r?.name??s?.name??a?.name??null,K=Ui(w)?"cloud":"local",H=s?.name??u?.name??(c?.workspaceKind==="local_project"?c.workspaceName:null)??"Local workspace",de=(K==="cloud"?oe:null)??r?.name??A?.name??s?.name??"Cloud workspace",X=!!(r?.id||A?.id||c?.cloudProjectId||K==="cloud");return{account:N,accountLabel:Y,accountPending:F,accountSignedOut:L,activeModel:j,activeProvider:$,activeWorkspaceAppId:R,activeWorkspaceId:O,activeWorkspaceKind:w,activeWorkspaceLocation:K,appDefaults:M,cloudLinked:X,cloudTargetName:de,localTargetName:H,selectedCodexHistoryPending:h,selectedSessionCloudWorkspace:x,selectedSessionLocalPathWorkspaceId:P,selectedSessionPendingCloudStart:_,selectedSessionProjectId:f,startMessage:ve,workspaceName:oe}}function UZ({accountPending:e,accountSignedOut:t,activeWorkspaceLocation:n,bootstrap:a,busy:o,cloudLinked:r,selectedCloudProject:s,selectedProject:c,selectedSession:m,pendingWorkspaceTarget:u,workspaceStates:f,workspaceBusy:h}){const x=Ga(c,a?.cloudProjects??[]),_=!!!c?.linkedSandboxProject?.projectId||!!x,P=y.useMemo(()=>{const O=(a?.localProjects??[]).map(Y=>({value:`local:${Y.id}`,label:Y.name,detail:Y.workspacePath,kind:"local"})),N=(a?.cloudProjects??[]).map(Y=>({value:`cloud:${Y.id}`,label:Y.name,detail:Y.organizationName??Y.sourceLabel??"OpenPond Cloud",kind:"cloud"})),F=c?`local:${c.id}`:s?`cloud:${s.id}`:"none",L=[...O,...N].find(Y=>Y.value===F)??null;return{value:F,label:L?.label??"Select Project",detail:L?.detail??"Choose a project for local or cloud work",busy:h||o,options:[...O,...N,...DZ,{value:"none",label:"Don't work in a project",detail:"General chat without project files",kind:"none"}]}},[a?.cloudProjects,a?.localProjects,o,s,c,h]),E=!!(r||c),A=!!(s?.id||x?.id||m?.cloudProjectId||zi(m)),$=c?f[c.id]??null:null,j=GP($,{branch:c?.linkedSandboxProject?.defaultBranch??null,path:c?.workspacePath??m?.cwd??null,linkedCloudSourceKnown:c?.linkedSandboxProject?.projectId&&_?!!c.linkedSandboxProject.lastUploadedCommit||!$?.headCommit:!0}),M=JP(c,s??x,$,{cloudLinkTrusted:_}),w=hG(c,$,{cloudLinkTrusted:_}),R=y.useMemo(()=>{const O={value:"local",label:c?"Local checkout":"Local",detail:c?"Use the selected checkout on this machine.":"Use an app-managed task workspace on this machine.",stateNote:c?j:"App-managed local task workspace",disabled:!1,disabledReason:null},N={value:"hybrid",label:"Hybrid",detail:"Use your selected model with hosted sandbox edits.",stateNote:A?M:"upload required",disabled:e||t||!A,disabledReason:t?"Add an OpenPond account before using Hybrid.":"Upload/sync this Project to Cloud before using Hybrid."},F={value:"cloud",label:"Hosted",detail:"Run with hosted compute, with or without a Project.",stateNote:c||s?M:"Projectless hosted task",disabled:e||t,disabledReason:t?"Add an OpenPond account before using Cloud.":e?"Checking OpenPond account.":null},L={value:"upload_cloud",label:"Upload/sync to cloud",detail:"Push local source to OpenPond Git before cloud work.",stateNote:w,disabled:e||t||!c,disabledReason:t?"Add an OpenPond account before uploading source.":"Select a local Project before uploading source."},Y=n==="cloud"?"local":"cloud",re=Y==="local"?O:F;let ve=n==="cloud"?F:O;return u==="cloud"?ve=F:u==="local"?ve=O:(zi(m)||u==="hybrid")&&(ve=N),{value:ve.value,label:ve.label,detail:ve.stateNote||ve.detail,busy:h,action:{...re,label:Y==="cloud"?"Hosted":c?"Local checkout":"Check out locally"},uploadAction:c?L:null,options:[O,N,F]}},[n,e,t,r,E,M,A,j,u,c,m,w,h]);return{projectTarget:P,workspaceTarget:R}}function Qn(e){return e.trim().toLowerCase().replace(/[^a-z0-9_-]+/g,"-").replace(/^-+|-+$/g,"")}function $A(e){return Qn(e.name||e.gitRepo||e.id)}function Qoe(e){return`@${$A(e)}`}function NA(e){return Array.from(e.matchAll(/(?:^|\s)@([A-Za-z0-9_-]+)/g)).map(t=>Qn(t[1]??"")).filter(Boolean)}function zZ(e,t){const n=NA(e);if(n.length===0)return!1;const a=new Set([Qn(t.id),$A(t),t.gitRepo?Qn(t.gitRepo):""].filter(Boolean));return n.some(o=>a.has(o))}function DA(e){return e.filter(t=>t.sandbox)}function BZ(e,t){const n=NA(e);if(n.length===0)return null;const a=new Map;for(const o of n){const r=t.find(s=>{const c=Qn(s.id),m=Qn(s.name),u=s.gitRepo?Qn(s.gitRepo):"";return o===c||o===m||o===u});r&&a.set(r.id,r)}return a.size===1?Array.from(a.values())[0]??null:null}function Xoe(e,t){const n=e.slice(0,t),a=n.match(/(?:^|\s)@([A-Za-z0-9_-]*)$/);if(!a||typeof a.index!="number")return null;const o=n.slice(a.index).indexOf("@");return o<0?null:{query:Qn(a[1]??""),start:a.index+o}}function FZ(e){return new Set(e.map(t=>t.id))}function ak(e,t){const n=e?.linkedOpenPondApp??null;return n?.appId&&t.has(n.appId)?n:null}function VZ({bootstrap:e,codexHistorySessions:t,selectedProjectId:n,selectedSessionId:a,selectedAppId:o,sessions:r}){const s=y.useMemo(()=>e?.apps.find(L=>L.id===o)??null,[e?.apps,o]),c=y.useMemo(()=>new Map((e?.localProjects??[]).map(L=>[L.id,L])),[e?.localProjects]),m=y.useMemo(()=>new Map((e?.cloudProjects??[]).map(L=>[L.id,L])),[e?.cloudProjects]),u=y.useMemo(()=>NP(n),[n]),f=y.useMemo(()=>u?.kind==="local"?c.get(u.id)??null:null,[c,u]),h=y.useMemo(()=>u?.kind==="cloud"?m.get(u.id)??null:null,[m,u]),x=y.useMemo(()=>FZ(e?.apps??[]),[e?.apps]),k=y.useMemo(()=>DA(e?.apps??[]),[e?.apps]),_=y.useMemo(()=>{const L=[];for(const Y of e?.localProjects??[]){const re=ak(Y,x);re&&L.push([re.appId,Y.id])}return new Map(L)},[e?.localProjects,x]),P=y.useMemo(()=>new Set((e?.localProjects??[]).map(L=>L.id)),[e?.localProjects]),E=y.useMemo(()=>zP(e?.localProjects??[]),[e?.localProjects]),A=y.useRef([]),$=y.useMemo(()=>KZ(r,t,A.current),[t,r]),j=y.useMemo(()=>$.find(L=>L.id===a)??null,[$,a]),M=y.useMemo(()=>{if(!j)return null;if(j.localProjectId)return c.get(j.localProjectId)??null;if(j.workspaceKind==="local_project")return j.workspaceId?c.get(j.workspaceId)??null:null;const L=oG(j,P,E);if(L)return c.get(L)??null;if(!j.appId)return null;const Y=_.get(j.appId);return Y?c.get(Y)??null:null},[_,c,P,E,j]),w=y.useMemo(()=>j?.cloudProjectId?m.get(j.cloudProjectId)??null:null,[m,j]),R=f??M,O=h??w,N=y.useMemo(()=>ak(R,x),[x,R]),F=y.useMemo(()=>N?e?.apps.find(L=>L.id===N.appId)??null:null,[e?.apps,N]);return{cloudProjectById:m,currentAppIds:x,linkedProjectByAppId:_,localProjectById:c,mentionableSandboxApps:k,selectedApp:s,selectedCloudProject:O,selectedProject:R,selectedProjectLinkedApp:F,selectedProjectLinkedOpenPondApp:N,selectedSession:j,selectedSessionLinkedProject:M,sidebarSessions:$}}function KZ(e,t,n){const a=new Map;for(const u of e){const f=ik(u);a.set(f,u)}for(const u of t){const f=ik(u),h=a.get(f);a.set(f,h?WZ(h,u):u)}const o=Array.from(a.entries());if(!n)return o.sort((u,f)=>ok(u[1],f[1])).map(u=>u[1]);const r=[],s=new Set;for(const u of n){const f=a.get(u);f&&(r.push([u,f]),s.add(u))}const m=[...o.filter(([u])=>!s.has(u)).sort((u,f)=>ok(u[1],f[1])),...r];return n.splice(0,n.length,...m.map(([u])=>u)),m.map(u=>u[1])}function WZ(e,t){return{...e,metadata:GZ(e.metadata,t.metadata),status:e.status==="active"||t.status==="active"?"active":e.status,updatedAt:JZ(e.updatedAt,t.updatedAt)}}function ik(e){return e.codexThreadId?`codex:${e.codexThreadId}`:`session:${e.id}`}function ok(e,t){const n=rk(t)-rk(e);return n!==0?n:e.title.localeCompare(t.title)}function GZ(e,t){const n={...e??{},...t??{}};return Object.keys(n).length>0?n:void 0}function JZ(e,t){const n=Date.parse(e);if(!Number.isFinite(n))return t;const a=Date.parse(t);return Number.isFinite(a)&&a>n?t:e}function rk(e){const t=Date.parse(e.updatedAt);if(Number.isFinite(t))return t;const n=Date.parse(e.createdAt);return Number.isFinite(n)?n:0}function ZZ(e){return!!(e&&Ui(e.workspaceKind)&&!zi(e)&&e.provider!=="openpond")}function YZ(e,t){const n=LP(e,t);return`${e.id}\0${n.provider}\0${n.model}`}function QZ({activeWorkspaceId:e,activeWorkspaceKind:t,appDispatch:n,connection:a,expandProject:o,linkedProjectByAppId:r,providerSettings:s,selectedAppId:c,selectedSession:m,selectedSessionId:u,selectedSessionProjectId:f,setDiffPanelExpanded:h,setDraftModel:x,setDraftProvider:k,setError:_,setSelectedAppId:P,setSelectedProjectId:E,setSessions:A,setTerminalOpen:$,toast:j}){const M=y.useRef(null);y.useEffect(()=>{if(!c)return;const w=f??(u?null:r.get(c)??null);if(!w)return;const R=kt("local",w);P(null),E(R),o(R)},[o,r,c,u,f,P,E]),y.useEffect(()=>{if(!j||j.persistent)return;const w=window.setTimeout(()=>{n({type:"clearToast",toastId:j.id})},j.durationMs??(j.tone==="error"?7e3:3500));return()=>window.clearTimeout(w)},[n,j]),y.useEffect(()=>{function w(R){(R.metaKey||R.ctrlKey)&&R.key==="`"&&(R.preventDefault(),$(O=>!O))}return window.addEventListener("keydown",w),()=>window.removeEventListener("keydown",w)},[$]),y.useEffect(()=>{h(!1)},[e,t,h]),y.useEffect(()=>{if(!u){M.current=null;return}if(!m||m.id!==u)return;const w=YZ(m,s);if(M.current===w)return;M.current=w;const R=LP(m,s);k(R.provider),x(R.model)},[s,m,u,x,k]),y.useEffect(()=>{!a||!m||!ZZ(m)||ae.patchSession(a,m.id,{provider:"openpond"}).then(w=>{A(R=>R.map(O=>O.id===w.id?w:O)),k("openpond"),x(R=>nr("openpond",R))}).catch(w=>{_(w instanceof Error?w.message:String(w))})},[a,m,x,k,_,A])}function XZ({connection:e,setError:t}){return y.useCallback(async(n,a,o)=>{if(!e){const r=new Error("OpenPond App server is not connected.");throw t(r.message),r}t(null);try{await ae.resolveApproval(e,n,{decision:a,answers:o})}catch(r){const s=r instanceof Error?r.message:String(r);throw t(s),r}},[e,t])}function eY({activeProvider:e,contextCompaction:t,contextUsage:n,pinnedItems:a,pinnedPreviewKeys:o,pinnedProjects:r,projectRows:s,visibleProjectRows:c}){const m=y.useMemo(()=>K8(a,o),[a,o]),u=y.useMemo(()=>dA({provider:e,snapshot:n,preferences:t}),[e,t,n]),f=y.useMemo(()=>Array.from(new Set([...r,...c].filter(Iy).map(x=>x.project.id))),[r,c]);return{commandProjectRows:y.useMemo(()=>s,[s]),contextWindowStatus:u,pinnedRows:m,sidebarWorkspaceAppIds:f}}function tY({appDispatch:e,expandProject:t,linkedProjectByAppId:n,requestComposerFocus:a,onBeginNewChat:o,setMentionedAppId:r}){return y.useCallback((s=null)=>{o?.();const c=s?.id?n.get(s.id)??null:null;if(c){const m=kt("local",c);r(null),e({type:"selectProject",projectId:m}),t(m),a();return}r(null),e({type:"beginNewChat",appId:s?.id??null}),a()},[e,t,n,o,a,r])}const HA={slack:["slack"],microsoft_teams:["teams","microsoft-teams","microsoft_teams"],github:["github","gh"],google:["google","drive","google-drive","docs"],turnkey:["turnkey","agent-wallet","agent_wallet","wallet"],x:["x","twitter"],mcp:["mcp","openpond-mcp"]};function ere(e){return`@${e.token}`}function nY(e){return`@${sY(e)}`}function aY(e){const t=new Map;for(const n of e){if(!n.connected||n.statusSource!=="integration_connection")continue;const a=t.get(n.providerFamily)??[];a.push(n),t.set(n.providerFamily,a)}return Array.from(t.entries()).map(([n,a])=>{const o=a[0],r=xs(a.flatMap(h=>h.capabilities.map(x=>x.id))),s=xs(a.flatMap(h=>h.capabilityLabels)),c=xs(a.flatMap(h=>h.connections.map(x=>x.id).filter(cY))),m=xs(a.map(h=>h.id)),u=xs(a.map(h=>h.setupSurface)),f=rY(n);return{provider:n,label:o.providerLabel,detail:s.length>0?s.slice(0,4).join(", "):o.description,token:f,tokens:oY(a),ref:{kind:"integration",provider:n,appIds:m,setupSurfaces:u,...c.length>0?{connectionIds:c}:{},...r.length>0?{capabilities:r}:{}}}})}function tre(e,t){const n=Qn(t);return e.filter(a=>n?a.tokens.some(o=>o.includes(n)):!0).slice(0,8)}function iY(e,t){const n=lY(e);if(n.length===0)return[];const a=new Map;for(const o of n){const r=t.find(s=>s.tokens.includes(o));r&&a.set(r.provider,r)}return Array.from(a.values())}function nre(e,t){if(t.length===0)return[];const n=[];for(const a of e.matchAll(/(?:^|\s)@([A-Za-z0-9_-]+)/g)){const o=a[1]??"",r=Qn(o);if(!r)continue;const s=t.find(h=>h.tokens.includes(r));if(!s)continue;const m=(a[0]??"").indexOf("@");if(m<0||typeof a.index!="number")continue;const u=a.index+m,f=`@${o}`;n.push({detail:s.detail,displayText:nY(s),end:u+f.length,label:s.label,provider:s.provider,start:u,text:f})}return n}function oY(e){return xs(e.flatMap(t=>[...HA[t.providerFamily],t.providerFamily,t.id,t.label,t.shortLabel]).map(Qn).filter(Boolean))}function rY(e){return Qn(HA[e][0]??e)}function sY(e){return e.provider==="github"?"GitHub":e.provider==="x"?"X":e.provider==="mcp"?"MCP":e.label}function lY(e){return Array.from(e.matchAll(/(?:^|\s)@([A-Za-z0-9_-]+)/g)).map(t=>Qn(t[1]??"")).filter(Boolean)}function xs(e){return Array.from(new Set(e))}function cY(e){return typeof e=="string"&&e.length>0}function dY({bootstrap:e,connectedAppRows:t,mentionableSandboxApps:n,runtimeIndexes:a,selectedApp:o,selectedCloudProject:r,selectedProject:s,selectedSession:c,selectedSessionId:m}){const u=y.useMemo(()=>{const _=new Map;for(const P of e?.cloudProjects??[]){const E=_.get(P.teamId)??[];E.push(P.id),_.set(P.teamId,E)}return _},[e?.cloudProjects]),h=!!(c||o||s||r)?[]:n,x=y.useMemo(()=>aY(t),[t]),k=y.useMemo(()=>sZ(a,m),[a,m]);return{chatMentionApps:h,cloudProjectIdsByTeam:u,connectedAppMentions:x,pendingApproval:k}}function uY({connection:e,setBootstrap:t,setCodexPermissionMode:n,setCodexReasoningEffort:a,setError:o}){const r=y.useCallback(c=>{if(!e){o("Connect to OpenPond before saving preferences.");return}ae.savePreferences(e,{codexPermissionMode:c}).then(m=>{n(m.preferences.codexPermissionMode),a(m.preferences.codexReasoningEffort),t(u=>u&&{...u,preferences:m.preferences})}).catch(m=>{o(m instanceof Error?m.message:String(m))})},[e,t,n,a,o]),s=y.useCallback(c=>{if(!e){o("Connect to OpenPond before saving preferences.");return}ae.savePreferences(e,{codexReasoningEffort:c}).then(m=>{n(m.preferences.codexPermissionMode),a(m.preferences.codexReasoningEffort),t(u=>u&&{...u,preferences:m.preferences})}).catch(m=>{o(m instanceof Error?m.message:String(m))})},[e,t,n,a,o]);return{changeCodexPermissionMode:r,changeCodexReasoningEffort:s}}const mY=6e4;function Ny(e,t){if(!e)return t;const n=fY(e.updatedAt,t.updatedAt)?{...t,pinned:e.pinned,savedForLater:e.savedForLater,archived:e.archived,order:e.order,status:e.status,updatedAt:e.updatedAt}:t;return qA(e,n)?e:n}function pY(e,t){const n=Ny(e,t),a=e?{...n,pinned:e.pinned,savedForLater:e.savedForLater,archived:e.archived,order:e.order,updatedAt:e.updatedAt}:n;return e&&qA(e,a)?e:a}function oc(e,t){let n=!1,a=!1;const o=e.map(r=>{if(r.id!==t.id)return r;n=!0;const s=Ny(r,t);return s!==r&&(a=!0),s});return n?a?o:e:[t,...e]}function vp(e,t){let n=!1,a=!1;const o=e.map(r=>{if(r.id!==t.id)return r;n=!0;const s=pY(r,t);return s!==r&&(a=!0),s});return n?a?o:e:[t,...e]}function tv(e,t,n,a=Date.now()){const o=new Map(e.map(r=>[r.id,r]));return t.map(r=>{const s=o.get(r.id);if(s&&n){const c=gY(s,r,n,a);if(c)return c}return Ny(s,r)})}function sk(e,t,n,a=Date.now()){const o=new Map(e.map(u=>[u.id,u])),r=new Map(tv(e,t,n,a).map(u=>[u.id,u])),s=new Set(o.keys()),c=t.filter(u=>!s.has(u.id)).map(u=>r.get(u.id)??u),m=e.map(u=>{const f=r.get(u.id);return f||(LA(u,t)?u:null)}).filter(u=>!!u);return[...c,...m]}function LA(e,t){const n=Date.parse(e.updatedAt);if(!Number.isFinite(n))return!1;const a=hY(t);return a===null||n>=a}function lk(e,t,n,a=Date.now()){const o=new Map(t.map(r=>[r.id,r]));for(const r of n){const s=o.get(r.id);s&&(UA(s,r)||(e[r.id]=a))}}function fY(e,t){const n=Date.parse(e),a=Date.parse(t);return Number.isFinite(n)&&Number.isFinite(a)&&n>a}function qA(e,t){return JSON.stringify(e)===JSON.stringify(t)}function hY(e){let t=null;for(const n of e){const a=Date.parse(n.updatedAt);Number.isFinite(a)&&(t=t===null?a:Math.max(t,a))}return t}function gY(e,t,n,a){const o=n[t.id];return o===void 0?null:a-o>mY||UA(e,t)?(delete n[t.id],null):{...t,pinned:e.pinned,savedForLater:e.savedForLater,archived:e.archived,order:e.order}}function UA(e,t){return e.pinned===t.pinned&&e.savedForLater===t.savedForLater&&e.archived===t.archived&&e.order===t.order}const zA=800,vY=5e3,ck=5e4,bY=16,yY=3e4,ga=new Map;function SY(e,t){return ga.get(FA(e,t))?.payload??null}async function BA(e,t,n={}){const a=FA(e,t),o=ga.get(a),r=n.limit??zA,s=n.tail??!0;if(o?.promise)return o.promise;if(!n.force&&s&&o?.payload&&Date.now()-o.fetchedAt<=yY)return dk(a,o),o.payload;const c=!!(n.force&&s&&o?.payload),m=c?o?.payload?.events.at(-1)?.id:void 0,u=ae.codexHistoryThreadIncremental(e,t,{afterEventId:m,limit:r,revision:c?o?.revision:void 0,tail:s}).then(f=>{const h=ga.get(a)?.payload??o?.payload;if(f.unchanged){if(!h)throw new Error("Codex history revision matched without a cached thread.");return ga.set(a,{fetchedAt:Date.now(),payload:h,revision:f.revision}),dk(a,ga.get(a)),h}const x={session:f.session,events:f.events},k=s&&h&&!f.reset?{...x,events:xY(h.events,x.events)}:x;return ga.set(a,{fetchedAt:Date.now(),payload:k,revision:f.revision}),uk(),k}).catch(f=>{throw ga.get(a)?.promise===u&&ga.delete(a),f});return ga.set(a,{fetchedAt:o?.fetchedAt??0,payload:o?.payload,promise:u,revision:o?.revision}),uk(),u}function FA(e,t){return`${e.serverUrl}
193
- ${e.token}
194
- ${t}`}function dk(e,t){ga.delete(e),ga.set(e,t)}function uk(){for(;ga.size>bY;){const e=ga.keys().next().value;if(!e)return;ga.delete(e)}}function xY(e,t){const n=new Map;for(const a of e)n.set(a.id,a);for(const a of t)n.set(a.id,a);return Array.from(n.values())}const kY=500,wY=2500,IY=15e3;function _Y(e){return e.active?kY:e.surface==="thread"?wY:IY}function Dy(e,t){return!t||e.session.status==="active"?e:{...e,session:{...e.session,status:"active"}}}function CY(e={}){const t={cachedPayload:e.cachedPayload??SY,clearTimer:e.clearTimer??(u=>globalThis.clearTimeout(u)),loadPayload:e.loadPayload??BA,now:e.now??Date.now,setTimer:e.setTimer??((u,f)=>globalThis.setTimeout(u,f))},n=new Map;let a=1;function o(u){const f=PY(u.connection,u.sessionId);let h=n.get(f);h||(h={connection:u.connection,disposed:!1,inFlight:null,latestPayload:t.cachedPayload(u.connection,u.sessionId),nextRefreshAt:null,sessionId:u.sessionId,subscribers:new Map,timer:null},n.set(f,h));const x=a++;return h.subscribers.set(x,u),h.latestPayload&&u.onPayload(h.latestPayload),r(h,0),()=>{const k=n.get(f);if(k){if(k.subscribers.delete(x),k.subscribers.size>0){r(k,c(k));return}k.disposed=!0,m(k),n.delete(f)}}}function r(u,f){if(u.disposed||u.subscribers.size===0||u.inFlight)return;const h=t.now()+Math.max(0,f);u.timer&&u.nextRefreshAt!==null&&u.nextRefreshAt<=h||(m(u),u.nextRefreshAt=h,u.timer=t.setTimer(()=>{u.timer=null,u.nextRefreshAt=null,s(u)},Math.max(0,f)))}async function s(u){if(u.disposed||u.subscribers.size===0||u.inFlight)return;const f=t.loadPayload(u.connection,u.sessionId,{force:!!u.latestPayload});u.inFlight=f;try{const h=await f;if(u.disposed||h===u.latestPayload)return;u.latestPayload=h;for(const x of u.subscribers.values())x.onPayload(h)}catch(h){if(u.disposed)return;for(const x of u.subscribers.values())x.onError?.(h)}finally{u.inFlight===f&&(u.inFlight=null),u.disposed||r(u,c(u))}}function c(u){const f=[...u.subscribers.values()],h=f.some(k=>k.locallyActive||k.reportedActive)||u.latestPayload?.session.status==="active"||My(u.latestPayload?.events??[])?.tone==="active",x=f.some(k=>k.surface==="thread")?"thread":"sidebar";return _Y({active:h,surface:x})}function m(u){u.timer&&t.clearTimer(u.timer),u.timer=null,u.nextRefreshAt=null}return{subscribe:o}}const RY=CY();function Hy(e){return RY.subscribe(e)}function PY(e,t){return`${e.serverUrl}
195
- ${e.token}
196
- ${t}`}function AY({connection:e,selectedSessionId:t,selectedSessionLocallyActive:n,selectedSessionStatus:a,setCodexHistorySessions:o,setError:r}){const[s,c]=y.useState({events:[],sessionId:null}),m=en(t)?t:null,u=m&&s.sessionId===m?s.events:[],f=y.useCallback(h=>{c(x=>{if(!m)return{events:[],sessionId:null};const k=x.sessionId===m?x.events:[];return{events:typeof h=="function"?h(k):h,sessionId:m}})},[m]);return y.useEffect(()=>{if(!e||!m){c(k=>k.sessionId===null&&k.events.length===0?k:{events:[],sessionId:null});return}r(k=>k==="Session not found"?null:k);const h=n;return Hy({connection:e,locallyActive:h,onError:k=>r(k instanceof Error?k.message:String(k)),onPayload:k=>{const _=Dy(k,h);c(P=>P.sessionId!==m?{events:_.events,sessionId:m}:{events:io(P.events,_.events),sessionId:m}),r(P=>P==="Session not found"?null:P),o(P=>vp(P,_.session))},reportedActive:a==="active",sessionId:m,surface:"thread"})},[e,m,n,a,o,r]),{codexHistoryEvents:u,setCodexHistoryEvents:f}}function VA(e){const t=e.currentTarget,n=t.getBoundingClientRect(),a=t.cloneNode(!0);a.classList.add("sidebar-drag-preview"),a.style.width=`${n.width}px`,a.style.height=`${n.height}px`,a.style.position="fixed",a.style.top="-1000px",a.style.left="-1000px",a.style.pointerEvents="none",a.style.boxSizing="border-box",a.style.maxWidth="none",document.body.appendChild(a),e.dataTransfer.setDragImage(a,e.clientX-n.left,e.clientY-n.top),window.setTimeout(()=>a.remove(),0)}function TY({connection:e,appPreferences:t,sessions:n,pinnedItems:a,setAppPreferences:o,setCodexHistorySessions:r,setSessions:s,sidebarFileBookmarks:c,setSidebarFileBookmarks:m,setError:u}){const[f,h]=y.useState(null),[x,k]=y.useState(null),_=y.useRef(null),P=y.useRef(null);function E(R,O){R.dataTransfer.effectAllowed="move",R.dataTransfer.setData("text/plain",`${O.type}:${O.id}`),VA(R);const N=a.map(F=>F.key);_.current=O,P.current=N,h(O),k(N)}function A(){_.current=null,P.current=null,h(null),k(null)}function $(R,O){const N=_.current;if(!N)return;const F=fm(R),L=P.current??a.map(re=>re.key),Y=hm(L,_r(N),_r(O),F);wx(L,Y)||(P.current=Y,k(Y))}function j(R){if(!e)return;const O=a.map(K=>K.key),N=new Set(O),F=[...R.filter(K=>N.has(K)),...O.filter(K=>!R.includes(K))];if(wx(O,F))return;const L=t,Y=new Map(n.map(K=>[K.id,K])),re=c,ve=new Map(a.map(K=>[K.key,K]));o(K=>{const H={...K};return F.forEach((de,X)=>{const Z=ve.get(de);Z?.type==="project"&&(H[Z.id]={...H[Z.id]??{},pinned:!0,archived:!1,order:X})}),H});const oe=K=>{const H=new Map(K.map(Z=>[Z.id,Z])),de=F.map((Z,pe)=>{const ee=ve.get(Z),me=ee?.type==="session"?H.get(ee.id):null;return me?{...me,order:pe}:null}).filter(Z=>!!Z),X=new Map(de.map(Z=>[Z.id,Z]));return K.map(Z=>X.get(Z.id)??Z)};s(oe),r(oe),m(K=>{const H=new Map;return F.forEach((de,X)=>{const Z=ve.get(de);Z?.type==="file"&&H.set(Z.id,X)}),K.map(de=>{const X=H.get(de.id);return X===void 0?de:{...de,order:X}})}),Promise.all(F.map((K,H)=>{const de=ve.get(K);return de?de.type==="project"?ae.patchSidebarAppPreference(e,de.id,{pinned:!0,archived:!1,order:H}):de.type==="session"?ae.patchSession(e,de.id,{order:H}):ae.patchSidebarFile(e,{workspaceKind:de.file.workspaceKind,workspaceId:de.file.workspaceId,workspaceName:de.file.workspaceName,path:de.file.path,status:"pinned",order:H,sourceSessionId:de.file.sourceSessionId}):Promise.resolve(null)})).catch(K=>{u(K instanceof Error?K.message:String(K)),o(L);const H=de=>de.map(X=>Y.get(X.id)??X);s(H),r(H),m(re)})}function M(R,O){const N=_.current;if(N){const F=P.current??a.map(Y=>Y.key),L=hm(F,_r(N),_r(O),fm(R));j(L)}A()}function w(){_.current&&j(P.current??a.map(O=>O.key)),A()}return{dragItem:f,pinnedPreviewKeys:x,startPinnedDrag:E,clearSidebarDrag:A,previewPinnedDrop:$,commitPinnedDrop:M,commitPinnedPreviewDrop:w}}function EY({connection:e,sessions:t,setCodexHistorySessions:n,setError:a,setSessions:o}){const[r,s]=y.useState(null),[c,m]=y.useState(null),u=y.useRef(null),f=y.useRef(null);function h(A,$){A.dataTransfer.effectAllowed="move",A.dataTransfer.setData("text/plain",`session:${$.sessionId}`),VA(A),u.current=$,f.current=$.visibleSessionIds,s($.sessionId),m($.visibleSessionIds)}function x(A,$){const j=u.current;if(!j)return;const M=f.current??j.visibleSessionIds,w=hm(M,j.sessionId,$,fm(A));jY(M,w)||(f.current=w,m(w))}function k(){u.current=null,f.current=null,s(null),m(null)}function _(A,$){const j=u.current;if(!j){k();return}const M=f.current??j.visibleSessionIds,w=hm(M,j.sessionId,$,fm(A));E(Tx(j.allSessionIds,j.visibleSessionIds,w)),k()}function P(){const A=u.current;A&&E(Tx(A.allSessionIds,A.visibleSessionIds,f.current??A.visibleSessionIds)),k()}function E(A){const $=new Map(A.map((R,O)=>[R,O])),j=new Map(t.map(R=>[R.id,R.order])),M=A.filter((R,O)=>j.get(R)!==O);if(M.length===0)return;const w=R=>R.map(O=>{const N=$.get(O.id);return N===void 0||N===O.order?O:{...O,order:N}});o(w),n(w),e&&Promise.all(M.map(R=>ae.patchSession(e,R,{order:$.get(R)}))).catch(R=>{const O=N=>N.map(F=>{const L=j.get(F.id);return L===void 0||L===F.order?F:{...F,order:L}});o(O),n(O),a(R instanceof Error?R.message:String(R))})}return{clearTaskDrag:k,commitTaskDrop:_,commitTaskPreviewDrop:P,previewTaskDrop:x,startTaskDrag:h,taskDragSessionId:r,taskPreviewSessionIds:c}}function jY(e,t){return e.length===t.length&&e.every((n,a)=>n===t[a])}function mk({afterMessageId:e=null,attachments:t,content:n,sessionId:a}){const o=new Date().toISOString(),r=`pending_user_${a}_${o}_${Math.random().toString(36).slice(2,8)}`,s=MY(t);return{id:r,role:"user",content:n,sessionId:a,afterMessageId:e,timestamp:o,turnId:r,...s.length>0?{attachments:s}:{}}}function KA(e,t){return!t||WA(e,t)?e:[...e,t]}function WA(e,t){const n=t.afterMessageId?e.findIndex(r=>r.id===t.afterMessageId):-1,a=n>=0?n+1:0,o=Date.parse(t.timestamp);for(let r=a;r<e.length;r+=1){const s=e[r];if(s.role!=="user"||s.content!==t.content)continue;if(n>=0||!t.afterMessageId)return!0;const c=Date.parse(s.timestamp);if(!Number.isFinite(o)||!Number.isFinite(c)||c>=o)return!0}return!1}function MY(e){return e.map(({contentsBase64:t,text:n,...a})=>a)}function Re(e,t){if(!e)return null;for(const n of t){const a=e[n];if(typeof a=="string"&&a.trim())return a}return null}function ar(e){const t=e.trim();if(!t||!t.startsWith("{")&&!t.startsWith("["))return null;try{return JSON.parse(t)}catch{return null}}function Ce(e){return e&&typeof e=="object"&&!Array.isArray(e)?e:null}function Hi(e,t){for(let n=e.length-1;n>=0;n-=1){const a=e[n];if(t(a))return a}return null}function OY(e,t,n){if(t.name==="workspace_action_result"){const a=Hi(e,o=>o.role==="assistant"&&o.turnId===t.turnId&&o.actionRun?.actionName===n.actionName);if(a?.actionRun){a.id=t.id,a.timestamp=t.timestamp,a.actionRun={...a.actionRun,...n,refs:nv([...a.actionRun.refs,...n.refs]),childCalls:n.childCalls.length>0?n.childCalls:a.actionRun.childCalls};return}}e.push({id:t.id,role:"assistant",actionRun:n,timestamp:t.timestamp,turnId:t.turnId})}function $Y(e){if(e.name!=="workspace_action"&&e.name!=="workspace_action_result")return null;const t=Ce(e.data),n=Ce(e.args),a=Re(n,["actionName"])??Re(Ce(n?.input),["actionName"])??Lh(t)??Lh(Ce(t?.run))??Lh(Ce(t?.agentRun));if(!(e.action==="sandbox_run_action"||e.action==="profile_run_action"||!!a||t?.openPondActionRun===!0||t?.openPondProfileActionRun===!0)||!a)return null;const r=Ce(t?.run)??Ce(t?.agentRun),s=Ce(r?.metadata),c=Ce(t?.actionSummary)??Ce(r?.actionSummary)??Ce(s?.actionSummary),m=Ce(t?.action)??c??Ce(s?.selectedAction)??null,u=Ce(t?.responseSummary)??Ce(r?.responseSummary)??Ce(s?.responseSummary),f=Ce(t?.sourceSummary)??Ce(r?.sourceSummary)??Ce(s?.sourceSummary),h=Ce(t?.traceSummary)??Ce(r?.traceSummary)??Ce(s?.traceSummary),x=Ce(t?.evalSummary)??Ce(r?.evalSummary)??Ce(s?.evalSummary),k=nv([...no("artifact",t?.artifactRefs,"Artifact"),...no("artifact",m?.artifactRefs,"Artifact"),...no("artifact",c?.artifactRefs,"Artifact"),...no("artifact",u?.artifactRefs,"Artifact"),...no("trace",t?.traceArtifactRefs,"Trace"),...no("trace",h?.artifactRefs,"Trace"),...no("eval",t?.evalResultArtifactRefs,"Eval"),...no("eval",x?.artifactRefs,"Eval"),...no("output",t?.outputRefs,"Output")]),_=Re(f,["sourceRef","ref"]);return _&&k.push({id:av("source",_),kind:"source",label:"Source",target:_}),{actionName:a,title:Re(m,["label","title","name"])??Re(s,["selectedActionLabel"])??UY(a),status:NY(e,u,r),responseText:Re(u,["text","summary","message"])??(e.name==="workspace_action_result"&&e.output?.trim()||null),runId:Re(r,["id","runId"])??Re(t,["runId","agentRunId"])??null,projectId:Re(r,["projectId"])??Re(t,["projectId"])??Re(n,["projectId"])??null,agentId:Re(r,["agentId"])??Re(t,["agentId"])??Re(n,["agentId"])??null,agentName:Re(Ce(m?.implementation),["agentName"])??Re(m,["agentName"])??Re(s,["selectedAgentName"])??null,sandboxId:Re(r,["sandboxId"])??Re(t,["sandboxId"])??Re(Ce(t?.sandbox),["id"])??Re(Ce(t?.createdSandbox),["id"])??Re(n,["sandboxId"])??null,runtimeId:Re(r,["runtimeId"])??Re(t,["runtimeId"])??null,implementationType:Re(t,["implementationType"])??Re(m,["implementationType","type","kind"])??Re(Ce(m?.implementation),["type","kind"])??Re(s,["implementationType"])??(e.action==="profile_run_action"||t?.openPondProfileActionRun===!0?"openpond-profile-action":null),sourceRef:_,manifestHash:Re(f,["manifestHash"])??Re(t,["manifestHash"])??Re(s,["manifestHash"])??null,refs:nv(k),childCalls:HY(t,r,s)}}function Lh(e){return e?Re(e,["actionName","name"])??Re(Ce(e.action),["actionName","name"])??Re(Ce(e.actionSummary),["actionName","name"])??Re(Ce(e.selectedEntrypoint),["name"]):null}function NY(e,t,n){if(e.status==="failed")return"failed";const a=Re(t,["status"]);if(a==="failed")return"failed";if(a==="running"||a==="pending")return a;if(a==="available"||e.status==="completed")return"completed";const o=Re(n,["status"]);return o==="failed"?"failed":o==="succeeded"||o==="completed"?"completed":o==="queued"||o==="running"||o==="runtime_created"?"running":e.status==="pending"?"pending":e.status==="started"||e.name==="workspace_action"?"running":"unknown"}function no(e,t,n){return(Array.isArray(t)?t:t?[t]:[]).flatMap(o=>{const r=DY(e,o,n);return r?[r]:[]})}function DY(e,t,n){if(typeof t=="string"&&t.trim()){const s=t.trim();return{id:av(e,s),kind:e,label:n,target:s}}const a=Ce(t);if(!a)return null;const o=Re(a,["url","webUrl","artifactPath","path","ref"])??Re(Ce(a.artifact),["url","webUrl","path","ref"]);if(!o)return null;const r=Re(a,["label","title","name","type","kind"])??n;return{id:av(e,o),kind:e,label:r,target:o}}function nv(e){const t=new Set,n=[];for(const a of e){const o=`${a.kind}:${a.target}`;t.has(o)||(t.add(o),n.push(a))}return n}function av(e,t){return`${e}:${t}`}function HY(e,t,n){return[e?.childCalls,e?.childRuns,e?.implementationCalls,t?.childCalls,t?.childRuns,n?.childCalls,n?.childRuns].flatMap(o=>LY(o)).slice(0,6)}function LY(e){return(Array.isArray(e)?e:e?[e]:[]).flatMap((n,a)=>{const o=Ce(n);if(!o)return[];const r=Re(o,["id","runId","callId"])??`child_${a+1}`,s=Re(o,["label","title","actionName","name","tool"])??Re(Ce(o.action),["label","name"])??"Implementation call",c=Re(o,["detail","summary","runId","sandboxId","runtimeId"])??null;return[{id:r,label:s,status:qY(o),detail:c}]})}function qY(e){const t=Re(e,["status","state"]);return t==="running"||t==="completed"||t==="failed"||t==="pending"?t:t==="succeeded"?"completed":"unknown"}function UY(e){const t=e.replace(/[._-]+/g," ").trim();return t?t.replace(/\b\w/g,n=>n.toUpperCase()):e}const zY=new Set([".avif",".gif",".jpeg",".jpg",".png",".webp"]);function GA(e){if(!e)return!1;const t=e.split("?")[0]?.split("#")[0]??e,n=t.lastIndexOf(".");return n<0?!1:zY.has(t.slice(n).toLowerCase())}function JA(e){return e.split("/").filter(Boolean).pop()??e}function BY(e){if(!ov(e))return;const t=Ce(e.data),a=(typeof t?.openpondImagePreviewPath=="string"?t.openpondImagePreviewPath:null)??Cr(e.data)??Cr(e.args)??Cr(e.output);if(!(!a||!GA(a)))return{path:a,appId:e.appId??null,title:JA(a)}}function FY(e){if(e.name!=="tool.completed"&&e.name!=="workspace_action_result")return[];const t=[],n=new Set;return iv(e.data,t,n),t.slice(0,12)}function iv(e,t,n,a=0){if(a>7||e==null)return;if(Array.isArray(e)){for(const c of e)iv(c,t,n,a+1);return}const o=Ce(e);if(!o)return;const r=Re(o,["path","artifactRef"]),s=Re(o,["contentType","mimeType"]);r&&s&&!n.has(r)&&(n.add(r),t.push({path:r,title:Re(o,["title","name"])??JA(r),contentType:s,sizeBytes:typeof o.sizeBytes=="number"?o.sizeBytes:null}));for(const c of Object.values(o))iv(c,t,n,a+1)}function ov(e){if(e.name!=="tool.started"&&e.name!=="tool.completed")return!1;const t=Ce(e.data);return typeof t?.openpondImagePreviewPath=="string"&&t.openpondImagePreviewPath.trim()?!0:[e.output,e.action,Re(t,["tool","toolName","tool_name","name","functionName","function_name","command"]),Re(Ce(t?.input),["tool","toolName","tool_name","name"]),Re(Ce(t?.arguments),["tool","toolName","tool_name","name"]),Re(Ce(t?.args),["tool","toolName","tool_name","name"])].filter(a=>!!a).some(a=>a.toLowerCase().includes("view_image"))}function Cr(e,t=0,n=""){if(t>5||e==null)return null;if(typeof e=="string"){if(qh(n)&&GA(e.trim()))return e.trim();const o=ar(e);if(o!==null){const r=Cr(o,t+1,n);if(r)return r}return VY(e)}if(Array.isArray(e)){for(const o of e){const r=Cr(o,t+1,n);if(r)return r}return null}const a=Ce(e);if(!a)return null;for(const[o,r]of Object.entries(a)){if(!qh(o))continue;const s=Cr(r,t+1,o);if(s)return s}for(const[o,r]of Object.entries(a)){if(qh(o))continue;const s=Cr(r,t+1,o);if(s)return s}return null}function qh(e){return/^(path|filePath|filepath|imagePath|image|localPath|uri|url)$/i.test(e)}function VY(e){const t=/(?:file:\/\/)?(?:\/|\.\/|[\w.-]+\/)[^\s"'`<>]+\.(?:avif|gif|jpe?g|png|webp)\b/i.exec(e);if(!t)return null;if(!t[0].startsWith("file://"))return t[0];try{return decodeURIComponent(new URL(t[0]).pathname)}catch{return t[0].replace(/^file:\/\//i,"")}}function KY(e){if(e.name!=="tool.started"&&e.name!=="tool.completed")return null;const t=e.action;if(t!=="connected_app_search"&&t!=="connected_app_read"&&t!=="connected_app_write")return null;const n=GY(e),a=e.status==="failed";return t==="connected_app_search"?e.name==="tool.started"?`${n} search`:a?`${n} search failed`:`${n} search`:t==="connected_app_read"?e.name==="tool.started"?`${n} lookup`:a?`${n} lookup failed`:`${n} lookup`:e.name==="tool.started"?`${n} update`:a?`${n} update failed`:`${n} update`}function WY(e){if(e.action!=="connected_app_search"&&e.action!=="connected_app_read"&&e.action!=="connected_app_write")return null;const t=ZA(e);return[t.providerOperation,t.operation&&t.operation!==t.providerOperation?t.operation:null,t.capabilityCount>0?`${t.capabilityCount} ${t.capabilityCount===1?"capability":"capabilities"}`:null].filter(a=>!!a).join(" / ")||t.providerLabel}function GY(e){return ZA(e).providerLabel}function ZA(e){const t=Ce(e.args),n=Ce(e.data),a=Ce(n?.result),o=Mm(Re(t,["provider"])??Re(a,["provider"])??Re(n,["provider"])??void 0),r=Re(a,["providerLabel"])??Re(n,["providerLabel"])??(o?$v(o)?.label:null)??"connected app",s=Re(t,["operation"]),c=Re(a,["operation"])??Re(n,["operation"]),m=Uh(t?.capabilityIds)||Uh(a?.capabilityIds)||Uh(n?.capabilityIds);return{providerLabel:r,providerOperation:s,operation:c,capabilityCount:m}}function Uh(e){return Array.isArray(e)?e.length:0}function YA(e){const t=e.trim(),n=/^<(goal_context|turn_aborted)>\s*([\s\S]*?)\s*<\/\1>$/.exec(t);if(n){const a=n[1];return{kind:a,text:n[2]?.trim()||zh(a)}}return t==="<turn_aborted>"?{kind:"turn_aborted",text:zh("turn_aborted")}:t==="<goal_context>"?{kind:"goal_context",text:zh("goal_context")}:null}function zh(e){return e==="turn_aborted"?"The previous turn was interrupted.":"Goal context updated."}function bp(e){return e.name==="diagnostic"&&Ce(e.data)?.kind==="goal_context"}const JY="Steered by user";function ZY(e){return e?.trim().toLowerCase()===JY.toLowerCase()}function YY(e,t){if(!t.turnId)return;nQ(e,t.turnId);const n=QY(t);if(!n)return;const a=tQ(e,t.turnId);if(a){a.refinerActivity=n;return}const o={id:`${t.id}:work-refiner`,role:"activity_group",activities:[],timestamp:t.timestamp,turnId:t.turnId,traceState:"completed",traceStartedAt:t.timestamp,traceCompletedAt:t.timestamp,refinerActivity:n},r=e.findIndex(s=>s.role==="assistant"&&s.turnId===t.turnId);r>=0?e.splice(r,0,o):e.push(o)}function QY(e){const t=Ce(e.data),n=Ce(t?.activity);return n?XY(n,e):eQ(e,t)}function are(e){if(e.state==="running")return"Refiner · Reviewing for a reusable improvement";if(e.state==="failed")return"Refiner · Review failed";if(e.result==="no_action")return"Refiner · No reusable change";if(e.result==="routed")return`Refiner · ${rQ(e.route??"external")} issue routed`;const t=e.result==="applied"?"Applied":"Needs review";return`Refiner · ${e.summary} — ${t}`}function XY(e,t){const n=Ti(e.state,["running","completed","failed"]);if(!n)return null;const a=n==="failed"?"failed":Ti(e.result,["no_action","routed","applied","retained"]),o=aa(e.reason)??t.output??t.error??null;return{state:n,visibility:Ti(e.visibility,["always","material_only"])??"material_only",result:n==="running"?null:a,workspaceId:aa(e.workspaceId),decision:Ti(e.decision,["no_action","route","propose"]),route:aa(e.route),operation:Ti(e.operation,["create","update","delete"]),target:aa(e.target),summary:aa(e.summary)??QA(n,a),expectedOutcome:aa(e.expectedOutcome),reason:o,evidenceBasis:aQ(e.evidenceBasis),critiqueStatus:Ti(e.critiqueStatus,["not_applicable","pending","passed","rejected","failed"])??(n==="running"?"pending":"not_applicable"),validationStatus:Ti(e.validationStatus,["not_applicable","pending","passed","failed"])??(n==="running"?"pending":"not_applicable"),validations:iQ(e.validationReceipts),edits:oQ(e.edits),refs:{trigger:Ai(e.trigger),outcome:Ai(e.outcome),proposal:Ai(e.proposal),applyReceipt:Ai(e.applyReceipt),advanceReceipt:Ai(e.advanceReceipt),inputHarness:Ai(e.inputHarness),outputHarness:Ai(e.outputHarness)}}}function eQ(e,t){if(!e.name.startsWith("harness.refiner."))return null;const n=e.name==="harness.refiner.failed"||e.status==="failed",a=e.name==="harness.refiner.completed",o=Ce(t?.outcome),r=Ce(t?.proposal),s=o?.routed===!0,c=aa(t?.workspaceAdvance),m=n?"failed":a?r?c==="advanced"||/\bapplied\b/i.test(e.output??"")?"applied":"retained":s?"routed":"no_action":null;return{state:n?"failed":a?"completed":"running",visibility:"material_only",result:m,workspaceId:null,decision:r?"propose":s?"route":a?"no_action":null,route:aa(o?.route),operation:null,target:null,summary:QA(n?"failed":a?"completed":"running",m),expectedOutcome:null,reason:e.output??e.error??null,evidenceBasis:null,critiqueStatus:r?"passed":"not_applicable",validationStatus:r?"pending":"not_applicable",validations:[],edits:[],refs:{trigger:Ai(t?.trigger),outcome:Ai(o),proposal:Ai(r),applyReceipt:null,advanceReceipt:null,inputHarness:null,outputHarness:null}}}function tQ(e,t){for(let n=e.length-1;n>=0;n-=1){const a=e[n];if(a.role==="activity_group"&&a.turnId===t&&!a.activities?.some(o=>o.subagentMessage))return a}return null}function nQ(e,t){for(let n=e.length-1;n>=0;n-=1){const a=e[n];a?.role==="status_divider"&&a.statusKind==="harness_refinement"&&a.turnId===t&&e.splice(n,1)}}function aQ(e){const t=Ce(e),n=Ti(t?.kind,["single_deterministic","recurrent_independent"]);return!t||!n?null:{kind:n,supportingEvidenceIds:pk(t.supportingEvidenceIds),counterevidence:pk(t.counterevidence)}}function iQ(e){return Array.isArray(e)?e.flatMap(t=>{const n=Ce(t),a=aa(n?.id),o=Ti(n?.status,["passed","failed","blocked","skipped"]),r=aa(n?.summary);return a&&o&&r?[{id:a,status:o,summary:r}]:[]}):[]}function oQ(e){return Array.isArray(e)?e.flatMap(t=>{const n=Ce(t),a=aa(n?.id),o=Ti(n?.operation,["create","update","delete"]),r=aa(n?.target),s=aa(n?.summary);return!a||!o||!r||!s?[]:[{id:a,operation:o,target:r,summary:s,content:typeof n?.content=="string"?n.content:null}]}):[]}function Ai(e){const t=Ce(e),n=aa(t?.id),a=aa(t?.contentHash);return n&&a?`${n} · ${a.slice(0,12)}`:null}function pk(e){return Array.isArray(e)?e.filter(t=>typeof t=="string"&&!!t.trim()):[]}function aa(e){return typeof e=="string"&&e.trim()?e.trim():null}function Ti(e,t){return typeof e=="string"&&t.includes(e)?e:null}function QA(e,t){return e==="running"?"Reviewing for a reusable improvement":e==="failed"?"Review failed":t==="no_action"?"No reusable change":t==="routed"?"Issue routed":"Harness change"}function rQ(e){return e.length>0?`${e[0].toUpperCase()}${e.slice(1)}`:e}const fk=64*1024,hk=8*1024;function gk(e,t){const n=XA(t);if(n.subagentMessage){e.push({id:t.id,role:"activity_group",activities:[n],timestamp:t.timestamp,turnId:t.turnId});return}const a=sQ(e,t.turnId);if(a){a.activities=dQ(a.activities??[],t,n),a.timestamp=t.timestamp;return}rc(e,t),e.push({id:t.id,role:"activity_group",activities:[n],timestamp:t.timestamp,turnId:t.turnId,traceState:"running",traceStartedAt:t.timestamp})}function rc(e,t){for(let n=e.length-1;n>=0;n-=1){const a=e[n];a.role!=="activity_group"||a.activities?.some(o=>o.subagentMessage)||a.traceState==="running"&&(a.traceState="settled",a.traceCompletedAt=t.timestamp)}}function sQ(e,t){for(let n=e.length-1;n>=0;n-=1){const a=e[n];if(a.turnId!==t||a.role!=="activity_group")return null;if(!a.activities?.some(o=>o.subagentMessage))return a}return null}function rv(e,t,n){if(!t.turnId)return;const a=e.filter(c=>c.role==="activity_group"&&c.turnId===t.turnId&&!c.activities?.some(m=>m.subagentMessage)),o=a.filter(c=>c.traceState==="running"),r=o.length>0?o:a.length>0?[a[a.length-1]]:[];for(const c of r)c.traceState=n;const s=r.at(-1);s&&(s.traceCompletedAt=t.timestamp,s.timestamp=t.timestamp)}function lQ(e,t){for(let n=e.length-1;n>=0;n-=1){const a=e[n];if(a?.turnId!==t.turnId||a.role!=="activity_group")continue;const o=a.activities?.filter(r=>r.controlKind!=="turn_aborted")??[];o.length!==a.activities?.length&&(o.length===0?e.splice(n,1):a.activities=o)}rv(e,t,"interrupted"),!ZY(t.output)&&e.push({id:t.id,role:"status_divider",content:cQ(t),timestamp:t.timestamp,turnId:t.turnId,statusKind:"interruption",statusState:"failed",statusTone:"danger"})}function cQ(e){const t=e.output?.trim()||e.error?.trim();return t?/server shutting down|app restart|local app server stopped/i.test(t)?"Interrupted by app restart":/stopped by user|cancelled by user/i.test(t)?"Stopped by user":t:"Turn interrupted"}function dQ(e,t,n=XA(t)){const a=[...e];if(t.name==="tool.started"&&Ce(t.data)?.nativeTool===!0&&n.callId){const o=Hi(a,r=>r.callId===n.callId&&r.state==="running");if(o){const r=o.timestamp;return Object.assign(o,n,{timestamp:r}),a}}return SQ(a,t,n)||vQ(a,t,n)||bQ(a,t,n)||yQ(a,t,n)?a:[...a,n]}function uQ(e){return e.name==="session.compaction.started"||e.name==="session.compaction.completed"||e.name==="session.compaction.failed"}function mQ(e,t){const n={id:t.id,role:"status_divider",content:pQ(t),timestamp:t.timestamp,turnId:t.turnId,statusKind:"compaction",statusState:fQ(t),statusTone:hQ(t)};if(t.name!=="session.compaction.started"){const a=Hi(e,o=>o.role==="status_divider"&&o.statusKind==="compaction"&&o.statusState==="running"&&o.turnId===t.turnId);if(a){a.id=n.id,a.content=n.content,a.timestamp=n.timestamp,a.statusState=n.statusState,a.statusTone=n.statusTone;return}}e.push(n)}function pQ(e){const t=gQ(e);return e.name==="session.compaction.started"?t==="auto"?"Auto compacting context":"Compacting context":e.name==="session.compaction.completed"?t==="auto"?"Auto compacted context":"Compacted context":t==="auto"?"Auto compaction failed":"Context compaction failed"}function fQ(e){return e.name==="session.compaction.started"?"running":e.name==="session.compaction.completed"?"completed":"failed"}function hQ(e){return e.name==="session.compaction.failed"?"danger":e.name==="session.compaction.completed"?"success":"info"}function gQ(e){return Ce(e.data)?.reason==="auto"?"auto":"manual"}function XA(e){const t=BY(e),n=e.name==="assistant.reasoning.delta"?"reasoning":TQ(e),a=EQ(e),o=OQ(e),r=MQ(e),s=$Q(e),c=NQ(e),m=FY(e);return{id:e.id,label:c?c.direction==="received"?"Child message received":"Child message sent":wQ(e),content:c?.summary??_Q(e,t),timestamp:e.timestamp,...n?{kind:n}:{},...e.action?{action:e.action}:{},...a?{kind:"control",controlKind:a}:{},...e.name==="assistant.reasoning.delta"||e.name==="tool.started"||e.name==="tool.completed"||n==="command"?{callId:Ly(e)??void 0}:{},...n&&e.name==="command.output"?{detail:sv(e)}:{},...n!=="command"&&e.name==="tool.started"&&Ce(e.data)?.nativeTool===!0&&e.args&&Object.keys(e.args).length>0?{detail:Vo(JSON.stringify(e.args,null,2))}:{},...n!=="command"&&e.name==="tool.completed"&&Ce(e.data)?.nativeTool===!0&&e.output?{detail:Vo(e.output)}:{},...n==="command"?{terminal:zQ(e)}:{},...r?{meta:r}:{},...o?{receipt:o}:{},...s?{openSession:s}:{},...c?{subagentMessage:c}:{},state:kQ(e),...t?{imagePreview:t}:{},...m.length>0?{artifacts:m}:{}}}function vQ(e,t,n){if(t.name==="tool.completed"){const a=vk(e,t);if(!a)return!1;const o=BQ(a.timestamp,t.timestamp);a.label=t.status==="failed"?"Failed":"Ran",a.state=n.state,a.timestamp=t.timestamp,a.artifacts=n.artifacts,a.terminal={...a.terminal,...n.terminal,...o!==null?{durationMs:o}:{}};const r=sv(t);return r&&r!==a.content&&(a.detail=xm(a.detail,r)),!0}if(t.name==="command.output"){const a=vk(e,t);if(!a)return!1;const o=sv(t);return o&&(a.detail=xm(a.detail,o)),a.terminal={...a.terminal,...n.terminal},a.timestamp=t.timestamp,n.state==="failed"?a.state="failed":a.state!=="completed"&&a.state!=="failed"&&(a.state="running"),!0}return!1}function bQ(e,t,n){if(t.name!=="tool.completed"||n.kind==="command")return!1;const a=Ly(t),o=Hi(e,s=>s.state==="running"&&s.kind!=="command"&&(a?s.callId===a:!!t.action&&s.action===t.action));if(!o)return!1;const r=n.content.trim();return o.id=n.id,o.label=n.label,o.timestamp=n.timestamp,o.state=n.state,r&&r!==o.content.trim()&&(o.content.trim()===o.action?o.content=r:o.detail=xm(o.detail,r)),n.detail&&(o.detail=xm(o.detail,n.detail)),o.meta=n.meta,o.receipt=n.receipt,o.imagePreview=n.imagePreview??o.imagePreview,o.artifacts=n.artifacts,!0}function yQ(e,t,n){if(t.name!=="workspace_action_result")return!1;const a=xQ(e,t);return a?(a.id=n.id,a.label=n.label,a.content=n.content,a.timestamp=n.timestamp,a.state=n.state,a.detail=n.detail,a.meta=n.meta,a.receipt=n.receipt,a.imagePreview=n.imagePreview,!0):!1}function SQ(e,t,n){if(t.name!=="assistant.reasoning.delta")return!1;const a=e[e.length-1];return!a||a.kind!=="reasoning"||n.kind!=="reasoning"||a.action!==n.action||(a.callId||n.callId)&&a.callId!==n.callId?!1:(a.content=`${a.content}${n.content}`,a.timestamp=t.timestamp,!0)}function vk(e,t){const n=Ly(t);if(n){const a=Hi(e,o=>o.kind==="command"&&o.callId===n);if(a)return a}return Hi(e,a=>a.kind==="command")}function xQ(e,t){const n=t.action??"",a=eT[n]??{started:"Running workspace action"};return Hi(e,o=>o.state==="running"&&o.label===a.started&&o.kind!=="command"&&!o.controlKind)}function kQ(e){if(e.name==="turn.interrupted"||e.status==="failed")return"failed";if(e.status==="pending"||e.name==="approval.requested")return"pending";if(e.name==="tool.started"||e.name==="workspace_action"||e.name==="command.output")return"running";if(e.name==="tool.completed"||e.name==="workspace_action_result")return"completed";if(e.status==="started")return"running";if(e.status==="completed")return"completed"}function wQ(e){if(e.name==="assistant.reasoning.delta")return Re(Ce(e.data),["kind"])==="commentary"?"Update":"Reasoning";if(bp(e))return"Goal context";if(e.name==="turn.interrupted")return"Turn aborted";if(e.name==="subagent.started")return e.status==="started"?"Subagent running":"Started subagent";if(e.name==="subagent.reported")return"Subagent reported";if(e.name==="subagent.progress")return"Subagent progress";if(e.name==="subagent.completed")return"Subagent completed";if(e.name==="subagent.failed")return"Subagent failed";if(e.name==="subagent.workspace_retained")return"Subagent workspace retained";if(e.name==="subagent.archived")return"Subagent archived";if(e.name==="subagent.message")return"Subagent message";if(ov(e)&&e.name==="tool.started")return"Reading image";if(ov(e)&&e.name==="tool.completed")return"Read image";if(e.action==="resource_search"&&e.name==="tool.started")return"Searching resources";if(e.action==="resource_search"&&e.name==="tool.completed")return"Searched resources";if(e.action==="resource_read"&&e.name==="tool.started")return"Reading resource";if(e.action==="resource_read"&&e.name==="tool.completed")return"Read resource";if(e.action==="web_fetch"&&e.name==="tool.started")return"Fetching web page";if(e.action==="web_fetch"&&e.name==="tool.completed")return"Fetched web page";if(e.action==="web_search"&&e.name==="tool.started")return"Searching web";if(e.action==="web_search"&&e.name==="tool.completed")return"Searched web";if(e.action==="openpond_action_search"&&e.name==="tool.started")return"Searching actions";if(e.action==="openpond_action_search"&&e.name==="tool.completed")return"Searched actions";if(e.action==="openpond_action_run"&&e.name==="tool.started")return"Running OpenPond action";if(e.action==="openpond_action_run"&&e.name==="tool.completed")return"Ran OpenPond action";const t=KY(e);if(t)return t;const n=RQ(e);if(n)return n;const a=CQ(e);return a||(e.name==="skill.selected"?"Selected skill":e.name==="skill.loaded"?"Loaded skill":e.name==="skill.load_failed"?"Skill load failed":e.name==="tool.started"?"Started":e.name==="tool.completed"?e.status==="failed"?"Failed":"Ran":e.name==="command.output"?"Output":e.name==="workspace_action"||e.name==="workspace_action_result"?IQ(e):e.name==="approval.requested"?"Approval requested":e.name==="session.compaction.started"?"Compacting context":e.name==="session.compaction.completed"?"Compacted conversation context":e.name==="session.compaction.failed"?"Context compaction failed":e.name.replace("."," "))}const eT={workspace_status:{started:"Checking workspace",completed:"Checked workspace"},resource_search:{started:"Searching resources",completed:"Searched resources"},resource_read:{started:"Reading resource",completed:"Read resource"},list_files:{started:"Listing files",completed:"Listed files"},read_files:{started:"Reading files",completed:"Read files"},search_files:{started:"Searching files",completed:"Searched files"},preview_write_files:{started:"Previewing files",completed:"Previewed files"},preview_write_file:{started:"Previewing file",completed:"Previewed file"},preview_edit_file:{started:"Previewing edit",completed:"Previewed edit"},preview_delete_file:{started:"Previewing delete",completed:"Previewed delete"},write_files:{started:"Editing files",completed:"Edited files",failed:"File checks failed"},write_file:{started:"Editing file",completed:"Edited file",failed:"File checks failed"},edit_file:{started:"Editing file",completed:"Edited file",failed:"File checks failed"},delete_file:{started:"Deleting file",completed:"Deleted file",failed:"File checks failed"},validate_sandbox_template:{started:"Validating template",completed:"Validated template",failed:"Template validation failed"},build_sandbox_template:{started:"Building template",completed:"Built template",failed:"Template build failed"},run_sandbox_template:{started:"Running sandbox template",pending:"Sandbox template log",completed:"Ran sandbox template",failed:"Sandbox template failed"},git_status:{started:"Checking git status",completed:"Checked git status"},git_fetch:{started:"Fetching git",completed:"Fetched git",failed:"Git fetch failed"},git_commit:{started:"Committing changes",completed:"Committed changes",failed:"Commit failed"},git_push:{started:"Pushing changes",completed:"Pushed changes",failed:"Push failed"},publish_openpond_repo:{started:"Publishing to OpenPond",completed:"Published to OpenPond",failed:"Publish failed"},upload_cloud_source:{started:"Uploading source",completed:"Uploaded source",failed:"Upload failed"},sandbox_create:{started:"Starting sandbox",completed:"Started sandbox",failed:"Sandbox start failed"},sandbox_status:{started:"Checking sandbox",completed:"Checked sandbox",failed:"Sandbox status failed"},sandbox_list_files:{started:"Listing sandbox files",completed:"Listed sandbox files",failed:"Sandbox file list failed"},sandbox_read_file:{started:"Reading sandbox file",completed:"Read sandbox file",failed:"Sandbox file read failed"},sandbox_search_files:{started:"Searching sandbox files",completed:"Searched sandbox files",failed:"Sandbox search failed"},sandbox_run_action:{started:"Running sandbox action",completed:"Ran sandbox action",failed:"Sandbox action failed"},sandbox_upload_file:{started:"Uploading file",completed:"Uploaded file",failed:"Upload failed"},sandbox_write_file:{started:"Writing sandbox file",completed:"Wrote sandbox file",failed:"Write failed"},sandbox_edit_file:{started:"Editing sandbox file",completed:"Edited sandbox file",failed:"Edit failed"},sandbox_delete_file:{started:"Deleting sandbox file",completed:"Deleted sandbox file",failed:"Delete failed"},sandbox_mkdir:{started:"Creating sandbox directory",completed:"Created sandbox directory",failed:"Directory create failed"},sandbox_move_file:{started:"Moving sandbox file",completed:"Moved sandbox file",failed:"Move failed"},sandbox_exec:{started:"Running sandbox command",completed:"Ran sandbox command",failed:"Sandbox command failed"},sandbox_git_status:{started:"Checking sandbox git",completed:"Checked sandbox git"},sandbox_git_diff:{started:"Reading sandbox diff",completed:"Read sandbox diff"},sandbox_git_export_patch:{started:"Exporting sandbox patch",completed:"Exported sandbox patch",failed:"Patch export failed"},sandbox_git_apply_patch_local:{started:"Applying sandbox patch locally",completed:"Applied locally",failed:"Apply locally failed"},sandbox_git_branch:{started:"Switching sandbox branch",completed:"Switched sandbox branch",failed:"Branch failed"},sandbox_git_commit:{started:"Committing sandbox changes",completed:"Committed sandbox changes",failed:"Commit failed"},sandbox_git_pull:{started:"Pulling sandbox changes",completed:"Pulled sandbox changes",failed:"Pull failed"},sandbox_git_push:{started:"Pushing sandbox changes",completed:"Pushed sandbox changes",failed:"Push failed"},sandbox_preserve_source:{started:"Preserving sandbox source",completed:"Preserved sandbox source",failed:"Preserve failed"},sandbox_promote_source:{started:"Promoting sandbox source",completed:"Promoted sandbox source",failed:"Promote failed"},sandbox_logs:{started:"Reading sandbox logs",completed:"Read sandbox logs",failed:"Sandbox logs failed"},sandbox_receipts:{started:"Reading sandbox receipts",completed:"Read sandbox receipts",failed:"Sandbox receipts failed"},sandbox_stop:{started:"Stopping sandbox",completed:"Stopped sandbox",failed:"Sandbox stop failed"},file_change:{started:"Editing files",completed:"Edited files"}};function IQ(e){const t=e.action??"",n=eT[t]??{started:"Running workspace action",completed:"Workspace action completed",failed:"Workspace action failed"};return e.name==="workspace_action"?e.status==="pending"?n.pending??n.started:n.started:e.status==="failed"?n.failed??`${n.completed} failed`:n.completed}function _Q(e,t){if(e.name==="assistant.reasoning.delta")return e.output??"";if(t)return t.path;const n=YA(e.output??"");if(n)return n.text;if(bp(e)||e.name==="turn.interrupted")return e.output??e.error??"";const a=PQ(e);if(a)return a;const o=AQ(e);if(o)return o;const r=WY(e);if(r)return r;const s=tT(e);if(s)return s;if(e.name==="command.output")return aT(e.output??"");if(Ce(e.data)?.nativeTool===!0)return Re(Ce(e.data),["filePath","toolName"])??e.action??"Tool";if(e.name==="tool.started"||e.name==="tool.completed"){const c=e.data;if(c&&typeof c=="object"){const m=c.command;if(typeof m=="string"&&m.trim())return m;const u=c.tool;if(typeof u=="string"&&u.trim())return u;const f=c.type;if(typeof f=="string"&&f.trim())return f}}return e.name==="session.compaction.started"||e.name==="session.compaction.completed"||e.name==="session.compaction.failed"?e.error??e.output??"":e.output??e.action??""}function CQ(e){if(e.name!=="tool.started"&&e.name!=="tool.completed")return null;const t=e.status==="failed";return e.action==="openpond_create_improve"?e.name==="tool.started"?"Starting Create Pipeline":t?"Create Pipeline failed":"Started Create Pipeline":null}function RQ(e){if(e.name!=="tool.started"&&e.name!=="tool.completed")return null;const t=e.status==="failed",n=e.name==="tool.completed";switch(e.action){case"openpond_browser_open":return n?t?"Browser open failed":"Opened browser":"Opening browser";case"openpond_browser_snapshot":return n?t?"Browser capture failed":"Captured browser":"Capturing browser";case"openpond_browser_move_cursor":return n?t?"Cursor move failed":"Moved browser cursor":"Moving browser cursor";case"openpond_browser_click":return n?t?"Browser click failed":"Clicked browser":"Clicking browser";case"openpond_browser_type":return n?t?"Browser typing failed":"Typed in browser":"Typing in browser";case"openpond_browser_key":return n?t?"Browser key failed":"Pressed browser key":"Pressing browser key";case"openpond_browser_scroll":return n?t?"Browser scroll failed":"Scrolled browser":"Scrolling browser";default:return null}}function PQ(e){if(!e.action?.startsWith("openpond_browser_"))return null;const t=Ce(Ce(e.data)?.result),n=Re(t,["output"]);if(n)return n;const a=Ce(ar(e.output??"")),o=Re(a,["output"]);if(o)return o;const r=Ce(e.args),s=Re(r,["url"]);return s||(e.action==="openpond_browser_type"?"Text redacted":e.error??e.output??e.action)}function AQ(e){if(e.action!=="openpond_create_improve")return null;const t=Ce(Ce(e.data)?.result),n=Re(t,["nextStep"]);if(n)return n;const a=Ce(ar(e.output??"")),o=Re(a,["output"]);if(o)return o;const r=Ce(e.args),s=Re(r,["reason"]);if(s)return s;const c=Re(r,["objective"]);return c||(e.error??null)}function TQ(e){if(e.name==="command.output")return"command";if(e.name!=="tool.started"&&e.name!=="tool.completed")return;const t=Ce(e.data),n=Re(t,["type"]),a=Re(t,["tool","toolName","tool_name","name","functionName","function_name"]);if(e.action==="commandExecution"||n==="commandExecution"||tT(e)||a&&/(^|[._-])exec_command$/i.test(a))return"command"}function EQ(e){if(e.name==="turn.interrupted")return"turn_aborted";if(bp(e))return"goal_context"}function tT(e){const t=Ce(e.data),n=Re(t,["type"]),a=Re(t,["tool","toolName","tool_name","name","functionName","function_name"]),o=Ce(t?.result),r=Ce(ar(e.output??"")),s=Ce(r?.data),c=Re(t,["command","cmd"])??Re(Ce(t?.input),["command","cmd"])??Re(Ce(t?.arguments),["command","cmd"])??Re(Ce(t?.args),["command","cmd"])??jQ(Re(t,["arguments","args","input"]))??Re(Ce(e.args),["command","cmd"])??Re(o,["command","cmd"])??Re(s,["command","cmd"]);return c||e.name==="tool.started"&&(e.action==="commandExecution"||n==="commandExecution"||/(^|[._-])exec_command$/i.test(a??""))&&e.output?.trim()||null}function jQ(e){if(!e)return null;const t=ar(e),n=Ce(t);return Re(n,["command","cmd"])}function Ly(e){const t=Ce(e.data);return Re(t,["callId","call_id","toolCallId","tool_call_id","id","itemId","item_id"])}function MQ(e){const t=Ce(e.data);if(!t)return null;const n=[],a=Ce(t.workspaceToolTiming),o=typeof a?.durationMs=="number"?a.durationMs:null;o!==null&&n.push(LQ(o));const r=Ce(t.workspaceExecutionTarget),s=Re(r,["target"]);if(s==="sandbox"){const u=r?.hybrid===!0,f=Re(r,["sandboxId","workspaceId"]);n.push(`${u?"Hybrid ":""}sandbox${f?` ${bk(f)}`:""}`)}else s==="local"&&n.push("local workspace");const c=Ce(t.sourcePreservation);if(c?.attempted===!0)if(c.ok!==!0)n.push("checkpoint failed");else if(c.preserved===!0){const u=Re(c,["preservedSha"]);n.push(u?`checkpoint ${UQ(u)}`:"checkpoint saved")}else n.push("checkpoint clean");const m=nT(t);return m&&(n.push(`receipt ${bk(m.id)}`),n.push(`${qQ(m.totalUsd)} ${m.status}`)),n.length>0?n.join(" · "):null}function OQ(e){const t=nT(Ce(e.data));return t?{id:t.id,status:t.status,totalUsd:t.totalUsd}:void 0}function $Q(e){if(!e.name.startsWith("subagent."))return;const t=Ce(e.data),n=Ce(t?.run),a=Re(t,["childSessionId"])??Re(n,["childSessionId"]);if(!a)return;const o=Re(n,["roleId"])??Re(t,["roleId"]),r=Re(n,["status"])??Re(t,["status"]);return{sessionId:a,label:"Open conversation",...o?{roleId:o}:{},...r?{status:r}:{}}}function NQ(e){if(e.name!=="subagent.message")return;const t=Ce(e.data),n=Ce(t?.message);if(!n)return;const a=Re(n,["id"]),o=Re(n,["kind"]),r=Re(n,["fromRunId"]),s=Re(n,["body"]);if(!a||!o||!r||!s)return;const c=Ce(t?.delivery??n.delivery),m=Ce(t?.modelRef),u=Re(m,["providerId"]),f=Re(m,["modelId"]),x=Re(c,["deliveredParentSessionId"])===e.sessionId&&!r.startsWith("parent:")?"received":"sent",k=Array.isArray(n.refs)?n.refs.flatMap(_=>{const P=Ce(_),E=Re(P,["kind"]),A=Re(P,["id"]),$=Re(P,["label"]);return E&&A&&$?[{kind:E,id:A,label:$}]:[]}):[];return{direction:x,summary:DQ(s),body:s,messageId:a,kind:o,fromRunId:r,toRunId:Re(n,["toRunId"]),toRole:Re(n,["toRole"]),childSessionId:Re(t,["childSessionId"]),roleId:Re(t,["roleId"]),modelRef:u&&f?{providerId:u,modelId:f}:null,deliveryStatus:Re(c,["status"]),wakeReason:Re(c,["wakeParentReason"]),createdAt:Re(n,["createdAt"]),refs:k}}function DQ(e){const t=e.replace(/\s+/g," ").trim();if(!t)return"No message body";const n=/^(.*?[.!?])(?:\s|$)/.exec(t)?.[1]??t;return HQ(n,96)}function HQ(e,t){if(e.length<=t)return e;const n=e.slice(0,t-1),a=n.lastIndexOf(" "),o=a>=Math.floor(t*.55)?a:t-1;return`${n.slice(0,o).trimEnd()}...`}function nT(e){const t=Ce(e?.sandbox),n=Array.isArray(t?.receipts)?t.receipts:[];for(let a=n.length-1;a>=0;a-=1){const o=Ce(n[a]),r=Re(o,["id"]),s=Re(o,["status"]),c=Re(o,["totalUsd","retailTotalUsd"]);if(r&&s&&c)return{id:r,status:s,totalUsd:c}}return null}function LQ(e){return e<1e3?`${Math.max(0,Math.round(e))} ms`:e<1e4?`${(e/1e3).toFixed(1)} s`:`${Math.round(e/1e3)} s`}function qQ(e){const t=e.trim();return t.startsWith("$")?t:`$${t}`}function UQ(e){return e.length>12?e.slice(0,12):e}function bk(e){const t=e.trim();return t.length<=14?t:`${t.slice(0,6)}...${t.slice(-4)}`}function aT(e){let t=e.replace(/\r\n/g,`
197
- `).trim();if(!t)return"";const n=FQ(t);if(n!==null)return Vo(n);const a=`
198
- Output:
199
- `,o=t.indexOf(a);return o>=0&&VQ(t.slice(0,o))&&(t=t.slice(o+a.length).trim()),t=t.replace(/^Total output lines: \d+\n\n/,""),Vo(t.trim())}function sv(e){const t=aT(e.output??"");if(t)return t;const n=Ce(Ce(e.data)?.result);return n?Vo(iT(n)):""}function zQ(e){const t=Ce(e.data),n=Ce(t?.result),a=Ce(ar(e.output??"")),o=Ce(a?.data),r=Ce(t?.workspaceToolTiming),s=[n?.exitCode,o?.exitCode,t?.exitCode].find(m=>typeof m=="number"),c=r?.durationMs;return{...typeof s=="number"?{exitCode:s}:{},...typeof c=="number"?{durationMs:c}:{}}}function BQ(e,t){const n=Date.parse(t)-Date.parse(e);return Number.isFinite(n)&&n>0?n:null}function FQ(e){const t=Ce(ar(e)),n=typeof t?.action=="string"?t.action:"";if(!t||typeof t.ok!="boolean"||!n||typeof t.output!="string")return null;const a=Ce(t.data);return a?iT(a,Re(t,["output"])):typeof t.output=="string"?t.output.trim():""}function iT(e,t=null){const n=Re(e,["stdout"])?.replace(/\r\n/g,`
200
- `).trimEnd()??"",a=Re(e,["stderr"])?.replace(/\r\n/g,`
201
- `).trimEnd()??"",o=[n,a].filter(Boolean);return o.length>0?o.join(`
202
- `):t?.replace(/\r\n/g,`
203
- `).trim()??""}function VQ(e){return/^(Chunk ID|Exit code):/m.test(e)&&/Wall time:/m.test(e)}function xm(e,t){const n=e??"";if(!n)return Vo(t);if(n===t||n.includes(t))return n;if(t.includes(n))return Vo(t);const a=n.endsWith(`
204
- `)||t.startsWith(`
205
- `)?"":`
206
- `;return Vo(`${n}${a}${t}`)}function Vo(e){if(e.length<=fk)return e;const t=`
207
-
208
- … output omitted from live view; full output remains in task history …
209
-
210
- `,n=Math.max(0,fk-hk-t.length);return`${e.slice(0,hk)}${t}${e.slice(-n)}`}const KQ=/\bopenpond\s+opchat\b/i,WQ=/\b(?:50[0-9]|52[0-9]|53[0-9])\b|bad\s+gateway|gateway\s+timeout|service\s+unavailable/i;function oT(e){const t=e?.trim()||"Turn failed";return KQ.test(t)&&WQ.test(t)?"Server connection lost. Retry your message.":t}function GQ(e,t){if((hu(t,"code")??hu(t,"errorCode"))==="opchat_quota_exceeded")return"opchat_quota_exceeded";const a=t&&typeof t=="object"?t.error:null;if(a&&typeof a=="object"&&(hu(a,"code")??hu(a,"errorCode"))==="opchat_quota_exceeded")return"opchat_quota_exceeded";const o=e??"";return/\bopchat_quota_exceeded\b/i.test(o)||/OpChat token allowance is exhausted/i.test(o)?"opchat_quota_exceeded":null}function hu(e,t){if(!e||typeof e!="object")return null;const a=e[t];return typeof a=="string"&&a.trim()?a.trim():null}function JQ(e){const t=new Map,n=new Set;for(const a of e)a.turnId&&(a.role==="assistant"&&a.content?.trim()&&t.set(a.turnId,a.content),(a.role==="error"||a.role==="status_divider"&&a.statusState!=="running"||a.role==="activity_group"&&a.traceState!=="running")&&n.add(a.turnId));for(const a of e){if(a.role!=="activity_group"||!a.turnId||a.activities?.some(c=>c.subagentMessage))continue;const o=ZQ(a.activities??[]);if(o.length===0){a.deliverables=void 0;continue}const r=t.get(a.turnId)??"",s=r?YQ(o,r):[];if(s.length>0){a.deliverables=s;continue}a.deliverables=n.has(a.turnId)?[o[o.length-1]]:void 0}}function ZQ(e){const t=new Set(e.map(a=>a.imagePreview?.path).filter(a=>!!a)),n=new Map;for(const a of e)if(!a.imagePreview)for(const o of a.artifacts??[])t.has(o.path)||(n.delete(o.path),n.set(o.path,o));return[...n.values()]}function YQ(e,t){const n=rT(t);return e.filter(a=>QQ(a).some(o=>t.includes(o)||n.includes(o)))}function QQ(e){const t=new Set;for(const n of[e.path,e.title,XQ(e.path)]){const a=n.trim();a&&(t.add(a),t.add(rT(a)))}return[...t]}function XQ(e){return e.replace(/\\/g,"/").split("/").filter(Boolean).at(-1)??e}function rT(e){try{return decodeURIComponent(e)}catch{return e}}const sT=8;function eX(e){if(e.name!=="tool.completed"||e.status==="failed")return[];if(e.action!=="web_search"&&e.action!=="web_fetch")return[];const t=lv(e.data),n=e.output?lv(ar(e.output)):null;return tX(t??n)}function km(e,t){if(t.length===0)return e;const n=[],a=new Set;for(const o of[...e??[],...t]){const r=lT(o.url);if(!(!r||a.has(r))&&(a.add(r),n.push(o),n.length>=sT))break}return n.length>0?n:void 0}function lv(e,t=0){if(t>5)return null;const n=Ce(e);if(!n)return null;const a=Array.isArray(n.results)?n.results:Array.isArray(n.items)?n.items:Re(n,["url"])?[n]:null;if(a)return{provider:Re(n,["provider"]),results:a};for(const o of["result","data","output"]){const r=lv(n[o],t+1);if(r)return r}return null}function tX(e){if(!e)return[];const t=[],n=new Set;for(let a=0;a<e.results.length;a+=1){const o=nX(e.results[a],a,e.provider);if(!o)continue;const r=lT(o.url);if(!(!r||n.has(r))&&(n.add(r),t.push(o),t.length>=sT))break}return t}function nX(e,t,n){const a=Ce(e);if(!a)return null;const o=Re(a,["url","href"]);if(!o||!aX(o))return null;const r=Re(a,["title"])??yk(o)??`Source ${t+1}`;return{id:Re(a,["id"])??`source_${t+1}`,title:r,url:o,sourceName:Re(a,["sourceName","source_name","source"])??yk(o),snippet:Re(a,["snippet","description"]),provider:n,faviconUrl:iX(Re(a,["faviconUrl","favicon_url","iconUrl","icon_url"]))??oX(o),publishedAt:Re(a,["publishedAt","published_at"]),updatedAt:Re(a,["updatedAt","updated_at"])}}function aX(e){try{const t=new URL(e);return t.protocol==="http:"||t.protocol==="https:"}catch{return!1}}function lT(e){try{const t=new URL(e);return t.hash="",t.toString()}catch{return null}}function iX(e){if(!e)return null;try{const t=new URL(e);return t.protocol!=="http:"&&t.protocol!=="https:"?null:t.toString()}catch{return null}}function oX(e){try{return new URL("/favicon.ico",e).toString()}catch{return null}}function yk(e){try{return new URL(e).hostname.replace(/^www\./i,"")}catch{return null}}function rX(e){const t=Ce(e.data),n=ny.safeParse(t?.input);if(!n.success||!n.data.senderSessionId||n.data.senderKind==="user")return null;const a=n.data,o=Ce(t?.delivery),r=o?.direction==="sent"&&e.sessionId===a.senderSessionId;if(!r&&e.sessionId!==a.sessionId)return null;const s=r?a.sessionId:a.senderSessionId,c=Ce(o?.peer),m=c?.sessionId===s;return{id:`task-input:${a.id}:${r?"sent":"received"}`,role:"task_message",content:a.body,timestamp:a.createdAt,turnId:r?void 0:a.turnId??void 0,taskMessage:{input:a,direction:r?"sent":"received",peer:{sessionId:s,title:m&&typeof c.title=="string"?c.title:"Another task",provider:m&&typeof c.provider=="string"?c.provider:""}}}}function Sk(e){if(typeof e=="string")return e;if(Array.isArray(e))return e.every(n=>typeof Ce(n)?.text=="string")?e.map(n=>Ce(n).text).join(`
211
- `):JSON.stringify(e);const t=Ce(e);return typeof t?.text=="string"?t.text:e==null?"":JSON.stringify(e)}function sX(e,t){const n=Ce(e.data);if(!n?.retainedHistory||e.action!=="native_tool"||!["tool.started","tool.completed"].includes(e.name))return e;const a=Ce(n.content)??{},o=e.name==="tool.started",r=typeof n.callId=="string"?n.callId:null,s=o&&typeof a.name=="string"?a.name:(r?t.get(r):void 0)??"native_tool";o&&r&&t.set(r,s);let c=a.input??a.arguments;if(typeof c=="string")try{c=JSON.parse(c)}catch{c={input:c}}const m=a.error||(a.is_error===!0?a.content:null);return{...e,action:s,status:o?"started":m!=null||a.status==="error"?"failed":"completed",...o?{args:Ce(c)??{}}:{output:Sk(a.output??a.content??n.content),...m!=null?{error:Sk(m)}:{}}}}function lX(e,t,n){const a=Ce(n.data),o=n.name==="assistant.delta"&&a?.phase==="final_answer"&&a.nativeMessageSnapshot===!0,r=n.name==="assistant.reasoning.delta"&&(a?.phase==="commentary"||a?.phase==="reasoning");if(!o&&!r||typeof a?.nativeMessageId!="string"||!n.output)return null;const s=a.nativeMessageId;let c=t.get(s);if(c||(c={id:s,role:"assistant",turnId:n.turnId,timestamp:n.timestamp},t.set(s,c),e.push(c)),o){c.content=n.output,delete c.reasoningContent;const m=e.indexOf(c);m!==e.length-1&&(e.splice(m,1),e.push(c))}else c.content===void 0&&(c.reasoningContent=`${c.reasoningContent??""}${n.output}`);return c.timestamp=n.timestamp,c}const xk=new WeakMap;function yp(e){const t=xk.get(e);if(t)return t;const n=cX(e);return xk.set(e,n),n}function cX(e){const t=[],n=new Set,a=new Map,o=new Map,r=new Map,s=new Map;for(const c of e){const m=sX(c,r);if(m.name==="task.input"){const f=rX(m);if(f){const x=a.get(f.id);if(!x)a.set(f.id,f),t.push(f);else{const k=f.taskMessage.input,_=x.taskMessage.input;(k.revision>_.revision||k.revision===_.revision&&k.updatedAt>=_.updatedAt)&&Object.assign(x,f)}continue}const h=ny.safeParse(Ce(m.data)?.input);h.success&&h.data.senderKind==="user"&&h.data.kind==="steer"&&!n.has(h.data.id)&&(n.add(h.data.id),t.push({id:`task-input:${h.data.id}`,role:"user",content:h.data.body,timestamp:m.timestamp,turnId:h.data.turnId??void 0}));continue}if(m.name==="turn.started"){rc(t,m),dX(t,m);const f=fX(m.args);if(f){const h=Ce(m.args)?.taskInputId,x=typeof h=="string"?a.get(`task-input:${h}:received`):null;if(x?.taskMessage?.input.kind==="followup"){x.turnId=m.turnId;continue}const k=YA(f);if(k){gk(t,{...m,name:k.kind==="turn_aborted"?"turn.interrupted":"diagnostic",output:k.text,data:{...Ce(m.data)??{},kind:k.kind}});continue}t.push({id:m.id,role:"user",content:f,attachments:hX(m.args),timestamp:m.timestamp,turnId:m.turnId});const _=kk(m.args);_&&t.push({id:`${m.id}:create-improve`,role:"assistant",timestamp:m.timestamp,turnId:m.turnId,createImproveRun:_})}continue}if(m.name==="create_improve.updated"){const f=kk(m.data);if(!f)continue;const h=Hi(t,x=>x.turnId===m.turnId&&!!x.createImproveRun);h?(h.createImproveRun=f,h.timestamp=m.timestamp):t.push({id:`${m.id}:create-improve`,role:"assistant",timestamp:m.timestamp,turnId:m.turnId,createImproveRun:f});continue}const u=lX(t,s,m);if(u){rc(t,m),u.sources=km(u.sources,Bh(o,m.turnId)??[]);continue}if(m.name==="assistant.delta"){const f=m.output??"";if(!f)continue;rc(t,m);const h=Ce(m.data);if(h?.retainedHistory===!0&&typeof h.nativeMessageId=="string"){const k=h.nativeMessageId,_=t.find(P=>P.id===k);_?(_.content=f,_.timestamp=m.timestamp):t.push({id:k,role:"assistant",content:f,timestamp:m.timestamp,turnId:m.turnId});continue}const x=t[t.length-1];if(x?.role==="assistant"&&x.turnId===m.turnId&&!x.createImproveRun)x.content=`${x.content??""}${f}`,x.timestamp=m.timestamp,x.sources=km(x.sources,Bh(o,m.turnId)??[]);else{const k=Bh(o,m.turnId);t.push({id:m.id,role:"assistant",content:f,timestamp:m.timestamp,turnId:m.turnId,...k?.length?{sources:k}:{}})}continue}if(m.name==="assistant.reasoning.delta"){const f=m.output??"";if(!f)continue;rc(t,m);const h=t[t.length-1];h?.role==="assistant"&&h.turnId===m.turnId&&h.reasoningContent!==void 0&&!h.createImproveRun?(h.reasoningContent=`${h.reasoningContent}${f}`,h.timestamp=m.timestamp):h?.role==="assistant"&&h.turnId===m.turnId&&!h.reasoningContent&&!h.createImproveRun?(h.reasoningContent=f,h.timestamp=m.timestamp):t.push({id:m.id,role:"assistant",reasoningContent:f,timestamp:m.timestamp,turnId:m.turnId});continue}if(m.name==="user_question.asked"){const f=Ce(m.data),h=uN.safeParse(f?.question);if(!h.success)continue;t.push({id:m.id,role:"assistant",timestamp:m.timestamp,turnId:m.turnId,userQuestion:h.data});continue}if(m.name==="user_question.answered"||m.name==="user_question.dismissed"){const f=Ce(m.data),h=mN.safeParse(f?.resolution);if(!h.success)continue;const x=Hi(t,k=>k.userQuestion?.id===h.data.questionId);if(!x?.userQuestion||x.userQuestion.status!=="pending")continue;x.userQuestion={...x.userQuestion,status:h.data.action==="answer"?"answered":"dismissed",answer:h.data.action==="answer"?{optionId:h.data.optionId,text:h.data.text}:null,answeredAt:m.timestamp},x.timestamp=m.timestamp;continue}if(m.name==="turn.completed"){rv(t,m,"completed");continue}if(m.name==="turn.failed"){rv(t,m,"failed");const f=m.error??"Turn failed",h=GQ(f,m.data);t.push({id:m.id,role:"error",content:oT(f),...h?{errorKind:h}:{},timestamp:m.timestamp,turnId:m.turnId});continue}if(m.name==="turn.interrupted"){lQ(t,m);continue}if(uQ(m)){mQ(t,m);continue}if(m.name.startsWith("harness.refiner.")){YY(t,m);continue}if(m.name==="tool.started"||m.name==="tool.completed"||m.name==="skill.selected"||m.name==="skill.loaded"||m.name==="skill.load_failed"||m.name==="command.output"||m.name==="workspace_action"||m.name==="workspace_action_result"||m.name==="approval.requested"||m.name.startsWith("subagent.")||bp(m)){if(mX(m))continue;const f=$Y(m);if(f){OY(t,m,f);continue}const h=eX(m);h.length>0&&uX(t,o,m.turnId,h),gk(t,m)}if(m.name==="workspace.diff"){const f=pX(m.data);if(!f||f.filesChanged===0)continue;const h=Hi(t,x=>x.role==="assistant"&&x.turnId===m.turnId);h&&(h.changeSummary=f,h.timestamp=m.timestamp)}}return JQ(t),t}function dX(e,t){if(Ce(t.args)?.interactionKind!=="steer")return;const n=e.at(-1);n?.role==="status_divider"&&n.statusKind==="interruption"&&n.content==="Stopped by user"&&e.pop()}function uX(e,t,n,a){if(!n)return;const o=e[e.length-1];if(o?.role!=="assistant"||o.turnId!==n){t.set(n,km(t.get(n),a));return}o.sources=km(o.sources,a)}function Bh(e,t){if(!t)return;const n=e.get(t);return n&&e.delete(t),n}function mX(e){if(e.name!=="approval.requested")return!1;if(e.action==="create_plan")return!0;const t=Ce(e.data),n=Ce(t?.approval);return t?.kind==="create_plan"||n?.kind==="create_plan"}function pX(e){const t=_D.safeParse(e);return t.success?t.data:null}function fX(e){if(!e||typeof e!="object"||!("prompt"in e))return"";const t=e.prompt;return typeof t=="string"?t:""}function hX(e){if(!e||typeof e!="object"||!("attachments"in e))return;const t=rU.array().safeParse(e.attachments);return t.success&&t.data.length>0?t.data:void 0}function kk(e){const t=Ce(e);if(!t)return null;const n=Qc.safeParse(t.createImproveRun);return n.success?n.data:null}function ire(e){if(!e)return"";const t=new Date(e).getTime();if(Number.isNaN(t))return"";const n=Math.max(0,Math.floor((Date.now()-t)/1e3));if(n<60)return`${n}s`;const a=Math.floor(n/60);if(a<60)return`${a}m`;const o=Math.floor(a/60);return o<48?`${o}h`:`${Math.floor(o/24)}d`}function ore(e){const t=cT(e);return t?t.toLocaleTimeString([],{hour:"numeric",minute:"2-digit"}):""}function rre(e){const t=cT(e);return t?t.toLocaleString():""}function cT(e){if(!e)return null;const t=new Date(e);return Number.isNaN(t.getTime())?null:t}function gX(e){const{chatMessages:t,runtimeIndexes:n,selectedSessionId:a}=e,[o,r]=y.useState({}),s=y.useCallback(m=>{r(u=>({...u,[m.sessionId]:m}))},[]);y.useEffect(()=>{r(m=>{let u=m;for(const[f,h]of Object.entries(m)){const x=yp(wd(n,f));WA(x,h)&&(u===m&&(u={...m}),delete u[f])}return u})},[n]);const c=y.useMemo(()=>KA(t,a?o[a]:null),[t,o,a]);return{pendingChatUserMessages:o,recordPendingChatUserMessage:s,visibleChatMessages:c}}function vX({connection:e,selectedSession:t,setBootstrap:n,setError:a,setOpenPondCommandAccessMode:o,setSessions:r}){return{changeOpenPondCommandAccessMode:y.useCallback((c,m=t)=>{if(!e){a("Connect to OpenPond before saving preferences.");return}const u=m?.provider==="codex"?null:m;ae.savePreferences(e,{openPondCommandAccessMode:c}).then(f=>{o(f.preferences.openPondCommandAccessMode),n(h=>h&&{...h,preferences:f.preferences})}).catch(f=>{a(f instanceof Error?f.message:String(f))}),u&&ae.patchSession(e,u.id,{openPondCommandAccessMode:c}).then(f=>{r(h=>h.map(x=>x.id===f.id?f:x))}).catch(f=>{a(f instanceof Error?f.message:String(f))})},[e,t,n,a,o,r])}}function bX({localProjects:e,cloudProjects:t,sessions:n,runtimeIndexes:a,appPreferences:o,selectedSessionId:r,selectedProjectId:s,archivedChatsOpen:c,projectsExpanded:m,chatRowsVisibleCount:u,sidebarFileBookmarks:f=[]}){const h=y.useMemo(()=>e.filter(ue=>!ue.hiddenFromDefaultSidebar),[e]),x=y.useMemo(()=>n.filter(ue=>!ue.archived&&wk(ue)),[n]),k=y.useMemo(()=>x.filter(ue=>ue.pinned),[x]),_=y.useMemo(()=>x.filter(ue=>!!ue.savedForLater),[x]),P=y.useMemo(()=>n.filter(ue=>ue.archived&&wk(ue)),[n]),E=y.useMemo(()=>new Set(e.map(ue=>ue.id)),[e]),A=y.useMemo(()=>new Set(t.map(ue=>ue.id)),[t]),$=y.useMemo(()=>zP(e),[e]),j=y.useMemo(()=>{const ue={};for(const Le of n){const Fe=_x(Le,E,$,A);Fe&&(ue[Le.id]=Fe)}const Ie=new Map(n.map(Le=>[Le.id,Le]));for(const Le of n){if(ue[Le.id])continue;const Fe=new Set([Le.id]);let Xe=Le.parentSessionId;for(;Xe&&!Fe.has(Xe);){if(ue[Xe]){ue[Le.id]=ue[Xe];break}Fe.add(Xe),Xe=Ie.get(Xe)?.parentSessionId}}return ue},[n,A,E,$]),M=y.useMemo(()=>x.filter(ue=>!ue.pinned&&!ue.savedForLater&&!ue.appId&&!j[ue.id]),[x,j]),w=y.useMemo(()=>P.filter(ue=>!ue.appId&&!_x(ue,E,$,A)),[P,A,E,$]),R=y.useMemo(()=>{const ue={};for(const Ie of x){if(Ie.pinned||Ie.savedForLater)continue;const Le=j[Ie.id];if(!Le)continue;const Fe=ue[Le];Fe?Fe.push(Ie):ue[Le]=[Ie]}return ue},[x,j]),O=y.useMemo(()=>{const ue={};for(const Ie of n){if(!dT(Ie))continue;const Le=ue[Ie.parentSessionId];Le?Le.push(Ie):ue[Ie.parentSessionId]=[Ie]}for(const Ie of Object.values(ue))Ie.sort((Le,Fe)=>Date.parse(Fe.updatedAt)-Date.parse(Le.updatedAt));return ue},[n]),N=y.useMemo(()=>h.map((ue,Ie)=>{const Le=kt("local",ue.id),Fe=SZ(ue,t);return{id:Le,kind:"local",project:ue,pinned:!!o[Le]?.pinned,order:o[Le]?.order??Ie,cloudLinkTrusted:!Fe,cloudLinkWarning:Fe}}).sort(Fh),[o,t,h]),F=y.useMemo(()=>t.map((ue,Ie)=>{const Le=kt("cloud",ue.id);return{id:Le,kind:"cloud",project:ue,pinned:!!o[Le]?.pinned,order:o[Le]?.order??Ie,cloudLinkTrusted:!0,cloudLinkWarning:null}}).sort(Fh),[o,t]),L=y.useMemo(()=>new Set(h.map(ue=>Ga(ue,t)?.id??null).filter(ue=>!!ue)),[t,h]),Y=y.useMemo(()=>F.filter(ue=>!L.has(ue.project.id)),[F,L]),re=y.useMemo(()=>[...N,...Y].sort(Fh),[Y,N]),ve=y.useMemo(()=>re.filter(ue=>ue.pinned),[re]),oe=y.useMemo(()=>f.filter(ue=>ue.status==="pinned"),[f]),K=y.useMemo(()=>f.filter(ue=>ue.status==="saved_for_later"),[f]),H=re,de=y.useMemo(()=>yX(H,m,s),[H,m,s]),X=y.useMemo(()=>[...ve.map(ue=>({type:"project",key:_r({type:"project",id:ue.id}),id:ue.id,item:ue,order:ue.order})),...k.map(ue=>({type:"session",key:_r({type:"session",id:ue.id}),id:ue.id,session:ue,order:ue.order})),...oe.map((ue,Ie)=>({type:"file",key:_r({type:"file",id:ue.id}),id:ue.id,file:ue,order:ue.order??ve.length+k.length+Ie}))].sort((ue,Ie)=>{if(ue.order!==Ie.order)return ue.order-Ie.order;if(ue.type!==Ie.type){const Xe={project:0,session:1,file:2};return Xe[ue.type]-Xe[Ie.type]}const Le=ue.type==="project"?ue.item.project.name:ue.type==="session"?ue.session.title:ue.file.path,Fe=Ie.type==="project"?Ie.item.project.name:Ie.type==="session"?Ie.session.title:Ie.file.path;return Le.localeCompare(Fe)}),[oe,ve,k]),Z=y.useMemo(()=>c?[...M,...w]:M,[c,w,M]),pe=y.useMemo(()=>Z.slice(0,Math.max(Fn,u)),[Z,u]),ee=y.useMemo(()=>wd(a,r),[a,r]),me=y.useMemo(()=>yp(ee),[ee]),be=CA(a,r),Me=RA(a,r),ke=rZ(a,r);return{activeSessions:x,pinnedSessions:k,savedForLaterSessions:_,pinnedFiles:oe,savedForLaterFiles:K,chatSessions:M,archivedSessions:P,pinnedProjects:ve,pinnedItems:X,projectRows:H,localProjectRows:N,visibleProjectRows:de,cloudProjectRows:Y,projectSessionRowsByProjectId:R,childSessionRowsByParentId:O,sidebarProjectIdBySessionId:j,chatRows:Z,visibleChatRows:pe,sessionEvents:ee,chatMessages:me,contextUsage:be,goalRuntime:Me,subagentRuntime:ke}}function wk(e){return dT(e)?!1:e.hiddenFromDefaultSidebar?e.metadata?.benchmarkRuntime==="desktop_local_work":!0}function dT(e){return!!(e.parentSessionId&&e.subagentRunId)}function Fh(e,t){return e.pinned!==t.pinned?e.pinned?-1:1:e.order!==t.order?e.order-t.order:e.project.name.localeCompare(t.project.name)}function yX(e,t,n){if(t||e.length<=$u)return e;const a=e.slice(0,$u);if(!n||a.some(r=>r.id===n))return a;const o=e.find(r=>r.id===n);return o?[...a.slice(0,$u-1),o]:a}function SX(e){return e.name==="turn.completed"||e.name==="turn.failed"||e.name==="turn.interrupted"}function uT(e){let t=-1,n=null;for(let a=e.length-1;a>=0;a-=1){const o=e[a];if(o?.name==="turn.started"){t=a,n=o.turnId??null;break}}if(t===-1)return"none";for(let a=e.length-1;a>t;a-=1){const o=e[a];if(!(!o||!SX(o))&&!(n&&o.turnId&&o.turnId!==n))return o.name==="turn.completed"?"completed":"blocked"}return"pending"}function Ik(e,t){if(e.systemKind)return!1;const n=wd(t,e.id);if(n.length===0)return!1;const a=uT(n);return a==="pending"||a==="none"&&mT(n)==="pending"}function _k(e,t){if(e.systemKind||e.status!=="active")return!1;const n=wd(t,e.id);if(n.length===0)return!0;const a=uT(n);return a==="pending"||a==="none"&&mT(n)!=="terminal"}function mT(e){for(let t=e.length-1;t>=0;t-=1){const n=e[t];if(n){if(n.name==="turn.completed"||n.name==="turn.failed"||n.name==="turn.interrupted")return"terminal";if(n.name==="assistant.delta"||n.name==="assistant.reasoning.delta"||n.name==="tool.started"||n.name==="tool.completed"||n.name==="skill.selected"||n.name==="skill.loaded"||n.name==="skill.load_failed"||n.name==="approval.requested"||n.name==="approval.resolved"||n.name==="command.output"||n.name==="workspace_action"||n.name==="workspace_action_result")return"pending"}}return"none"}function xX({goalRuntime:e,goalRuntimeBySessionId:t,runtimeIndexes:n,selectedSession:a,selectedSessionId:o,sidebarSessions:r,subagentRuntimeBySessionId:s}){const c=y.useMemo(()=>new Map(r.map(x=>[x.id,x])),[r]),m=y.useMemo(()=>{const x=new Set;for(const[k,_]of t??[]){const P=c.get(k);_.tone==="active"&&!P?.systemKind&&x.add(k)}for(const k of n.activeGoalSessionIds)c.get(k)?.systemKind||x.add(k);return o&&!a?.systemKind&&e?.tone==="active"&&x.add(o),x},[e,t,n,a,o,c]),u=y.useMemo(()=>{const x=new Set(m);for(const[k,_]of s??[]){const P=c.get(k);_.activeCount>0&&!P?.systemKind&&x.add(k)}for(const k of n.activeSubagentSessionIds)c.get(k)?.systemKind||x.add(k);for(const k of r)k.systemKind||Ik(k,n)&&x.add(k.id);return a&&Ik(a,n)&&x.add(a.id),x},[m,n,a,r,c,s]),f=y.useMemo(()=>{const x=new Set(u);for(const k of r)_k(k,n)&&x.add(k.id);return a&&_k(a,n)&&x.add(a.id),x},[u,n,a,r]),h=!!(a&&!a.systemKind&&u.has(a.id));return{runningSessionIds:f,selectedSessionRunning:h}}const kX=1e3;function wX(e){const[t,n]=y.useState(()=>new Date().toISOString());return y.useEffect(()=>{if(!e)return;const a=()=>n(new Date().toISOString());a();const o=window.setInterval(a,kX);return()=>window.clearInterval(o)},[e]),t}function IX(e){const{codexHistoryEvents:t,codexHistorySessions:n,connection:a,expandedProjectIds:o,goalRuntime:r,locallyActiveCodexHistorySessionIds:s,pinnedSessions:c,savedForLaterSessions:m,projectSessionRowsByProjectId:u,rightChatHistoryEvents:f,runtimeIndexes:h,selectedSession:x,selectedSessionId:k,serverId:_,setCodexHistorySessions:P,sidebarSessions:E,subagentRuntime:A,visibleChatRows:$,visibleProjectRows:j}=e,[M,w]=y.useState({});y.useEffect(()=>{w({})},[_]);const R=y.useMemo(()=>{const Z=[],pe=new Set,ee=be=>{!be||be.id===k||!en(be.id)||pe.has(be.id)||(pe.add(be.id),Z.push(be.id))};for(const be of n)(be.status==="active"||s.has(be.id))&&ee(be);const me=Z.length;for(const be of j)for(const Me of(u[be.id]??[]).slice(0,2))ee(Me);for(const be of o)for(const Me of(u[be]??[]).slice(0,$u))ee(Me);for(const be of c)ee(be);for(const be of m)ee(be);for(const be of $)ee(be);return[...Z.slice(0,me),...Z.slice(me,me+8)].join(`
212
- `)},[n,o,s,c,m,u,k,$,j]),O=y.useCallback(Z=>{w(pe=>pe[Z.session.id]===Z.events?pe:{...pe,[Z.session.id]:Z.events}),P(pe=>vp(pe,Z.session))},[P]),N=y.useMemo(()=>{if(!R)return"";const Z=new Set(R.split(`
213
- `).filter(Boolean));return E.filter(pe=>Z.has(pe.id)&&pe.status==="active").map(pe=>pe.id).join(`
214
- `)},[R,E]),F=y.useMemo(()=>R?R.split(`
215
- `).filter(Z=>s.has(Z)).join(`
216
- `):"",[R,s]);y.useEffect(()=>{!x||!k||!en(k)||t.length===0||O({session:x,events:t})},[O,t,x,k]),y.useEffect(()=>{if(!a||!R)return;const Z=a,pe=R.split(`
217
- `).filter(Boolean),ee=new Set(N.split(`
218
- `).filter(Boolean)),me=new Set(F.split(`
219
- `).filter(Boolean)),be=pe.map(Me=>Hy({connection:Z,locallyActive:me.has(Me),onPayload:ke=>O(Dy(ke,me.has(Me))),reportedActive:ee.has(Me),sessionId:Me,surface:"sidebar"}));return()=>be.forEach(Me=>Me())},[O,N,F,R,a]);const L=y.useMemo(()=>new Map(E.map(Z=>[Z.id,Z])),[E]),Y=y.useMemo(()=>{const Z=new Map(h.latestGoalRuntimeBySessionId);for(const pe of E){const ee=pe.status==="active"?Nh(pe.metadata):null;ee&&Z.set(pe.id,ee)}for(const pe of[M,f])for(const[ee,me]of Object.entries(pe)){const be=L.get(ee),Me=be?.status==="active"?Nh(be.metadata):null,ke=Yg(me)??My(me)??(be?.status==="active"?Sm(me)??Me:null);ke?Z.set(ee,ke):Z.delete(ee)}if(k)if(r)Z.set(k,r);else if(x?.status==="active"&&t.length>0){const pe=Yg(t)??Sm(t)??Nh(x.metadata);pe?Z.set(k,pe):Z.delete(k)}else(!en(k)||t.length>0)&&Z.delete(k);return Z},[t.length,M,r,f,h.latestGoalRuntimeBySessionId,x?.status,x?.metadata,k,L,E]),re=y.useMemo(()=>[...Y.values()].some(Z=>Z.tone==="active"&&!!Z.observedAt),[Y]),ve=wX(re),oe=y.useMemo(()=>re?new Map([...Y].map(([Z,pe])=>[Z,NJ(pe,ve)??pe])):Y,[Y,ve,re]),K=k?oe.get(k)??r:r,H=y.useMemo(()=>{const Z=new Map(h.latestSubagentRuntimeBySessionId);return k&&(A?Z.set(k,A):Z.delete(k)),Z},[h.latestSubagentRuntimeBySessionId,k,A]),{runningSessionIds:de,selectedSessionRunning:X}=xX({goalRuntime:K,goalRuntimeBySessionId:oe,runtimeIndexes:h,selectedSession:x,selectedSessionId:k,sidebarSessions:E,subagentRuntimeBySessionId:H});return{goalRuntime:K,runningSessionIds:de,selectedSessionRunning:X,sidebarGoalRuntimeBySessionId:oe,sidebarSubagentRuntimeBySessionId:H}}function _X({searchOpen:e,sectionMenuOpen:t,setSectionMenuOpen:n,setSearchOpen:a,setQuery:o}){y.useEffect(()=>{const r=s=>{if((s.metaKey||s.ctrlKey)&&s.key.toLowerCase()==="k"){s.preventDefault(),n(null),a(c=>!c);return}if(s.key==="Escape"&&e){s.preventDefault(),a(!1),o(""),n(null);return}s.key==="Escape"&&t&&(s.preventDefault(),n(null))};return document.addEventListener("keydown",r),()=>document.removeEventListener("keydown",r)},[e,t,o,a,n])}function CX({afterSequence:e,appendEvents:t,connection:n,setApprovals:a,setSessions:o,setError:r,onDisconnected:s}){y.useEffect(()=>{if(!n?.token||e===null)return;const c=n;let m=null,u=[],f=null,h=null,x=!1;const k=new Map;let _=0;const P=16;function E(){m!==null&&(window.clearTimeout(m),m=null)}function A(){r(L=>L==="Event stream disconnected"?null:L)}function $(){f=null;const L=u;if(u=[],L.length===0)return;_=Date.now(),t(L);const Y=RX(L);Y.length>0&&o(re=>Y.reduce(oc,re)),a(re=>{let ve=re;for(const oe of L)if(oe.name==="approval.requested"&&oe.data&&(ve=[oe.data,...ve]),oe.name==="approval.resolved"&&oe.data&&typeof oe.data=="object"){const K=oe.data;K.approvalId&&(ve=ve.filter(H=>H.id!==K.approvalId))}return ve})}function j(){const L=Date.now()-_;if(L>=P){f!==null&&(window.clearTimeout(f),f=null),$();return}f===null&&(f=window.setTimeout($,P-L))}function M(L){w(L),u.push(L),j()}function w(L){if(!(!L.sessionId||!L.name.startsWith("harness.refiner."))){if(L.name==="harness.refiner.completed"||L.name==="harness.refiner.failed"){k.delete(L.sessionId);return}(L.name==="harness.refiner.queued"||L.name==="harness.refiner.started")&&(k.set(L.sessionId,typeof L.sequence=="number"?L.sequence:0),R())}}function R(){h!==null||k.size===0||(h=window.setTimeout(()=>{h=null,O()},1e3))}async function O(){if(!(x||k.size===0)){x=!0;try{await Promise.all([...k].map(async([L,Y])=>{const re=await ae.runtimeEventsPage(c,{sessionId:L,afterSequence:Y,limit:100});for(const ve of re.events){const oe=ve.event;k.set(L,Math.max(k.get(L)??0,ve.sequence)),M(oe)}}))}catch{}finally{x=!1,R()}}}function N(){f!==null&&(window.clearTimeout(f),f=null),$()}document.addEventListener("visibilitychange",N);const F=DE(n,L=>{E(),A(),M(L)},()=>{E(),m=window.setTimeout(()=>{F.isOpen()||(r("Event stream disconnected"),s?.())},2e3)},()=>{E(),A(),window.dispatchEvent(new Event("openpond-runtime-connected"))},{afterSequence:e});return()=>{E(),f!==null&&window.clearTimeout(f),h!==null&&window.clearTimeout(h),f=null,h=null,u=[],document.removeEventListener("visibilitychange",N),F.close()}},[e,t,n,s,a,r,o])}function RX(e){const t=new Map;for(const n of e){const a=n.data;if(!a||typeof a!="object"||Array.isArray(a))continue;const o=n.name==="session.started"||n.name==="session.updated"||n.name==="session.title.updated"?"session":n.name==="subagent.started"||n.name==="subagent.failed"?"childSession":null;if(!o)continue;const r=Cc.safeParse(a[o]);r.success&&t.set(r.data.id,r.data)}return[...t.values()]}function Vh(e){return e&&typeof e=="object"&&!Array.isArray(e)?e:null}function PX(e){return typeof e=="string"&&e.trim()?e.trim():null}function AX(e){for(let t=e.length-1;t>=0;t-=1){const n=e[t];if(n.name!=="create_improve.updated")continue;const a=Vh(n.data),o=Vh(a?.createImproveRun);if(o?.state!=="ready_local"&&o?.state!=="released"||Vh(o.adapter)?.kind!=="local")continue;const s=PX(o.id)??n.id;return[n.sessionId??"global",n.turnId??"turn",s].join(":")}return null}const TX=332,Ck=244,Rk=560,EX=560,Pk=320,Ak=2400,jX=440;function Kh(e){const t=typeof window>"u"?Rk:Math.min(Rk,Math.max(Ck,window.innerWidth-420));return Math.min(t,Math.max(Ck,Math.round(e)))}function Wh(e){const t=typeof window>"u"?Ak:Math.min(Ak,Math.max(Pk,window.innerWidth-jX));return Math.min(t,Math.max(Pk,Math.round(e)))}function MX(e,t){return!!(e&&e.serverUrl===t.serverUrl&&e.token===t.token&&e.platform===t.platform)}const Os=new Map;function qy(e,t){const n=e?.trim();return n?`${t?.trim()||"global"}|${n}`:null}function pT(e,t){const n=qy(e,t);if(!n)return null;const a=Os.get(n);return a?.updatedAt?a.agents:null}function OX(e,t,n){const a=qy(e,n);a&&Os.set(a,{agents:t,promise:null,updatedAt:Date.now()})}function Uy(e){const t=e.teamId?.trim();if(!t)return Promise.resolve([]);const n=qy(t,e.accountKey);if(!n)return Promise.resolve([]);const a=Os.get(n);if(!e.force){if(a?.updatedAt)return Promise.resolve(a.agents);if(a?.promise)return a.promise}const o=e.fetchAgents(t).then(r=>(OX(t,r,e.accountKey),r)).catch(r=>{const s=Os.get(n);throw s?.promise===o&&Os.set(n,{agents:s.agents,promise:null,updatedAt:s.updatedAt}),r});return Os.set(n,{agents:a?.agents??[],promise:o,updatedAt:a?.updatedAt??0}),o}const $X=6e4,NX=6e4,DX=6e4,zy=["pinned","projects","cloudProjects","chats","savedForLater"];function HX(e,t,n,a=Date.now()){for(const o of zX(t,n))fT(t[o],n[o])||(e[o]=a)}function LX(e,t,n,a=Date.now()){const o={...t};for(const[r,s]of Object.entries(n)){if(a-s>$X){delete n[r];continue}const c=FX(e,r),m=e[r];!c||fT(m,t[r])||(o[r]=m)}return o}function qX(e,t,n,a=Date.now()){for(const o of zy)t[o]!==n[o]&&(e[o]=a)}function UX(e,t,n,a=Date.now()){const o={...t};for(const r of zy){const s=n[r];if(s!==void 0){if(a-s>NX){delete n[r];continue}if(e[r]===t[r]){delete n[r];continue}o[r]=e[r]}}return BX(e,o)?e:o}function Tk(e,t,n=Date.now()){return e===t?null:{value:t,changedAt:n}}function Ek(e,t,n=Date.now()){return t?n-t.changedAt>DX?{value:e,localChange:null}:e===t.value?{value:e,localChange:t}:{value:t.value,localChange:t}:{value:e,localChange:null}}function zX(e,t){return new Set([...Object.keys(e),...Object.keys(t)])}function fT(e,t){return e?.pinned===t?.pinned&&e?.archived===t?.archived&&e?.order===t?.order}function BX(e,t){return zy.every(n=>e[n]===t[n])}function FX(e,t){return Object.prototype.hasOwnProperty.call(e,t)}const VX=5e4,qo="\0openpond-unscoped-runtime-events",Ri=[];class KX{perSessionLimit;totalLimit;entries=new Map;eventKeyById=new Map;listenersByKey=new Map;allListeners=new Set;summaryListeners=new Set;retainedKeys=new Set;allEventsSnapshot=Ri;summaryEventsSnapshot=Ri;clock=0;eventCount=0;constructor(t={}){if(this.perSessionLimit=Ok(t.perSessionLimit??jy,"perSessionLimit"),this.totalLimit=Ok(t.totalLimit??VX,"totalLimit"),this.totalLimit<this.perSessionLimit)throw new Error("totalLimit must be greater than or equal to perSessionLimit")}append(t){if(t.length===0)return Mk();const n=new Map;let a=0;for(const u of t){if(this.eventKeyById.has(u.id)){a+=1;continue}const f=u.sessionId||qo,h=n.get(f);h?h.push(u):n.set(f,[u]),this.eventKeyById.set(u.id,f)}if(n.size===0)return{...Mk(),duplicateEventCount:a};const o=new Set;let r=0,s=0,c=!1;for(const[u,f]of n){f.some($k)&&(c=!0);const h=this.entries.get(u),x=h?.snapshot.events??Ri,k=Math.max(0,Math.min(x.length,this.perSessionLimit-f.length)),_=f.length>this.perSessionLimit?f.slice(f.length-this.perSessionLimit):f,P=k===x.length?x:x.slice(x.length-k),E=P.length===0?_:[...P,..._],A=x.slice(0,x.length-P.length);A.some($k)&&(c=!0);for(const M of A)this.eventKeyById.delete(M.id);for(const M of f.slice(0,f.length-_.length))this.eventKeyById.delete(M.id);const j={eventIds:new Set(E.map(M=>M.id)),lastTouched:++this.clock,retained:h?.retained??this.retainedKeys.has(u),snapshot:{events:E,latestSequence:Jg(E),revision:(h?.snapshot.revision??0)+1}};this.entries.set(u,j),this.eventCount+=E.length-x.length,r+=_.length,s+=A.length+f.length-_.length,o.add(u)}const m=this.enforceTotalLimit(o);return s+=m,this.publish(o,c||m>0),GX({acceptedEventCount:r,duplicateEventCount:a,evictedEventCount:s,changedKeys:o})}mergeBootstrap(t){const n=WX(t),a=new Set([...this.entries.keys(),...n.keys()]),o=[];for(const r of a){const s=n.get(r)??Ri,c=this.entries.get(r)?.snapshot.events??Ri;o.push(...AJ(s,c))}return this.replace(o)}replace(t){const n=new Set(this.eventKeyById.keys()),a=new Set(this.entries.keys());this.entries.clear(),this.eventKeyById.clear(),this.eventCount=0,this.allEventsSnapshot=Ri,this.summaryEventsSnapshot=Ri;const o=this.append(t);for(const m of this.retainedKeys){const u=this.entries.get(m);u&&(u.retained=!0)}const r=this.eventKeyById;let s=0;for(const m of n)r.has(m)||(s+=1);const c=new Set([...a].filter(m=>!this.entries.has(m)));return c.size>0&&this.publish(c,!0),{...o,evictedEventCount:o.evictedEventCount+s,changedSessionIds:new Set([...o.changedSessionIds,...[...c].filter(m=>m!==qo)]),unscopedEventsChanged:o.unscopedEventsChanged||c.has(qo)}}clear(){if(this.entries.size===0)return;const t=new Set(this.entries.keys());this.entries.clear(),this.eventKeyById.clear(),this.eventCount=0,this.allEventsSnapshot=Ri,this.summaryEventsSnapshot=Ri,this.publish(t,!0)}retainSession(t,n=!0){n?this.retainedKeys.add(t):this.retainedKeys.delete(t);const a=this.entries.get(t);a&&(a.retained=n)}getSessionSnapshot=t=>t?this.entries.get(t)?.snapshot??jk:jk;getSessionEvents(t){return this.getSessionSnapshot(t).events}getAllEvents=()=>{if(this.allEventsSnapshot)return this.allEventsSnapshot;const t=[...this.entries.values()].flatMap(n=>n.snapshot.events);return t.sort(JX),this.allEventsSnapshot=t,t};getSummaryEvents=()=>this.summaryEventsSnapshot?this.summaryEventsSnapshot:(this.summaryEventsSnapshot=this.getAllEvents(),this.summaryEventsSnapshot);getStats(){let t=0;for(const[n,a]of this.entries)n!==qo&&a.retained&&(t+=1);return{eventCount:this.eventCount,retainedSessionCount:t,sessionCount:this.entries.size-(this.entries.has(qo)?1:0),perSessionLimit:this.perSessionLimit,totalLimit:this.totalLimit}}subscribeAll=t=>(this.allListeners.add(t),()=>this.allListeners.delete(t));subscribeSummary=t=>(this.summaryListeners.add(t),()=>this.summaryListeners.delete(t));subscribeSession(t,n){let a=this.listenersByKey.get(t);return a||(a=new Set,this.listenersByKey.set(t,a)),a.add(n),()=>{a?.delete(n),a?.size===0&&this.listenersByKey.delete(t)}}enforceTotalLimit(t){let n=0;for(;this.eventCount>this.totalLimit&&this.entries.size>0;){const a=this.oldestEvictionCandidate(!1)??this.oldestEvictionCandidate(!0);if(!a)break;const[o,r]=a,s=this.eventCount-this.totalLimit;if(!r.retained||r.snapshot.events.length<=s){n+=r.snapshot.events.length,this.removeEntry(o),t.add(o);continue}const c=r.snapshot.events.slice(0,s),m=r.snapshot.events.slice(s);for(const u of c)this.eventKeyById.delete(u.id);r.eventIds=new Set(m.map(u=>u.id)),r.snapshot={events:m,latestSequence:Jg(m),revision:r.snapshot.revision+1},this.eventCount-=c.length,n+=c.length,t.add(o)}return n}oldestEvictionCandidate(t){let n=null;for(const a of this.entries)!t&&a[1].retained||(!n||a[1].lastTouched<n[1].lastTouched)&&(n=a);return n}removeEntry(t){const n=this.entries.get(t);if(n){for(const a of n.snapshot.events)this.eventKeyById.delete(a.id);this.eventCount-=n.snapshot.events.length,this.entries.delete(t)}}publish(t,n=!1){if(t.size!==0){this.allEventsSnapshot=null,n&&(this.summaryEventsSnapshot=null);for(const a of t)for(const o of this.listenersByKey.get(a)??[])o();for(const a of this.allListeners)a();if(n)for(const a of this.summaryListeners)a()}}}const jk=Object.freeze({events:Ri,latestSequence:null,revision:0});function WX(e){const t=new Map;for(const n of e){const a=n.sessionId||qo,o=t.get(a);o?o.push(n):t.set(a,[n])}return t}function GX(e){return{acceptedEventCount:e.acceptedEventCount,duplicateEventCount:e.duplicateEventCount,evictedEventCount:e.evictedEventCount,changedSessionIds:new Set([...e.changedKeys].filter(t=>t!==qo)),unscopedEventsChanged:e.changedKeys.has(qo)}}function Mk(){return{acceptedEventCount:0,duplicateEventCount:0,evictedEventCount:0,changedSessionIds:new Set,unscopedEventsChanged:!1}}function JX(e,t){if(e.sequence!==void 0&&t.sequence!==void 0)return e.sequence-t.sequence;const n=Date.parse(e.timestamp)-Date.parse(t.timestamp);return Number.isFinite(n)&&n!==0?n:e.id.localeCompare(t.id)}function Ok(e,t){if(!Number.isInteger(e)||e<=0)throw new Error(`${t} must be a positive integer`);return e}function $k(e){return e.name!=="assistant.delta"&&e.name!=="assistant.reasoning.delta"&&e.name!=="command.output"}const ZX=256,Nk=15e3,YX=5e3,QX=3e4;class XX{constructor(t={}){this.options=t}options;entries=new Map;connection=null;accountScope=null;generation=0;activateConnection(t){eee(this.connection,t)||(this.connection=t,this.clear())}activateAccountScope(t){t!==this.accountScope&&(this.accountScope=t,this.clear())}get(t){const n=this.now(),a=this.entries.get(t);return a?this.expired(a,n)?(this.entries.delete(t),null):(a.lastAccessedAt=n,tee(this.entries,t,a),a.state==="ready"?a.url:null):null}load(t,n){const a=this.get(t);if(a)return Promise.resolve(a);const o=this.now(),r=this.entries.get(t);if(r?.state==="loading"&&!this.expired(r,o))return r.promise;if(r?.state==="failed"&&!this.expired(r,o))return Promise.resolve(null);const s=this.generation,c=n().then(m=>this.generation!==s?null:(this.entries.set(t,{state:"ready",url:m.url,expiresAt:m.expiresAt,lastAccessedAt:this.now()}),this.prune(),m.url)).catch(()=>{if(this.generation!==s)return null;const m=this.now();return this.entries.set(t,{state:"failed",expiresAt:m+(this.options.failureTtlMs??YX),lastAccessedAt:m}),this.prune(),null});return this.entries.set(t,{state:"loading",promise:c,expiresAt:o+(this.options.loadingTtlMs??QX),lastAccessedAt:o}),this.prune(),c}clear(){this.generation+=1,this.entries.clear()}watch(t,n,a){let o=!1,r=0,s=0,c;const m=async(u=!1)=>{if(o)return;const f=++r;clearTimeout(c),u&&this.entries.get(t)?.state!=="loading"&&this.entries.delete(t);const h=this.get(t);a({url:h,status:h?"ready":"loading"});const x=await this.load(t,n);if(o||f!==r)return;if(a({url:x,status:x?"ready":"error"}),!x){++s<=3&&(c=setTimeout(()=>{m()},[5e3,15e3,3e4][s-1]));return}s=0;const k=this.entries.get(t),_=Math.max(1e3,(k?.expiresAt??this.now()+6e4)-this.now()-(this.options.expirySkewMs??Nk));c=setTimeout(()=>{m()},_)};return m(),{refresh:(u=!1)=>{s=0,m(u)},close:()=>{o=!0,r+=1,clearTimeout(c)}}}size(){return this.prune(),this.entries.size}prune(){const t=this.now();for(const[a,o]of this.entries)this.expired(o,t)&&this.entries.delete(a);const n=this.options.maxEntries??ZX;for(;this.entries.size>n;){const a=this.entries.keys().next().value;if(!a)break;this.entries.delete(a)}}expired(t,n){const a=t.state==="ready"?this.options.expirySkewMs??Nk:0;return t.expiresAt<=n+a}now(){return(this.options.now??Date.now)()}}const Dk=new XX;function sre(e,t,...n){return[t,e.serverUrl,...n].join("\0")}function eee(e,t){return e?.serverUrl===t?.serverUrl&&e?.token===t?.token&&e?.platform===t?.platform}function tee(e,t,n){e.delete(t),e.set(t,n)}const nee={connecting:"Connecting to OpenPond",account:"Loading account",team:"Loading default team",ready:"Ready"};function aee(e){return{label:nee[e],ready:e==="ready",stage:e}}const iee=650,oee=1200,ree=6e4;function see(e){const{selectedSessionId:t,setDraftModel:n,setDraftProvider:a,setCodexPermissionMode:o,setCodexReasoningEffort:r,setOpenPondCommandAccessMode:s,setError:c,setSelectedAppId:m,setSelectedProjectId:u,setSelectedSessionId:f}=e,[h,x]=y.useState(null),[k,_]=y.useState(null),[P]=y.useState(()=>new KX),E=y.useSyncExternalStore(P.subscribeSummary,P.getSummaryEvents,P.getSummaryEvents),A=y.useCallback(q=>{const ie=P.getAllEvents(),he=typeof q=="function"?q(ie):q;he!==ie&&P.replace(he)},[P]),$=y.useCallback(q=>{P.append(q)},[P]),[j,M]=y.useState(null),[w,R]=y.useState([]),[O,N]=y.useState([]),[F,L]=y.useState([]),[Y,re]=y.useState({}),[ve,oe]=y.useState("connecting"),K=ev(k?.account),H=y.useRef({}),de=y.useRef({}),X=y.useRef({}),Z=y.useRef([]),pe=y.useRef([]),ee=y.useRef(null),me=y.useRef(null),be=y.useRef(!1),Me=y.useRef(Date.now()),ke=y.useRef(null),ue=y.useRef(null);y.useEffect(()=>{Dk.activateConnection(h),Dk.activateAccountScope(K)},[h,K]);const Ie=y.useCallback(q=>{be.current||oe(q)},[]),Le=y.useCallback(q=>{re(ie=>{const he=typeof q=="function"?q(ie):q;return HX(H.current,ie,he),he})},[]),Fe=y.useCallback(q=>{R(ie=>{const he=typeof q=="function"?q(ie):q;return lk(de.current,ie,he),Z.current=he,he})},[]),Xe=y.useCallback(q=>{N(ie=>{const he=typeof q=="function"?q(ie):q;return lk(X.current,ie,he),pe.current=he,he})},[]),Ze=y.useCallback(()=>{if(be.current||ke.current!==null)return;const q=()=>{ke.current=null,!be.current&&(be.current=!0,oe("ready"))},ie=Date.now()-Me.current,he=lee(ie);if(he===0){q();return}ke.current=window.setTimeout(q,he)},[]);y.useEffect(()=>()=>{ke.current!==null&&window.clearTimeout(ke.current)},[]);const Be=y.useCallback(q=>{const ie=ee.current,he=!ie||ie===q.server.id;ee.current=q.server.id,M(Pe=>Pe?.serverId===q.server.id?Pe:{afterSequence:q.eventWindow?.latestSequence??Jg(q.events)??0,serverId:q.server.id}),_(q),he?P.mergeBootstrap(q.events):P.replace(q.events),R(Pe=>{const qe=he?sk(Pe,q.sessions,de.current):tv(Pe,q.sessions,de.current);return Z.current=qe,qe}),N(Pe=>{const qe=he?sk(Pe,q.codexHistorySessions??[],X.current):tv(Pe,q.codexHistorySessions??[],X.current);return pe.current=qe,qe}),L(q.approvals),re(Pe=>LX(Pe,q.sidebarAppPreferences,H.current)),m(Pe=>Pe&&q.apps.some(qe=>qe.id===Pe)?Pe:null),u(Pe=>{if(!Pe)return null;const qe=NP(Pe);return qe?.kind==="local"&&q.localProjects.some(Je=>Je.id===qe.id)?kt("local",qe.id):qe?.kind==="cloud"&&(q.cloudProjects??[]).some(Je=>Je.id===qe.id)?kt("cloud",qe.id):q.localProjects.some(Je=>Je.id===Pe)?kt("local",Pe):(q.cloudProjects??[]).some(Je=>Je.id===Pe)?kt("cloud",Pe):null}),f(Pe=>{if(!Pe)return null;const qe=[...q.sessions,...q.codexHistorySessions??[]];if(qe.some(et=>et.id===Pe&&!et.archived))return Pe;if(!he)return null;const Je=Z.current.find(et=>et.id===Pe)??pe.current.find(et=>et.id===Pe)??null;return Je&&!Je.archived&&LA(Je,qe)?Pe:null})},[P,m,u,f]),Ge=y.useCallback(q=>{_(ie=>ie&&{...ie,preferences:q.preferences})},[]);y.useEffect(()=>{if(t)return;const q=La(k?.preferences);a(q.defaultChatProvider),n(q.defaultChatModel)},[t,k?.preferences.defaultChatProvider,k?.preferences.defaultChatModel,n,a]),y.useEffect(()=>{o(La(k?.preferences).codexPermissionMode)},[k?.preferences.codexPermissionMode,o]),y.useEffect(()=>{r(La(k?.preferences).codexReasoningEffort)},[k?.preferences.codexReasoningEffort,r]),y.useEffect(()=>{s(La(k?.preferences).openPondCommandAccessMode)},[k?.preferences.openPondCommandAccessMode,s]),y.useEffect(()=>{if(!h||!k){me.current=null;return}if(k.account.state!=="signed_in"){me.current=null,Ze();return}const q=ev(k.account);if(!q){me.current=null,Ze();return}Ze(),Ie("team");const ie=k.preferences.defaultTeamId?.trim()??"",he=cee(q,ie,k.accountMeta.asOf??"initial");if(me.current===he)return;me.current=he;let Pe=!1;const qe=Je=>Uy({teamId:Je,accountKey:q,fetchAgents:async et=>(await ae.listSandboxAgents(h,{teamId:et})).agents}).catch(()=>{!Pe&&me.current===he&&(me.current=null)});return Xx({accountKey:q,force:!0,fetchOrganizations:()=>Hk(h)}).then(async Je=>{if(Pe)return;if(Je.length===0){Ze();return}if(!!ie&&Je.some(_t=>_t.teamId===ie)){await qe(ie),Ze();return}const ut=MZ(Je)?.teamId;if(!ut){Ze();return}if(ie){c("The configured default team is unavailable for this account. Select an available team in account settings."),Ze();return}await qe(ut),Pe||Ze()}).catch(Je=>{Pe||(me.current=null,c(Je instanceof Error?Je.message:String(Je)),Ze())}),()=>{Pe=!0}},[Be,Ge,k?.account,k?.accountMeta.asOf,k?.preferences.defaultTeamId,Ze,h,Ie,c]),y.useEffect(()=>{if(!h||!K)return;let q=!1;const ie=()=>{q||(q=!0,Xx({accountKey:K,force:!0,fetchOrganizations:()=>Hk(h)}).catch(()=>{}).finally(()=>{q=!1}))},he=()=>{document.visibilityState==="visible"&&ie()},Pe=window.setInterval(ie,ree);return window.addEventListener("focus",ie),document.addEventListener("visibilitychange",he),()=>{window.clearInterval(Pe),window.removeEventListener("focus",ie),document.removeEventListener("visibilitychange",he)}},[h,K]),al(()=>{const q=L8();c(q||(ie=>ie?.startsWith("Preference changes have not been saved.")?null:ie))}),y.useEffect(()=>{h&&kx(h).catch(q=>c(String(q)))},[h,K,c]);const Ve=y.useCallback(async()=>{Ie("connecting"),M(null);const q=await iW();x(he=>MX(he,q)?he:q),Ie("account");const ie=await ae.bootstrap(q);await kx(q),Be(ie),Ze(),c(he=>he&&(rA(he)||he==="Event stream disconnected")?null:he)},[Be,Ze,Ie,c]);y.useEffect(()=>{let q=!1,ie=null;const he=async Pe=>{try{await Ve()}catch(qe){if(q)return;c(qe instanceof Error?qe.message:String(qe));const Je=Math.min(5e3,750+Pe*750);ie=window.setTimeout(()=>{he(Pe+1)},Je)}};return he(0),()=>{q=!0,ie!==null&&window.clearTimeout(ie)}},[Ve,c]);const U=y.useCallback(()=>{Ve().catch(()=>{})},[Ve]);CX({afterSequence:j?.afterSequence??null,appendEvents:$,connection:h,setApprovals:L,setSessions:Fe,setError:c,onDisconnected:U}),y.useEffect(()=>{if(!h||!k){ue.current=null;return}const q=AX(E);!q||ue.current===q||(ue.current=q,ae.profileCurrent(h).then(ie=>{_(he=>he&&{...he,profile:ie})}).catch(ie=>{ue.current=null,c(ie instanceof Error?ie.message:String(ie))}))},[k,h,E,c]);const J=y.useCallback(()=>{h&&ae.refreshOpenPondAccount(h).then(({account:q,accountMeta:ie})=>{_(he=>he&&{...he,account:q,accountMeta:ie})}).catch(q=>c(q instanceof Error?q.message:String(q)))},[h,c]);return{appPreferences:Y,applyBootstrapPayload:Be,approvals:F,bootstrap:k,codexHistorySessions:O,connection:h,events:E,runtimeEventStore:P,refreshOpenPondAccount:J,sessions:w,startup:aee(ve),setAppPreferences:Le,setBootstrap:_,setCodexHistorySessions:Xe,setEvents:A,setSessions:Fe}}async function Hk(e){return(await ae.organizations(e)).organizations.map(gp).filter(n=>!!n).filter(n=>n.status==="active")}function lee(e){return e>=oee?0:Math.max(0,iee-e)}function cee(e,t,n){return`${e}::${t||"none"}::${n}`}function dee({appDispatch:e,error:t,setErrorState:n}){const a=y.useRef(null),o=y.useRef(null),r=y.useRef(null),s=y.useRef(0),c=y.useCallback((u,f="info",h={})=>{const x=Date.now()+ ++s.current;return e({type:"showToast",toast:{id:x,message:u,tone:f,...h}}),x},[e]),m=y.useCallback(u=>{const f=o.current,h=typeof u=="function"?u(f):u;if(Object.is(f,h))return;if(o.current=h,n(h),!h){r.current!==null&&(e({type:"clearToast",toastId:r.current}),r.current=null);return}r.current=c(uee(h),"error");const x=a.current;x&&ae.recordClientDiagnostic(x,{message:h,surface:"app",context:{href:window.location.href}}).catch(k=>{console.warn("Unable to record client diagnostic.",k)})},[e,n,c]);return y.useEffect(()=>{o.current=t,!(t||r.current===null)&&(e({type:"clearToast",toastId:r.current}),r.current=null)},[e,t]),{connectionRef:a,setError:m,showToast:c}}function uee(e){return oA(e)}const mee={query:"",searchOpen:!1,archivedChatsOpen:!1,sectionMenuOpen:null,projectsExpanded:!1,cloudProjectsExpanded:!1,chatRowsVisibleCount:Fn,sidebarOpen:!0,view:"chat",selectedAppId:null,selectedProjectId:null,selectedSessionId:null,prompt:"",promptDrafts:{},draftProvider:Tr,draftModel:wc,draftExperience:"chat",codexPermissionMode:Dv,codexReasoningEffort:Hv,openPondCommandAccessMode:Om,busy:!1,diffPanelOpen:!1,diffPanelExpanded:!1,rightPanelMode:"changes",rightChatPanels:[],terminalOpen:!1,syncingWorkspaceAppId:null,settingsSection:"account",newProjectDialogOpen:!1,newProjectMode:"local",newProjectName:"",newProjectPath:"",newProjectBusy:!1,commitDialogOpen:!1,commitMessage:"",commitIncludeUnstaged:!0,commitNextStep:"commit",commitDraft:!0,branchDialogOpen:!1,branchDialogName:"",toast:null,error:null};function By(e){return e.selectedSessionId?`session:${e.selectedSessionId}`:e.selectedProjectId?`project:${e.selectedProjectId}`:e.selectedAppId?`app:${e.selectedAppId}`:`new-${e.draftExperience}`}function wm(e,t,n){if(!n){if(!(t in e))return e;const{[t]:a,...o}=e;return o}return e[t]===n?e:{...e,[t]:n}}function pee(e){return wm(e.promptDrafts,By(e),e.prompt)}function Gl(e,t,n={}){const a={...e,...t},o=By(a),r=pee(e),s=n.clearSelectedDraft?wm(r,o,""):n.preserveCurrentPrompt?wm(r,o,e.prompt):r;return{...e,...t,promptDrafts:s,prompt:n.clearSelectedDraft?"":n.preserveCurrentPrompt?e.prompt:s[o]??""}}function fee(e){return e==="draftExperience"||e==="selectedAppId"||e==="selectedProjectId"||e==="selectedSessionId"}function hee(e,t){switch(t.type){case"field":{const n=e[t.key],a=typeof t.value=="function"?t.value(n):t.value;if(Object.is(n,a))return e;if(t.key==="prompt"){const o=String(a);return{...e,prompt:o,promptDrafts:wm(e.promptDrafts,By(e),o)}}return fee(t.key)?Gl(e,{[t.key]:a}):{...e,[t.key]:a}}case"patch":return{...e,...t.patch};case"selectApp":return Gl(e,{selectedAppId:t.appId,selectedProjectId:null,selectedSessionId:null,view:"chat"});case"selectProject":return Gl(e,{selectedAppId:null,selectedProjectId:t.projectId,selectedSessionId:null,view:"chat"},{preserveCurrentPrompt:!0});case"selectSession":{const n=t.projectId??null;return Gl(e,{selectedSessionId:t.sessionId,selectedAppId:n?null:t.appId??null,selectedProjectId:n,view:"chat"})}case"beginNewChat":return Gl(e,{selectedSessionId:null,selectedAppId:t.appId,selectedProjectId:null,error:null,view:"chat"});case"openCommitDialog":return{...e,commitMessage:"",commitIncludeUnstaged:!0,commitNextStep:t.nextStep,commitDraft:!0,commitDialogOpen:!0,error:null,view:"chat"};case"openBranchDialog":return{...e,branchDialogName:t.branchName,branchDialogOpen:!0,error:null,view:"chat"};case"showToast":return{...e,toast:t.toast};case"clearToast":return e.toast?.id===t.toastId?{...e,toast:null}:e;default:return e}}function St(e,t){return n=>e({type:"field",key:t,value:n})}function gee(e){return{setQuery:St(e,"query"),setSearchOpen:St(e,"searchOpen"),setArchivedChatsOpen:St(e,"archivedChatsOpen"),setSectionMenuOpen:St(e,"sectionMenuOpen"),setProjectsExpanded:St(e,"projectsExpanded"),setCloudProjectsExpanded:St(e,"cloudProjectsExpanded"),setChatRowsVisibleCount:St(e,"chatRowsVisibleCount"),setSidebarOpen:St(e,"sidebarOpen"),setView:St(e,"view"),setSelectedAppId:St(e,"selectedAppId"),setSelectedProjectId:St(e,"selectedProjectId"),setSelectedSessionId:St(e,"selectedSessionId"),setPrompt:St(e,"prompt"),setDraftProvider:St(e,"draftProvider"),setDraftModel:St(e,"draftModel"),setDraftExperience:St(e,"draftExperience"),setCodexPermissionMode:St(e,"codexPermissionMode"),setCodexReasoningEffort:St(e,"codexReasoningEffort"),setOpenPondCommandAccessMode:St(e,"openPondCommandAccessMode"),setBusy:St(e,"busy"),setDiffPanelOpen:St(e,"diffPanelOpen"),setDiffPanelExpanded:St(e,"diffPanelExpanded"),setRightPanelMode:St(e,"rightPanelMode"),setRightChatPanels:St(e,"rightChatPanels"),setTerminalOpen:St(e,"terminalOpen"),setSyncingWorkspaceAppId:St(e,"syncingWorkspaceAppId"),setSettingsSection:St(e,"settingsSection"),setNewProjectDialogOpen:St(e,"newProjectDialogOpen"),setNewProjectMode:St(e,"newProjectMode"),setNewProjectName:St(e,"newProjectName"),setNewProjectPath:St(e,"newProjectPath"),setNewProjectBusy:St(e,"newProjectBusy"),setCommitDialogOpen:St(e,"commitDialogOpen"),setCommitMessage:St(e,"commitMessage"),setCommitIncludeUnstaged:St(e,"commitIncludeUnstaged"),setCommitNextStep:St(e,"commitNextStep"),setCommitDraft:St(e,"commitDraft"),setBranchDialogOpen:St(e,"branchDialogOpen"),setBranchDialogName:St(e,"branchDialogName"),setToast:St(e,"toast"),setError:St(e,"error")}}function Jl(e){return e.selectedSessionId?`session:${e.selectedSessionId}`:e.selectedProjectId?`project:${e.selectedProjectId}`:e.selectedAppId?`app:${e.selectedAppId}`:"new-chat"}function vee(e={selectedAppId:null,selectedProjectId:null,selectedSessionId:null}){let t=e,n="";const a=new Map,o=new Set,r=u=>{if(!Object.is(n,u)){n=u;for(const f of o)f()}},s=()=>{const u=Jl(t);n?a.set(u,n):a.delete(u)},c=(u,f={})=>{const h=n;s(),t={...t,...u};const x=Jl(t);if(f.clear&&a.delete(x),f.preserveCurrentDraft){h?a.set(x,h):a.delete(x),r(h);return}r(f.clear?"":a.get(x)??"")},m={getScopeKey:()=>Jl(t),getSnapshot:()=>n,subscribe(u){return o.add(u),()=>o.delete(u)},set:u=>m.setForScope(Jl(t),u),setForScope(u,f){const h=Jl(t),x=u===h?n:a.get(u)??"",k=typeof f=="function"?f(x):f;Object.is(x,k)||(k?a.set(u,k):a.delete(u),u===h&&r(k))},applyAppAction(u){if(u.type==="field"){if(u.key==="prompt"){m.set(u.value);return}if(u.key==="selectedAppId"||u.key==="selectedProjectId"||u.key==="selectedSessionId"){const f=t[u.key],h=typeof u.value=="function"?u.value(f):u.value;Object.is(f,h)||c({[u.key]:h})}return}if(u.type==="patch"){const f={};"selectedAppId"in u.patch&&(f.selectedAppId=u.patch.selectedAppId),"selectedProjectId"in u.patch&&(f.selectedProjectId=u.patch.selectedProjectId),"selectedSessionId"in u.patch&&(f.selectedSessionId=u.patch.selectedSessionId),Object.keys(f).length>0&&c(f),"prompt"in u.patch&&typeof u.patch.prompt=="string"&&m.set(u.patch.prompt);return}if(u.type==="selectApp"){c({selectedAppId:u.appId,selectedProjectId:null,selectedSessionId:null});return}if(u.type==="selectProject"){c({selectedAppId:null,selectedProjectId:u.projectId,selectedSessionId:null},{preserveCurrentDraft:!0});return}if(u.type==="selectSession"){const f=u.projectId??null;c({selectedSessionId:u.sessionId,selectedAppId:f?null:u.appId??null,selectedProjectId:f});return}u.type==="beginNewChat"&&c({selectedSessionId:null,selectedAppId:u.appId,selectedProjectId:null})}};return m}function lre(e){return y.useSyncExternalStore(e.subscribe,e.getSnapshot,e.getSnapshot)}function bee(e){return{...e,draftExperience:$y()}}function yee(){const[e,t]=y.useReducer(hee,mee,bee),[n]=y.useState(()=>vee()),a=y.useCallback(r=>{n.applyAppAction(r),t(r)},[n]),o=y.useMemo(()=>({...gee(a),setPrompt:n.set}),[n,a]);return al(()=>o.setDraftExperience($y())),{composerDraftStore:n,dispatch:a,setters:o,state:e}}function See(e){return!!(e&&e.includes("Git is required for OpenPond app workspaces")&&e.includes("Command Line Tools"))}function xee(e){const{connection:t,events:n,showToast:a}=e,o=y.useRef(new Set),r=y.useCallback(async()=>{if(t)try{const c=await ae.installMacOSCommandLineTools(t);a(c.message,"info")}catch(c){a(c instanceof Error?c.message:String(c),"error")}},[t,a]),s=y.useCallback((c="OpenPond needs Git to create and sync local projects.")=>{a(c,"error",{actionLabel:"Install Tools",onAction:()=>{r()},persistent:!0})},[a,r]);y.useEffect(()=>{if(!t)return;let c=!1;return ae.gitAvailability(t).then(m=>{c||m.ok||m.installAction!=="macos_command_line_tools"||s("OpenPond needs Git before it can create local projects.")}).catch(()=>{}),()=>{c=!0}},[t,s]),y.useEffect(()=>{for(const c of n){if(o.current.has(c.id))continue;const m=c.error??c.output??null;c.name==="workspace_action_result"&&c.status==="failed"&&See(m)&&(o.current.add(c.id),s("OpenPond needs Git before it can update this project."))}},[n,s])}function kee({connection:e,preferences:t,sidebarOpen:n,diffPanelExpanded:a,setBootstrap:o,setError:r}){const[s,c]=y.useState(()=>La().sidebarSectionsCollapsed),m=y.useRef(s),u=y.useRef({}),f=y.useRef(null),h=y.useRef(null),[x,k]=y.useState(TX),[_,P]=y.useState(!1),[E,A]=y.useState(EX),[$,j]=y.useState(!1),{pinned:M,projects:w,cloudProjects:R,chats:O,savedForLater:N}=s;y.useEffect(()=>{if(_)return;const ee=Kh(La(t).sidebarWidth),me=Ek(ee,f.current);f.current=me.localChange,k(me.value)},[t,_]),y.useEffect(()=>{if($)return;const ee=Wh(La(t).diffPanelWidth),me=Ek(ee,h.current);h.current=me.localChange,A(me.value)},[$,t]),y.useEffect(()=>{const ee=La(t).sidebarSectionsCollapsed;c(me=>{const be=UX(me,ee,u.current);return m.current=be,be})},[t]);const F=y.useCallback(ee=>{o(me=>me&&{...me,preferences:ee.preferences})},[o]),L=y.useCallback(async ee=>{if(e&&Kh(La(t).sidebarWidth)!==ee)try{F(await ae.savePreferences(e,{sidebarWidth:ee}))}catch(me){r(me instanceof Error?me.message:String(me))}},[e,t,r,F]),Y=y.useCallback(async ee=>{if(e&&Wh(La(t).diffPanelWidth)!==ee)try{F(await ae.savePreferences(e,{diffPanelWidth:ee}))}catch(me){r(me instanceof Error?me.message:String(me))}},[e,t,r,F]),re=y.useCallback(async ee=>{if(!e)return;const me=La(t).sidebarSectionsCollapsed;if(!wee(me,ee))try{F(await ae.savePreferences(e,{sidebarSectionsCollapsed:ee}))}catch(be){r(be instanceof Error?be.message:String(be))}},[e,t,r,F]),ve=y.useCallback(ee=>{const me=m.current;qX(u.current,me,ee),m.current=ee,c(ee),re(ee)},[re]),oe=y.useCallback(()=>{const ee=m.current;ve({...ee,pinned:!ee.pinned})},[ve]),K=y.useCallback(()=>{const ee=m.current;ve({...ee,projects:!ee.projects})},[ve]),H=y.useCallback(()=>{const ee=m.current;ve({...ee,cloudProjects:!ee.cloudProjects})},[ve]),de=y.useCallback(()=>{const ee=m.current;ve({...ee,chats:!ee.chats})},[ve]),X=y.useCallback(()=>{const ee=m.current;ve({...ee,savedForLater:!ee.savedForLater})},[ve]),Z=y.useCallback(ee=>{if(!n)return;ee.preventDefault();const me=ee.clientX,be=x;let Me=be;P(!0);function ke(Ie){Me=Kh(be+Ie.clientX-me),k(Me)}function ue(){window.removeEventListener("pointermove",ke),window.removeEventListener("pointerup",ue);const Ie=Tk(be,Me);Ie&&(f.current=Ie),P(!1),L(Me)}window.addEventListener("pointermove",ke),window.addEventListener("pointerup",ue,{once:!0})},[L,n,x]),pe=y.useCallback(ee=>{if(a)return;ee.preventDefault();const me=ee.clientX,be=E;let Me=be;j(!0);function ke(Ie){Me=Wh(be-(Ie.clientX-me)),A(Me)}function ue(){window.removeEventListener("pointermove",ke),window.removeEventListener("pointerup",ue);const Ie=Tk(be,Me);Ie&&(h.current=Ie),j(!1),Y(Me)}window.addEventListener("pointermove",ke),window.addEventListener("pointerup",ue,{once:!0})},[a,E,Y]);return{pinnedCollapsed:M,projectsCollapsed:w,cloudProjectsCollapsed:R,chatsCollapsed:O,savedForLaterCollapsed:N,sidebarWidth:x,sidebarResizing:_,diffPanelWidth:E,diffPanelResizing:$,togglePinnedCollapsed:oe,toggleProjectsCollapsed:K,toggleCloudProjectsCollapsed:H,toggleChatsCollapsed:de,toggleSavedForLaterCollapsed:X,startSidebarResize:Z,startDiffPanelResize:pe}}function wee(e,t){return e.pinned===t.pinned&&e.projects===t.projects&&e.cloudProjects===t.cloudProjects&&e.chats===t.chats&&e.savedForLater===t.savedForLater}function Iee(e){const[t,n]=y.useState({id:0,kind:null}),[a,o]=y.useState(null),r=y.useCallback((u=null)=>{n(f=>({id:f.id+1,kind:u}))},[]),s=y.useCallback(u=>{o(u)},[]),c=null,m=y.useMemo(()=>{if(e)return _ee(a,r)},[e,a,r]);return{backAction:c,breadcrumbs:m,closeDetailKind:t.kind,closeDetailRequestId:t.id,onDetailOpenChange:s}}function _ee(e,t){return e?[{label:e.rootLabel??"Models",onSelect:()=>t(null)},{label:e.kindLabel,onSelect:e.kindOnSelect??(()=>t(e.kind))},...e.workproductLabel?[{label:e.workproductLabel,onSelect:e.workproductOnSelect}]:[],...e.segments]:[{label:"Models"}]}function Cee(e,t,n){return{inspectModelBatch:async a=>{if(!e)throw new Error("Connect to OpenPond to inspect this batch.");return OK.parse(await ae.trainingRequest(e,"/models/batch-review/inspect",{profileId:t,modelId:a},"POST"))},beginModelBatchReview:async a=>{const o=await n(a);return o?$K.parse(o):null}}}function Ree(e,t,n,a){async function o(r,s){if(!e)throw new Error("Connect to OpenPond to load tasks.");const c=w6.parse(s),m=new URLSearchParams({profileId:t});for(const[u,f]of Object.entries(c))f!==void 0&&m.set(u,String(f));return ae.trainingRequest(e,`${r}?${m}`,{},"GET")}return{taskInventory:async(r={})=>_6.parse(await o("/tasks",r)),taskInventoryDetail:async r=>{const s=await o("/tasks/detail",r);return{item:CR.parse(s.item),task:ap.parse(s.task)}},tasksetDraftFiles:async r=>{if(!e)return null;try{return await ae.trainingRequest(e,`/taskset-drafts/${encodeURIComponent(r)}/files?${new URLSearchParams({profileId:t})}`,{},"GET")}catch(s){return a(s),null}},tasksetDraftFile:async(r,s)=>{if(!e)return null;try{return await ae.trainingRequest(e,`/taskset-drafts/${encodeURIComponent(r)}/file?${new URLSearchParams({profileId:t,path:s})}`,{},"GET")}catch(c){return a(c),null}},saveTasksetDraftFile:r=>n("save-taskset-draft-file",`/taskset-drafts/${encodeURIComponent(r.draftId)}/file`,{profileId:t,...r},"PATCH"),inspectTasksetDraftSource:(r,s)=>n("inspect-taskset-draft-source","/taskset-drafts/source",{profileId:t,modelId:r,expectedModelRevision:s}),createTasksetDraftFromSource:r=>n("create-taskset-draft","/taskset-drafts",{profileId:t,sourceRequest:r}),createTasksetDraft:(r="",s)=>n("create-taskset-draft","/taskset-drafts",{profileId:t,name:r,modelId:s??null}),importTasksetDraftPackage:r=>n("import-taskset-draft-package","/taskset-drafts/import",{packagePath:r,profileId:t}),saveTasksetDraft:r=>n("save-taskset-draft",`/taskset-drafts/${encodeURIComponent(r.id)}`,r,"PUT"),tasksetDraftWorkspace:async r=>{if(!e)return null;try{return await ae.trainingRequest(e,`/taskset-drafts/${encodeURIComponent(r)}/workspace`,{},"GET")}catch(s){return a(s),null}},publishTasksetDraft:(r,s)=>n("publish-taskset-draft",`/taskset-drafts/${encodeURIComponent(r)}/publish`,{modelId:s??null}),refreshTasksetDraftModel:(r,s)=>n("refresh-taskset-draft-model",`/taskset-drafts/${encodeURIComponent(r.id)}/model-revision`,{expectedDraftRevision:r.revision,expectedModelRevision:s}),deleteTasksetDraft:r=>n("delete-taskset-draft",`/taskset-drafts/${encodeURIComponent(r)}`,{},"DELETE")}}function hT(e,t){return dB({id:e.id,profileId:e.profileId,name:e.name,objective:e.objective,defaultBaseModel:e.defaultBaseModel,defaultDestinationId:e.defaultDestinationId,trainingSetup:e.trainingSetup},t)}async function Pee(e,t,n){if(!e)throw new Error("Connect to the execution owner to check this configuration.");const a=await hT(t,n);return lC.parse(await ae.trainingRequest(e,"/models/check",a,"POST"))}function Aee(e,t){return{listModelStarters:async(n,a=!1)=>{if(!e)throw new Error("Connect to OpenPond to browse model starters.");return ae.trainingRequest(e,`/model-starters?limit=30${n?`&afterId=${encodeURIComponent(n)}`:""}${a?"&fresh=true":""}`,{},"GET")},previewModelStarter:async n=>{if(!e)throw new Error("Connect to OpenPond to preview a starter.");return ae.trainingRequest(e,"/model-starters/preview",{id:n.id,revision:n.revision,contentHash:n.contentHash})},checkModelStarter:async n=>{if(!e)throw new Error("Connect to OpenPond to check this starter.");return lC.parse(await ae.trainingRequest(e,"/model-starters/check",n))},createModelFromStarter:n=>t("create-model-from-starter","/model-starters/create",n)}}const Lk=1e4,qk=3e4;function Tee(e){const{connection:t,profileId:n}=e,a=c1(),o=iA(t),r=y.useMemo(()=>["training",o,n],[o,n]),s=y.useCallback(async()=>nK.parse(await ae.trainingState(t,n)),[t,n]),c=x1({queryKey:r,queryFn:s,enabled:!!t}),m=c.data??null,u=!!t&&c.isPending,[f,h]=y.useState(null),[x,k]=y.useState(null),_=y.useRef(null);_.current=m?.activityRevision??null;const P=y.useCallback(async()=>{if(!t)return null;try{const w=await a.fetchQuery({queryKey:r,queryFn:s,staleTime:0});return k(null),w}catch(w){return k(ao(w)),null}},[t,a,r,s]),E=y.useCallback(async()=>(await a.cancelQueries({queryKey:r,exact:!0}),await a.invalidateQueries({queryKey:r,exact:!0,refetchType:"none"}),await a.invalidateQueries({queryKey:["task-inventory",o,n]}),P()),[a,r,o,n,P]),A=y.useCallback(async(w,R,O,N="POST",F={})=>{if(!t)return null;F.silent||h(w);try{const L=await ae.trainingRequest(t,R,O,N);return await E(),F.silent||k(null),L}catch(L){return F.silent||k(ao(L)),null}finally{F.silent||h(null)}},[t,E]),$=m?[m.jobs.some(w=>["queued","starting","running","cancelling","reconciling"].includes(w.status)),m.creations.some(w=>["planning","materializing","validating"].includes(w.state)),m.minerRuns.some(w=>["queued","running","cancelling"].includes(w.status)),m.datasetImports.some(w=>["inspecting","materializing","validating","cancelling"].includes(w.status))].some(Boolean):!1;y.useEffect(()=>{if(!t)return;let w=!0,R=null;const O=$?Lk:qk,N=async()=>{let F=O;try{const L=await ae.trainingActivity(t,n);F=L.active?Lk:qk,(_.current===null||_.current!==L.revision)&&await P()}catch(L){k(ao(L))}w&&(R=window.setTimeout(()=>{N()},F))};return R=window.setTimeout(()=>{N()},O),()=>{w=!1,R!==null&&window.clearTimeout(R)}},[t,$,n,P]);const j=y.useMemo(()=>({...Aee(t,A),saveComparisonSeries:w=>A("save-comparison-series","/comparison-series",{series:w}),saveContinualBenchIssueReview:w=>A("save-continual-support-issue-review","/continual-support/issue-reviews",{review:w},"PUT"),importContinualLearningDailyBatch:(w,R="json_upload")=>A("import-continual-learning-daily-batch","/continual-learning/daily-batches/import",{manifest:w,source:R}),saveContinualLearningDailyBatch:w=>A("save-continual-learning-daily-batch","/continual-learning/daily-batches",{batch:w},"PUT"),generateContinualLearningResponses:w=>A("generate-continual-learning-responses","/continual-learning/responses",w),sealComparisonSeries:(w,R)=>A("seal-comparison-series",`/comparison-series/${encodeURIComponent(w)}/seal`,{expectedRevision:R}),archiveComparisonSeries:(w,R)=>A("archive-comparison-series",`/comparison-series/${encodeURIComponent(w)}/archive`,{expectedRevision:R}),queueComparisonRelease:w=>A("queue-comparison-release",`/comparison-series/${encodeURIComponent(w.seriesId)}/releases`,w),startComparisonEvaluation:w=>A("start-comparison-evaluation",`/comparison-series-entries/${encodeURIComponent(w.entryId)}/evaluations`,w),loadComparisonAttemptEvidence:w=>t?ae.trainingRequest(t,`/model-runs/${encodeURIComponent(w.runId)}/attempts/${encodeURIComponent(w.attemptId)}/evidence?kind=${w.kind}`,{},"GET"):Promise.resolve(null),linkComparisonRun:w=>A("link-comparison-run",`/comparison-series-entries/${encodeURIComponent(w.entryId)}/run`,w,"PATCH"),decideComparisonEntry:w=>A("decide-comparison-entry",`/comparison-series-entries/${encodeURIComponent(w.entryId)}/decision`,w),recordComparisonPromotion:w=>A("record-comparison-promotion",`/comparison-series-entries/${encodeURIComponent(w.entryId)}/promotion`,w),checkModelProject:(w,R=w.revision)=>Pee(t,w,R),...Cee(t,n,w=>A("begin-model-batch-review","/models/batch-review",{profileId:n,request:w})),saveModelProject:async(w,R=w.revision)=>A("save-model-project","/models",await hT(w,R),"PUT"),listHostedModelProjects:async(w={})=>{if(!t)return null;w.silent||h("list-hosted-model-projects");try{const R=await ae.trainingRequest(t,`/hosted-model-projects?profileId=${encodeURIComponent(n)}&refresh=${w.refresh===!0}`,{},"GET");return w.silent||k(null),R}catch(R){return w.silent||k(ao(R)),null}finally{w.silent||h(R=>R==="list-hosted-model-projects"?null:R)}},openHostedModelProject:(w,R,O,N={})=>A(`open-hosted-model-project:${w}`,`/hosted-model-projects/${encodeURIComponent(w)}/open`,{profileId:n,teamId:R,apiOrigin:O},"POST",N),pullHostedModelProject:w=>A(`pull-hosted-model-project:${w}`,`/hosted-model-projects/${encodeURIComponent(w)}/pull`,{profileId:n}),syncModelProject:w=>A("sync-model-project",`/models/${encodeURIComponent(w)}/sync`,{}),publishModelProjectTaskset:(w,R)=>A("publish-model-project-taskset",`/models/${encodeURIComponent(w)}/tasksets/${encodeURIComponent(R)}/publish`,{}),createScorer:(w,R,O)=>A("create-scorer","/scorers",{grader:w,tasksetId:R,modelProjectId:O??null}),prepareLearningBatch:w=>A("prepare-learning-batch","/learning-batches/prepare",{profileId:n,batchId:w}),...Ree(t,n,A,w=>k(ao(w))),tasksetGraderDetails:async w=>{if(!t)return null;try{return await ae.trainingRequest(t,`/tasksets/${encodeURIComponent(w)}/graders`,{},"GET")}catch(R){return k(ao(R)),null}},inspectHuggingFaceDataset:w=>A("inspect-huggingface-dataset","/dataset-imports/huggingface/inspect",{profileId:n,url:w}),materializeDatasetImport:(w,R)=>A("materialize-dataset-import",`/dataset-imports/${encodeURIComponent(w)}/materialize`,R),cancelDatasetImport:w=>A("cancel-dataset-import",`/dataset-imports/${encodeURIComponent(w)}/cancel`,{}),datasetRows:(w,R={})=>{if(!t)return Promise.resolve(null);const O=new URLSearchParams;R.split&&O.set("split",R.split),R.cursor&&O.set("cursor",R.cursor),O.set("limit",String(R.limit??25));for(const N of R.columns??[])O.append("column",N);return ae.trainingRequest(t,`/tasksets/${encodeURIComponent(w)}/rows?${O}`,{},"GET")},addSource:(w,R)=>A("add-source","/sources",{profileId:n,sessionId:w,turnIds:R}),addSources:w=>A("add-sources","/sources/batch",{profileId:n,sessionIds:w}),estimateSources:w=>t?ae.trainingRequest(t,"/sources/estimate",{sessionIds:w}):Promise.resolve([]),searchChats:(w,R,O=0,N=20)=>t?ae.trainingRequest(t,"/sources/search",{query:w,candidates:R,offset:O,limit:N}):Promise.resolve({schemaVersion:"openpond.trainingChatSearchResult.v1",query:w,offset:O,limit:N,total:0,hasMore:!1,indexedChats:0,totalChats:0,indexing:!1,entries:[]}),removeSource:w=>A("remove-source",`/sources/${encodeURIComponent(w)}`,{},"DELETE"),deleteTaskset:w=>A("delete-model",`/tasksets/${encodeURIComponent(w)}`,{},"DELETE"),runBenchmark:(w,R,O,N)=>A(`run-benchmark-${R}`,`/tasksets/${encodeURIComponent(w)}/benchmark-runs`,{phase:R,model:O,reasoningEffort:N,seeds:[17],repetitions:1}),startHarnessRefinerBenchmark:(w,R,O)=>A("run-harness-refiner-benchmark",`/models/${encodeURIComponent(w)}/harness-refiner-benchmark`,{profileId:n,model:R,reasoningEffort:O,maximumSpendUsd:10}),acceptHarnessReview:(w,R,O=null,N=null)=>A("accept-harness-review","/harness-reviews/accept",{profileId:n,workspaceId:w,reviewRef:R,analysisModel:O,analysisReasoningEffort:N}),startCreation:(w,R={})=>A("create-taskset","/task-creations",{profileId:n,sourceIds:w,surface:R.surface??"training_page",mode:R.mode??"defaults",entryMode:R.entryMode??"manual",resourceIntent:R.resourceIntent??"workproduct",buildIntent:R.buildIntent??"demonstrations",buildSpecification:R.buildSpecification??null,objective:R.objective??null,methodHint:R.methodHint??null,preferredBaseModelId:R.preferredBaseModel?.modelId??null,preferredBaseModel:R.preferredBaseModel??null,candidateId:R.candidateId??null,analysisModel:R.analysisModel??null,analysisReasoningEffort:R.analysisReasoningEffort??null,createImproveRunId:R.createImproveRunId??null,targetIntent:R.targetIntent??{kind:"model",id:null,displayName:null,operation:"create"}}),createModelFromTaskset:(w,R)=>A("create-model","/models/from-taskset",{profileId:n,tasksetId:w,preferredBaseModelId:R.modelId,preferredBaseModel:R}),scanBaseModels:async()=>{if(!t)return null;h("scan-base-models");try{const w=await P();return k(null),w}catch(w){return k(ao(w)),null}finally{h(null)}},approveDisclosure:(w,R)=>A("approve-disclosure",`/task-creations/${encodeURIComponent(w)}/disclosure`,{approved:R}),retryCreation:w=>A("retry-creation",`/task-creations/${encodeURIComponent(w)}/retry`,{}),answerQuestions:(w,R)=>A("answer-questions",`/task-creations/${encodeURIComponent(w)}/questions`,{answers:R}),materialize:(w,R)=>A("materialize",`/task-creations/${encodeURIComponent(w)}/materialize`,{approved:R}),chatCreation:(w,R)=>A("task-creator-chat",`/task-creations/${encodeURIComponent(w)}/chat`,{message:R}),renameCreation:(w,R)=>A("rename-creation",`/task-creations/${encodeURIComponent(w)}/name`,{name:R},"PATCH"),cancelCreation:w=>A("cancel-creation",`/task-creations/${encodeURIComponent(w)}/cancel`,{}),runMiner:(w=[],R=[],O)=>A("run-miner","/miner/run",{profileId:n,sourceIds:w,sessionIds:R,config:O}),cancelMinerRun:w=>A("cancel-miner-run",`/miner/runs/${encodeURIComponent(w)}/cancel`,{}),configureMiner:w=>A("configure-miner","/miner/config",{profileId:n,config:w},"PUT"),patchCandidate:(w,R)=>A("candidate",`/candidates/${encodeURIComponent(w)}`,R,"PATCH"),createCandidate:(w,R,O,N)=>A("create-candidate",`/candidates/${encodeURIComponent(w)}/create`,{mode:R,analysisModel:O??null,analysisReasoningEffort:N??null}),auditGraders:w=>A("audit-graders","/audit-graders",{tasksetId:w}),executeTasksetAttempt:(w,R,O)=>A("execute-taskset-attempt",`/tasksets/${encodeURIComponent(w)}/attempts`,{taskId:R,model:O,seed:17,attempt:0,sampling:{maxOutputTokens:4096,temperature:0,topP:1}}),materializeSyntheticPreferenceCollection:w=>A("materialize-synthetic-preference-collection",`/tasksets/${encodeURIComponent(w.tasksetId)}/synthetic-preference-collection`,w),tasksetOperationalState:w=>t?ae.trainingRequest(t,`/tasksets/${encodeURIComponent(w)}/operations`,{},"GET"):Promise.resolve(null),calibrateJudges:w=>A("calibrate-judges","/calibrate-judges",{tasksetId:w}),nextPreferenceComparison:(w,R)=>A("next-preference-comparison",`/tasksets/${encodeURIComponent(w)}/preference-comparisons/next`,{reviewerKey:R}),submitPreferenceComparison:w=>A("submit-preference-comparison",`/tasksets/${encodeURIComponent(w.tasksetId)}/preference-comparisons/${encodeURIComponent(w.assignmentId)}/submit`,w),submitSyntheticFixturePreference:w=>A("submit-synthetic-fixture-preference",`/tasksets/${encodeURIComponent(w.tasksetId)}/preference-comparisons/${encodeURIComponent(w.assignmentId)}/fixture-submit`,{...w,id:crypto.randomUUID()}),listPreferenceDatasets:w=>t?ae.trainingRequest(t,`/tasksets/${encodeURIComponent(w)}/preference-datasets`,{},"GET"):Promise.resolve(null),materializePreferenceDataset:w=>A("materialize-preference-dataset",`/tasksets/${encodeURIComponent(w.tasksetId)}/preference-datasets`,{...w,id:`preference-dataset-${crypto.randomUUID()}`,revision:1}),launchRewardModelRun:w=>A("launch-reward-model-run",`/tasksets/${encodeURIComponent(w.tasksetId)}/reward-model-runs`,{...w,id:`reward-model-run-${crypto.randomUUID()}`}),learnedPreferenceRewardBinding:w=>A("learned-preference-reward-binding",`/tasksets/${encodeURIComponent(w.tasksetId)}/learned-preference-reward-binding`,w),retryRewardModelQualification:w=>A("retry-reward-model-qualification",`/reward-model-runs/${encodeURIComponent(w.runId)}/retry-qualification`,w),cancelRewardModelRun:w=>A("cancel-reward-model-run",`/reward-model-runs/${encodeURIComponent(w)}/cancel`,{}),markPreferenceComparisonUnreviewable:w=>A("mark-preference-comparison-unreviewable",`/tasksets/${encodeURIComponent(w.tasksetId)}/preference-comparisons/${encodeURIComponent(w.assignmentId)}/unreviewable`,w),preferenceCalibrationStatus:(w,R,O)=>{if(!t)return Promise.resolve(null);const N=new URLSearchParams({reviewerKey:R});return O&&N.set("comparisonReleaseId",O),ae.trainingRequest(t,`/tasksets/${encodeURIComponent(w)}/preference-comparisons/calibration/status?${N}`,{},"GET")},startPreferenceCalibrationBatch:w=>A("start-preference-calibration-batch",`/tasksets/${encodeURIComponent(w.tasksetId)}/preference-comparisons/calibration/batches`,{...w,id:crypto.randomUUID()}),syncPreferenceCalibrationBatch:w=>A("sync-preference-calibration-batch",`/tasksets/${encodeURIComponent(w.tasksetId)}/preference-comparisons/calibration/batches/${encodeURIComponent(w.jobId)}/sync`,w),reviewPreferenceComparisonWithModel:w=>A("review-preference-comparison-with-model",`/tasksets/${encodeURIComponent(w.tasksetId)}/preference-comparisons/${encodeURIComponent(w.assignmentId)}/model-review`,{...w,id:crypto.randomUUID()}),runNextPreferenceCalibrationReview:w=>A("run-next-preference-calibration-review",`/tasksets/${encodeURIComponent(w.tasksetId)}/preference-comparisons/calibration/model-reviews/next`,{...w,id:crypto.randomUUID()}),savePreferenceCalibration:w=>A("save-preference-calibration",`/tasksets/${encodeURIComponent(w.tasksetId)}/preference-comparisons/calibration/report`,{...w,id:crypto.randomUUID()}),preferenceArtifactUrl:async w=>{if(!t)return null;const R=await fetch(`${t.serverUrl}/v1/training/artifacts/${encodeURIComponent(w)}/download`,{headers:{Authorization:`Bearer ${t.token}`}});if(!R.ok)throw new Error(await R.text());return URL.createObjectURL(await R.blob())},readiness:w=>A("readiness","/readiness",{tasksetId:w}),previewExpertBootstrap:w=>A("preview-expert-bootstrap",`/tasksets/${encodeURIComponent(w)}/expert-bootstrap/preview`,{}),approveExpertBootstrap:(w,R)=>A("approve-expert-bootstrap",`/tasksets/${encodeURIComponent(w)}/expert-bootstrap/approve`,{previewHash:R}),createPlan:w=>A("create-plan","/plans",{...w,tasksetId:w.tasksetId}),buildBundle:w=>A("build-bundle","/bundles",{planId:w}),approveTraining:(w,R)=>A("approve-training","/approvals",{planId:w,bundleId:R}),launch:(w,R)=>A("launch","/launch",{planId:w,approvalId:R}),prepareTraining:w=>A("prepare-training","/prepare",w),prepareModelRun:(w,R)=>A("prepare-model-run",`/model-projects/${encodeURIComponent(w)}/training/prepare`,R),startModelRun:(w,R)=>A("start-model-run",`/model-projects/${encodeURIComponent(w)}/training/start`,R),startPreparedTraining:w=>A("start-prepared-training","/start/prepared",w),startTraining:w=>A("start-training","/start",w),cancelJob:w=>A("cancel-job",`/jobs/${encodeURIComponent(w)}/cancel`,{}),retryModelRunCollection:w=>A("retry-model-run-collection",`/model-runs/${encodeURIComponent(w)}/retry-collection`,{}),cancelModelRun:w=>A("cancel-model-run",`/model-runs/${encodeURIComponent(w)}/cancel`,{}),rejectModel:(w,R)=>A("reject-model",`/models/${encodeURIComponent(w)}/reject`,{reason:R}),bindModel:(w,R,O)=>A("bind-model",`/models/${encodeURIComponent(w)}/bind`,{profileId:n,role:R,roleTargetId:O,promotedBy:n}),rollbackModelBinding:w=>A("rollback-model-binding",`/bindings/${encodeURIComponent(w)}/rollback`,{rolledBackBy:n}),updateModelConfiguration:(w,R)=>A("update-model-configuration",`/models/${encodeURIComponent(w)}/configuration`,R,"PATCH",{silent:!0}),setModelPinned:(w,R)=>A("pin-model-version",`/models/${encodeURIComponent(w)}/pin`,{pinned:R},"PATCH"),downloadArtifact:async w=>{if(!t)return!1;h("download-artifact");try{const R=await fetch(`${t.serverUrl}/v1/training/artifacts/${encodeURIComponent(w)}/download`,{headers:{Authorization:`Bearer ${t.token}`}});if(!R.ok)throw new Error(await R.text());const O=R.headers.get("content-disposition")??"",N=/filename="([^"]+)"/.exec(O)?.[1]??"openpond-model-artifact",F=URL.createObjectURL(await R.blob()),L=document.createElement("a");return L.href=F,L.download=N,L.click(),URL.revokeObjectURL(F),!0}catch(R){return k(ao(R)),!1}finally{h(null)}},downloadModelPackage:async w=>M(`/models/${encodeURIComponent(w)}/download`,`${w}.openpond-lora.tar`),downloadBundle:async w=>M(`/bundles/${encodeURIComponent(w)}/download`,"openpond-model-improvement-bundle.json")}),[t,A,n,P]);async function M(w,R){if(!t)return!1;h("download-bundle");try{const O=await fetch(`${t.serverUrl}/v1/training${w}`,{headers:{Authorization:`Bearer ${t.token}`}});if(!O.ok)throw new Error(await O.text());const N=O.headers.get("content-disposition")??"",F=/filename="([^"]+)"/.exec(N)?.[1]??R,L=URL.createObjectURL(await O.blob()),Y=document.createElement("a");return Y.href=L,Y.download=F,Y.click(),URL.revokeObjectURL(L),!0}catch(O){return k(ao(O)),!1}finally{h(null)}}return{connection:t,payload:m,loading:u,busyAction:f,error:x??c.error?.message??null,refresh:P,actions:j}}function ao(e){return e instanceof Error?e.message:String(e)}function cre({modelId:e,taskset:t}){const n=t.metadata.toolContractHash===vd?"cross_system":t.environment.kind==="stateful_harness"&&t.environment.actionBindings?.length?"harness":null,a=n?Oee(t,n):[];return{model:{providerId:"openpond",modelId:e},tasksetId:t.id,tasksetName:t.name,taskRuntime:n,sourceProjectId:$ee(t),tasks:a,selectedTaskIndex:0,sessionId:null}}function dre(e){return{model:{providerId:"openpond",modelId:e.modelId},tasksetId:e.tasksetId,tasksetName:e.modelName,taskRuntime:null,sourceProjectId:null,tasks:[],selectedTaskIndex:0,sessionId:null}}function ks(e){return e?.tasks.length?e.tasks[bT(e,e.selectedTaskIndex)]??null:null}function gT(e,t){return{...e,selectedTaskIndex:bT(e,t)}}function Eee(e){return gT(e,e.selectedTaskIndex+1)}function jee(e,t,n){if(!e||vT(e,n))return null;const a=ks(e);return!a||t.trim()!==a.prompt.trim()?null:{...e.taskRuntime==="cross_system"?{crossSystemTaskId:a.generatedTaskId}:{trainingHarnessTaskId:a.generatedTaskId},trainingTasksetId:e.tasksetId,trainingTasksetName:e.tasksetName,source:"training_model_chat_handoff"}}function vT(e,t){return!e?.sourceProjectId||e.sourceProjectId===t?null:"This generated Taskset question is bound to its source Cross-System Operations project. Return to Models and choose Chat again to restore the correct project."}async function Mee({model:e,connection:t,loadBootstrap:n,applyBootstrap:a}){e.providerId!=="openpond"||!t||a(await n(t))}function Oee(e,t){const n=new Set;return e.tasks.flatMap(a=>{const o=t==="cross_system"?a.metadata.taskId:a.metadata.caseId,r=typeof o=="string"?o.trim():"",s=typeof a.input.prompt=="string"?a.input.prompt.trim():"";return!r||!s||n.has(r)?[]:(n.add(r),[{authoredTaskId:a.id,generatedTaskId:r,prompt:s,split:a.split}])})}function $ee(e){const t=new Set(e.sourceRefs.filter(dR).flatMap(n=>{const a=n.workspaceId?.trim();return a?[a]:[]}));return t.size===1?t.values().next().value??null:null}function bT(e,t){return e.tasks.length?Math.max(0,Math.min(Math.trunc(t),e.tasks.length-1)):0}function Nee({activeModel:e,activeProvider:t,applyBootstrapPayload:n,beginNewChat:a,composerDraftStore:o,connection:r,requestComposerFocus:s,selectedLocalProjectId:c,selectedSessionId:m,selectLocalProject:u,setDraftModel:f,setDraftProvider:h,setError:x,view:k}){const[_,P]=y.useState(null),E=y.useCallback(O=>{O.sourceProjectId?u(O.sourceProjectId):a(null)},[a,u]),A=y.useCallback(O=>{if(!_)return;const N={...gT(_,O),sessionId:_.sessionId?null:_.sessionId},F=ks(N);P(N),F&&(_.sessionId&&E(N),o.set(F.prompt),s())},[E,o,_,s]),$=y.useCallback(()=>{const O=ks(_);O&&o.getSnapshot().trim()===O.prompt.trim()&&o.set(""),P(null)},[o,_]),j=y.useCallback(O=>{const N=O.model;Mee({model:N,connection:r,loadBootstrap:ae.bootstrap,applyBootstrap:n}).then(()=>{const F={...O,selectedTaskIndex:0,sessionId:null};h(N.providerId),f(N.modelId),P(F.tasks.length?F:null),E(F);const L=ks(F);L&&o.set(L.prompt)}).catch(x)},[n,E,o,r,f,h,x]),M=y.useCallback(O=>{const N=!!(_&&_.model.providerId===t&&_.model.modelId===e);return{active:N,error:N?vT(_,c):null,metadata:N?jee(_,O,c):null}},[e,t,_,c]),w=y.useCallback(O=>{P(N=>N&&{...N,sessionId:O})},[]),R=y.useCallback(()=>{if(!_)return;const O={...Eee(_),sessionId:null},N=ks(O);P(O),N&&(E(O),o.set(N.prompt),s())},[E,o,_,s]);return y.useEffect(()=>{const O=ks(_);!O||k!=="chat"||m||o.set(N=>N.trim()?N:O.prompt)},[o,_,c,m,k]),y.useEffect(()=>{_&&m&&_.sessionId!==m&&P(null)},[_?.sessionId,m]),{advanceAfterTurn:R,begin:j,bindSession:w,dismiss:$,handoff:_,prepareTurn:M,selectTask:A}}function Dee(e){let t=null,n=!1,a=null,o=!1;async function r(){try{do{o=!1;let s;do{const c=t===null,m=t,u=await e.fetchPage({sessionId:e.sessionId,limit:500,...c?{beforeSequence:Number.MAX_SAFE_INTEGER}:{afterSequence:t}});if(n)return;if(!c&&u.hasMore&&u.nextSequence<=m)throw new Error("Chat history did not advance. Reopen the task to retry.");const f=new Set(e.store.getSessionEvents(e.sessionId).map(h=>h.id));u.events.some(h=>!f.has(h.event.id))&&e.store.mergeBootstrap(u.events.map(h=>h.event)),t=u.events.at(-1)?.sequence??m??0,e.onPage(u,c),s=!c&&u.hasMore}while(s&&!n)}while(o&&!n)}catch(s){n||e.onError(s)}}return{refresh(){return n?Promise.resolve():a?(o=!0,a):(a=r().finally(()=>{a=null}),a)},close(){n=!0}}}const gu=[],Hee=500;function Lee(e){const{approvals:t,codexHistoryEvents:n,connection:a,runtimeIndexes:o,runtimeEventStore:r,selectedSessionId:s,serverId:c,setCodexHistoryEvents:m,setCodexHistorySessions:u,setError:f}=e,[h,x]=y.useState({}),[k,_]=y.useState({}),P=y.useRef(new Set);y.useEffect(()=>{x({}),_({}),P.current.clear()},[c]);const E=y.useCallback(async()=>{if(!a||!s||P.current.has(s))return!1;const j=k[s];if(j?.hasMore===!1)return!1;if(en(s)){const R=Math.max(j?.totalMatchingEvents??0,n.length,zA),O=Math.min(ck,Math.max(vY,R*2));P.current.add(s),_(N=>({...N,[s]:{cursorSequence:null,hasMore:!0,loading:!0,totalMatchingEvents:N[s]?.totalMatchingEvents??n.length}}));try{const N=await BA(a,s,{force:!0,limit:O,tail:!1});return m(N.events),u(F=>vp(F,N.session)),_(F=>({...F,[s]:{cursorSequence:null,hasMore:N.events.length>=O&&O<ck,loading:!1,totalMatchingEvents:O}})),N.events.length>n.length}catch(N){return f(N instanceof Error?N.message:String(N)),_(F=>({...F,[s]:{cursorSequence:null,hasMore:F[s]?.hasMore??!0,loading:!1,totalMatchingEvents:F[s]?.totalMatchingEvents??n.length}})),!1}finally{P.current.delete(s)}}const M=Bs(h[s]??gu,r.getSessionEvents(s)),w=j?.cursorSequence??qee(M);if(!w)return!1;P.current.add(s),_(R=>({...R,[s]:{cursorSequence:R[s]?.cursorSequence??w,hasMore:R[s]?.hasMore??!0,loading:!0,totalMatchingEvents:R[s]?.totalMatchingEvents??null}}));try{const R=await ae.runtimeEventsPage(a,{sessionId:s,beforeSequence:w,limit:Hee}),O=R.events.map(N=>N.event);return x(N=>({...N,[s]:Bs(O,N[s]??gu)})),_(N=>({...N,[s]:{cursorSequence:R.previousSequence,hasMore:R.hasMore,loading:!1,totalMatchingEvents:R.totalMatchingEvents}})),O.length>0}catch(R){return f(R instanceof Error?R.message:String(R)),_(O=>({...O,[s]:{cursorSequence:O[s]?.cursorSequence??w,hasMore:O[s]?.hasMore??!0,loading:!1,totalMatchingEvents:O[s]?.totalMatchingEvents??null}})),!1}finally{P.current.delete(s)}},[k,n.length,a,h,r,s,m,u,f]),A=s?h[s]??gu:gu;y.useEffect(()=>{if(!a||!s||en(s))return;const j=s,M=Dee({sessionId:j,store:r,fetchPage:O=>ae.runtimeEventsPage(a,O),onPage:(O,N)=>{N&&_(F=>{const L=F[j],Y=L?.cursorSequence!=null&&L.cursorSequence<O.previousSequence;return{...F,[j]:{cursorSequence:Y?L.cursorSequence:O.previousSequence,hasMore:Y?L.hasMore:O.hasMore,loading:L?.loading??!1,totalMatchingEvents:O.totalMatchingEvents}}})},onError:O=>f(O instanceof Error?O.message:String(O))}),w=()=>{document.visibilityState==="visible"&&M.refresh()};M.refresh();const R=window.setInterval(w,1e4);return window.addEventListener("focus",w),window.addEventListener("openpond-runtime-connected",w),document.addEventListener("visibilitychange",w),()=>{M.close(),window.clearInterval(R),window.removeEventListener("focus",w),window.removeEventListener("openpond-runtime-connected",w),document.removeEventListener("visibilitychange",w)}},[a,r,s,c,f]);const $=y.useMemo(()=>en(s)?Xg(n,[]):!s||A.length===0?o:Xg(Bs(A,r.getSessionEvents(s)),t),[t,n,o,A,s]);return{chatHistoryLoadStates:k,loadMoreSelectedChatHistory:E,selectedPagedSessionEvents:A,selectedRuntimeIndexes:$}}function qee(e){let t=null;for(const n of e)n.sequence!==void 0&&(t===null||n.sequence<t)&&(t=n.sequence);return t}function Uee(e,t){const n=y.useRef(null);return y.useMemo(()=>{const a=wA(e,t,n.current);return n.current={events:e,indexes:a},a},[t,e])}function $s(e){return e&&typeof e=="object"&&!Array.isArray(e)?e:null}function Gh(e){return Array.isArray(e)?e.filter(t=>!!$s(t)):[]}function gr(e){return typeof e=="string"&&e.trim()?e.trim():null}function Uk(e){return gr(e)??$s(e)}function zee(e){if(!e)return[];const t=$s(e.sandboxActionRegistry),n=$s(e.sandboxManifest),a=new Map;for(const o of[...Gh(n?.actionCatalog),...Gh(t?.actions),...Gh(n?.actions)]){const r=gr(o.id)??gr(o.name);if(!r)continue;const s=a.get(r);a.set(r,{id:r,name:gr(o.name)??s?.name??r,label:gr(o.label)??s?.label??Bee(r),description:gr(o.description)??s?.description??null,visibility:gr(o.visibility)??s?.visibility??"default",inputSchema:Uk(o.inputSchema)??s?.inputSchema??null,outputSchema:Uk(o.outputSchema)??s?.outputSchema??null,implementation:$s(o.implementation)??s?.implementation??null,mcp:$s(o.mcp)??s?.mcp??null,invokesModel:typeof o.invokesModel=="boolean"?o.invokesModel:s?.invokesModel})}return Array.from(a.values()).filter(o=>o.visibility!=="internal"&&o.visibility!=="debug")}function Bee(e){const t=e.replace(/[._-]+/g," ").trim();return t?t.replace(/\b\w/g,n=>n.toUpperCase()):e}function yT(e){if(e.selectedCloudProject)return{id:e.selectedCloudProject.id,teamId:e.selectedCloudProject.teamId,name:e.selectedCloudProject.name,selectionKey:kt("cloud",e.selectedCloudProject.id),localProjectId:null};const t=e.selectedProject?.linkedSandboxProject??null;if(!t?.projectId||!t.teamId)return null;const n=e.cloudProjects?Ga(e.selectedProject,e.cloudProjects):null;return e.cloudProjects&&!n?null:{id:n?.id??t.projectId,teamId:n?.teamId??t.teamId,name:n?.name??t.projectName??e.selectedProject?.name??"Cloud Project",selectionKey:kt("cloud",n?.id??t.projectId),localProjectId:e.selectedProject?.id??null}}const ST="openpond-agent",xT="openpond-profile-action";function Sp(e){return e&&typeof e=="object"&&!Array.isArray(e)?e:null}function oo(e){return typeof e=="string"&&e.trim()?e.trim():null}function Fy(e){return e.displayPrompt&&/(?:^|\s)@[A-Za-z0-9_-]+/.test(e.displayPrompt)?"mention":"slash"}function Fee(e){const t=Sp(e),n=oo(t?.scope);return n!=="entire_manifest"&&n!=="start"&&n!=="action"&&n!=="service"&&n!=="schedule"?null:{scope:n,name:oo(t?.name)}}function Vee(e){const t=oo(e);return t!=="readonly"&&t!=="attempt"&&t!=="feature"&&t!=="rollout"&&t!=="replay"&&t!=="template_build"&&t!=="scheduled_run"&&t!=="patch_only"&&t!=="hotfix"&&t!=="multi_feature_batch"?null:t}function Kee(e,t=null){return{id:`agent:${e.id}`,name:e.slug||e.name,label:e.name,description:e.description||(t?`Agent for ${t}`:"OpenPond Agent"),visibility:"default",inputSchema:null,outputSchema:null,implementation:{type:ST,agentId:e.id,agentName:e.name,teamId:e.teamId,projectId:e.projectId,projectName:t,selectedEntrypoint:e.selectedEntrypoint,workflowMode:e.defaultWorkflowMode},mcp:null,invokesModel:!0}}function Wee(e){const t=Sp(e.implementation);if(t?.type!==ST)return null;const n=oo(t.agentId),a=oo(t.teamId),o=oo(t.projectId),r=Fee(t.selectedEntrypoint),s=Vee(t.workflowMode);return!n||!a||!o||!r||!s?null:{agentId:n,agentName:oo(t.agentName)??e.label??e.name??e.id,teamId:a,projectId:o,projectName:oo(t.projectName),selectedEntrypoint:r,workflowMode:s}}function Gee(e,t={}){const n=t.agentName?.trim()||null;return{...e,implementation:{...Sp(e.implementation)??{},type:xT,actionId:e.id,...n?{agentName:n}:{}},invokesModel:e.invokesModel??!0}}function Jee(e){if(!e)return[];const t=new Map(e.agents.filter(n=>n.enabled).map(n=>[n.id,n.name]));return e.actionCatalog.filter(n=>!n.agentId||t.has(n.agentId)).map(n=>Gee(n,{agentName:n.agentId?t.get(n.agentId):null}))}function ure(e){return!!(e&&Vy(e))}function mre(e){return!!(e&&Vy(e)&&e.sourceActionId==="chat")}function Vy(e){const t=Sp(e.implementation);if(t?.type!==xT)return null;const n=oo(t.actionId)??e.id;return n?{actionId:n,actionLabel:e.label??e.name??n}:null}function Zee({action:e,attachments:t=[],displayPrompt:n,prompt:a,sessionId:o}){return{action:e.actionId,input:{prompt:a,message:a,source:"openpond_app",...t.length>0?{attachments:t}:{}},metadata:{source:"openpond_app",selectedActionId:e.actionId,selectedActionLabel:e.actionLabel,selectedBy:Fy({displayPrompt:n}),...n&&n!==a?{displayPrompt:n}:{},...o?{sessionId:o}:{}}}}function Yee({action:e,attachments:t=[],displayPrompt:n,prompt:a,teamId:o}){return{teamId:o,triggerType:"manual",entrypoint:{scope:"action",name:e.id},input:{prompt:a,message:a,actionName:e.id,source:"openpond_app",...t.length>0?{attachments:t}:{}},metadata:{source:"openpond_app",selectedActionId:e.id,selectedActionLabel:e.label??e.name??e.id,selectedBy:Fy({displayPrompt:n}),...n&&n!==a?{displayPrompt:n}:{}}}}function Qee({agent:e,attachments:t=[],displayPrompt:n,prompt:a}){return{teamId:e.teamId,triggerType:"manual",entrypoint:e.selectedEntrypoint,input:{prompt:a,message:a,source:"openpond_app",...t.length>0?{attachments:t}:{}},metadata:{source:"openpond_app",selectedAgentId:e.agentId,selectedAgentName:e.agentName,selectedActionId:`agent:${e.agentId}`,selectedActionLabel:e.agentName,selectedBy:Fy({displayPrompt:n}),...n&&n!==a?{displayPrompt:n}:{}},workflowMode:e.workflowMode}}const Ns=new Map;function Ky(e,t){const n=e?.trim();return n?`${t?.trim()||"global"}|${n}`:null}function Xee(e,t){const n=Ky(e,t);if(!n)return null;const a=Ns.get(n);return a?.updatedAt?a.projects:null}function ete(e,t,n){const a=Ky(e,n);a&&Ns.set(a,{projects:t,promise:null,updatedAt:Date.now()})}function tte(e){const t=e.teamId?.trim();if(!t)return Promise.resolve([]);const n=Ky(t,e.accountKey);if(!n)return Promise.resolve([]);const a=Ns.get(n);if(!e.force){if(a?.updatedAt)return Promise.resolve(a.projects);if(a?.promise)return a.promise}const o=e.fetchProjects(t).then(r=>(ete(t,r,e.accountKey),r)).catch(r=>{const s=Ns.get(n);throw s?.promise===o&&Ns.set(n,{projects:s.projects,promise:null,updatedAt:s.updatedAt}),r});return Ns.set(n,{projects:a?.projects??[],promise:o,updatedAt:a?.updatedAt??0}),o}function Jh(e){const t=new Map;for(const n of e)n.archivedAt||n.status!=="active"||t.set(n.id,n);return[...t.values()].sort((n,a)=>n.name.localeCompare(a.name))}function nte({cloudProjectById:e,cloudProjects:t,connection:n,defaultTeamId:a,accountScopeKey:o,localProjects:r,profile:s,selectedCloudProject:c,selectedProject:m,reportError:u}){const[f,h]=y.useState(null),[x,k]=y.useState([]),[_,P]=y.useState([]),E=y.useMemo(()=>{const O=new Set;a&&O.add(a);for(const N of t)O.add(N.teamId);for(const N of r){const F=t.find(L=>L.id===N.linkedSandboxProject?.projectId&&L.teamId===N.linkedSandboxProject?.teamId);F?.teamId&&O.add(F.teamId)}return[...O].sort()},[t,a,r]),A=E.join("\0"),$=y.useMemo(()=>yT({cloudProjects:t,selectedCloudProject:c,selectedProject:m}),[t,c,m]);y.useEffect(()=>{if(!n||E.length===0){P([]);return}let O=!1;const N=E.flatMap(F=>pT(F,o)??[]);return P(Jh(N)),Promise.all(E.map(F=>Uy({teamId:F,accountKey:o,fetchAgents:async L=>(await ae.listSandboxAgents(n,{teamId:L})).agents}))).then(F=>{O||P(Jh(F.flat()))}).catch(()=>{O||P(Jh(N))}),()=>{O=!0}},[o,n,A]),y.useEffect(()=>{if(!n||!$){h(null);return}const O=Xee($.teamId,o);O&&h(O.find(F=>F.id===$.id)??null);let N=!1;return tte({teamId:$.teamId,accountKey:o,fetchProjects:async F=>(await ae.listSandboxProjects(n,{teamId:F})).projects}).then(F=>{N||h(F.find(L=>L.id===$.id)??null)}).catch(()=>{N||h(null)}),()=>{N=!0}},[o,n,$?.id,$?.teamId]),y.useEffect(()=>{if(!n||!m){k([]);return}let O=!1;return ae.localProjectActions(n,m.id).then(N=>{O||k(N.actions)}).catch(N=>{O||(k([]),u?.(`Could not load Project Actions for ${m.name}: ${N instanceof Error?N.message:String(N)}`))}),()=>{O=!0}},[n,u,m?.id,m?.name,m?.updatedAt]);const j=y.useMemo(()=>{const O=new Map;for(const N of zee(f))O.set(N.id,N);for(const N of x)O.set(N.id,N);return[...O.values()]},[x,f]),M=y.useMemo(()=>Jee(s),[s]),w=y.useMemo(()=>[..._.map(O=>Kee(O,e.get(O.projectId)?.name??null)),...M,...j],[e,M,j,_]);return{openPondActionCatalog:y.useMemo(()=>[...M,...j],[M,j]),selectedActionCatalog:w,selectedProjectActionCatalog:j}}function ate({selectedProjectId:e}){const[t,n]=y.useState(()=>new Set),a=y.useCallback(r=>{n(s=>{if(s.has(r))return s;const c=new Set(s);return c.add(r),c})},[]),o=y.useCallback(r=>{n(s=>{const c=new Set(s);return c.has(r)?c.delete(r):c.add(r),c})},[]);return y.useEffect(()=>{e&&a(e)},[a,e]),{expandedProjectIds:t,expandProject:a,toggleProjectExpanded:o,setExpandedProjectIds:n}}function ite(){const e=new Map;function t(o,r){const s=e.get(o);if(s)return s.consumers+=1,n(o,s,!0);const c=new AbortController,m={controller:c,consumers:1,settled:!1,promise:Promise.resolve().then(()=>r(c.signal)).finally(()=>{m.settled=!0,e.get(o)===m&&e.delete(o)})};return e.set(o,m),n(o,m,!1)}function n(o,r,s){let c=!1;return{key:o,promise:r.promise,shared:s,release:()=>{c||(c=!0,r.consumers=Math.max(0,r.consumers-1),r.consumers===0&&!r.settled&&r.controller.abort())}}}function a(){for(const o of e.values())o.consumers=0,o.settled||o.controller.abort()}return{request:t,cancelAll:a,inFlightCount:()=>e.size}}function Zh(e,t,n){return`workspace-status:${e.serverUrl}:${t}:${n?"ensure":"read"}`}function ote(e,t){return`workspace-diff:${e.serverUrl}:${t}`}function Yh(e){return e instanceof Error&&e.name==="AbortError"}function rte({connection:e,activeWorkspaceAppId:t,view:n,shouldLoadWorkspaceDiff:a,sidebarWorkspaceAppIds:o,setError:r}){const[s,c]=y.useState(null),[m,u]=y.useState({}),[f,h]=y.useState(null),[x,k]=y.useState(!1),[_,P]=y.useState(!1),E=y.useRef(new Set),A=y.useRef(new Set),$=y.useRef(ite()),j=t?m[t]??(s?.appId===t?s:null):null,M=f?.appId===t?f:null,w=n==="chat"||n==="labs",R=y.useCallback(F=>{E.current.add(F.appId),c(F),u(L=>({...L,[F.appId]:F}))},[]),O=y.useCallback(async(F,L=!1)=>{if(!e||!F)return c(null),null;k(!0);const Y=$.current.request(Zh(e,F,L),re=>ae.workspaceStatus(e,F,L,{signal:re}));try{const re=await Y.promise;return R(re),L&&re.error?r(`Workspace sync failed: ${re.error}`):L&&r(null),re}catch(re){return Yh(re)||(c(null),r(re instanceof Error?re.message:String(re))),null}finally{Y.release(),k(!1)}},[e,R,r]),N=y.useCallback(async(F=t,L={})=>{if(!e||!F)return h(null),null;L.silent||P(!0);const Y=$.current.request(ote(e,F),re=>ae.workspaceDiff(e,F,{signal:re}));try{const re=await Y.promise;return h(re),re}catch(re){return Yh(re)||(h(null),r(re instanceof Error?re.message:String(re))),null}finally{Y.release(),L.silent||P(!1)}},[t,e,r]);return y.useEffect(()=>{if(!e||!t||!w){c(null),h(null),k(!1);return}let F=!1;const L=$.current.request(Zh(e,t,!1),Y=>ae.workspaceStatus(e,t,!1,{signal:Y}));return k(!0),L.promise.then(Y=>{F||(R(Y),Y.initialized||h(re=>re?.appId===Y.appId?null:re))}).catch(Y=>{Yh(Y)||F||(c(null),r(Y instanceof Error?Y.message:String(Y)))}).finally(()=>{L.release(),F||k(!1)}),()=>{F=!0,L.release()}},[t,e,R,r,w]),y.useEffect(()=>{if(!e||!t||!w){h(null);return}if(!j?.initialized){j&&!j.initialized&&h(F=>F?.appId===t?null:F);return}a&&N(t)},[t,e,N,a,w,j?.dirty,j?.initialized]),y.useEffect(()=>{if(!e||o.length===0)return;const F=o.filter(re=>!E.current.has(re)&&!A.current.has(re));if(F.length===0)return;F.forEach(re=>A.current.add(re));let L=!1;const Y=F.map(re=>({appId:re,request:$.current.request(Zh(e,re,!1),ve=>ae.workspaceStatus(e,re,!1,{signal:ve}))}));return Promise.all(Y.map(({appId:re,request:ve})=>ve.promise.then(oe=>({appId:re,state:oe})).catch(()=>({appId:re,state:null})).finally(()=>{ve.release(),A.current.delete(re)}))).then(re=>{if(!L)for(const ve of re)ve.state&&R(ve.state)}),()=>{L=!0,Y.forEach(({appId:re,request:ve})=>{ve.release(),A.current.delete(re)})}},[e,R,o]),y.useEffect(()=>()=>$.current.cancelAll(),[]),{workspaceState:s,workspaceStates:m,workspaceDiff:f,workspaceBusy:x,diffBusy:_,visibleWorkspaceState:j,visibleWorkspaceDiff:M,rememberWorkspaceState:R,refreshWorkspace:O,refreshWorkspaceDiff:N,setWorkspaceBusy:k}}const ste=1,lte=15e3,cte=15e3,kT=5*6e4,dte=5e3,ute=1e4;function wT(e,t=(a,o)=>new WebSocket(a,o),n={}){const a=new mte(e,t,n.reconnectDelayMs??pte);return a.open(),{close:()=>a.close()}}class mte{constructor(t,n,a){this.input=t,this.webSocketFactory=n,this.reconnectDelayMs=a}input;webSocketFactory;reconnectDelayMs;socket=null;closed=!1;generation=0;reconnectAttempt=0;reconnectTimer=null;connectionAckTimer=null;subscriptionAckTimer=null;keepAliveTimer=null;keepAliveTimeoutMs=kT;lastKeepAliveAt=Date.now();ready=!1;subscriptionChannels=new Map;acknowledgedSubscriptions=new Set;open(){this.connect()}close(){if(this.closed)return;this.closed=!0,this.clearTimers();const t=this.socket;if(this.socket=null,!!t){if(t.readyState===ste)for(const n of this.subscriptionChannels.keys())t.send(JSON.stringify({type:"unsubscribe",id:n}));t.onclose=null,t.onerror=null,t.onmessage=null,t.onopen=null,t.close(1e3,"Client closed")}}connect(){if(this.closed)return;const t=++this.generation;this.subscriptionChannels.clear(),this.acknowledgedSubscriptions.clear(),this.ready=!1,this.clearConnectionTimers();let n;try{n=this.webSocketFactory(this.input.realtimeUrl,["aws-appsync-event-ws",`header-${fte(JSON.stringify({Authorization:this.input.authorizationToken,host:new URL(this.input.httpUrl).host}))}`])}catch(a){this.reportError(a),this.scheduleReconnect();return}this.socket=n,n.onopen=()=>{this.isCurrent(n,t)&&(n.send(JSON.stringify({type:"connection_init"})),this.connectionAckTimer=setTimeout(()=>{this.failConnection(new Error("Team chat realtime connection acknowledgement timed out."))},lte))},n.onmessage=a=>{this.isCurrent(n,t)&&this.handleMessage(n,a)},n.onerror=()=>{this.isCurrent(n,t)&&this.failConnection(new Error("Team chat realtime socket failed."),!1)},n.onclose=a=>{this.isCurrent(n,t)&&(this.socket=null,this.clearConnectionTimers(),this.closed||((a.code===4401||a.code===4403)&&this.reportError(new Error("Team chat realtime authorization expired.")),this.scheduleReconnect()))}}handleMessage(t,n){if(typeof n.data!="string")return;let a;try{const r=JSON.parse(n.data);if(!r||typeof r!="object"||Array.isArray(r))return;a=r}catch{this.reportError(new Error("Team chat realtime returned an invalid frame."));return}const o=typeof a.type=="string"?a.type:"";if(o==="connection_ack"){this.connectionAckTimer&&clearTimeout(this.connectionAckTimer),this.connectionAckTimer=null,this.keepAliveTimeoutMs=gte(a.connectionTimeoutMs),this.lastKeepAliveAt=Date.now(),this.startKeepAliveMonitor(),this.subscribe(t);return}if(o==="ka"){this.lastKeepAliveAt=Date.now();return}if(o==="subscribe_success"){const r=typeof a.id=="string"?a.id:"";if(!this.subscriptionChannels.has(r))return;this.acknowledgedSubscriptions.add(r),this.markReadyWhenSubscribed();return}if(o==="data"){if(this.lastKeepAliveAt=Date.now(),typeof a.event!="string")return;try{this.input.onEvent(JSON.parse(a.event))}catch{this.reportError(new Error("Team chat realtime returned an invalid event."))}return}if(o==="connection_error"||o==="subscribe_error"){const r=vte(a);if(this.reportError(r),o==="connection_error")this.failConnection(r,!1);else{const s=typeof a.id=="string"?a.id:"";this.subscriptionChannels.delete(s),this.acknowledgedSubscriptions.delete(s),this.markReadyWhenSubscribed()}}}subscribe(t){const n={Authorization:this.input.authorizationToken,host:new URL(this.input.httpUrl).host};for(const a of Array.from(new Set(this.input.channels))){const o=hte();this.subscriptionChannels.set(o,a),t.send(JSON.stringify({type:"subscribe",id:o,channel:a,authorization:n}))}this.subscriptionAckTimer=setTimeout(()=>{this.failConnection(new Error("Team chat realtime subscription acknowledgement timed out."))},cte)}startKeepAliveMonitor(){this.keepAliveTimer&&clearInterval(this.keepAliveTimer),this.keepAliveTimer=setInterval(()=>{Date.now()-this.lastKeepAliveAt<=this.keepAliveTimeoutMs||this.failConnection(new Error("Team chat realtime connection became stale."))},dte)}markReadyWhenSubscribed(){this.ready||this.subscriptionChannels.size===0||this.acknowledgedSubscriptions.size!==this.subscriptionChannels.size||(this.ready=!0,this.subscriptionAckTimer&&clearTimeout(this.subscriptionAckTimer),this.subscriptionAckTimer=null,this.reconnectAttempt=0,this.input.onReady?.())}failConnection(t,n=!0){if(this.closed)return;n&&this.reportError(t);const a=this.socket;if(this.clearConnectionTimers(),!a){this.scheduleReconnect();return}a.close(4e3,"Reconnect")}scheduleReconnect(){if(this.closed||this.reconnectTimer)return;const t=Math.max(0,Math.floor(this.reconnectDelayMs(this.reconnectAttempt)));this.reconnectAttempt+=1,this.reconnectTimer=setTimeout(()=>{this.reconnectTimer=null,this.connect()},t)}reportError(t){this.input.onError?.(t)}isCurrent(t,n){return!this.closed&&this.socket===t&&this.generation===n}clearConnectionTimers(){this.connectionAckTimer&&clearTimeout(this.connectionAckTimer),this.subscriptionAckTimer&&clearTimeout(this.subscriptionAckTimer),this.keepAliveTimer&&clearInterval(this.keepAliveTimer),this.connectionAckTimer=null,this.subscriptionAckTimer=null,this.keepAliveTimer=null}clearTimers(){this.clearConnectionTimers(),this.reconnectTimer&&clearTimeout(this.reconnectTimer),this.reconnectTimer=null}}function pte(e){const t=Math.min(ute,500*2**Math.min(e,5));return Math.max(100,Math.floor(Math.random()*t))}function fte(e){const t=new TextEncoder().encode(e);let n="";for(const a of t)n+=String.fromCharCode(a);return btoa(n).replaceAll("+","-").replaceAll("/","_").replace(/=+$/,"")}function hte(){return globalThis.crypto?.randomUUID?.()??`${Date.now()}-${Math.random().toString(36).slice(2)}`}function gte(e){return typeof e=="number"&&Number.isFinite(e)&&e>0?e:kT}function vte(e){const n=(Array.isArray(e.errors)?e.errors:[])[0];if(n&&typeof n=="object"){const a=n,o=typeof a.errorType=="string"?a.errorType:"RealtimeError",r=typeof a.message=="string"?a.message:"Request failed";return new Error(`${o}: ${r}`)}return new Error("Team chat realtime request failed.")}function bte(e,t,n){const a=[`/team-chat/users/${e.session.userId}/${e.session.teamId}`,...Array.from(new Set(e.threadIds)).map(o=>`/team-chat/threads/${o}`)];return wT({realtimeUrl:e.session.realtimeUrl,httpUrl:e.session.httpUrl,authorizationToken:e.session.token,channels:a,onEvent:o=>{const r=e_.safeParse(o);r.success&&e.onEvent(r.data)},onReady:e.onReady,onError:e.onError},t,n)}function yte(e){return e.refs.find(t=>t.refType==="message_reply")??null}function Ste(e){return{id:e.id,authorType:e.authorType,authorUserId:e.authorUserId,authorAgentId:e.authorAgentId,body:e.body,deleted:!!e.deletedAt}}function pre(e,t){const n=yte(e);if(!n)return null;const a=t.get(n.refId);return a?Ste(a):kte(n)}function xte(e){const t=e.body.slice(0,500);return{authorType:e.authorType,authorUserId:e.authorUserId,authorAgentId:e.authorAgentId,body:t,truncated:t.length<e.body.length}}function fre(e,t){return e.authorUserId?t.get(e.authorUserId)?.name??"Team member":e.authorType==="agent"||e.authorAgentId?"Agent":e.authorType==="system"?"System":"Team member"}function hre(e){return e.deleted?"Message deleted":e.body.replace(/\s+/g," ").trim()||"Attachment"}function kte(e){const t=e.preview;return{id:e.refId,authorType:wte(t.authorType),authorUserId:typeof t.authorUserId=="string"?t.authorUserId:null,authorAgentId:typeof t.authorAgentId=="string"?t.authorAgentId:null,body:typeof t.body=="string"?t.body:"",deleted:t.deleted===!0}}function wte(e){return e==="agent"||e==="system"?e:"user"}function zk(e,t,n){return n===t.conversationId?{...e,aiThread:t}:e}function Ite(e,t){return!e||e.thread.id!==t.thread.id?t:{...t,messages:Id([...e.messages,...t.messages]),hasMoreBefore:e.messages.length>t.messages.length?e.hasMoreBefore:t.hasMoreBefore}}function Qh(e,t){const n=Array.from(t.values()).filter(o=>o.threadId===e.thread.id);if(n.length===0)return e;let a=e.thread;for(const o of n)a=rl(a,o,"message.created",!0,o.authorUserId);return{...e,thread:a,messages:Id([...e.messages,...n])}}function _te(e,t){const n=new Set(e.map(o=>o.lastMessage?.clientRequestId).filter(o=>!!o)),a=new Map;for(const o of t.values()){if(o.clientRequestId&&n.has(o.clientRequestId))continue;const r=a.get(o.threadId)??[];r.push(o),a.set(o.threadId,r)}return e.map(o=>{let r=o;for(const s of a.get(o.id)??[])r=rl(r,s,"message.created",!0,s.authorUserId);return r}).sort((o,r)=>r.lastMessageAt.localeCompare(o.lastMessageAt))}function Xh(e,t,n){for(const a of e)!a.clientRequestId||a.id.startsWith("pending:")||(t.delete(a.clientRequestId),n.delete(a.clientRequestId))}function eg(e,t,n){const a=e.get(t);a&&e.set(t,{...a,metadata:{...a.metadata,deliveryStatus:n}})}function Bk(e,t,n){const a=e.get(t);a&&e.set(t,{...a,metadata:{...a.metadata,uploadProgress:n}})}function Id(e){const t=new Map,n=new Set(e.filter(a=>!a.id.startsWith("pending:")).map(a=>a.clientRequestId).filter(a=>!!a));for(const a of e)a.id.startsWith("pending:")&&a.clientRequestId&&n.has(a.clientRequestId)||t.set(a.id,a);return Array.from(t.values()).sort((a,o)=>a.sequence!==o.sequence?a.sequence-o.sequence:a.createdAt.localeCompare(o.createdAt))}function IT(e){return e.type!=="message.created"&&e.type!=="message.updated"&&e.type!=="message.deleted"?null:sb.safeParse(e.payload.message).data??null}function _T(e,t,n){const a=IT(t);if(a){const o=e.selectedThreadId===a.threadId,r=e.detail?.thread.id===a.threadId?{...e.detail,thread:rl(e.detail.thread,a,t.type,o,n),messages:Id([...e.detail.messages,a])}:e.detail,c=e.threads.some(m=>m.id===a.threadId)?e.threads.map(m=>m.id===a.threadId?rl(m,a,t.type,o,n):m).sort((m,u)=>u.lastMessageAt.localeCompare(m.lastMessageAt)):e.threads;return{...e,detail:r,threads:c,error:null}}if(t.type==="read.updated"){const o=typeof t.payload.userId=="string"?t.payload.userId:null,r=Number(t.payload.sequence);if(!o||!Number.isSafeInteger(r)||r<0)return e;const s=c=>({...c,participants:c.participants.map(m=>m.userId===o?{...m,lastReadSequence:Math.max(m.lastReadSequence,r)}:m)});return{...e,threads:e.threads.map(c=>c.id===t.threadId?s(c):c),detail:e.detail?.thread.id===t.threadId?{...e.detail,thread:s(e.detail.thread)}:e.detail}}return e}function rl(e,t,n,a,o){const r=n==="message.created",s=t.sequence>=e.lastMessageSequence;return{...e,lastMessageId:s?t.id:e.lastMessageId,lastMessageSequence:Math.max(e.lastMessageSequence,t.sequence),lastMessageAt:s?t.createdAt:e.lastMessageAt,updatedAt:s?t.createdAt:e.updatedAt,lastMessage:s?t:e.lastMessage,unreadCount:a||t.authorUserId===o?0:r?e.unreadCount+1:e.unreadCount}}function Cte(e){const t=new Date().toISOString(),n=`pending:${e.clientRequestId}`;return{id:n,threadId:e.threadId,teamId:e.teamId,clientRequestId:e.clientRequestId,authorType:"user",authorUserId:e.userId,authorAgentId:null,sequence:e.sequence,kind:"text",body:e.body,metadata:{deliveryStatus:"sending",mentionUserIds:e.mentionUserIds,localAttachmentPreviews:e.attachments.map(a=>({id:a.id,url:`data:${a.mediaType};base64,${a.contentsBase64}`}))},editedAt:null,deletedAt:null,createdAt:t,refs:e.replyToMessage?[{id:`pending-reply:${e.clientRequestId}`,messageId:n,refType:"message_reply",refId:e.replyToMessage.id,preview:xte(e.replyToMessage),createdAt:t}]:[],attachments:e.attachments.map(a=>({id:a.id,messageId:null,clientAttachmentId:a.id,kind:"image",name:a.name,mediaType:a.mediaType,sizeBytes:a.sizeBytes,status:"pending",createdAt:t,readyAt:null}))}}function Rte(e,t){const n=e.detail?.thread.id===t.threadId?{...e.detail,thread:rl(e.detail.thread,t,"message.created",!0,t.authorUserId),messages:Id([...e.detail.messages,t])}:e.detail;return{...e,detail:n,threads:e.threads.map(a=>a.id===t.threadId?rl(a,t,"message.created",!0,t.authorUserId):a).sort((a,o)=>o.lastMessageAt.localeCompare(a.lastMessageAt)),error:null}}function Fk(e,t,n){return _T(e,{teamId:t.teamId,threadId:t.threadId,type:"message.created",payload:{message:t},createdAt:t.createdAt},n)}function Pte(e,t){return cv(e,t,"failed")}function cv(e,t,n){const a=o=>o.clientRequestId===t&&o.id.startsWith("pending:")?{...o,metadata:{...o.metadata,deliveryStatus:n}}:o;return{...e,detail:e.detail?{...e.detail,thread:{...e.detail.thread,lastMessage:e.detail.thread.lastMessage?a(e.detail.thread.lastMessage):null},messages:e.detail.messages.map(a)}:null,threads:e.threads.map(o=>({...o,lastMessage:o.lastMessage?a(o.lastMessage):null}))}}function Vk(e,t,n){const a=o=>o.clientRequestId===t&&o.id.startsWith("pending:")?{...o,metadata:{...o.metadata,uploadProgress:n}}:o;return{...e,detail:e.detail?{...e.detail,thread:{...e.detail.thread,lastMessage:e.detail.thread.lastMessage?a(e.detail.thread.lastMessage):null},messages:e.detail.messages.map(a)}:null,threads:e.threads.map(o=>({...o,lastMessage:o.lastMessage?a(o.lastMessage):null}))}}function Ate(e,t){const n=e.detail?.messages.filter(r=>r.id!==t)??[],a=n.at(-1)??null,o=e.detail?{...e.detail,thread:e.detail.thread.lastMessageId===t?Kk(e.detail.thread,a):e.detail.thread,messages:n}:null;return{...e,detail:o,threads:e.threads.map(r=>r.lastMessageId===t?Kk(r,a):r)}}function Tte(e){if(e.length>xr.maxAttachments)return null;const t=[];for(const n of e){if(n.kind!=="image"||!Ete(n.mediaType)||!n.contentsBase64||n.sizeBytes<=0||n.sizeBytes>xr.maxAttachmentBytes)return null;t.push({...n,kind:"image",mediaType:n.mediaType,contentsBase64:n.contentsBase64})}return t}function Kk(e,t){return{...e,lastMessageId:t?.id??null,lastMessageSequence:t?.sequence??0,lastMessageAt:t?.createdAt??e.createdAt,updatedAt:t?.createdAt??e.createdAt,lastMessage:t}}function Ete(e){return e==="image/png"||e==="image/jpeg"||e==="image/webp"||e==="image/gif"}const jte={team_chat_team_not_found:"You no longer have access to this workspace.",workspace_membership_required:"You no longer have access to this workspace.",team_chat_billing_inactive:"Workspace chat is unavailable while its subscription is inactive. Ask the workspace owner to review billing.",workspace_billing_suspended:"Workspace billing is suspended. Ask the workspace owner to update billing.",workspace_billing_cancelled:"This workspace subscription is cancelled. Ask the workspace owner to reactivate it.",workspace_checkout_pending:"Workspace checkout is still pending. Ask the workspace owner to finish setup.",member_paid_usage_disabled:"The workspace owner has not enabled paid model usage for your account.",member_spend_cap_exceeded:"You reached your workspace member spending limit. Ask the workspace owner to adjust it.",member_opchat_quota_exceeded:"You reached your workspace member OpChat limit. Ask the workspace owner to adjust it.",member_search_quota_exceeded:"You reached your workspace member Search limit. Ask the workspace owner to adjust it.",workspace_prepaid_credit_required:"This workspace needs more prepaid credits. Ask the workspace owner to add credits.",workspace_spend_cap_exceeded:"This workspace reached its spend cap. Ask the workspace owner to review billing.",opchat_workspace_quota_exceeded:"This workspace reached its included OpChat limit for the period.",search_workspace_quota_exceeded:"This workspace reached its included Search limit for the period."};function Mte(e){const t=e instanceof Error?e.message:String(e),n=t.trim().toLowerCase();for(const[a,o]of Object.entries(jte))if(n.includes(a))return o;return n.includes("event stream ended")?"Team chat realtime disconnected. Messages will continue to refresh automatically.":oT(t)}const CT="openpond.team-chat.notification-mode";function RT(){try{return typeof window>"u"?null:Fo}catch{return null}}function Wk(e=RT()){const t=e?.getItem(CT);return t==="direct_mentions"||t==="none"?t:"all"}function Ote(e,t=RT()){try{t?.setItem(CT,e)}catch{}}function $te(e){return e.mode==="none"||!e.currentUserId||!e.thread||e.thread.mutedAt||e.message.deletedAt||e.message.authorUserId===e.currentUserId?!1:e.mode==="all"||e.thread.kind==="dm"?!0:(Array.isArray(e.message.metadata.mentionUserIds)?e.message.metadata.mentionUserIds:[]).includes(e.currentUserId)}function Nte(e){const t=e.message.authorUserId?e.members.find(s=>s.userId===e.message.authorUserId)?.name??"Team member":e.message.authorType==="agent"?"Agent":"Team",n=e.thread.title?.trim()||(e.thread.kind==="general"?"general":"conversation"),a=e.thread.kind==="dm"?t:`${t} in #${n}`,r=e.message.body.replace(/\s+/g," ").trim()||(e.message.attachments.length===1?"Sent an image":e.message.attachments.length>1?`Sent ${e.message.attachments.length} images`:"New message");return{eventId:e.eventId,threadId:e.message.threadId,title:a,body:r.length>160?`${r.slice(0,157)}…`:r}}const Gk={members:[],agents:[],threads:[],selectedThreadId:null,detail:null,aiThread:null,agentConversation:null,loading:!1,busy:!1,error:null};function vu(e,t){return e.map(n=>n.id===t&&n.unreadCount!==0?{...n,unreadCount:0}:n)}function bu(e){return!e||e.thread.unreadCount===0?e:{...e,thread:{...e.thread,unreadCount:0}}}function Dte(e){return{teamId:e.teamId,body:e.body.trim(),clientRequestId:e.clientRequestId,selectedAgentId:e.conversation.agent.id,conversationId:e.conversation.conversationId}}function Hte(e){return{teamId:e.teamId,body:e.body.trim(),clientRequestId:e.clientRequestId,selectedActionKey:e.selectedActionKey,approvalId:e.approvalId??null}}async function Jk(e,t=ae.markTeamChatRead){return e.lastMessageSequence<=0?!1:t(e.connection,e.threadId,e.teamId,e.lastMessageSequence).then(()=>!0,()=>!1)}function Lte(e){const[t,n]=y.useState(Gk),a=y.useRef(t);a.current=t;const[o,r]=y.useState(Wk);al(()=>r(Wk()));const[s,c]=y.useState(null),m=y.useRef(null),u=y.useRef(null),f=y.useRef(0),h=y.useRef(new Map),x=y.useRef(new Map),k=y.useRef(0),_=y.useRef(null),P=y.useRef(0),E=y.useRef(new Set),A=y.useRef(0),$=y.useRef(!1),j=y.useRef(new Map),M=y.useRef(new Map),[w,R]=y.useState(null),[O,N]=y.useState(null),F=y.useCallback(U=>{r(U),Ote(U)},[]),L=y.useCallback(U=>{c(J=>J?.eventId===U?null:J)},[]),Y=y.useCallback(async()=>{if(!e.connection||!e.teamId)return[];const U=await ae.teamChatThreads(e.connection,e.teamId),J=_te(U.threads,j.current);return n(q=>({...q,threads:J})),J},[e.connection,e.teamId]),re=y.useCallback(async()=>{if(!e.connection||!e.teamId)return{members:[],agents:[]};const[U,J]=await Promise.all([ae.teamChatMembers(e.connection,e.teamId),ae.teamChatAgents(e.connection,e.teamId)]);return n(q=>({...q,members:U.members,agents:J.agents})),{members:U.members,agents:J.agents}},[e.connection,e.teamId]),ve=y.useCallback(async U=>{const J=U??m.current;if(!e.connection||!e.teamId||!J)return null;const q=(x.current.get(J)??0)+1;x.current.set(J,q);const ie=await ae.teamChatThread(e.connection,e.teamId,J);Xh(ie.messages,j.current,M.current);const he=Qh(ie,j.current);return x.current.get(J)!==q||(n(Pe=>Pe.selectedThreadId===J?{...Pe,threads:vu(Pe.threads,J),detail:bu(Ite(Pe.detail,he))}:Pe),m.current===J&&he.thread.lastMessageSequence>0&&await ae.markTeamChatRead(e.connection,J,e.teamId,he.thread.lastMessageSequence).catch(()=>{})),he},[e.connection,e.teamId]),oe=y.useCallback(async U=>{const J=U??u.current;if(!e.connection||!e.teamId||!J)return null;const q=(h.current.get(J)??0)+1;h.current.set(J,q);const ie=await ae.teamChatAiThread(e.connection,e.teamId,J);return h.current.get(J)===q&&u.current===J&&n(he=>zk(he,ie,u.current)),ie},[e.connection,e.teamId]),K=y.useCallback(async U=>{const J=U??_.current;if(!e.connection||!e.teamId||!J)return null;const q=await ae.teamChatAgentConversation(e.connection,e.teamId,J);return n(ie=>ie.agentConversation?.run.id===J?{...ie,agentConversation:q}:ie),q},[e.connection,e.teamId]);y.useEffect(()=>{m.current=t.selectedThreadId},[t.selectedThreadId]),y.useEffect(()=>{_.current=t.agentConversation?.run.id??null},[t.agentConversation?.run.id]),y.useEffect(()=>{const U=t.agentConversation?.run.status;if(!U||!["pending","queued","running"].includes(U))return;const J=window.setInterval(()=>{K().catch(q=>{n(ie=>({...ie,error:In(q)}))})},2500);return()=>window.clearInterval(J)},[K,t.agentConversation?.run.status]),y.useEffect(()=>{if(!e.connection||!e.teamId||!e.currentUserId){n(Gk),R(null),N(null),M.current.clear(),j.current.clear(),x.current.clear(),h.current.clear(),k.current+=1,c(null),E.current.clear(),A.current=0,P.current=0;return}let U=!1;return u.current=null,f.current+=1,k.current+=1,R(null),N(null),M.current.clear(),j.current.clear(),E.current.clear(),A.current=0,n(J=>({...J,aiThread:null,agentConversation:null,loading:!0,error:null})),(async()=>{try{const J=await ae.teamChatEvents(e.connection,e.teamId);if(U)return;P.current=J.cursor;const q=ae.teamChatMembers(e.connection,e.teamId),ie=ae.teamChatAgents(e.connection,e.teamId),he=await ae.teamChatGeneral(e.connection,e.teamId),[Pe,qe,Je]=await Promise.all([q,ie,ae.teamChatThreads(e.connection,e.teamId)]);if(U)return;const et=m.current&&Je.threads.some(Ne=>Ne.id===m.current)?m.current:he.thread.id,ut=et===he.thread.id?he:await ae.teamChatThread(e.connection,e.teamId,et);if(U)return;const _t=bu(ut);n(Ne=>({...Ne,members:Pe.members,agents:qe.agents,threads:vu(Je.threads,et),selectedThreadId:et,detail:_t,loading:!1,error:null})),Jk({connection:e.connection,teamId:e.teamId,threadId:et,lastMessageSequence:_t?.thread.lastMessageSequence??0}),N(e.teamId)}catch(J){if(U)return;n(q=>({...q,loading:!1,error:In(J)}))}})(),()=>{U=!0}},[e.connection,e.currentUserId,e.refreshToken,e.teamId]);const H=y.useCallback(U=>{if(E.current.has(U.id))return;if(E.current.add(U.id),E.current.size>2e3){const q=E.current.values().next().value;typeof q=="number"&&E.current.delete(q)}const J=IT(U);if(J&&U.type==="message.created"){const q=a.current,ie=q.threads.find(Pe=>Pe.id===J.threadId)??(q.detail?.thread.id===J.threadId?q.detail.thread:null),he=Pe=>{U.id<=A.current||$te({mode:o,currentUserId:e.currentUserId,message:J,thread:Pe})&&(A.current=U.id,c(Nte({eventId:U.id,message:J,thread:Pe,members:q.members})))};ie?he(ie):Y().then(Pe=>{const qe=Pe.find(Je=>Je.id===J.threadId);qe&&he(qe)}).catch(()=>{})}J?.clientRequestId&&!J.id.startsWith("pending:")&&(j.current.delete(J.clientRequestId),M.current.delete(J.clientRequestId)),n(q=>_T(q,U,e.currentUserId)),U.type==="thread.created"&&Y().catch(q=>{n(ie=>({...ie,error:In(q)}))}),(U.type==="ai_thread.created"||U.type==="ai_turn.updated")&&(ve(U.threadId).catch(q=>{n(ie=>({...ie,error:In(q)}))}),U.conversationId===u.current&&oe(U.conversationId).catch(q=>{n(ie=>({...ie,error:In(q)}))})),J&&U.type==="message.created"&&m.current===J.threadId&&J.authorUserId!==e.currentUserId&&e.connection&&e.teamId&&ae.markTeamChatRead(e.connection,J.threadId,e.teamId,J.sequence).catch(()=>{})},[e.connection,e.currentUserId,e.teamId,o,oe,ve,Y]),de=y.useCallback(async()=>{if(!(!e.connection||!e.teamId||$.current)){$.current=!0;try{let U=!0;for(;U;){const J=await ae.teamChatEvents(e.connection,e.teamId,{after:P.current,limit:250});for(const q of J.events)H(q);P.current=J.cursor,U=J.hasMore}}finally{$.current=!1}}},[H,e.connection,e.teamId]);y.useEffect(()=>{if(!e.connection||!e.teamId||O!==e.teamId)return;let U=!1,J=null;const q=async()=>{try{const ie=await ae.teamChatRealtimeSession(e.connection,e.teamId);if(U||(await de(),U))return;R(ie);const he=Math.max(3e4,new Date(ie.expiresAt).getTime()-Date.now()-3e4);J=window.setTimeout(()=>{q()},he)}catch{U||(de().catch(()=>{}),J=window.setTimeout(()=>{q()},1e4))}};return q(),()=>{U=!0,J!==null&&window.clearTimeout(J),R(null)}},[de,e.connection,e.teamId,O]);const X=t.threads.map(U=>U.id).sort().join(",");y.useEffect(()=>{if(!w)return;const U=bte({session:w,threadIds:X?X.split(","):[],onEvent:H,onReady:()=>{de().catch(J=>{n(q=>({...q,error:In(J)}))})},onError:()=>{de().catch(()=>{})}});return()=>{U.close()}},[H,de,w,X]),y.useEffect(()=>{if(!e.connection||!e.teamId||O!==e.teamId)return;const U=window.setInterval(()=>{de().catch(()=>{})},15e3);return()=>window.clearInterval(U)},[de,e.connection,e.teamId,O]);const Z=y.useCallback(async U=>{if(!e.connection||!e.teamId)return;const J=k.current+1;k.current=J;const q=m.current!==U;m.current=U,q&&(f.current+=1,u.current=null),n(ie=>({...ie,threads:vu(ie.threads,U),selectedThreadId:U,detail:ie.detail?.thread.id===U?bu(ie.detail):null,aiThread:q?null:ie.aiThread,agentConversation:q?null:ie.agentConversation,loading:!0,error:null}));try{const ie=await ae.teamChatThread(e.connection,e.teamId,U);if(k.current!==J||m.current!==U)return;Xh(ie.messages,j.current,M.current);const he=Qh(ie,j.current);n(Pe=>({...Pe,threads:vu(Pe.threads,U),detail:bu(he),loading:!1})),await ae.markTeamChatRead(e.connection,U,e.teamId,he.thread.lastMessageSequence).catch(()=>{})}catch(ie){if(k.current!==J)return;n(he=>({...he,loading:!1,error:In(ie)}))}},[e.connection,e.teamId]),pe=y.useCallback(async U=>{if(!e.connection||!e.teamId)return null;const J=k.current+1;k.current=J,n(q=>({...q,busy:!0,error:null}));try{const q=await ae.teamChatDm(e.connection,e.teamId,U);if(k.current!==J)return null;Xh(q.messages,j.current,M.current);const ie=Qh(q,j.current),he=m.current!==ie.thread.id;return m.current=ie.thread.id,he&&(f.current+=1,u.current=null),n(Pe=>({...Pe,selectedThreadId:ie.thread.id,detail:ie,aiThread:he?null:Pe.aiThread,agentConversation:he?null:Pe.agentConversation,busy:!1})),await Jk({connection:e.connection,teamId:e.teamId,threadId:ie.thread.id,lastMessageSequence:ie.thread.lastMessageSequence}),await Y(),ie}catch(q){return k.current!==J||n(ie=>({...ie,busy:!1,error:In(q)})),null}},[e.connection,e.teamId,Y]),ee=y.useCallback(async()=>{const U=t.detail,J=U?.messages[0]?.sequence;if(!e.connection||!e.teamId||!U||!U.hasMoreBefore||J==null)return!1;n(q=>({...q,loading:!0,error:null}));try{const q=await ae.teamChatThread(e.connection,e.teamId,U.thread.id,{beforeSequence:J,limit:50});return n(ie=>{if(ie.detail?.thread.id!==U.thread.id)return ie;const he=[...q.messages,...ie.detail.messages];return{...ie,loading:!1,detail:{...ie.detail,messages:Id(he),hasMoreBefore:q.hasMoreBefore}}}),!0}catch(q){return n(ie=>({...ie,loading:!1,error:In(q)})),!1}},[e.connection,e.teamId,t.detail]),me=y.useCallback(async U=>{const J=m.current,q=Tte(U.attachments??[]);if(!q)return n(Pe=>({...Pe,error:"Team chat supports up to 10 PNG, JPEG, WebP, or GIF images per message."})),!1;if(!e.connection||!e.teamId||!J||!U.body.trim()&&q.length===0)return!1;if(U.replyToMessage&&(U.replyToMessage.threadId!==J||U.replyToMessage.teamId!==e.teamId||U.replyToMessage.id.startsWith("pending:")||U.replyToMessage.deletedAt))return n(Pe=>({...Pe,error:"That message is no longer available to reply to."})),!1;if(U.useModel){if(q.length>0)return n(qe=>({...qe,error:"Images can be sent to the team thread with Use model turned off."})),!1;const Pe=f.current;n(qe=>({...qe,busy:!0,error:null}));try{const qe=await ae.createTeamChatAiThread(e.connection,J,{teamId:e.teamId,body:U.body.trim(),clientRequestId:crypto.randomUUID(),providerId:U.providerId,modelId:U.modelId}),Je=f.current===Pe&&m.current===J;return Je&&(f.current+=1,u.current=qe.conversationId),n(et=>({...et,aiThread:Je?qe:et.aiThread})),qe.activeTurn&&await ae.executeTeamChatAiTurn(e.connection,qe.activeTurn.id,e.teamId),await Promise.all([ve(J),Y()]),n(et=>({...et,busy:!1})),!0}catch(qe){return n(Je=>({...Je,busy:!1,error:In(qe)})),!1}}const ie=crypto.randomUUID();if(U.selectedActionKey){if(q.length>0)return n(Pe=>({...Pe,error:"Agent invocations do not support image attachments yet."})),!1;n(Pe=>({...Pe,busy:!0,error:null}));try{return await ae.createTeamChatAgentRun(e.connection,J,Hte({teamId:e.teamId,body:U.body,clientRequestId:ie,selectedActionKey:U.selectedActionKey,approvalId:U.approvalId})),await Promise.all([ve(J),Y()]),n(Pe=>({...Pe,busy:!1})),!0}catch(Pe){return n(qe=>({...qe,busy:!1,error:In(Pe)})),!1}}M.current.set(ie,{inputs:q,uploaded:null});const he=Cte({clientRequestId:ie,threadId:J,teamId:e.teamId,userId:e.currentUserId,body:U.body.trim(),mentionUserIds:U.mentionUserIds??[],attachments:q,replyToMessage:U.replyToMessage,sequence:(t.detail?.thread.lastMessageSequence??0)+1});j.current.set(ie,he),n(Pe=>Rte(Pe,he));try{const Pe=[];for(const[et,ut]of q.entries())Pe.push(await ae.uploadTeamChatAttachment(e.connection,J,{teamId:e.teamId,attachment:ut})),Bk(j.current,ie,`${et+1} of ${q.length}`),n(_t=>Vk(_t,ie,`${et+1} of ${q.length}`));const qe=M.current.get(ie);qe&&(qe.uploaded=Pe);const Je=await ae.sendTeamChatMessage(e.connection,J,{teamId:e.teamId,body:U.body.trim(),clientRequestId:ie,mentionUserIds:U.mentionUserIds,attachmentIds:Pe.map(et=>et.id),replyToMessageId:U.replyToMessage?.id??null});return M.current.delete(ie),j.current.delete(ie),n(et=>Fk(et,Je,e.currentUserId)),!0}catch(Pe){return eg(j.current,ie,"failed"),n(qe=>({...Pte(qe,ie),error:In(Pe)})),!1}},[e.connection,e.currentUserId,e.teamId,ve,Y,t.detail?.thread.lastMessageSequence]),be=y.useCallback(async U=>{if(!(!e.connection||!e.teamId)){f.current+=1,u.current=U,n(J=>({...J,aiThread:J.aiThread?.conversationId===U?J.aiThread:null,busy:!0,error:null}));try{const J=await ae.teamChatAiThread(e.connection,e.teamId,U);if(u.current!==U)return;n(q=>({...q,aiThread:J,busy:!1}))}catch(J){if(u.current!==U)return;n(q=>({...q,busy:!1,error:In(J)}))}}},[e.connection,e.teamId]),Me=y.useCallback(async U=>{if(!(!e.connection||!e.teamId)){_.current=U,n(J=>({...J,busy:!0,error:null}));try{const J=await ae.teamChatAgentConversation(e.connection,e.teamId,U);n(q=>({...q,agentConversation:J,busy:!1}))}catch(J){n(q=>({...q,busy:!1,error:In(J)}))}}},[e.connection,e.teamId]),ke=y.useCallback(()=>{_.current=null,n(U=>({...U,agentConversation:null}))},[]),ue=y.useCallback(async U=>{const J=m.current,q=t.agentConversation;if(!e.connection||!e.teamId||!J||!q||!U.body.trim())return!1;n(ie=>({...ie,busy:!0,error:null}));try{const ie=await ae.createTeamChatAgentRun(e.connection,J,Dte({teamId:e.teamId,body:U.body,clientRequestId:U.clientRequestId,conversation:q}));_.current=ie.run.id;const[he]=await Promise.all([ae.teamChatAgentConversation(e.connection,e.teamId,ie.run.id),ve(J),Y()]);return n(Pe=>({...Pe,agentConversation:he,busy:!1})),!0}catch(ie){return n(he=>({...he,busy:!1,error:In(ie)})),!1}},[e.connection,e.teamId,ve,Y,t.agentConversation]),Ie=y.useCallback(()=>{f.current+=1,u.current=null,n(U=>({...U,aiThread:null}))},[]),Le=y.useCallback(async U=>{const J=u.current;if(!e.connection||!e.teamId||!J||!U.body.trim())return!1;n(q=>({...q,busy:!0,error:null}));try{const q=await ae.sendTeamChatAiTurn(e.connection,J,{teamId:e.teamId,body:U.body.trim(),clientRequestId:crypto.randomUUID(),providerId:U.providerId,modelId:U.modelId});return n(ie=>({...zk(ie,q,u.current),busy:!1})),q.activeTurn&&await ae.executeTeamChatAiTurn(e.connection,q.activeTurn.id,e.teamId),!0}catch(q){return n(ie=>({...ie,busy:!1,error:In(q)})),!1}},[e.connection,e.teamId]),Fe=y.useCallback(async()=>{const U=t.aiThread?.activeTurn?.id;return!e.connection||!e.teamId||!U?!1:(await ae.cancelTeamChatAiTurnExecution(e.connection,U,e.teamId)).cancelled},[e.connection,e.teamId,t.aiThread?.activeTurn?.id]),Xe=y.useCallback(async(U,J)=>{if(!e.connection||!e.teamId)return!1;try{return await ae.editTeamChatMessage(e.connection,U.threadId,U.id,{teamId:e.teamId,body:J}),await ve(U.threadId),!0}catch(q){return n(ie=>({...ie,error:In(q)})),!1}},[e.connection,e.teamId,ve]),Ze=y.useCallback(async U=>{if(!e.connection||!e.teamId)return!1;try{return await ae.deleteTeamChatMessage(e.connection,U.threadId,U.id,e.teamId),await ve(U.threadId),!0}catch(J){return n(q=>({...q,error:In(J)})),!1}},[e.connection,e.teamId,ve]),Be=y.useCallback(async U=>{if(!e.connection||!e.teamId||!U.clientRequestId||!U.id.startsWith("pending:"))return!1;const J=Array.isArray(U.metadata.mentionUserIds)?U.metadata.mentionUserIds.filter(he=>typeof he=="string"):[],q=M.current.get(U.clientRequestId),ie=U.refs.find(he=>he.refType==="message_reply");eg(j.current,U.clientRequestId,"sending"),n(he=>cv(he,U.clientRequestId,"sending"));try{let he=q?.uploaded??[];if(q&&!q.uploaded){he=[];for(const[qe,Je]of q.inputs.entries())he.push(await ae.uploadTeamChatAttachment(e.connection,U.threadId,{teamId:e.teamId,attachment:Je})),Bk(j.current,U.clientRequestId,`${qe+1} of ${q.inputs.length}`),n(et=>Vk(et,U.clientRequestId,`${qe+1} of ${q.inputs.length}`));q.uploaded=he}const Pe=await ae.sendTeamChatMessage(e.connection,U.threadId,{teamId:e.teamId,body:U.body,clientRequestId:U.clientRequestId,mentionUserIds:J,attachmentIds:he.map(qe=>qe.id),replyToMessageId:ie?.refId??null});return M.current.delete(U.clientRequestId),j.current.delete(U.clientRequestId),n(qe=>Fk(qe,Pe,e.currentUserId)),!0}catch(he){return eg(j.current,U.clientRequestId,"failed"),n(Pe=>({...cv(Pe,U.clientRequestId,"failed"),error:In(he)})),!1}},[e.connection,e.currentUserId,e.teamId]),Ge=y.useCallback(U=>{U.id.startsWith("pending:")&&(U.clientRequestId&&M.current.delete(U.clientRequestId),U.clientRequestId&&j.current.delete(U.clientRequestId),n(J=>Ate(J,U.id)))},[]),Ve=y.useCallback(async(U,J)=>{if(!e.connection||!e.teamId)return!1;try{const q=await ae.setTeamChatThreadMuted(e.connection,U,e.teamId,J),ie=he=>he.id===q.threadId?{...he,mutedAt:q.mutedAt}:he;return n(he=>({...he,threads:he.threads.map(ie),detail:he.detail?.thread.id===q.threadId?{...he.detail,thread:ie(he.detail.thread)}:he.detail,error:null})),!0}catch(q){return n(ie=>({...ie,error:In(q)})),!1}},[e.connection,e.teamId]);return{...t,currentUserId:e.currentUserId,notificationMode:o,incomingNotification:s,setNotificationMode:F,dismissIncomingNotification:L,setThreadMuted:Ve,selectThread:Z,openDm:pe,loadMoreMessages:ee,sendMessage:me,openAiThread:be,openAgentConversation:Me,closeAgentConversation:ke,sendAgentTurn:ue,closeAiThread:Ie,sendAiTurn:Le,stopAiTurn:Fe,editMessage:Xe,deleteMessage:Ze,retryMessage:Be,dismissFailedMessage:Ge,refreshDirectory:re,refresh:async()=>{await Promise.all([re(),Y(),ve(),oe(),K()])}}}function In(e){return Mte(e)}const PT="local-profile-agent";function gre(e){const t=e.profile;if(!t||t.mode!=="local")return e.hostedActions;const n=new Set(e.hostedActions.flatMap(s=>{const c=s.implementation;return c?.type!=="openpond-agent"||c.profileName!==t.activeProfile?[]:[vr(c.agentName),vr(s.name),vr(s.label)].filter(Boolean)})),a=t.hosted?.teamId===e.teamId?t.hosted.hostedSourceMaterialization:null,o=new Set(e.hostedActions.map(s=>s.implementation?.agentId).filter(s=>typeof s=="string")),r=t.agents.flatMap(s=>s.enabled?a?.agentId===s.id&&!!(a.runtimeAgentId&&o.has(a.runtimeAgentId))||n.has(vr(s.name))||n.has(vr(s.id))?[]:[zte(t,s)]:[]);return[...e.hostedActions,...r]}function vre(e){return e?.implementation?.type===PT}function bre(e){const t=e.implementation?.profileAgentId;return typeof t=="string"&&t.trim()?t.trim():null}function qte(e,t){if(!e||e.mode!=="local")return"Load a local OpenPond profile before publishing an agent to Team.";const n=e.agents.find(a=>a.id===t);return n?n.enabled?e.git?.head?e.git.dirty?`Commit your profile changes before publishing ${n.name} to Team.`:e.setupGate.blockingCount>0?`${n.name} has ${e.setupGate.blockingCount} blocking setup requirement${e.setupGate.blockingCount===1?"":"s"}. Complete setup before publishing it to Team.`:null:`Commit ${n.name} before publishing it to Team.`:`${n.name} is disabled in the active profile.`:`Profile agent not found: ${t}`}function Ute(e,t){const n=t.runtimeAgentId?.trim()??"",a=t.profileName?.trim()??"",o=vr(t.agentName);return e.find(r=>{const s=r.implementation;return s?.type!=="openpond-agent"?!1:n&&typeof s.agentId=="string"&&s.agentId===n?!0:!!(a&&s.profileName===a&&o&&[s.agentName,r.name,r.label].some(c=>vr(c)===o))})??null}function zte(e,t){return{id:`local-profile:${e.activeProfile??"default"}:${t.id}:chat`,name:t.name,label:t.name,description:Bte(e),approvalPolicy:{required:!1,risk:"write"},setupRequirements:e.setupGate.blockingRequirements,invokesModel:!0,implementation:{type:PT,profileAgentId:t.id,profileName:e.activeProfile??"default"}}}function Bte(e){return e.git?.head?e.git.dirty?"My Agent · Commit profile changes before publishing to this Team":e.setupGate.blockingCount>0?"My Agent · Complete required setup before publishing to this Team":"My Agent · Publishes to this Team on first use":"My Agent · Commit the profile before publishing to this Team"}function vr(e){return typeof e=="string"?e.trim().toLowerCase().replace(/[^a-z0-9]+/g,""):""}const Zk=5;function Fte(e){return y.useCallback(async t=>{if(!e.connection||!e.teamId)throw new Error("Connect OpenPond to a Team before publishing an agent.");const n=await ae.profileCheck(e.connection,{kind:"all"}),a=qte(n,t);if(a)throw new Error(a);const o=n?.agents.find(u=>u.id===t);if(!o)throw new Error(`Profile agent not found: ${t}`);const s=(await ae.profilePush(e.connection,{teamId:e.teamId,ensureHosted:!0,hostedSourceAgentId:t,message:null})).localProfile?.hosted?.hostedSourceMaterialization,c=s?.agentId===t?s.runtimeAgentId:null;e.applyBootstrapPayload(await ae.bootstrap(e.connection));let m=null;for(let u=0;u<Zk;u+=1){const f=await e.refreshDirectory();if(m=Ute(f.agents,{runtimeAgentId:c,profileName:n.activeProfile,agentName:o.name}),m)break;u<Zk-1&&await Vte(200*(u+1))}if(!m)throw new Error(`${o.name} was published, but the Team agent directory has not refreshed yet. Retry the mention in a moment.`);return m},[e.applyBootstrapPayload,e.connection,e.refreshDirectory,e.teamId])}function Vte(e){return new Promise(t=>{setTimeout(t,e)})}function Kte(e){y.useEffect(()=>{if(!e.notification)return;const{eventId:t,threadId:n,title:a,body:o}=e.notification;e.showToast(`${a}: ${o}`,"info",{actionLabel:"Open",onAction:()=>{e.setView("team"),e.selectThread(n)},durationMs:6500,placement:"top-right"}),e.dismiss(t)},[e.dismiss,e.notification,e.selectThread,e.setView,e.showToast])}function Wte(e){const{connection:t,refreshToken:n=null}=e,[a,o]=y.useState([]),[r,s]=y.useState(null),[c,m]=y.useState(null),[u,f]=y.useState(null),[h,x]=y.useState(!1),[k,_]=y.useState(!1),[P,E]=y.useState(!1),[A,$]=y.useState(null),[j,M]=y.useState(null),[w,R]=y.useState(null),[O,N]=y.useState(0),F=y.useRef(0),L=y.useMemo(()=>a.find(ee=>ee.id===c)??null,[a,c]),Y=y.useCallback(async()=>{if(!t)return!1;x(!0),$(null);try{const ee=await ae.communities(t);return o(ee.items),s(ee.nextCursor),m(me=>me&&ee.items.some(be=>be.id===me)?me:null),!0}catch(ee){return $(zu(ee)),!1}finally{x(!1)}},[t]),re=y.useCallback(async()=>{if(!t||!r||h)return!1;x(!0),$(null);try{const ee=await ae.communities(t,r);return o(me=>Gte(me,ee.items)),s(ee.nextCursor),!0}catch(ee){return $(zu(ee)),!1}finally{x(!1)}},[t,h,r]),ve=y.useCallback(async ee=>{if(!t)return null;const me=++F.current;_(!0),M(null);try{const be=await ae.communityPreview(t,ee.slug);return F.current===me&&f(be),be}catch(be){return F.current===me&&M(zu(be)),null}finally{F.current===me&&_(!1)}},[t]),oe=y.useCallback(ee=>{const me=a.find(be=>be.id===ee);me&&(m(me.id),f(be=>be?.id===me.id?be:null),R(null),ve(me))},[a,ve]),K=y.useCallback(()=>{F.current+=1,m(null),f(null),M(null),R(null)},[]);y.useEffect(()=>{if(!t){o([]),f(null),m(null);return}Y()},[t,Y,n]),y.useEffect(()=>{!L||u?.id===L.id||k||ve(L)},[ve,u?.id,k,L]);const H=y.useCallback(async()=>{const ee=L;await Y(),ee&&await ve(ee)},[ve,Y,L]),de=y.useCallback(async()=>{if(!t||!u?.currentRules||P)return!1;E(!0),R(null);try{return await ae.joinCommunity(t,u.id,u.currentRules.id),N(ee=>ee+1),await H(),!0}catch(ee){const me=yu(ee);return R(me),me.kind==="rules_stale"&&await H(),!1}finally{E(!1)}},[t,P,u,H]),X=y.useCallback(async()=>{if(!t||!u?.currentRules||P)return!1;E(!0),R(null);try{return await ae.acceptCommunityRules(t,u.id,u.currentRules.id),N(ee=>ee+1),await H(),!0}catch(ee){const me=yu(ee);return R(me),me.kind==="rules_stale"&&await H(),!1}finally{E(!1)}},[t,P,u,H]),Z=y.useCallback(async()=>{if(!t||!u||P)return!1;E(!0),R(null);try{return await ae.leaveCommunity(t,u.id),N(ee=>ee+1),await H(),!0}catch(ee){return R(yu(ee)),!1}finally{E(!1)}},[t,P,u,H]),pe=y.useCallback(async ee=>{if(!t||!u||P)return!1;E(!0),R(null);try{return await ae.updateCommunityNotifications(t,u.id,ee),o(me=>me.map(be=>be.id===u.id&&be.membership?{...be,membership:{...be.membership,notificationMode:ee}}:be)),f(me=>me?.id===u.id&&me.membership?{...me,membership:{...me.membership,notificationMode:ee}}:me),!0}catch(me){return R(yu(me)),!1}finally{E(!1)}},[t,P,u]);return{items:a,nextCursor:r,selectedCommunityId:c,selectedSummary:L,preview:u,discoveryLoading:h,previewLoading:k,membershipBusy:P,discoveryError:A,previewError:j,membershipError:w,membershipVersion:O,refresh:Y,loadMore:re,showDiscovery:K,selectCommunity:oe,join:de,acceptRules:X,leave:Z,updateNotifications:pe,clearMembershipError:()=>R(null)}}function Gte(e,t){const n=new Map(e.map(a=>[a.id,a]));for(const a of t)n.set(a.id,a);return[...n.values()]}function zu(e){return e instanceof Error?e.message:String(e)}function yu(e){const t=zu(e);return t.includes("community_rules_version_stale")?{kind:"rules_stale",message:"The community rules changed. Review the newest version and try again."}:t.includes("community_membership_required")?{kind:"membership_lost",message:"Your community membership is no longer active."}:t.includes("community_join_closed")||t.includes("community_invalid_request")?{kind:"join_conflict",message:"The community could not be joined in its current state."}:{kind:"unknown",message:t}}function Jte(e,t,n){return wT({realtimeUrl:e.session.realtimeUrl,httpUrl:e.session.httpUrl,authorizationToken:e.session.token,channels:[e.session.channel],onEvent:a=>{const o=c_.safeParse(a);o.success&&e.onEvent(o.data)},onReady:e.onReady,onError:e.onError},t,n)}function Zte(e){const{connection:t,preview:n,currentUserId:a,membershipVersion:o}=e,r=n?.id??null,s=n?.membership?.status==="active",c=!n?.capabilities.requiresRulesAcceptance,[m,u]=y.useState([]),[f,h]=y.useState(null),[x,k]=y.useState({}),[_,P]=y.useState([]),[E,A]=y.useState(!1),[$,j]=y.useState(!1),[M,w]=y.useState(!1),[R,O]=y.useState(!1),[N,F]=y.useState(null),[L,Y]=y.useState(null),[re,ve]=y.useState(null),[oe,K]=y.useState(null),[H,de]=y.useState(!1),[X,Z]=y.useState(null),[pe,ee]=y.useState(null),me=y.useRef(null),be=y.useRef([]),Me=y.useRef("mentions"),ke=y.useRef(0),ue=y.useRef({}),Ie=y.useRef(new Set),Le=y.useMemo(()=>m.find(Ne=>Ne.id===f)??null,[m,f]),Fe=f?x[f]??null:null;y.useEffect(()=>{me.current=f},[f]),y.useEffect(()=>{be.current=m},[m]),y.useEffect(()=>{Me.current=n?.membership?.notificationMode??"mentions"},[n?.membership?.notificationMode]);const Xe=y.useCallback(async()=>{if(!t||!r)return!1;A(!0),F(null);try{const Ne=await ae.communityChannels(t,r);return u(Ne.channels),h(Ye=>Ye&&Ne.channels.some(g=>g.id===Ye)?Ye:Ne.channels.find(g=>g.isDefault)?.id??Ne.channels[0]?.id??null),de(!1),!0}catch(Ne){const Ye=Ra(Ne);return F(Ye),Zl(Ye)&&de(!0),!1}finally{A(!1)}},[r,t]),Ze=y.useCallback(async Ne=>{if(!t||!r)return!1;const Ye=++ke.current;j(!0),Y(null);try{const g=await ae.communityMessages(t,r,Ne,{limit:50});return Ye!==ke.current?!1:(k(B=>({...B,[Ne]:{items:g.messages,hasMoreBefore:g.hasMoreBefore,preview:g.preview}})),de(!1),!0)}catch(g){if(Ye!==ke.current)return!1;const B=Ra(g);return Y(B),Zl(B)&&de(!0),!1}finally{Ye===ke.current&&j(!1)}},[r,t]);y.useEffect(()=>{u(n?.channels??[]),k({}),h(n?.channels.find(Ne=>Ne.isDefault)?.id??n?.channels[0]?.id??null),F(null),Y(null),ve(null),de(!1),Ie.current.clear(),r&&Xe()},[r,Xe,o]),y.useEffect(()=>{f&&Ze(f)},[Ze,f]);const Be=y.useCallback(async(Ne,Ye)=>{if(!t||!r||!s||!c||Ye<=0)return!1;if((ue.current[Ne]??0)>=Ye)return!0;ue.current[Ne]=Ye;try{const g=await ae.markCommunityRead(t,r,Ne,Ye);return u(B=>B.map(ne=>ne.id===Ne?{...ne,unreadCount:0,readState:ne.readState?{...ne.readState,lastReadSequence:g.sequence,lastReadAt:new Date().toISOString()}:{lastReadSequence:g.sequence,lastReadAt:new Date().toISOString(),mutedAt:null,pinnedAt:null}}:ne)),!0}catch(g){const B=Ra(g);return Zl(B)&&de(!0),!1}},[r,t,s,c]);y.useEffect(()=>{const Ne=Fe?.items.at(-1)?.sequence??0;f&&Ne>0&&Be(f,Ne)},[Be,f,Fe?.items]);const Ge=y.useCallback(Ne=>{if(Ne.communityId!==r||Ie.current.has(Ne.id))return;Ie.current.add(Ne.id);const Ye=l_.safeParse(Ne.payload.message);if(Ye.success&&Ne.type!=="read.updated"){const g=Ye.data;if(k(B=>{const ne=B[Ne.channelId];if(!ne)return B;const fe=ne.items.some(Q=>Q.id===g.id)?ne.items.map(Q=>Q.id===g.id?g:Q):[...ne.items,g].sort((Q,C)=>Q.sequence-C.sequence);return{...B,[Ne.channelId]:{...ne,items:fe}}}),u(B=>B.map(ne=>ne.id===Ne.channelId?{...ne,lastMessageSequence:Math.max(ne.lastMessageSequence,g.sequence),unreadCount:me.current===Ne.channelId||g.authorUserId===a?0:Math.max(ne.unreadCount+(Ne.type==="message.created"?1:0),0)}:ne)),Ne.type==="message.created"&&g.authorUserId!==a){const B=be.current.find(fe=>fe.id===Ne.channelId),ne=Yte(g).includes(a??""),we=Me.current;!B?.readState?.mutedAt&&(we==="all"||we==="mentions"&&ne)&&ee({communityId:Ne.communityId,channelId:Ne.channelId,message:g})}me.current===Ne.channelId&&Be(Ne.channelId,g.sequence);return}Ne.type==="read.updated"&&Ne.payload.userId===a&&Xe()},[r,a,Xe,Be]);y.useEffect(()=>{if(!t||!r||!s||!c)return;let Ne=!1,Ye=null;return ve(null),Promise.all([ae.communityRealtimeSession(t,r),ae.communityEvents(t,r)]).then(async([g,B])=>{if(Ne)return;const ne=async()=>{let fe=B.cursor;for(;;){const Q=await ae.communityEvents(t,r,{after:fe,limit:200});if(Ne)return;for(const C of Q.events)Ge(C);if(fe=Q.cursor,!Q.hasMore)return}},we=Jte({session:g,onEvent:Ge,onReady:()=>{ve(null),ne().catch(fe=>ve(Ra(fe)))},onError:fe=>ve(Ra(fe))});Ye=()=>we.close(),await ne()}).catch(g=>{if(!Ne){const B=Ra(g);ve(B),Zl(B)&&de(!0)}}),()=>{Ne=!0,Ye?.()}},[Ge,r,t,s,o,c]);const Ve=y.useCallback(async()=>{if(!t||!r||!f||M)return!1;const Ne=x[f],Ye=Ne?.items[0]?.sequence;if(!Ne?.hasMoreBefore||Ye==null)return!1;w(!0),Y(null);try{const g=await ae.communityMessages(t,r,f,{beforeSequence:Ye,limit:50});return k(B=>{const ne=B[f]??Ne,we=new Set(ne.items.map(fe=>fe.id));return{...B,[f]:{...ne,items:[...g.messages.filter(fe=>!we.has(fe.id)),...ne.items],hasMoreBefore:g.hasMoreBefore}}}),!0}catch(g){return Y(Ra(g)),!1}finally{w(!1)}},[r,t,x,M,f]),U=y.useCallback(async Ne=>{if(!t||!r||!f||R)return!1;O(!0),K(null),Z(null);try{const Ye=await Promise.all(Ne.attachments.map(B=>ae.uploadCommunityAttachment(t,r,f,B))),g=await ae.sendCommunityMessage(t,r,f,{body:Ne.body,clientRequestId:Ne.clientRequestId,mentionUserIds:Ne.mentionUserIds,attachmentIds:Ye.map(B=>B.id),replyToMessageId:Ne.replyToMessageId});return k(B=>{const ne=B[f]??{items:[],hasMoreBefore:!1,preview:!1};return ne.items.some(we=>we.id===g.id)?B:{...B,[f]:{...ne,items:[...ne.items,g]}}}),await Be(f,g.sequence),!0}catch(Ye){const g=Ra(Ye);return K(g),Z({...Ne,message:g}),Zl(g)&&de(!0),!1}finally{O(!1)}},[r,t,Be,f,R]),J=y.useCallback(Ne=>U({body:Ne.body,clientRequestId:crypto.randomUUID(),mentionUserIds:Ne.mentionUserIds??[],attachments:Ne.attachments??[],replyToMessageId:Ne.replyToMessageId??null}),[U]),q=y.useCallback(async(Ne,Ye)=>{if(!t||!r||!f)return!1;K(null);try{const g=await ae.editCommunityMessage(t,r,f,Ne,Ye);return Yk(k,f,g),!0}catch(g){return K(Ra(g)),!1}},[r,t,f]),ie=y.useCallback(async Ne=>{if(!t||!r||!f)return!1;K(null);try{const Ye=await ae.deleteCommunityMessage(t,r,f,Ne);return Yk(k,f,Ye),!0}catch(Ye){return K(Ra(Ye)),!1}},[r,t,f]),he=y.useCallback(async(Ne,Ye)=>{if(!t||!r)return!1;K(null);try{const g=await ae.setCommunityChannelMuted(t,r,Ne,Ye);return u(B=>B.map(ne=>ne.id===Ne&&ne.readState?{...ne,readState:{...ne.readState,mutedAt:g.mutedAt}}:ne)),!0}catch(g){return K(Ra(g)),!1}},[r,t]),Pe=y.useCallback(async(Ne="")=>{if(!t||!r||!s)return[];try{const Ye=await ae.searchCommunityMembers(t,r,{query:Ne,limit:50});return P(g=>Qte(g,Ye.items)),Ye.items}catch(Ye){return K(Ra(Ye)),[]}},[r,t,s]);y.useEffect(()=>{s&&c?Pe():P([])},[s,c,Pe]);const qe=y.useCallback(async Ne=>{if(!t||!r||!f)return!1;try{const Ye=await ae.communityAttachmentDownload(t,r,f,Ne);return window.open(Ye.url,"_blank","noopener,noreferrer"),!0}catch(Ye){return K(Ra(Ye)),!1}},[r,t,f]),Je=y.useCallback(()=>f?Ze(f):Promise.resolve(!1),[Ze,f]),et=y.useCallback(()=>X?U(X):Promise.resolve(!1),[X,U]),ut=y.useCallback(()=>Z(null),[]),_t=y.useCallback(()=>ee(null),[]);return{channels:m,selectedChannelId:f,selectedChannel:Le,messages:Fe?.items??[],hasMoreBefore:Fe?.hasMoreBefore??!1,previewMode:Fe?.preview??!s,members:_,channelsLoading:E,messagesLoading:$,olderMessagesLoading:M,sending:R,channelsError:N,messagesError:L,realtimeError:re,actionError:oe,lostMembership:H,failedSend:X,incomingNotification:pe,selectChannel:h,loadChannels:Xe,loadMessages:Je,loadOlder:Ve,sendMessage:J,retrySend:et,dismissFailedSend:ut,editMessage:q,deleteMessage:ie,setMuted:he,searchMembers:Pe,downloadAttachment:qe,dismissIncomingNotification:_t}}function Yk(e,t,n){e(a=>{const o=a[t];return o?{...a,[t]:{...o,items:o.items.map(r=>r.id===n.id?n:r)}}:a})}function Yte(e){const t=e.metadata.mentionUserIds;return Array.isArray(t)?t.filter(n=>typeof n=="string"):[]}function Qte(e,t){const n=new Map(e.map(a=>[a.userId,a]));for(const a of t)n.set(a.userId,a);return[...n.values()].slice(-200)}function Zl(e){return e.includes("community_membership_required")||e.includes("community_rules")}function Ra(e){return e instanceof Error?e.message:String(e)}function Xte(e){const t=Wte({connection:e.connection,refreshToken:e.refreshToken}),n=Zte({connection:e.connection,preview:t.preview,currentUserId:e.currentUserId,membershipVersion:t.membershipVersion}),a=n.incomingNotification,o=t.items,r=n.channels,s=t.selectCommunity,c=n.selectChannel,m=n.dismissIncomingNotification,{setView:u,showToast:f}=e,h=y.useCallback(()=>{t.showDiscovery(),u("community")},[t.showDiscovery,u]),x=y.useCallback(_=>{t.selectCommunity(_),u("community")},[t.selectCommunity,u]),k=y.useCallback(_=>{n.selectChannel(_),u("community")},[n.selectChannel,u]);return y.useEffect(()=>{if(!a)return;const _=o.find(E=>E.id===a.communityId),P=r.find(E=>E.id===a.channelId);f(`${_?.displayName??"Community"} · #${P?.displayName??"channel"}: ${a.message.body.slice(0,120)||"New message"}`,"info",{actionLabel:"View",onAction:()=>{s(a.communityId),c(a.channelId),u("community")},placement:"top-right"}),m()},[r,o,m,a,c,s,u,f]),{communities:t,chat:n,sidebar:{communityItems:t.items,communityChannels:n.channels,communityLoading:t.discoveryLoading,communityError:t.discoveryError,selectedCommunityId:t.selectedCommunityId,selectedCommunityChannelId:n.selectedChannelId,discoverCommunities:h,selectCommunity:x,selectCommunityChannel:k},view:{communities:t,chat:n,currentUserId:e.currentUserId}}}const ene=[];function tne(e){const t=y.useCallback(a=>PZ(e,a),[e]),n=y.useCallback(()=>CZ(e)??ene,[e]);return y.useSyncExternalStore(t,n,n)}function nne(e){const[t,n]=y.useState(()=>ch());return y.useEffect(()=>{let a=!0;return e?(ae.connectedAppStatus(e,{status:"all"}).then(o=>{a&&n(o.apps)}).catch(o=>{console.warn("Unable to load connected app mention status.",o),a&&n(ch())}),()=>{a=!1}):(n(ch()),()=>{a=!1})},[e]),t}function ane(){const{composerDraftStore:e,dispatch:t,setters:n,state:a}=yee(),[o,r]=y.useState(null),[s,c]=y.useState([]),[m,u]=y.useState(null),[f,h]=y.useState(null),[x,k]=y.useState([]),[_,P]=y.useState(null),[E,A]=y.useState(null),[$,j]=y.useState(MA),[M,w]=y.useState({}),[R,O]=y.useState(()=>new Set),N=y.useCallback((at,dn)=>{O(Jt=>{if(Jt.has(at)===dn)return Jt;const Yt=new Set(Jt);return dn?Yt.add(at):Yt.delete(at),Yt})},[]),[F,L]=y.useState(0),[Y,re]=y.useState(null),ve=y.useRef(null),{confirmProjectAction:oe,projectConfirmDialog:K,resolveProjectConfirmDialog:H}=bJ(),{query:de,searchOpen:X,archivedChatsOpen:Z,sectionMenuOpen:pe,projectsExpanded:ee,cloudProjectsExpanded:me,chatRowsVisibleCount:be,sidebarOpen:Me,view:ke,selectedAppId:ue,selectedProjectId:Ie,selectedSessionId:Le,draftProvider:Fe,draftModel:Xe,draftExperience:Ze,codexPermissionMode:Be,codexReasoningEffort:Ge,openPondCommandAccessMode:Ve,busy:U,diffPanelOpen:J,diffPanelExpanded:q,rightPanelMode:ie,rightChatPanels:he,terminalOpen:Pe,settingsSection:qe,newProjectDialogOpen:Je,newProjectMode:et,newProjectName:ut,newProjectPath:_t,newProjectBusy:Ne,commitDialogOpen:Ye,commitMessage:g,commitIncludeUnstaged:B,commitNextStep:ne,commitDraft:we,branchDialogOpen:fe,branchDialogName:Q,toast:C,error:G}=a,se=Iee(ke==="labs"),{setQuery:te,setSearchOpen:ge,setArchivedChatsOpen:Se,setSectionMenuOpen:xe,setProjectsExpanded:Oe,setCloudProjectsExpanded:Te,setChatRowsVisibleCount:Ue,setSidebarOpen:Ee,setView:tt,setSelectedAppId:ht,setSelectedProjectId:xn,setSelectedSessionId:xt,setPrompt:Xn,setDraftProvider:kn,setDraftModel:Rn,setDraftExperience:Zt,setCodexPermissionMode:On,setCodexReasoningEffort:Pn,setOpenPondCommandAccessMode:$n,setDiffPanelOpen:Un,setDiffPanelExpanded:Gt,setRightPanelMode:Ct,setRightChatPanels:Nn,setTerminalOpen:pt,setSyncingWorkspaceAppId:Nt,setSettingsSection:ea,setNewProjectDialogOpen:$t,setNewProjectMode:zn,setNewProjectName:xa,setNewProjectPath:lt,setNewProjectBusy:Dn,setCommitDialogOpen:gi,setCommitMessage:ka,setCommitIncludeUnstaged:Gn,setCommitNextStep:Hn,setCommitDraft:Vi,setBranchDialogOpen:Ki,setBranchDialogName:ei,setError:wt}=n,{connectionRef:pn,setError:it,showToast:Et}=dee({appDispatch:t,error:G,setErrorState:wt}),{appPreferences:ln,applyBootstrapPayload:Ln,bootstrap:mt,codexHistorySessions:V,connection:Ae,events:De,runtimeEventStore:rt,approvals:Vt,sessions:ca,startup:vi,setAppPreferences:wn,setBootstrap:Wi,setCodexHistorySessions:Jn,setEvents:Ma,setSessions:da}=see({selectedSessionId:Le,setDraftModel:Rn,setDraftProvider:kn,setCodexPermissionMode:On,setCodexReasoningEffort:Pn,setOpenPondCommandAccessMode:$n,setError:it,setSelectedAppId:ht,setSelectedProjectId:xn,setSelectedSessionId:xt});pn.current=Ae,y.useEffect(()=>{mt&&k(mt.sidebarFileBookmarks??[])},[mt?.sidebarFileBookmarks]);const xo=y.useMemo(()=>[...De].reverse().find(at=>at.name==="tool.completed"&&at.action==="manage_sidebar_file")??null,[De]),ir=y.useRef(null);y.useEffect(()=>{!Ae||!xo||ir.current===xo.id||(ir.current=xo.id,ae.sidebarFiles(Ae).then(at=>k(at.items)).catch(at=>it(at instanceof Error?at.message:String(at))))},[Ae,xo,it]);const ko=y.useCallback(async(at,dn)=>{if(!Ae)return;const Jt=x;k(Yt=>dn==="none"?Yt.filter(Ca=>Ca.id!==at.id):Yt.some(Ca=>Ca.id===at.id)?Yt.map(Ca=>Ca.id===at.id?{...Ca,status:dn}:Ca):[...Yt,{...at,status:dn}]);try{const Yt=await ae.patchSidebarFile(Ae,{workspaceKind:at.workspaceKind,workspaceId:at.workspaceId,workspaceName:at.workspaceName,path:at.path,status:dn,sourceSessionId:at.sourceSessionId});k(Yt.items)}catch(Yt){k(Jt),it(Yt instanceof Error?Yt.message:String(Yt))}},[Ae,it,x]),wo=nne(Ae),It=Tee({connection:Ae,profileId:mt?.profile?.activeProfile??"default"}),{pinnedCollapsed:bl,projectsCollapsed:or,cloudProjectsCollapsed:yl,chatsCollapsed:zr,savedForLaterCollapsed:Sl,sidebarWidth:Gi,sidebarResizing:xl,diffPanelWidth:Br,diffPanelResizing:Fr,togglePinnedCollapsed:Vr,toggleProjectsCollapsed:kl,toggleCloudProjectsCollapsed:wl,toggleChatsCollapsed:bi,toggleSavedForLaterCollapsed:Il,startSidebarResize:Kr,startDiffPanelResize:Wr}=kee({connection:Ae,preferences:mt?.preferences,sidebarOpen:Me,diffPanelExpanded:q,setBootstrap:Wi,setError:it}),{cloudProjectById:Io,linkedProjectByAppId:Gr,localProjectById:wa,mentionableSandboxApps:_l,selectedApp:rr,selectedCloudProject:Ji,selectedProject:ua,selectedProjectLinkedApp:Cl,selectedProjectLinkedOpenPondApp:Rl,selectedSession:An,selectedSessionLinkedProject:_o,sidebarSessions:Oa}=VZ({bootstrap:mt,codexHistorySessions:V,selectedAppId:ue,selectedProjectId:Ie,selectedSessionId:Le,sessions:ca}),ti=An?.experience??Ze;y.useEffect(()=>{bZ(ti)},[ti]);const sr=y.useMemo(()=>X8(Oa,ti),[ti,Oa]),Co=Uee(De,Vt),{chatMentionApps:Pl,connectedAppMentions:Jr,pendingApproval:lr}=dY({bootstrap:mt,connectedAppRows:wo,mentionableSandboxApps:_l,runtimeIndexes:Co,selectedApp:rr,selectedCloudProject:Ji,selectedProject:ua,selectedSession:An,selectedSessionId:Le}),{codexHistoryEvents:Zi,setCodexHistoryEvents:Ro}=AY({connection:Ae,selectedSessionId:Le,selectedSessionLocallyActive:!!(Le&&R.has(Le)),selectedSessionStatus:An?.status,setCodexHistorySessions:Jn,setError:it}),{account:Po,accountPending:Zr,accountSignedOut:Yr,activeModel:$a,activeProvider:Na,activeWorkspaceAppId:Qr,activeWorkspaceId:cr,activeWorkspaceKind:yi,activeWorkspaceLocation:dr,appDefaults:Yi,cloudLinked:Xr,selectedCodexHistoryPending:es,selectedSessionProjectId:ts,startMessage:Al,workspaceName:ns}=qZ({bootstrap:mt,draftModel:Xe,draftProvider:Fe,selectedApp:rr,selectedAppId:ue,selectedCloudProject:Ji,selectedProject:ua,selectedSession:An,selectedSessionId:Le,selectedSessionLinkedProject:_o}),as=y.useMemo(()=>EZ(mt?.account??null),[mt?.account]),Tl=y.useMemo(()=>ev(mt?.account??null),[mt?.account]),Ao=tne(Tl),is=y.useMemo(()=>OZ(Ao,Yi.defaultTeamId),[Yi.defaultTeamId,Ao]),ur=is?.teamId??null,Si=Lte({connection:Ae,teamId:ur,currentUserId:Po?.profile?.id??null,refreshToken:mt?.accountMeta.asOf??null}),El=Fte({connection:Ae,teamId:ur,applyBootstrapPayload:Ln,refreshDirectory:Si.refreshDirectory});Kte({notification:Si.incomingNotification,dismiss:Si.dismissIncomingNotification,selectThread:Si.selectThread,setView:tt,showToast:Et});const{communities:jl,sidebar:Ml,view:Ol}=Xte({connection:Ae,currentUserId:Po?.profile?.id??null,refreshToken:mt?.accountMeta.asOf??null,setView:tt,showToast:Et}),xi=Si.aiThread?.conversationId??null,os=ke==="team"&&!!xi&&J&&ie==="chat";y.useEffect(()=>{if(ke==="team"){if(xi){Ct("chat"),Un(!0);return}ie==="chat"&&Un(!1)}},[ie,Un,Ct,xi,ke]);const $l=y.useCallback(()=>{if(xi){if(os){Un(!1);return}Ct("chat"),Un(!0)}},[Un,Ct,os,xi]),Nl=y.useMemo(()=>Ga(ua,mt?.cloudProjects??[]),[mt?.cloudProjects,ua]),Dl=An?.provider==="codex"?Ve:An?.openPondCommandAccessMode??Ve,Ia=Qr,rs=cr,Hl=yi,gt=ns,{openPondActionCatalog:cn,selectedActionCatalog:ma}=nte({cloudProjectById:Io,cloudProjects:mt?.cloudProjects??[],connection:Ae,defaultTeamId:Yi.defaultTeamId,accountScopeKey:as,localProjects:mt?.localProjects??[],profile:mt?.profile,selectedCloudProject:Ji,selectedProject:ua,reportError:it}),{expandedProjectIds:vn,expandProject:Bn,toggleProjectExpanded:_a,setExpandedProjectIds:wp}=ate({selectedProjectId:Ie});QZ({activeWorkspaceId:cr,activeWorkspaceKind:yi,appDispatch:t,connection:Ae,expandProject:Bn,linkedProjectByAppId:Gr,providerSettings:mt?.providers??null,selectedAppId:ue,selectedSession:An,selectedSessionId:Le,selectedSessionProjectId:ts,setDiffPanelExpanded:Gt,setDraftModel:Rn,setDraftProvider:kn,setError:it,setSelectedAppId:ht,setSelectedProjectId:xn,setSessions:da,setTerminalOpen:pt,toast:C});const{changeCodexPermissionMode:Ip,changeCodexReasoningEffort:_p}=uY({connection:Ae,setBootstrap:Wi,setCodexPermissionMode:On,setCodexReasoningEffort:Pn,setError:it}),{changeOpenPondCommandAccessMode:_d}=vX({connection:Ae,selectedSession:An,setBootstrap:Wi,setError:it,setOpenPondCommandAccessMode:$n,setSessions:da}),Cp=XZ({connection:Ae,setError:it}),mr=y.useCallback(()=>{L(at=>at+1)},[]),Cd=tY({appDispatch:t,expandProject:Bn,linkedProjectByAppId:Gr,requestComposerFocus:mr,onBeginNewChat:()=>{Ft({kind:"chat",sessionId:null}),re(null),Zt(at=>at==="development"?"work":at)},setMentionedAppId:h}),ss=y.useCallback(at=>{const dn=kt("local",at);t({type:"selectProject",projectId:dn}),Bn(dn)},[t,Bn]),{advanceAfterTurn:Rp,begin:Pp,bindSession:Ap,dismiss:Tp,handoff:Ep,prepareTurn:jp,selectTask:Mp}=Nee({activeModel:$a,activeProvider:Na,applyBootstrapPayload:Ln,beginNewChat:Cd,composerDraftStore:e,connection:Ae,requestComposerFocus:mr,selectedLocalProjectId:ua?.id??null,selectedSessionId:Le,selectLocalProject:ss,setDraftModel:Rn,setDraftProvider:kn,setError:it,view:ke});xee({connection:Ae,events:De,showToast:Et}),_X({searchOpen:X,sectionMenuOpen:pe,setSectionMenuOpen:xe,setSearchOpen:ge,setQuery:te}),y.useEffect(()=>{w({})},[mt?.server.id]);const{chatHistoryLoadStates:Op,loadMoreSelectedChatHistory:$p,selectedPagedSessionEvents:Np,selectedRuntimeIndexes:Rd}=Lee({approvals:Vt,codexHistoryEvents:Zi,connection:Ae,runtimeIndexes:Co,runtimeEventStore:rt,selectedSessionId:Le,serverId:mt?.server.id,setCodexHistoryEvents:Ro,setCodexHistorySessions:Jn,setError:it}),{activeSessions:Dp,archivedSessions:Hp,pinnedProjects:Lp,pinnedSessions:Ll,savedForLaterSessions:Pd,pinnedFiles:qp,savedForLaterFiles:Up,pinnedItems:Ad,projectRows:Td,localProjectRows:zp,visibleProjectRows:ls,cloudProjectRows:Bp,projectSessionRowsByProjectId:Ed,childSessionRowsByParentId:Fp,sidebarProjectIdBySessionId:ql,chatRows:jd,visibleChatRows:Md,sessionEvents:Vp,chatMessages:Od,contextUsage:Kp,goalRuntime:Wp,subagentRuntime:$d}=bX({localProjects:mt?.localProjects??[],cloudProjects:mt?.cloudProjects??[],sessions:sr,runtimeIndexes:Rd,appPreferences:ln,selectedSessionId:Le,selectedProjectId:Ie,archivedChatsOpen:Z,projectsExpanded:ee,chatRowsVisibleCount:be,sidebarFileBookmarks:x}),Gp=y.useCallback(at=>{Zt(at);const dn=[...sr].filter(Jt=>at==="work"?Jt.experience==="work"||Jt.experience==="development":Jt.experience===at).sort((Jt,Yt)=>Yt.updatedAt.localeCompare(Jt.updatedAt))[0]??[...Oa].filter(Jt=>Jt.experience===at).sort((Jt,Yt)=>Yt.updatedAt.localeCompare(Jt.updatedAt))[0]??null;if(dn)t({type:"selectSession",sessionId:dn.id,appId:at!=="chat"?dn.appId:null,projectId:at!=="chat"?ql[dn.id]??null:null});else if(t({type:"beginNewChat",appId:null}),at==="chat"&&Na==="codex"){const Jt=Kg(mt?.providers,{enabledOnly:!0}).find(Yt=>Yt.value!=="codex")?.value??Tr;kn(Jt),Rn(gm(Jt,mt?.providers)??wc)}at==="chat"&&(pt(!1),Gt(!1),Ct("home")),tt("chat")},[t,Na,mt?.providers,sr,Gt,Zt,Rn,kn,Ct,pt,tt,ql,Oa]),Nd=y.useCallback(at=>{const dn=e.getSnapshot();if(Zt(at),(Le||ue||Ie)&&(t({type:"beginNewChat",appId:null}),dn&&e.set(dn)),at==="chat"&&Na==="codex"){const Jt=Kg(mt?.providers,{enabledOnly:!0}).find(Yt=>Yt.value!=="codex")?.value??Tr;kn(Jt),Rn(gm(Jt,mt?.providers)??wc)}at==="chat"&&(pt(!1),Gt(!1),Ct("home")),tt("chat")},[Na,t,mt?.providers,e,ue,Ie,Le,Gt,Zt,Rn,kn,Ct,pt,tt]),{pendingChatUserMessages:Jp,recordPendingChatUserMessage:Zp,visibleChatMessages:Yp}=gX({chatMessages:Od,runtimeIndexes:Rd,selectedSessionId:Le}),To=y.useMemo(()=>dG({selectedAppId:ue,selectedProjectId:Ie,selectedSessionId:Le}),[ue,Ie,Le]),Dd=y.useRef(null);y.useEffect(()=>{const at=Dd.current;Dd.current=To,!(!at||at.kind!=="draft"||To.kind!=="session")&&(Bc(at,To)||c(dn=>{const Jt=uG({tabs:dn,previousScope:at,activeScope:To});return Jt.some((Ca,Pf)=>Ca!==dn[Pf])?Jt:dn}))},[To]);const Qp=y.useMemo(()=>mG(s),[s]),{goalRuntime:Xp,runningSessionIds:Ul,selectedSessionRunning:ef,sidebarGoalRuntimeBySessionId:tf,sidebarSubagentRuntimeBySessionId:nf}=IX({codexHistoryEvents:Zi,codexHistorySessions:V,connection:Ae,expandedProjectIds:vn,goalRuntime:Wp,locallyActiveCodexHistorySessionIds:R,pinnedSessions:Ll,savedForLaterSessions:Pd,projectSessionRowsByProjectId:Ed,rightChatHistoryEvents:M,runtimeIndexes:Co,selectedSession:An,selectedSessionId:Le,serverId:mt?.server.id,setCodexHistorySessions:Jn,sidebarSessions:Oa,subagentRuntime:$d,visibleChatRows:Md,visibleProjectRows:ls}),{dragItem:af,pinnedPreviewKeys:of,startPinnedDrag:rf,clearSidebarDrag:sf,previewPinnedDrop:lf,commitPinnedDrop:cf,commitPinnedPreviewDrop:df}=TY({connection:Ae,appPreferences:ln,sessions:Oa,pinnedItems:Ad,setAppPreferences:wn,setCodexHistorySessions:Jn,setSessions:da,sidebarFileBookmarks:x,setSidebarFileBookmarks:k,setError:it}),{clearTaskDrag:uf,commitTaskDrop:Hd,commitTaskPreviewDrop:mf,previewTaskDrop:ni,startTaskDrag:cs,taskDragSessionId:pf,taskPreviewSessionIds:ff}=EY({connection:Ae,sessions:Oa,setCodexHistorySessions:Jn,setError:it,setSessions:da}),{commandProjectRows:hf,contextWindowStatus:zl,pinnedRows:gf,sidebarWorkspaceAppIds:vf}=eY({activeProvider:Na,contextCompaction:Yi.contextCompaction,contextUsage:Kp,pinnedItems:Ad,pinnedPreviewKeys:of??[],pinnedProjects:Lp,projectRows:Td,visibleProjectRows:ls}),Qi=!!(Ia&&(ke==="chat"||ke==="labs")&&(Ye||J&&(ie==="changes"||ie==="goal"))),{workspaceStates:ds,workspaceBusy:us,diffBusy:bf,visibleWorkspaceState:pr,visibleWorkspaceDiff:Bl,rememberWorkspaceState:ms,refreshWorkspace:Fl,refreshWorkspaceDiff:ki,setWorkspaceBusy:qd}=rte({connection:Ae,activeWorkspaceAppId:Ia,view:ke,shouldLoadWorkspaceDiff:Qi,sidebarWorkspaceAppIds:vf,setError:it});ve.current=ms;const yf=y.useCallback((at=Ia)=>!at||at!==Ia||!Qi?Promise.resolve(null):ki(at),[ki,Qi,Ia]),Sf=y.useCallback(async(at={})=>{!Ia||!Qi||await ki(Ia,at)},[ki,Qi,Ia]),xf=!1,kf=!!(An?.provider==="codex"&&An.cwd&&!Ui(An.workspaceKind)),wf=!!(pr&&!pr.initialized&&yi!=="local_project"&&Na!=="codex"&&!kf&&!es),If=yi==="local_project"&&!!ua?.sandboxTemplate?.detected&&!ua?.linkedOpenPondApp?.appId,[Ud,zd]=y.useState(null),[_f,Bd]=y.useState(null),{projectTarget:Cf,workspaceTarget:Rf}=UZ({accountPending:Zr,accountSignedOut:Yr,activeWorkspaceLocation:dr,bootstrap:mt,busy:U,cloudLinked:Xr,selectedCloudProject:Ji,selectedProject:ua,selectedSession:An,pendingWorkspaceTarget:Ud,workspaceStates:ds,workspaceBusy:us});return y.useEffect(()=>{zd(null)},[An?.id]),{composerDraftStore:e,appDispatch:t,pendingTerminalCommand:o,setPendingTerminalCommand:r,terminalTabs:s,setTerminalTabs:c,trainingDetailTasksetId:m,setTrainingDetailTasksetId:u,mentionedAppId:f,setMentionedAppId:h,cloudSetupDialog:_,setCloudSetupDialog:P,rightPanelTabRequest:E,setRightPanelTabRequest:A,workspaceDiffPanelViewState:$,setWorkspaceDiffPanelViewState:j,rightChatHistoryEvents:M,setRightChatHistoryEvents:w,locallyActiveCodexHistorySessionIds:R,setCodexHistoryTurnLocallyActive:N,mainComposerFocusRequestId:F,requestMainComposerFocus:mr,draftSubagentDelegationMode:Y,setDraftSubagentDelegationMode:re,confirmProjectAction:oe,projectConfirmDialog:K,resolveProjectConfirmDialog:H,query:de,searchOpen:X,archivedChatsOpen:Z,sectionMenuOpen:pe,projectsExpanded:ee,cloudProjectsExpanded:me,sidebarOpen:Me,view:ke,selectedAppId:ue,selectedProjectId:Ie,selectedSessionId:Le,draftProvider:Fe,draftModel:Xe,draftExperience:Ze,activeExperience:ti,changeExperience:Gp,changeNewExperience:Nd,codexPermissionMode:Be,codexReasoningEffort:Ge,openPondCommandAccessMode:Ve,busy:U,diffPanelOpen:J,diffPanelExpanded:q,rightPanelMode:ie,rightChatPanels:he,terminalOpen:Pe,settingsSection:qe,newProjectDialogOpen:Je,newProjectMode:et,newProjectName:ut,newProjectPath:_t,newProjectBusy:Ne,commitDialogOpen:Ye,commitMessage:g,commitIncludeUnstaged:B,commitNextStep:ne,commitDraft:we,branchDialogOpen:fe,branchDialogName:Q,toast:C,error:G,labDetailNavigation:se,setQuery:te,setSearchOpen:ge,setArchivedChatsOpen:Se,setSectionMenuOpen:xe,setProjectsExpanded:Oe,setCloudProjectsExpanded:Te,setChatRowsVisibleCount:Ue,setSidebarOpen:Ee,setView:tt,setSelectedAppId:ht,setSelectedProjectId:xn,setSelectedSessionId:xt,setPrompt:Xn,setDraftProvider:kn,setDraftModel:Rn,setDraftExperience:Zt,setDiffPanelOpen:Un,setDiffPanelExpanded:Gt,setRightPanelMode:Ct,setRightChatPanels:Nn,setTerminalOpen:pt,setSyncingWorkspaceAppId:Nt,setSettingsSection:ea,setNewProjectDialogOpen:$t,setNewProjectMode:zn,setNewProjectName:xa,setNewProjectPath:lt,setNewProjectBusy:Dn,setCommitDialogOpen:gi,setCommitMessage:ka,setCommitIncludeUnstaged:Gn,setCommitNextStep:Hn,setCommitDraft:Vi,setBranchDialogOpen:Ki,setBranchDialogName:ei,setError:it,showToast:Et,appPreferences:ln,applyBootstrapPayload:Ln,approvals:Vt,bootstrap:mt,connection:Ae,events:De,runtimeEventStore:rt,sessions:ca,startup:vi,setAppPreferences:wn,setCodexHistorySessions:Jn,setEvents:Ma,setSessions:da,training:It,pinnedCollapsed:bl,projectsCollapsed:or,cloudProjectsCollapsed:yl,chatsCollapsed:zr,savedForLaterCollapsed:Sl,sidebarWidth:Gi,sidebarResizing:xl,diffPanelWidth:Br,diffPanelResizing:Fr,togglePinnedCollapsed:Vr,toggleProjectsCollapsed:kl,toggleCloudProjectsCollapsed:wl,toggleChatsCollapsed:bi,toggleSavedForLaterCollapsed:Il,startSidebarResize:Kr,startDiffPanelResize:Wr,cloudProjectById:Io,localProjectById:wa,selectedApp:rr,selectedCloudProject:Ji,selectedProject:ua,selectedProjectLinkedApp:Cl,selectedProjectLinkedOpenPondApp:Rl,selectedSession:An,sidebarSessions:Oa,runtimeIndexes:Co,chatMentionApps:Pl,connectedAppMentions:Jr,pendingApproval:lr,codexHistoryEvents:Zi,setCodexHistoryEvents:Ro,account:Po,accountPending:Zr,accountSignedOut:Yr,activeModel:$a,activeProvider:Na,activeWorkspaceAppId:Qr,activeWorkspaceId:cr,activeWorkspaceKind:yi,activeWorkspaceLocation:dr,appDefaults:Yi,selectedSessionProjectId:ts,startMessage:Al,workspaceName:ns,accountScopeKey:as,organizations:Ao,teamChatOrganization:is,teamChatTeamId:ur,teamChat:Si,publishTeamProfileAgent:El,communities:jl,communitySidebar:Ml,communityView:Ol,teamAiThreadId:xi,toggleTeamAiSidebar:$l,selectedProjectConfirmedCloudProject:Nl,activeOpenPondCommandAccessMode:Dl,viewWorkspaceAppId:Ia,viewWorkspaceId:rs,viewWorkspaceKind:Hl,viewWorkspaceName:gt,openPondActionCatalog:cn,selectedActionCatalog:ma,expandedProjectIds:vn,expandProject:Bn,toggleProjectExpanded:_a,setExpandedProjectIds:wp,changeCodexPermissionMode:Ip,changeCodexReasoningEffort:_p,changeOpenPondCommandAccessMode:_d,resolveApproval:Cp,beginNewChat:Cd,advanceTrainingModelChatAfterTurn:Rp,beginNewChatWithTrainingModel:Pp,bindTrainingModelChatSession:Ap,dismissTrainingChatHandoff:Tp,trainingChatHandoff:Ep,prepareTrainingModelChatTurn:jp,selectTrainingChatTaskForComposer:Mp,chatHistoryLoadStates:Op,loadMoreSelectedChatHistory:$p,selectedPagedSessionEvents:Np,activeSessions:Dp,archivedSessions:Hp,pinnedSessions:Ll,savedForLaterSessions:Pd,pinnedFiles:qp,savedForLaterFiles:Up,sidebarFileBookmarks:x,setSidebarFileStatus:ko,projectRows:Td,localProjectRows:zp,visibleProjectRows:ls,cloudProjectRows:Bp,projectSessionRowsByProjectId:Ed,childSessionRowsByParentId:Fp,sidebarProjectIdBySessionId:ql,chatRows:jd,visibleChatRows:Md,chatRowsVisibleCount:be,sessionEvents:Vp,chatMessages:Od,goalRuntime:Xp,subagentRuntime:$d,pendingChatUserMessages:Jp,recordPendingChatUserMessage:Zp,visibleChatMessages:Yp,activeTerminalScope:To,terminalSummaries:Qp,runningSessionIds:Ul,selectedSessionRunning:ef,sidebarGoalRuntimeBySessionId:tf,sidebarSubagentRuntimeBySessionId:nf,taskDragSessionId:pf,taskPreviewSessionIds:ff,startTaskDrag:cs,clearTaskDrag:uf,previewTaskDrop:ni,commitTaskDrop:Hd,commitTaskPreviewDrop:mf,dragItem:af,startPinnedDrag:rf,clearSidebarDrag:sf,previewPinnedDrop:lf,commitPinnedDrop:cf,commitPinnedPreviewDrop:df,commandProjectRows:hf,contextWindowStatus:zl,pinnedRows:gf,workspaceStates:ds,workspaceBusy:us,diffBusy:bf,visibleWorkspaceState:pr,visibleWorkspaceDiff:Bl,rememberWorkspaceState:ms,refreshWorkspace:Fl,refreshWorkspaceDiff:ki,setWorkspaceBusy:qd,refreshWorkspaceDiffWhenNeeded:yf,refreshVisibleWorkspaceDiff:Sf,managedWorkspace:xf,canSyncActiveWorkspace:wf,canPublishOpenPondProject:If,pendingWorkspaceTarget:Ud,setPendingWorkspaceTarget:zd,pendingSidebarWorkspaceTarget:_f,setPendingSidebarWorkspaceTarget:Bd,projectTarget:Cf,workspaceTarget:Rf}}const ine=/^(localhost|\[::1\]|127(?:\.\d{1,3}){3})(?::\d+)?(?:[/?#].*)?$/i,one=/^[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)+(?:[:/?#].*)?$/i;function rne(e,t={}){const n=e.trim().replace(/^['"`]+|['"`]+$/g,"");if(!n||/\s/.test(n))return null;const a=n.toLowerCase();return a.startsWith("javascript:")||a.startsWith("data:")?null:/^https?:\/\//i.test(n)?Su(n,new Set(["http:","https:"])):/^file:\/\//i.test(n)?t.explicitFile?Su(n,new Set(["file:"])):null:ine.test(n)?Su(`http://${n}`,new Set(["http:"])):one.test(n)?Su(`https://${n}`,new Set(["https:"])):null}function Su(e,t){try{const n=new URL(e);return t.has(n.protocol)?n.toString():null}catch{return null}}async function sne(e){const t=rne(e.href,{explicitFile:e.explicitFile});if(!t)return!1;const n=window.openpond?.browser;return n?(e.newTab?await n.newTab({conversationId:e.conversationId,url:t,explicitFile:e.explicitFile}):await n.open({conversationId:e.conversationId,url:t,explicitFile:e.explicitFile}),!0):(window.open(t,"_blank","noopener,noreferrer"),!0)}const lne="openpond-coding-core-v1",cne="feature";function dv(e){const t=new URL("/sandboxes",Wy(e.accountBaseUrl));return t.searchParams.set("teamId",e.teamId),t.searchParams.set("create","sandbox"),t.searchParams.set("intent","cloud-coding"),t.searchParams.set("source",e.source),t.searchParams.set("projectId",e.projectId),t.searchParams.set("workflowMode",cne),t.searchParams.set("runtimeProfileId",lne),e.projectName?.trim()&&t.searchParams.set("projectName",e.projectName.trim()),e.baseBranch?.trim()&&t.searchParams.set("baseBranch",e.baseBranch.trim()),e.localProjectId?.trim()&&t.searchParams.set("localProjectId",e.localProjectId.trim()),t.toString()}function yre(e){const t=e.organizationSlug?.trim(),n=t?`/sandboxes/${encodeURIComponent(t)}/billing`:"/sandboxes/billing",a=new URL(n,Wy(e.accountBaseUrl));return!t&&e.teamId?.trim()&&a.searchParams.set("teamId",e.teamId.trim()),a.toString()}function Qk(e){const t=e.organizationSlug?.trim(),n=e.projectSlug?.trim();return!t||!n?null:new URL(`/${encodeURIComponent(t)}/${encodeURIComponent(n)}`,Wy(e.accountBaseUrl)).toString()}function Wy(e){const t=e?.trim();if(!t)return"https://openpond.ai";try{const n=new URL(t);return`${n.protocol}//${n.host}`}catch{return"https://openpond.ai"}}function dne({account:e,browserConversationId:t,cloudProjectById:n,cloudProjects:a,diffPanelOpen:o,rightPanelMode:r,selectedProjectId:s,setDiffPanelOpen:c,setNewProjectDialogOpen:m,setNewProjectMode:u,setNewProjectName:f,setRightPanelMode:h}){const x=y.useCallback(()=>{h("changes"),c(!0)},[c,h]),k=y.useCallback(()=>{if(o&&r==="changes"){c(!1);return}x()},[o,r,c,x]),_=y.useCallback(()=>{h("browser"),c(!0)},[c,h]),P=y.useCallback(()=>{h("goal"),c(!0)},[c,h]),E=y.useCallback((M,w)=>{sne({conversationId:t,href:M,explicitFile:w?.explicitFile,newTab:w?.newTab}).then(R=>{R&&_()})},[t,_]),A=y.useCallback(()=>{u("cloud"),f(""),m(!0)},[m,u,f]),$=y.useCallback(M=>{const w=n.get(M);w&&E(dv({accountBaseUrl:e?.baseUrl??e?.activeProfile?.baseUrl??null,teamId:w.teamId,projectId:w.id,projectName:w.name,baseBranch:w.defaultBranch,source:"openpond-app"}),{newTab:!0})},[e,n,E]);return{createCloudEnvironmentFromSidebar:y.useCallback(()=>{const M=s?.startsWith("cloud:")?s.slice(6):a[0]?.id??null;if(M){$(M);return}A()},[a,A,s,$]),openCloudProjectDialog:A,openUrlInBrowserPanel:E,showBrowserPanel:_,showChangesPanel:x,showGoalSidebarTab:P,toggleChangesPanel:k}}function une(e){const t=e.requestConversationId.trim();return t?t===e.currentConversationId?{reveal:!0,sessionIdToOpen:null}:new Set(e.sessionIds).has(t)?{reveal:!0,sessionIdToOpen:t}:{reveal:!1,sessionIdToOpen:null}:{reveal:!1,sessionIdToOpen:null}}function mne({browserConversationId:e,sessionIds:t,onOpenSession:n,onShowBrowserPanel:a}){y.useEffect(()=>window.openpond?.browser?.onRevealRequest?.(r=>{const s=une({currentConversationId:e,requestConversationId:r.conversationId,sessionIds:t});s.reveal&&(s.sessionIdToOpen&&n(s.sessionIdToOpen),a())}),[e,n,a,t])}const pne="chat",fne=["help me","please","can you","could you","make","create","build"],hne=new Set(["a","an","and","for","from","i","me","my","of","our","please","produce","summary","the","to","with"]);function Xk(e){const t=tg(e.label);if(t&&!uv(t))return e1(t);const n=tg(e.name);if(n&&!uv(n))return e1(n);const a=tg(e.actionId)?.replace(/\.chat$/i,"")??"";return gne(a||t||"Profile Agent")}function uv(e){return e.trim().toLowerCase()===pne}function gne(e){const t=vne(e.replace(/\.chat$/i,"").replace(/[._-]+/g," ").replace(/\s+/g," ").trim()),a=t.toLowerCase().split(/\s+/).map(o=>o.replace(/[^a-z0-9]/g,"")).filter(o=>o&&!hne.has(o)).slice(0,3);return AT(a.length?a.join(" "):t||e)}function e1(e){return AT(e).split(/\s+/).slice(0,4).join(" ")}function vne(e){let t=e.trim();for(const n of fne)if(t.toLowerCase().startsWith(`${n} `)){t=t.slice(n.length).trim();break}return t}function tg(e){return typeof e=="string"&&e.trim()?e.trim():null}function AT(e){return e.replace(/[._-]+/g," ").replace(/\s+/g," ").trim().replace(/\b[a-z0-9]/gi,t=>t.toUpperCase())}const bne="openpond-profile-action";function yne(e){return e&&typeof e=="object"&&!Array.isArray(e)?e:null}function xu(e){return typeof e=="string"&&e.trim()?e.trim():null}function Sne(e){const t=yne(e.implementation);if(t?.type!==bne)return null;const n=xu(t.actionId)??e.id;if(e.sourceActionId!=="chat"&&n!=="chat"&&!n.endsWith(".chat"))return null;const a=xu(e.label);if(a&&!uv(a))return Xk({label:a,description:e.description});const o=xu(t.agentName)??xu(e.name);return Xk({actionId:n,description:e.description,name:o})}function xne(e){const t=Sne(e);return t||e.label?.trim()||e.name?.trim()||e.id}function TT(e){const t=typeof e.implementation?.type=="string"?e.implementation.type:null;return t==="openpond-agent"?"OpenPond Agent":t==="openpond-profile-action"&&(e.sourceActionId==="chat"||e.id==="chat"||e.id.endsWith(".chat"))?"Profile agent":t==="workflow"?"Workflow-backed action":t==="agent"?"Agent-backed action":t==="remote-agent"?"Remote-agent action":t==="chat"||t==="intent-router"?"Chat action":e.id}const kne=new Set(["action","agent","chat","customer","default","filter","items","open","openpond","profile","run","summarize","track","workflow"]);function ET(e){return e&&typeof e=="object"&&!Array.isArray(e)?e:null}function sl(e){return typeof e=="string"&&e.trim()?e.trim():null}function Ds(e,t,n={}){const a=sl(t)?Qn(String(t)):"";a&&(!n.generic&&kne.has(a)||e.add(a))}function ku(e,t){const n=sl(t);if(n)for(const a of n.split(/[.:/\\\s]+/g))Ds(e,a)}function wne(e,t){const n=sl(t);if(n)for(const a of n.split(/[^A-Za-z0-9_-]+/g))a.length<4||Ds(e,a)}function jT(e){const t=new Set,n=ET(e.implementation),a=sl(n?.actionId);return Ds(t,e.id,{generic:!0}),ku(t,e.id),Ds(t,a,{generic:!0}),ku(t,a),Ds(t,e.name,{generic:!0}),ku(t,e.name),Ds(t,e.label,{generic:!0}),ku(t,e.label),wne(t,e.description),t}function Ine(e){const t=ET(e.implementation);return[e.id,e.name??"",e.label??"",e.description??"",sl(t?.actionId)??"",sl(t?.agentName)??"",TT(e),...Array.from(jT(e))].join(" ").toLowerCase()}function Sre(e,t,n=8){const a=Qn(t);return e.length===0?[]:e.filter(o=>a?Ine(o).includes(a):!0).slice(0,n)}function _ne(e){return Array.from(e.matchAll(/(?:^|\s)@([A-Za-z0-9_-]+)/g)).map(t=>Qn(t[1]??"")).filter(Boolean)}function Cne(e,t){const n=t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return e.replace(new RegExp(`(^|\\s)@${n}(?=\\s|$)`,"g"),"$1").replace(/\s+/g," ").trim()}function Rne(e,t){const n=_ne(e);if(n.length===0||t.length===0)return null;const a=new Map;for(const r of n)for(const s of t)jT(s).has(r)&&a.set(s.id,{action:s,mention:r});if(a.size!==1)return null;const o=Array.from(a.values())[0];return{action:o.action,mention:o.mention,prompt:Cne(e,o.mention)}}function xre(e){return xne(e)}function kre(e){return e.description||TT(e)}const Gy=[{id:"agent",command:"/agent",label:"Author Agent",description:"Create or improve a Profile Agent in a normal skill-backed turn.",subcommands:["create","improve","help"]},{id:"skill",command:"/skill",label:"Manage skills",description:"Create, edit, and use reusable skills for the selected provider.",subcommands:["create","edit","list","help"]},{id:"goal",command:"/goal",label:"Codex goal",description:"Use Codex-native Goal mode."},{id:"workflow",command:"/workflow",label:"Schedule workflow",description:"Create a recurring prompt that posts each run back into this chat."},{id:"submit-issue",command:"/submit-issue",label:"Submit issue",description:"File a GitHub issue in openpond/openpond through the connected GitHub app."},{id:"train",command:"/train",label:"Create training task",description:"Create a training plan from this chat or select chats in Training."},{id:"sync-cloud",command:"/sync-cloud",label:"Upload/sync to Cloud",description:"Start a chat-visible source upload for the selected Project."}];function Pne(e){return Gy.filter(t=>t.id!=="goal"||e==="codex")}function MT(e,t){return t==="work"?e.id==="submit-issue"||e.id==="workflow":t==="development"?e.id!=="workflow":t==="chat"?e.id!=="sync-cloud":!0}function wre(e,t){return Pne(e).filter(n=>MT(n,t))}const Ane=new Set(Gy.map(e=>e.id));function Ire(e){return e.subcommands?.length?e.subcommands.join(", "):e.description}function Tne(e){return[e.id,e.command,e.label,e.description].join(" ")}function Ene(e){return(e.subcommands??[]).flatMap(t=>[t,`${e.id} ${t}`,`${e.command} ${t}`]).join(" ")}function jne(e){const t=/^\/([a-z][a-z0-9_-]*)(?:\s+([\s\S]*))?$/.exec(e.trim());if(!t)return null;const n=t[1];return Ane.has(n)?{command:n,args:t[2]?.trim()??""}:null}function Mne(e){const t=e.trim();if(!t.startsWith("!"))return null;const n=t.slice(1).trim();return n?{command:n}:null}function _re({commands:e=Gy,prompt:t,limit:n=10}){if(!t.startsWith("/"))return[];const a=t.slice(1).trim().toLowerCase();if(!a)return e.slice(0,n);const o=e.filter(c=>c.id.startsWith(a));if(o.length>0)return o.slice(0,n);const r=e.filter(c=>Tne(c).toLowerCase().includes(a));return(r.length>0?r:e.filter(c=>Ene(c).toLowerCase().includes(a))).slice(0,n)}function Cre(e){return e==="owner"?"Owner":e==="admin"?"Admin":"Member"}function xp(e){return e?.role==="owner"||e?.role==="admin"}function Rre(e){const t=kp(e.organizations,e.defaultTeamId),n=xp(t),a=e.localProject??null;if(!a)return One("Open a local project to set up an Agent.");const o=$ne(a,e.projects),r=Nne(a,o,e.agents),s=!!a.sandboxTemplate?.detected,c=t&&!n?"Ask an owner or admin to connect this project.":null;return s?o?Dne(a,o)?wu({state:"needs_sync",actionLabel:"Sync Project",project:o,agent:r,canManage:n,actionBlockedReason:c}):r?{state:"ready",actionLabel:"Run Agent",canAct:!0,reason:null,project:o,agent:r}:wu({state:"needs_agent",actionLabel:"Create Agent",project:o,agent:null,canManage:n,actionBlockedReason:c}):wu({state:"needs_project",actionLabel:"Connect Project",project:null,agent:null,canManage:n,actionBlockedReason:c}):wu({state:"missing_config",actionLabel:"Add Agent config",project:o,agent:r,canManage:n,actionBlockedReason:c})}function wu(e){return e.canManage?{state:e.state,actionLabel:e.actionLabel,canAct:!0,reason:null,project:e.project,agent:e.agent}:{state:"blocked",actionLabel:"Ask admin",canAct:!1,reason:e.actionBlockedReason,project:e.project,agent:e.agent}}function One(e){return{state:"blocked",actionLabel:"Ask admin",canAct:!1,reason:e,project:null,agent:null}}function kp(e,t){if(e.length===0)return null;const n=t?.trim()??"";if(n){const a=e.find(o=>o.teamId===n);if(a)return a}return e.length===1?e[0]??null:e.find(a=>a.role==="owner")??e.find(a=>a.role==="admin")??e[0]??null}function $ne(e,t){const n=e.linkedSandboxProject;return n?.projectId?t.find(a=>a.id===n.projectId)??null:null}function Nne(e,t,n){if(!t)return null;const a=e.preferredSandboxAgentId;if(a){const o=n.find(r=>r.id===a&&r.projectId===t.id);if(o)return o}return n.find(o=>o.projectId===t.id)??null}function Dne(e,t){if(t.sandboxManifestError||!t.sandboxManifestSyncedAt||!t.sandboxManifestHash)return!0;if(e.sandboxTemplate?.manifestHash&&t.sandboxManifestHash)return e.sandboxTemplate.manifestHash!==t.sandboxManifestHash;if(e.linkedSandboxProject?.manifestHash&&t.sandboxManifestHash)return e.linkedSandboxProject.manifestHash!==t.sandboxManifestHash;const n=e.sandboxTemplate?.manifestPath;return n&&t.sandboxManifestPath?!n.endsWith(t.sandboxManifestPath):!1}const fr=e=>e.slice(0,2e4);function Hne({model:e,provider:t,providerSettings:n}){return{model:Ry(t,e,n),modelRef:ii(t,e,n)}}function Lne(e,t){return e.some(n=>n.id===t.id)?e:[...e,t]}function qne(e,t){const n=new Date().toISOString(),a=`codex_history_optimistic_${n}_${Math.random().toString(36).slice(2,8)}`;return{id:a,sessionId:e,turnId:`${a}_turn`,name:"turn.started",timestamp:n,source:"chat_action",args:{prompt:t},status:"started"}}function Une(e,t){return{id:`${e.id}_failed`,sessionId:e.sessionId,turnId:e.turnId,name:"turn.failed",timestamp:new Date().toISOString(),source:"server",status:"failed",error:t instanceof Error?t.message:String(t)}}function t1({action:e,prompt:t,runPayload:n,sessionId:a}){const o=new Date().toISOString(),r=`openpond_action_${n.run.id}`,s=n.run.status==="failed"?"failed":n.run.status==="succeeded"?"completed":"started";return[{id:`${r}_user`,sessionId:a,turnId:r,name:"turn.started",timestamp:o,source:"chat_action",args:{prompt:t}},{id:`${r}_result`,sessionId:a,turnId:r,name:"workspace_action_result",timestamp:n.run.updatedAt??o,source:"chat_action",action:"sandbox_run_action",appId:null,status:s,output:s==="completed"?`Ran ${e.label??e.name??e.id}`:`Started ${e.label??e.name??e.id}`,data:{openPondActionRun:!0,action:{name:e.id,label:e.label??e.name??e.id,implementation:e.implementation},agent:n.agent,run:n.run,sandbox:n.sandbox??null,actionSummary:n.run.actionSummary??null,responseSummary:n.run.responseSummary??null,traceSummary:n.run.traceSummary??null,evalSummary:n.run.evalSummary??null,sourceSummary:n.run.sourceSummary??null}}]}function zne({applyBootstrapPayload:e,connection:t,codexPermissionMode:n,codexReasoningEffort:a,openPondCommandAccessMode:o,draftModel:r,draftProvider:s,experience:c,expandProject:m,ensureCloudSessionReady:u,getPrompt:f,bootstrap:h,chatMessages:x,apps:k,connectedAppMentions:_,mentionedAppId:P,refreshWorkspace:E,refreshWorkspaceDiff:A,selectedApp:$,selectedActionCatalog:j,openPondActionCatalog:M,cloudProjects:w,accountScopeKey:R,selectedCloudProject:O,selectedProject:N,selectedProjectLinkedOpenPondApp:F,selectedSession:L,workspaceTarget:Y,subagentDelegationMode:re,setDraftModel:ve,setDraftProvider:oe,setError:K,setPrompt:H,setMentionedAppId:de,setCodexHistoryEvents:X,setCodexHistorySessions:Z,onCodexHistoryTurnActivityChange:pe,onCodexHistoryTurnPayload:ee,onPendingUserMessage:me,setEvents:be,setSelectedAppId:Me,setSelectedProjectId:ke,setSelectedSessionId:ue,setSessions:Ie,setView:Le,setWorkspaceBusy:Fe}){function Xe(Q){ae.bootstrap(Q).then(e).catch(C=>{console.warn("[chat] Message was accepted, but the post-send bootstrap refresh failed.",C);const G=C instanceof Error?C.message:String(C);K(`Message sent, but the chat list could not refresh: ${G}`)})}const Ze=y.useRef(new Set),Be=h?.providers??null;function Ge(Q,C){return Q==="codex"?void 0:C}function Ve(Q){return!!(Q&&Q.provider!=="codex"&&(Q.workspaceKind==="local_project"&&Q.cwd?.trim()||(Q.workspaceKind==="sandbox"||Q.workspaceKind==="sandbox_template"||Q.workspaceKind==="sandbox_app")&&Q.workspaceId))}function U(Q){oe(Q),ve(C=>nr(Q,C,Be)),Le("chat")}async function J(Q,C){return(pT(C,R)??await Uy({teamId:C,accountKey:R,fetchAgents:async te=>(await ae.listSandboxAgents(t,{teamId:te})).agents})).find(te=>te.projectId===Q)??null}async function q(){if(!t)throw new Error("OpenPond App server is not connected.");if(h?.account.state!=="signed_in")throw new Error("Add an OpenPond account before syncing a Project to Cloud.");const Q=await ae.organizations(t),C=kp(Q.organizations.map(gp).filter(G=>!!G).filter(G=>G.status==="active"),h?.preferences.defaultTeamId??null);if(!C)throw new Error("Add an OpenPond account before syncing a Project to Cloud.");if(!xp(C))throw new Error(`You need owner or admin access to create projects in ${C.displayName}.`);return C}async function ie(Q){if(!t)return!1;const C=N;if(!C)throw new Error("Select a local Project before using /sync-cloud.");const G=await q(),se=C.linkedSandboxProject?.defaultBranch?.trim()||"main",te=kt("local",C.id),ge=Ga(C,w),Se=await ae.createSession(t,{provider:"openpond",modelRef:ii("openpond",Ws,Be),openPondCommandAccessMode:Ge("openpond",o),appId:null,appName:null,workspaceKind:"local_project",workspaceId:C.id,workspaceName:C.name,localProjectId:C.id,cloudProjectId:ge?.id??null,cloudTeamId:ge?.teamId??null,cwd:C.workspacePath,title:`Sync ${C.name} to Cloud`});Ie(xe=>[Se,...xe]),Q.onSessionCreated?.(Se),Q.selectSession&&(ue(Se.id),ke(te),Me(null),Le("chat"),m(te)),Q.clearPromptForTurn(),Fe(!0);try{const xe=await ae.uploadLocalProjectCloudSource(t,C.id,{teamId:G.teamId,projectName:C.name,branch:se,chatSessionId:Se.id,displayPrompt:Q.displayPrompt});return e(xe.bootstrap),m(te),m(kt("cloud",xe.project.id)),!0}catch(xe){const Oe=await ae.bootstrap(t).catch(()=>null);throw Oe&&e(Oe),xe}finally{Fe(!1)}}async function he(Q){if(!t||Q.providerForTurn==="codex"||Q.selectedSessionForTurn?.provider==="codex")return!1;let C=Ve(Q.selectedSessionForTurn)?Q.selectedSessionForTurn:null;if(!C&&Q.selectedSessionForTurn)throw new Error("Select a project to use this.");if(!C)if(O){const se=kt("cloud",O.id),te=Q.providerForTurn;C=await ae.createSession(t,{provider:te,modelRef:ii(te,Q.modelForTurnValue,Be),openPondCommandAccessMode:Ge(te,Q.openPondCommandAccessModeForTurn),appId:null,appName:null,workspaceKind:"sandbox",workspaceId:O.id,workspaceName:O.name,localProjectId:null,cloudProjectId:O.id,cloudTeamId:O.teamId,cwd:null,autoTitlePrompt:fr(Q.command)}),Ie(ge=>[C,...ge]),Q.onSessionCreated?.(C),Q.selectSession&&(ue(C.id),ke(se),Me(null),Le("chat"),m(se))}else{const se=N;if(!se)throw new Error("Select a project to use this.");const te=Ga(se,w),ge=kt("local",se.id),Se=Q.providerForTurn;C=await ae.createSession(t,{provider:Se,modelRef:ii(Se,Q.modelForTurnValue,Be),openPondCommandAccessMode:Ge(Se,Q.openPondCommandAccessModeForTurn),appId:null,appName:null,workspaceKind:"local_project",workspaceId:se.id,workspaceName:se.name,localProjectId:se.id,cloudProjectId:te?.id??null,cloudTeamId:te?.teamId??null,cwd:se.workspacePath,autoTitlePrompt:fr(Q.command)}),Ie(xe=>[C,...xe]),Q.onSessionCreated?.(C),Q.selectSession&&(ue(C.id),ke(ge),Me(null),Le("chat"),m(ge))}if(!C)throw new Error("Select a project to use this.");Q.clearPromptForTurn();const G=await ae.runSessionCommand(t,C.id,{command:Q.command,cwd:C.cwd});return Ie(se=>oc(se,G.session)),be(se=>io(se,G.events)),!0}async function Pe(Q=[],C=null,G,se={}){const te=G??f();let ge=te.trim()||(Q.length>0?"Please review the attached files.":"");if(!t||!ge)return!1;const Se=se.displayPrompt?.trim()||ge,xe=se.provider??s,Oe=se.model??r,Te=se.openPondCommandAccessMode??o,Ue=se.session!==void 0,Ee=Ue?se.session??null:L,tt=se.experience??Ee?.experience??c,ht=tt==="development"||tt==="work"&&(Ee?.workspaceKind==="local_project"||!!Ee?.localProjectId||!!Ee?.cloudProjectId||!Ue&&!!(N||O||$||Y==="hybrid"||Y==="local")),xn=Ue||!ht?null:$,xt=Ue||!ht?null:N,Xn=Ue||!ht?null:O,kn=Ue||!ht?null:F,Rn=!Ue&&ht&&Y==="hybrid",Zt=se.selectSession??!0,On=se.chatMessages??x,Pn=se.session!==void 0?null:P,$n=se.clearPrompt===void 0?()=>{H(""),de(null)}:se.clearPrompt,Un=C?null:Rne(ge,j),Gt=C??Un?.action??null,Ct=Un?.prompt||ge,Nn=ht&&!Gt?Mne(ge):null,pt=Gt||Nn?null:jne(ge),Nt=pt&&!MT({id:pt.command},tt)?pt:null,ea=se.usageAttribution??(pt?{surface:"chat",workflowKind:"slash_command",commandName:`/${pt.command}`,commandSource:"prompt_parse"}:void 0);K(null);let $t=null,zn=!1,xa=null;try{if(!ht&&xe==="codex")throw new Error("The Codex provider requires repository-aware Work.");if(Nt)throw new Error(`/${Nt.command} isn't available in ${tt}.`);if(Nn&&xe!=="codex"&&Ee?.provider!=="codex"){if(Q.length>0)throw new Error("Direct commands do not accept attachments.");return await he({command:Nn.command,clearPromptForTurn:$n,modelForTurnValue:Oe,onSessionCreated:se.onSessionCreated,openPondCommandAccessModeForTurn:Te,providerForTurn:xe,selectedSessionForTurn:Ee,selectSession:Zt})}if(!Ue&&pt?.command==="sync-cloud")return await ie({clearPromptForTurn:$n,displayPrompt:Se,onSessionCreated:se.onSessionCreated,selectSession:Zt});if(Gt){const wt=Wee(Gt);if(wt){let V=Ee;if(!V||V.cloudProjectId!==wt.projectId){V=await ae.createSession(t,{provider:"openpond",modelRef:ii("openpond",Oe,Be),openPondCommandAccessMode:Ge("openpond",Te),appId:null,appName:null,workspaceKind:"sandbox",workspaceId:wt.projectId,workspaceName:wt.projectName??wt.agentName,localProjectId:null,cloudProjectId:wt.projectId,cloudTeamId:wt.teamId,cwd:null,autoTitlePrompt:fr(Se)}),Ie(Vt=>[V,...Vt]),se.onSessionCreated?.(V),Zt&&ue(V.id);const rt=kt("cloud",wt.projectId);Zt&&ke(rt),Zt&&m(rt)}const Ae=await ae.runSandboxAgent(t,wt.agentId,Qee({agent:wt,attachments:Q,displayPrompt:Se,prompt:Ct})),De=await ae.bootstrap(t);return e(De),$n(),be(rt=>io(rt,t1({action:Gt,prompt:Se,runPayload:Ae,sessionId:V.id}))),!0}const pn=Vy(Gt);if(pn){let V=Ee;(!V||V.provider!=="openpond")&&(V=await ae.createSession(t,{provider:"openpond",modelRef:ii("openpond",Oe,Be),openPondCommandAccessMode:Ge("openpond",Te),appId:null,appName:null,workspaceId:null,workspaceName:"OpenPond profile",localProjectId:null,cloudProjectId:null,cloudTeamId:null,cwd:null,autoTitlePrompt:fr(Se)}),Ie(De=>[V,...De]),se.onSessionCreated?.(V),Zt&&ue(V.id)),await ae.runProfileAction(t,Zee({action:pn,attachments:Q,displayPrompt:Se,prompt:Ct,sessionId:V.id}));const Ae=await ae.bootstrap(t);return e(Ae),$n(),!0}const it=yT({cloudProjects:w,selectedCloudProject:O,selectedProject:N});if(!it)throw new Error("Select a Project linked to an OpenPond Cloud Project before running an action.");let Et=Ee;(!Et||Et.cloudProjectId!==it.id)&&(Et=await ae.createSession(t,{provider:"openpond",modelRef:ii("openpond",Oe,Be),openPondCommandAccessMode:Ge("openpond",Te),appId:null,appName:null,workspaceKind:"sandbox",workspaceId:it.id,workspaceName:it.name,localProjectId:it.localProjectId,cloudProjectId:it.id,cloudTeamId:it.teamId,cwd:null,autoTitlePrompt:fr(Se)}),Ie(V=>[Et,...V]),se.onSessionCreated?.(Et),Zt&&(ue(Et.id),ke(it.selectionKey),m(it.selectionKey)));const ln=await J(it.id,it.teamId);if(!ln)throw new Error("No OpenPond Agent is available for this Project.");$n();const Ln=await ae.runSandboxAgent(t,ln.id,Yee({action:Gt,attachments:Q,displayPrompt:Se,prompt:Ct,teamId:it.teamId})),mt=await ae.bootstrap(t);return e(mt),be(V=>io(V,t1({action:Gt,prompt:Se,runPayload:Ln,sessionId:Et.id}))),!0}let lt=Ee;if(lt&&en(lt.id)){xa=mk({afterMessageId:On.at(-1)?.id??null,attachments:Q,content:ge,sessionId:lt.id}),$n(),$t=lt.id,Ze.current.add($t),me?.(xa),pe?.($t,!0);const wt=qne(lt.id,ge),pn=Et=>{(!Ue||L?.id===lt.id)&&X(ln=>Lne(ln,Et)),se.onCodexHistoryOptimisticEvent?.(Et)};pn(wt),Z(Et=>Et.map(ln=>ln.id===lt.id?{...ln,status:"active"}:ln));const it=await ae.sendCodexHistoryTurn(t,lt.id,{prompt:ge,attachments:Q.length>0?Q:void 0,model:Ry("codex",Oe,Be),modelRef:ii("codex",Oe,Be),...Ix(n),codexPermissionMode:n,codexReasoningEffort:a}).catch(Et=>{throw pn(Une(wt,Et)),Et});return(!Ue||L?.id===lt.id)&&X(Et=>io(Et,it.events)),Z(Et=>oc(Et,it.session)),ee?.(it),Xe(t),!0}const gi=(Pn?k.find(wt=>wt.id===Pn&&zZ(te,wt)&&wt.sandbox)??null:null)??BZ(te,DA(k)),ka=tt==="chat"?[]:iY(te,_).map(wt=>wt.ref);if(!lt){const wt=kn?.appId??xn?.id??null,pn=kn?.appName??xn?.name??null,it=Xn,Et=Ue?null:Ga(xt,w),ln=Rn?EA({cloudProjects:w,selectedCloudProject:it,selectedProject:xt}):null;if(ln?.kind==="missing_cloud_project")throw new Error(ln.message);const Ln=ln?.kind==="ready",mt=Ln?xe:it?"openpond":xe,V=ii(mt,Oe,Be),Ae=Ge(mt,Te),De=Ln?jA({modelRef:V,provider:mt,target:ln,title:ge.slice(0,64)}):null;lt=await ae.createSession(t,De?{...De,subagentDelegationMode:re,metadata:{...De.metadata,...se.sessionMetadata??{}},...Ae?{openPondCommandAccessMode:Ae}:{},autoTitlePrompt:fr(ge)}:{experience:tt,provider:mt,modelRef:V,subagentDelegationMode:re,...Ae?{openPondCommandAccessMode:Ae}:{},appId:wt,appName:pn,workspaceKind:it?"sandbox":xt?"local_project":xn?"sandbox_app":void 0,workspaceId:xt?.id??(xn?wt:void 0),workspaceName:it?.name??xt?.name??pn,localProjectId:xt?.id??null,cloudProjectId:it?.id??Et?.id??null,cloudTeamId:it?.teamId??Et?.teamId??null,...!it&&!xt&&!xn&&Y==="local"?{metadata:{...xZ(),...se.sessionMetadata??{}}}:{cwd:xt?xt.workspacePath:null,...se.sessionMetadata?{metadata:se.sessionMetadata}:{}},autoTitlePrompt:fr(ge)}),Ie(rt=>[lt,...rt]),se.onSessionCreated?.(lt),Zt&&(ue(lt.id),it&&ke(kt("cloud",it.id)),lt.workspaceKind==="local_project"&&lt.workspaceId&&m(kt("local",lt.workspaceId)),it&&m(kt("cloud",it.id)))}if(n1(lt)&&Ui(lt.workspaceKind)&&lt.provider!=="openpond"&&!zi(lt))throw new Error("Cloud workspaces use OpenPond Chat. Switch to Local to use local providers.");if(n1(lt)&&Ui(lt.workspaceKind)&&u)try{lt=await u(lt)}catch(wt){const pn=wt instanceof Error?wt.message:String(wt);throw await ae.recordPreflightTurnFailure(t,lt.id,{prompt:ge,error:pn,target:zi(lt)?"hybrid_sandbox":"cloud_workspace"}).then(e).catch(()=>{}),wt}xa=mk({afterMessageId:On.at(-1)?.id??null,attachments:Q,content:ge,sessionId:lt.id}),$n(),$t=lt.id,Ze.current.add($t),me?.(xa),Ie(wt=>wt.map(pn=>pn.id===$t?{...pn,status:"active"}:pn));const Gn=xe,Hn=Hne({provider:Gn,model:Oe,providerSettings:Be}),Vi=Q8(Gn,Hn.model??Oe,Be),Ki=Gn==="codex"?Ix(n):{approvalPolicy:"on-request",sandbox:"workspace-write"};await ae.sendTurn(t,lt.id,{prompt:ge,metadata:se.turnMetadata,attachments:Q.length>0?Q:void 0,mentionedAppIds:gi?[gi.id]:void 0,mentionedConnectedApps:ka.length>0?ka:void 0,openPondActionCatalog:M.length>0?M:void 0,usageAttribution:ea,...Hn,...Ki,codexPermissionMode:Gn==="codex"?n:"default",codexReasoningEffort:Vi?Y8(Gn,Hn.model??Oe,a,Be):void 0}),zn=!0,Xe(t);const ei=lt.workspaceId??lt.appId;return ei&&lt.workspaceKind!=="sandbox"&&lt.workspaceKind!=="sandbox_template"&&E(ei,!1).then(wt=>{wt?.initialized&&A(ei)}),!0}catch(lt){return K(lt instanceof Error?lt.message:String(lt)),!1}finally{$t&&Ze.current.delete($t),$t&&en($t)&&pe?.($t,!1),$t&&(en($t)?Z(lt=>lt.map(Dn=>Dn.id===$t&&Dn.status==="active"?{...Dn,status:"idle"}:Dn)):zn||Ie(lt=>lt.map(Dn=>Dn.id===$t&&Dn.status==="active"?{...Dn,status:"idle"}:Dn)))}}async function qe(Q,C){const G=Ze.current.values().next().value??null,se=Q??L?.id??G;if(!t||!se)return!1;if(K(null),en(se))try{const te=await ae.interruptCodexHistoryTurn(t,se);if(!te.interrupted){if(te.reason==="no_active_openpond_turn"){const Se=await ae.codexHistoryThread(t,se,{tail:!0}),xe={...Se.session,status:"idle"};return L?.id===se&&X(Oe=>io(Oe,Se.events)),Z(Oe=>oc(Oe,xe)),K("OpenPond no longer has a live interrupt handle for this Codex history turn. The chat was marked idle so you can send again."),!0}return K("This Codex history turn is still starting. Try stopping it again in a moment."),!1}const ge=await ae.codexHistoryThread(t,se,{tail:!0});return L?.id===se&&X(Se=>io(Se,ge.events)),Z(Se=>oc(Se,ge.session)),!0}catch(te){const ge=te instanceof Error?te.message:String(te);return K(ge==="Not found"?"OpenPond could not find this Codex history session, so it cannot interrupt it here.":ge),!1}try{await ae.interruptTurn(t,se,C);const te=await ae.bootstrap(t);return e(te),!0}catch(te){return K(te instanceof Error?te.message:String(te)),!1}}async function Je(Q,C){if(!t){K("OpenPond App server is not connected.");return}K(null),await ae.applyCreateImproveAction(t,Q.id,{...C,runId:Q.id,expectedRevision:Q.revision,actionId:`web:${C.type}:${crypto.randomUUID()}`});const G=await ae.bootstrap(t);e(G)}async function et(Q){await Je(Q.run,{type:"approve_plan"})}async function ut(Q){await Je(Q.run,{type:"cancel",reason:null})}async function _t(Q,C){await Je(Q.run,{type:"revise_plan",revision:C})}async function Ne(Q,C,G){await Je(Q.run,{type:"answer_question",questionId:C,value:G})}async function Ye(Q){await Je(Q.run,{type:"pause"})}async function g(Q){await Je(Q.run,{type:"resume"})}async function B(Q,C){await Je(Q.run,{type:"open_pull_request",candidateId:C})}async function ne(Q,C){await Je(Q.run,{type:"apply_candidate",candidateId:C})}async function we(Q,C){await Je(Q.run,{type:"reject_candidate",candidateId:C,reason:null})}async function fe(Q,C){await Je(Q.run,{type:"reconcile_pull_request",candidateId:C})}return{answerCreateImproveQuestion:Ne,approveCreateImproveRun:et,applyCreateImproveCandidate:ne,cancelCreateImproveRun:ut,changeDraftProvider:U,openCreateImprovePullRequest:B,pauseCreateImproveRun:Ye,reconcileCreateImprovePullRequest:fe,rejectCreateImproveCandidate:we,resumeCreateImproveRun:g,reviseCreateImproveRun:_t,sendPrompt:Pe,stopTurn:qe}}function n1(e){return e.experience==="development"||e.experience==="work"&&(e.workspaceKind==="local_project"||!!e.localProjectId||!!e.cloudProjectId||e.metadata?.workspaceTarget==="local")}async function Bne({branch:e,connection:t,session:n}){if(!Ui(n.workspaceKind))return{sandbox:null,session:n,status:"already_running"};const a=await ae.ensureCloudWorkspaceReady(t,n.id,{branch:e,surface:"desktop"});return{bootstrap:await ae.bootstrap(t),output:a.output,sandbox:null,session:a.session,status:a.status}}function Fne(e){return zi(e)?"Preparing Hybrid sandbox...":"Starting Cloud workspace..."}function Vne(e,t){if(e==="already_running")return null;const n=zi(t)?"Hybrid sandbox":"Cloud workspace";return e==="waited_for_creating"?`${n} is ready.`:e==="started"?`Started ${n}.`:e==="resumed"?`Resumed ${n}.`:e==="restored"?`Restored ${n}.`:`Recreated ${n}.`}function Kne(e,t){return!e.cloudProjectId||!e.cloudTeamId?!0:t.some(n=>n.id===e.cloudProjectId&&n.teamId===e.cloudTeamId)}function Wne({applyBootstrapPayload:e,cloudProjects:t,connection:n,localProjectById:a,selectedCloudProject:o,selectedProject:r,setWorkspaceBusy:s,showToast:c,visibleWorkspaceState:m}){return y.useCallback(async u=>{if(!n)throw new Error("OpenPond App server is not connected.");const f=r??(u.localProjectId?a.get(u.localProjectId)??null:null);if(u.cloudProjectId&&u.cloudTeamId&&!Kne(u,t))throw new Error("This Cloud session belongs to a different OpenPond account. Sync or select a Project in the current account.");u.workspaceId||c(Fne(u),"info"),s(!0);try{const h=await Bne({branch:r?.linkedSandboxProject?.defaultBranch??o?.defaultBranch??m?.currentBranch??null,connection:n,localProject:f,session:u,source:zi(u)?"openpond-app-hybrid-chat-preflight":"openpond-app-cloud-chat-preflight"});h.bootstrap&&e(h.bootstrap);const x=Vne(h.status,u);return x&&c(x,"success"),h.session}finally{s(!1)}},[e,t,n,a,o,r,s,c,m?.currentBranch])}function Gne(){return{diffPanelOpen:!1,diffPanelExpanded:!1,rightPanelMode:"changes",rightChatPanels:[]}}function Jne(e){return{diffPanelOpen:e.diffPanelOpen,diffPanelExpanded:e.diffPanelExpanded,rightPanelMode:e.rightPanelMode,rightChatPanels:e.rightChatPanels}}function a1(e){return{...e,rightChatPanels:e.rightChatPanels.map(t=>({...t}))}}function Zne(e,t){return e.diffPanelOpen!==t.diffPanelOpen||e.diffPanelExpanded!==t.diffPanelExpanded||e.rightPanelMode!==t.rightPanelMode||e.rightChatPanels.length!==t.rightChatPanels.length?!1:e.rightChatPanels.every((n,a)=>{const o=t.rightChatPanels[a];return!!(o&&n.id===o.id&&n.activationVersion===o.activationVersion&&n.sessionId===o.sessionId&&n.prompt===o.prompt&&n.provider===o.provider&&n.model===o.model&&n.scrollTop===o.scrollTop&&n.stickyToBottom===o.stickyToBottom)})}function Yne(e){return`${e.conversationId}\0${e.workspaceSourceKey||"none"}`}function Qne(e){const{appDispatch:t,diffPanelExpanded:n,diffPanelOpen:a,rightChatPanels:o,rightPanelMode:r,selectedAppId:s,selectedCloudProject:c,selectedProjectId:m,selectedSession:u,selectedSessionId:f,setWorkspaceDiffPanelViewState:h,view:x,viewWorkspaceAppId:k,viewWorkspaceId:_,viewWorkspaceKind:P,workspaceDiffPanelViewState:E}=e,A=y.useRef(new Map),$=y.useRef(new Map),j=y.useRef(null),M=y.useRef(null),w=f??`draft:${m??s??c?.id??"general"}`,R=y.useMemo(()=>_?`${P??"workspace"}:${_}`:k?`app:${k}`:u?.cwd&&!Ui(u.workspaceKind)?`cwd:${u.cwd}`:"none",[u?.cwd,u?.workspaceKind,x,k,_,P]),O=Yne({conversationId:w,workspaceSourceKey:R}),N=y.useMemo(()=>Jne({diffPanelExpanded:n,diffPanelOpen:a,rightChatPanels:o,rightPanelMode:r}),[n,a,o,r]);y.useEffect(()=>{const L=j.current;L&&A.current.set(L,a1(N))},[w,N]),y.useEffect(()=>{if(j.current===w)return;j.current=w;const Y=A.current.get(w)??Gne();Zne(N,Y)||t({type:"patch",patch:a1(Y)})},[w,N]),y.useEffect(()=>{const L=M.current;L&&$.current.set(L,Hh(E))},[O,E]),y.useEffect(()=>{if(M.current===O)return;M.current=O;const Y=$.current.get(O)??MA();h(re=>ek(re,Y)?re:Hh(Y))},[O]);const F=y.useCallback(L=>{h(Y=>ek(Y,L)?Y:Hh(L))},[]);return{browserConversationId:w,handleWorkspaceDiffPanelViewStateChange:F}}function Xne({account:e,accountPending:t,accountSignedOut:n,activeWorkspaceKind:a,activeWorkspaceLocation:o,appDispatch:r,applyBootstrapPayload:s,busy:c,cloudSetupDialog:m,cloudProjects:u,connection:f,defaultTeamId:h,expandProject:x,localProjectById:k,selectedCloudProject:_,selectedProject:P,selectedSession:E,selectedSessionProjectId:A,setCloudSetupDialog:$,setDiffPanelOpen:j,setError:M,setSessions:w,setWorkspaceBusy:R,showToast:O,visibleWorkspaceState:N,workspaceBusy:F}){const L=e?.baseUrl??e?.activeProfile?.baseUrl??null,Y=y.useCallback(async(H,de)=>{if(f)try{const X=await ae.previewLocalProjectCloudSource(f,H.id,{branch:de});$(Z=>!Z||Z.status!=="confirm"||Z.localProjectId!==H.id||Z.branch!==de?Z:{...Z,branch:X.preview.branch,cloudProjectId:X.preview.targetProjectId,preview:X.preview,previewLoading:!1,previewError:null})}catch(X){const Z=X instanceof Error?X.message:String(X);$(pe=>!pe||pe.status!=="confirm"||pe.localProjectId!==H.id||pe.branch!==de?pe:{...pe,preview:null,previewLoading:!1,previewError:Z})}},[f,$]),re=y.useCallback(async()=>{const H=m;if(!H||H.status==="uploading")return;if(H.projectKind==="cloud"){$(pe=>pe&&{...pe,status:"ready",error:null});return}if(!f){$(pe=>pe&&{...pe,status:"error",error:"OpenPond App server is not connected."});return}const de=H.localProjectId??"",X=k.get(de);if(!X){$(pe=>pe&&{...pe,status:"error",error:"Project is no longer available."});return}R(!0);const Z=Ga(X,u);$(pe=>pe&&{...pe,status:"uploading",error:null,previewLoading:!1});try{const pe=await ae.organizations(f),ee=kp(pe.organizations.map(gp).filter(Le=>!!Le).filter(Le=>Le.status==="active"),h);if(!ee)throw new Error("Add an OpenPond account before creating a Cloud environment.");if(!xp(ee))throw new Error(`You need owner or admin access to create projects in ${ee.displayName}.`);const me=H.branch||X.linkedSandboxProject?.defaultBranch||"main",be=kt("local",X.id),Me=await ae.createSession(f,{provider:"openpond",appId:null,appName:null,workspaceKind:"local_project",workspaceId:X.id,workspaceName:X.name,localProjectId:X.id,cloudProjectId:Z?.id??null,cloudTeamId:Z?.teamId??null,cwd:X.workspacePath,title:`Sync ${X.name} to Cloud`});w(Le=>[Me,...Le]),r({type:"selectSession",sessionId:Me.id,projectId:be}),x(be);const ke=await ae.uploadLocalProjectCloudSource(f,X.id,{teamId:ee.teamId,projectName:X.name,branch:me,chatSessionId:Me.id,displayPrompt:`/sync-cloud ${X.name}`});s(ke.bootstrap),x(be),x(kt("cloud",ke.project.id));const ue=dv({accountBaseUrl:L,teamId:ke.project.teamId,projectId:ke.project.id,projectName:ke.project.name,baseBranch:ke.upload.branch,localProjectId:X.id,source:"openpond-app"}),Ie=Qk({accountBaseUrl:L,organizationSlug:ke.project.organizationSlug,projectSlug:ke.project.slug});$({status:"ready",localProjectId:X.id,cloudProjectId:ke.project.id,teamId:ke.project.teamId,projectName:ke.project.name,projectKind:"local",projectUrl:Ie,setupUrl:ue,branch:ke.upload.branch,preview:H.preview??null,previewLoading:!1,previewError:null,upload:{branch:ke.upload.branch,headCommit:ke.upload.headCommit,fileCount:ke.upload.fileCount,byteCount:ke.upload.byteCount,skippedCount:ke.upload.skippedCount,initializedEmptyProject:ke.upload.initializedEmptyProject},error:null}),O("Source uploaded to OpenPond Git. Cloud setup link is ready.","success")}catch(pe){const ee=pe instanceof Error?pe.message:String(pe),me=f?await ae.bootstrap(f).catch(()=>null):null;me&&s(me),M(ee),$(be=>be&&{...be,status:"error",error:ee})}finally{R(!1)}},[L,r,s,m,u,f,h,x,k,$,M,w,R,O]),ve=y.useCallback((H,de)=>{if(!f){O("OpenPond App server is not connected.","error");return}if(t){O("Checking OpenPond account. Try again in a moment.","info");return}if(n){O("Add an OpenPond account before using Cloud.","error");return}const X=de||H.linkedSandboxProject?.defaultBranch||"main";$({status:"confirm",localProjectId:H.id,projectName:H.name,projectKind:"local",projectUrl:null,setupUrl:null,branch:X,preview:null,previewLoading:!0,previewError:null,upload:null,error:null}),Y(H,X)},[t,n,f,Y,$,O]),oe=y.useCallback(async H=>{if(H===o||F||c)return;if(M(null),H==="upload_cloud"){if(!P){O("Select a local Project before uploading source.","error");return}ve(P,N?.currentBranch??null);return}if(H==="local"){const Z=E?.localProjectId??P?.id??A??null,pe=Z?k.get(Z)??null:null;if(!pe){O("No linked local workspace for this Cloud chat.","error");return}if(Ui(a)&&!window.confirm("Switch to Local? Cloud changes will stay in the hosted workspace until you preserve or export them."))return;const ee=kt("local",pe.id);r({type:"selectProject",projectId:ee}),x(ee),j(!1),O(`Switched to Local: ${pe.name}`,"info");return}if(!f){O("OpenPond App server is not connected.","error");return}if(t){O("Checking OpenPond account. Try again in a moment.","info");return}if(n){O("Add an OpenPond account before using Cloud.","error");return}if(_){$({status:"ready",cloudProjectId:_.id,teamId:_.teamId,projectName:_.name,projectKind:"cloud",projectUrl:Qk({accountBaseUrl:L,organizationSlug:_.organizationSlug,projectSlug:_.slug}),setupUrl:dv({accountBaseUrl:L,teamId:_.teamId,projectId:_.id,projectName:_.name,baseBranch:_.defaultBranch,source:"openpond-app"}),branch:_.defaultBranch??"main",preview:null,previewLoading:!1,previewError:null,upload:null,error:null});return}const de=P;if(!de){O("Select a Project before Cloud coding.","error");return}const X=N?.currentBranch||de.linkedSandboxProject?.defaultBranch||"main";ve(de,X)},[L,t,n,a,o,r,c,f,u,x,k,ve,_,P,E,A,$,j,M,O,N?.currentBranch,F]),K=y.useCallback(H=>{Iy(H)&&ve(H.project)},[ve]);return{changeWorkspaceTarget:oe,moveProjectToCloud:K,openCloudSetupForLocalProject:ve,startCloudSetupUpload:re}}function eae({advanceTrainingTurn:e,bindTrainingSession:t,composerDraftStore:n,onSessionCreated:a,onSubmitted:o,prepareTrainingTurn:r,sendPrompt:s,setMentionedAppId:c,showToast:m}){return y.useCallback(async(u=[],f=null,h,x={})=>{const k=h??n.getSnapshot(),_=r(k);if(_.active&&k.trim()&&!_.metadata)return m(_.error??"Load the selected generated Taskset question before sending, or close the generated-question handoff to write a normal prompt.","error"),!1;const P=await s(u,f,h,{clearPrompt:x.preservePrompt?()=>{}:void 0,displayPrompt:x.displayPrompt,onSessionCreated:E=>{a(E),_.metadata&&t(E.id)},turnMetadata:_.metadata||x.turnMetadata?{..._.metadata??{},...x.turnMetadata??{}}:void 0,sessionMetadata:_.metadata?{trainingTasksetId:_.metadata.trainingTasksetId,trainingTasksetName:_.metadata.trainingTasksetName}:void 0});return P&&await o?.(),P&&_.metadata&&e(),P},[e,t,n,a,o,r,s,c,m])}function tae({appDispatch:e,connection:t,sessions:n,setDiffPanelOpen:a,setRightPanelMode:o,setSessions:r,setView:s}){return y.useCallback(async c=>{if(!t)return;const m=n.find(h=>!h.archived&&h.workspaceKind==="sandbox"&&h.workspaceId===c.sandboxId);if(m){e({type:"selectSession",sessionId:m.id,appId:null,projectId:null}),o("changes"),a(!0),s("chat");return}const u=c.name??`Sandbox ${c.sandboxId.slice(0,8)}`,f=await ae.createSession(t,{provider:"openpond",appId:null,appName:null,workspaceKind:"sandbox",workspaceId:c.sandboxId,workspaceName:u,cwd:null,title:u});r(h=>[f,...h]),e({type:"selectSession",sessionId:f.id,appId:null,projectId:null}),o("changes"),a(!0),s("chat")},[e,t,n,a,o,r,s])}function nae({connection:e,defaultTeamId:t,sessions:n,selectedProjectId:a,confirmProjectAction:o,applyBootstrapPayload:r,expandProject:s,setExpandedProjectIds:c,setSelectedAppId:m,setSelectedProjectId:u,setSelectedSessionId:f,setError:h,setView:x,showToast:k}){function _(j){const M=kt("local",j.id);m(null),u(M),f(null),x("chat"),s(M)}async function P(j){if(!e)return!1;h(null);try{const M=await ae.createLocalProject(e,j);return r(M.bootstrap),_(M.project),k(M.created===!1?`Opened ${M.project.name}`:`Created ${M.project.name}`,"success"),!0}catch(M){const w=M instanceof Error?M.message:String(M);return h(w),k(w,"error"),!1}}async function E(j){if(!e)return!1;const M=j.trim();if(!M)return!1;h(null);try{const w=await ae.createLocalProject(e,{createNew:!0,name:M});return r(w.bootstrap),_(w.project),k(`Created ${w.project.name}`,"success"),!0}catch(w){return h(w instanceof Error?w.message:String(w)),k("Project could not be created","error"),!1}}async function A(j){if(!e)return!1;const M=j.trim();if(!M)return!1;h(null);try{const w=await ae.organizations(e),R=kp(w.organizations.map(gp).filter(Y=>!!Y).filter(Y=>Y.status==="active"),t);if(!R)throw new Error("Add an OpenPond account before creating a Cloud Project.");if(!xp(R))throw new Error(`You need owner or admin access to create projects in ${R.displayName}.`);const O=`${OA(M)}-${Date.now().toString(36)}`;let N=(await ae.upsertSandboxProject(e,{teamId:R.teamId,name:M,sourceType:"internal_repo",normalizedSourceIdentity:O,internalRepoPath:O,defaultBranch:"main",sourceConfig:{sourceType:"internal_repo",sourceValue:O},metadata:{source:"openpond-app-new-cloud-project"}})).project;N=(await ae.uploadSandboxProjectSource(e,N.id,{teamId:R.teamId,branch:"main",commitMessage:"Initialize cloud project",entries:[{path:"README.md",type:"file",contentsBase64:jZ(`# ${M}
220
-
221
- Created in OpenPond Cloud.
222
- `)}]})).project;const F=await ae.bootstrap(e);r(F);const L=kt("cloud",N.id);return m(null),u(L),f(null),x("chat"),s(L),k(`Created Cloud Project: ${N.name}`,"success"),!0}catch(w){const R=w instanceof Error?w.message:String(w);return h(R),k(R,"error"),!1}}async function $(j){if(!e)return;if(V8(j)){const O=`Archive ${j.project.name} in OpenPond Cloud?`;if(!(o?await o({title:"Archive Cloud Project",body:`${j.project.name} will be archived in OpenPond Cloud. Existing task history stays available through Cloud history.`,confirmLabel:"Archive project"}):window.confirm(O)))return;h(null);try{await ae.archiveSandboxProject(e,j.project.id,{teamId:j.project.teamId}),r(await ae.bootstrap(e)),c(F=>{const L=new Set(F);return L.delete(j.id),L}),a===j.id&&(u(null),f(null)),k(`Archived ${j.project.name}`,"success")}catch(F){h(F instanceof Error?F.message:String(F)),k("Cloud Project could not be archived","error")}return}if(!Iy(j))return;const M=j.project,w=`Remove ${M.name} from Projects? The folder will not be deleted.`;if(o?await o({title:"Remove Project",body:`${M.name} will be removed from the sidebar. The folder and files on disk will not be deleted.`,confirmLabel:"Remove project"}):window.confirm(w)){h(null);try{const O=await ae.deleteLocalProject(e,M.id);r(O),c(N=>{const F=new Set(N);return F.delete(j.id),F}),a===j.id&&(u(null),f(N=>{const F=n.find(L=>L.id===N);return F?.workspaceKind==="local_project"&&F.workspaceId===M.id?null:N})),k(`Removed ${M.name}`,"success")}catch(O){h(O instanceof Error?O.message:String(O)),k("Project could not be removed","error")}}}return{createCloudProjectFromScratch:A,createProjectFromScratch:E,createProjectCollection:P,removeProject:$}}function aae({appDispatch:e,busy:t,cloudProjectById:n,createCloudProjectFromScratch:a,createProjectFromScratch:o,createProjectCollection:r,expandProject:s,localProjectById:c,onCreateCloudEnvironment:m,onNewCloudProject:u,onNewLocalProject:f,onUseExistingFolderPath:h,newProjectBusy:x,newProjectMode:k,newProjectName:_,projectTargetValue:P,setDiffPanelOpen:E,setDraftModel:A,setDraftProvider:$,setError:j,setNewProjectBusy:M,setNewProjectDialogOpen:w,setNewProjectName:R,setNewProjectPath:O,showToast:N,workspaceBusy:F}){const L=y.useCallback(re=>{if(re===P||t||F)return;if(j(null),re==="action:new-local-project"){f();return}if(re==="action:add-local-project"){h();return}if(re==="action:add-local-project-path"){h();return}if(re==="action:new-cloud-project"){u();return}if(re==="action:create-cloud-environment"){m();return}if(re==="none"){e({type:"selectProject",projectId:null}),E(!1),N("Started a chat without project files.","info");return}const ve=re.indexOf(":"),oe=ve>=0?re.slice(0,ve):"",K=ve>=0?re.slice(ve+1):"";if(oe==="local"){const H=c.get(K);if(!H){N("Project is no longer available.","error");return}const de=kt("local",H.id);e({type:"selectProject",projectId:de}),s(de),E(!1);return}if(oe==="cloud"){const H=n.get(K);if(!H){N("Cloud Project is no longer available.","error");return}const de=kt("cloud",H.id);e({type:"selectProject",projectId:de}),s(de),$("openpond"),A(X=>nr("openpond",X)),E(!1)}},[e,t,n,s,c,m,u,f,h,P,E,A,$,j,N,F]),Y=y.useCallback(async re=>{const ve=_.trim();if(!x){if(k==="existing-local"?!re?.name.trim()||!re.sourceFolders.length:!ve)return!1;M(!0);try{const oe=k==="cloud"?await a(ve):k==="existing-local"?await r(re):await o(ve);return oe&&(w(!1),R(""),O("")),!!oe}finally{M(!1)}}},[a,o,r,x,k,_,M,w,R,O]);return{changeProjectTarget:L,submitNewProjectDialog:Y}}function iae(e){return{id:`right-chat-${Date.now()}-${Math.random().toString(36).slice(2,8)}`,activationVersion:1,sessionId:e.sessionId,prompt:e.prompt??"",provider:e.provider,model:e.model,scrollTop:0,stickyToBottom:!0}}function Pre(e){return e.reduce((t,n)=>!t||n.activationVersion>=t.activationVersion?n:t,null)}function oae(e,t){const n=Math.max(0,...e.map(r=>r.activationVersion))+1;let a=!1;const o=e.map(r=>r.id!==t?r:(a=!0,{...r,activationVersion:n}));return a?o:[...e]}function rae(e,t){const n=Math.max(0,...e.map(r=>r.activationVersion))+1;let a=!1;const o=e.map(r=>r.sessionId!==t.sessionId?r:(a=!0,{...r,activationVersion:n,prompt:t.prompt??r.prompt}));return a?o:[...e]}function OT(e){return!!(e.parentSessionId&&e.subagentRunId)}function sae(e){const t=e.sessions.filter(OT);return{knownSessionIds:new Set(t.map(n=>n.id)),newSessions:t.filter(n=>!e.knownSessionIds.has(n.id))}}function lae(e,t){const n=new Set(e.map(o=>o.sessionId).filter(Boolean)),a=t.filter(OT).filter(o=>!n.has(o.id)).map(o=>({id:`right-subagent-${o.id}`,activationVersion:1,sessionId:o.id,prompt:"",provider:o.provider,model:o.modelRef?.modelId??"",scrollTop:0,stickyToBottom:!0}));return a.length>0?[...e,...a]:e}const i1="openpond/openpond",cae="github.issue.write";function dae(e){return e.some(t=>t.provider==="github"&&(t.ref.capabilities??[]).includes(cae))}function Are(e){return[`Title: ${e.title.trim()}`,"","Description:",e.description.trim()].join(`
223
- `)}function uae(e){const t=e.trim();return[`@github Submit this request as a new GitHub issue in ${i1}.`,`Use the GitHub connected app write operation github.issue.create with input.repo set to ${i1}, a concise title, and a complete issue body that preserves the request.`,"This slash command is the user's explicit intent to create the issue.","Before creating, search open issues in the repository for an obvious duplicate. If a clear duplicate exists, do not create a new issue; report the existing issue instead.","",`Issue request:
224
- ${t}`].join(`
225
- `)}function mae(e,t){const n=t.trim();switch(e.id){case"agent":return{kind:"send_prompt",prompt:`/agent ${n}`,requiresInstructions:!0};case"skill":return{kind:"send_prompt",prompt:`/skill ${n}`,requiresInstructions:!1};case"goal":return{kind:"send_prompt",prompt:`/goal ${n}`,requiresInstructions:!0};case"workflow":return{kind:"send_prompt",prompt:["Create a scheduled workflow attached to this chat.","Use the schedule_work tool after resolving the exact cadence, local date/time, and timezone from my request. Ask a concise clarification only if a required scheduling detail is genuinely missing.",`Workflow request: ${n}`].join(`
226
-
227
- `),requiresInstructions:!0};case"train":return{kind:"open_training",objective:n||null};case"submit-issue":return{kind:"send_prompt",prompt:uae(n),requiresInstructions:!0};case"sync-cloud":return{kind:"send_prompt",prompt:`/sync-cloud ${n}`,requiresInstructions:!1}}}const o1=[];function pae(e){const{approvals:t,codexHistoryEvents:n,contextCompaction:a,pendingChatUserMessages:o,rightChatHistoryEvents:r,rightChatPanels:s,runningSessionIds:c,selectedSessionId:m,sidebarSessions:u}=e;return y.useMemo(()=>{const f=new Map(u.map(x=>[x.id,x])),h=fae(t);return s.map(x=>{const k=x.sessionId?f.get(x.sessionId)??null:null,_=en(x.sessionId),P=_?(x.sessionId?r[x.sessionId]:void 0)??(x.sessionId===m?n:o1):o1,E=Xg(P,[]),A=x.sessionId?h.get(x.sessionId)??null:null,$=!!(k&&c.has(k.id)),j=_?qJ({events:P}):null,M=k?.cwd??null,w=k?.appId??k?.localProjectId??(k?.workspaceKind==="local_project"?k.workspaceId??null:null)??(k?.cwd&&!Ui(k.workspaceKind)?Bw(k.cwd):null),R=x.sessionId?o[x.sessionId]??null:null;return{...x,session:k,title:UJ(j,k?.title??"New task"),messages:_?KA(yp(P),R):[],createImproveRun:j,contextWindowStatus:dA({provider:x.provider,snapshot:CA(E,x.sessionId),preferences:a}),goalRuntime:RA(E,x.sessionId),pendingApproval:A,running:$,workspaceRootPath:M,activeWorkspaceAppId:w,pendingUserMessage:R,runtimeSource:_?"history":"live"}})},[t,n,a,o,r,s,c,m,u])}function fae(e){const t=new Map;for(const n of e){if(n.status!=="pending")continue;const a=t.get(n.sessionId);(!a||Date.parse(n.createdAt)>Date.parse(a.createdAt))&&t.set(n.sessionId,n)}return t}function hae(e){const{applyPayload:t,connection:n,locallyActiveSessionIds:a,panels:o,sessions:r,setError:s}=e,c=y.useMemo(()=>{const f=new Set,h=[];for(const x of o)!en(x.sessionId)||!x.sessionId||f.has(x.sessionId)||(f.add(x.sessionId),h.push(x.sessionId));return h.join(`
228
- `)},[o]),m=y.useMemo(()=>{if(!c)return"";const f=new Set(c.split(`
229
- `).filter(Boolean));return r.filter(h=>f.has(h.id)&&h.status==="active").map(h=>h.id).join(`
230
- `)},[c,r]),u=y.useMemo(()=>c?c.split(`
231
- `).filter(f=>a.has(f)).join(`
232
- `):"",[a,c]);y.useEffect(()=>{if(!n||!c)return;const f=c.split(`
233
- `).filter(Boolean),h=new Set(m.split(`
234
- `).filter(Boolean)),x=new Set(u.split(`
235
- `).filter(Boolean)),k=f.map(_=>Hy({connection:n,locallyActive:x.has(_),onError:P=>s(P instanceof Error?P.message:String(P)),onPayload:P=>t(Dy(P,x.has(_))),reportedActive:h.has(_),sessionId:_,surface:"thread"}));return()=>k.forEach(_=>_())},[m,t,n,u,c,s])}const r1=[];function gae(e){const{activeModel:t,activeProvider:n,approvals:a,applyRightCodexHistoryPayload:o,codexHistoryEvents:r,connectedAppMentions:s,connection:c,contextCompaction:m,openLabTraining:u,locallyActiveCodexHistorySessionIds:f,openPondCommandAccessMode:h,pendingChatUserMessages:x,providerSettings:k,rightChatHistoryEvents:_,rightChatPanels:P,rightPanelMode:E,runtimeIndexes:A,runtimeEventStore:$,runningSessionIds:j,selectedSession:M,selectedSessionId:w,sendPrompt:R,setDiffPanelOpen:O,setError:N,setRightChatHistoryEvents:F,setRightChatPanels:L,setRightPanelMode:Y,setRightPanelTabRequest:re,setView:ve,showChangesPanel:oe,showToast:K,sidebarSessions:H,startupReady:de}=e,X=y.useRef(null),Z=y.useRef(new Map),pe=y.useRef(new Set);y.useEffect(()=>{if(!c)return;const Be=P.flatMap(Ge=>Ge.sessionId&&!en(Ge.sessionId)?[Ge.sessionId]:[]);for(const Ge of Be)Object.hasOwn(_,Ge)||pe.current.has(Ge)||(pe.current.add(Ge),ae.runtimeEventsPage(c,{sessionId:Ge,beforeSequence:Number.MAX_SAFE_INTEGER,limit:500}).then(Ve=>{const U=Ve.events.map(J=>J.event);F(J=>({...J,[Ge]:Bs(J[Ge]??r1,U)}))}).catch(Ve=>{N(Ve instanceof Error?Ve.message:String(Ve))}).finally(()=>{pe.current.delete(Ge)}))},[c,_,P,N,F]);const ee=y.useCallback(Be=>{re(Ge=>({id:(Ge?.id??0)+1,tab:Be})),oe()},[oe]),me=y.useCallback((Be=null,Ge={})=>{const Ve=Be?.id?P.find(J=>J.sessionId===Be.id)??null:null;if(Ve)return L(J=>rae(J,{sessionId:Be.id,prompt:Ge.prompt})),O(!0),Y("chat"),Ge.preserveView||ve("chat"),Ve.id;const U=iae({sessionId:Be?.id??null,provider:Be?.provider??n,model:Be?.modelRef?.modelId??t,prompt:Ge.prompt});return L(J=>[...J,U]),O(!0),Y("chat"),Ge.preserveView||ve("chat"),U.id},[t,n,P,O,L,Y,ve]);y.useEffect(()=>{if(!de)return;const Be=X.current;if(!Be){X.current=new Set(H.filter(J=>!!(J.parentSessionId&&J.subagentRunId)).map(J=>J.id));return}const Ge=sae({sessions:H,knownSessionIds:Be});X.current=Ge.knownSessionIds;for(const J of Ge.newSessions)Z.current.set(J.id,J);const Ve=M?.parentSessionId??M?.id??null;if(!Ve)return;const U=[...Z.current.values()].filter(J=>J.parentSessionId===Ve);if(U.length!==0){for(const J of U)Z.current.delete(J.id);L(J=>lae(J,U)),O(!0),Y("chat")}},[M?.id,M?.parentSessionId,O,L,Y,H,de]);const be=y.useCallback(()=>{if(P.length===0){me(null);return}O(!0),Y("chat"),ve("chat")},[me,P.length,O,Y,ve]),Me=y.useCallback(Be=>{const Ge=P.length<=1&&P.some(U=>U.id===Be),Ve=()=>{L(U=>U.filter(J=>J.id!==Be))};if(Ge&&E==="chat"){if(ee("files"),typeof window>"u"){Ve();return}window.requestAnimationFrame(Ve);return}Ve()},[P,E,L,ee]),ke=y.useCallback((Be,Ge)=>{L(Ve=>Ve.map(U=>U.id===Be?{...U,prompt:Ge}:U))},[L]),ue=y.useCallback(Be=>{L(Ge=>oae(Ge,Be))},[L]),Ie=y.useCallback((Be,Ge)=>{L(Ve=>Ve.map(U=>U.id===Be?{...U,...Ge}:U))},[L]),Le=y.useCallback((Be,Ge)=>{L(Ve=>Ve.map(U=>U.id===Be?{...U,model:Ge}:U))},[L]),Fe=y.useCallback((Be,Ge)=>{L(Ve=>Ve.map(U=>U.id===Be?{...U,provider:Ge,model:nr(Ge,U.model,k)}:U))},[k,L]);hae({applyPayload:o,connection:c,locallyActiveSessionIds:f,panels:P,sessions:H,setError:N});const Xe=pae({approvals:a,codexHistoryEvents:r,contextCompaction:m,pendingChatUserMessages:x,rightChatHistoryEvents:_,rightChatPanels:P,runningSessionIds:j,selectedSessionId:w,sidebarSessions:H}),Ze=y.useCallback(async(Be,Ge=[],Ve=null,U=null,J={})=>{const q=P.find(_t=>_t.id===Be);if(!q)return!1;const ie=J.promptOverride??q.prompt,he=U?mae(U,ie):null;if(he?.kind==="open_training")return Ge.length>0?(K("/train uses this chat; add other chats from Models.","error"),!1):(u({objective:he.objective,sessionId:q.sessionId}),J.preservePrompt||ke(Be,""),!0);if(U&&he?.kind==="send_prompt"&&he.requiresInstructions&&!ie.trim())return K(`Add instructions after ${U.command}.`,"info"),!1;if(U&&Ge.length>0)return K(`${U.command} tasks do not accept attachments yet. Add file context in the task thread.`,"error"),!1;if(U?.id==="submit-issue"&&!dae(s))return K("Connect the GitHub app before using /submit-issue.","error"),!1;const Pe=q.sessionId?H.find(_t=>_t.id===q.sessionId)??null:null,qe=q.provider==="codex"?h:Pe?.openPondCommandAccessMode??h,Je=he?.kind==="send_prompt"?he.prompt:ie,et=en(q.sessionId)?(q.sessionId?_[q.sessionId]:void 0)??(q.sessionId===w?r:r1):$.getSessionEvents(q.sessionId),ut=en(q.sessionId)&&q.sessionId?_t=>{const Ne=q.sessionId;F(Ye=>({...Ye,[Ne]:Bs(Ye[Ne]??et,[_t])}))}:void 0;return R(Ge,Ve,Je,{session:Pe,selectSession:!1,provider:q.provider,model:q.model,openPondCommandAccessMode:qe,chatMessages:yp(et),displayPrompt:J.displayPrompt,turnMetadata:J.turnMetadata,usageAttribution:U?.id==="submit-issue"?{surface:"chat",workflowKind:"slash_command",commandName:U.command,commandSource:"composer_selection"}:void 0,onCodexHistoryOptimisticEvent:ut,clearPrompt:J.preservePrompt?()=>{}:()=>ke(Be,""),onSessionCreated:_t=>{L(Ne=>Ne.map(Ye=>Ye.id===Be?{...Ye,sessionId:_t.id,provider:_t.provider,model:_t.modelRef?.modelId??Ye.model}:Ye))}})},[r,s,_,P,A,$,w,u,h,R,L,ve,H,K,ke]);return{activateRightChatPanel:ue,closeRightChatPanel:Me,openRightChatPanel:me,rightChatPanelViews:Xe,showRightChatPanel:be,showRightPanelDiffTab:ee,submitRightChatPrompt:Ze,updateRightChatModel:Le,updateRightChatPrompt:ke,updateRightChatProvider:Fe,updateRightChatScrollState:Ie}}function vae(e){const{appPreferences:t,connection:n,selectedSessionId:a,setAppPreferences:o,setCodexHistorySessions:r,setError:s,setSelectedSessionId:c,setSessions:m}=e;async function u(A,$){if(!n)return;const j=t[A]??{},M={...j,...$,archived:$.pinned?!1:$.archived??j.archived};o(w=>({...w,[A]:M}));try{const w=await ae.patchSidebarAppPreference(n,A,$);o(R=>({...R,[A]:w}))}catch(w){s(w instanceof Error?w.message:String(w)),o(R=>({...R,[A]:j}))}}function f(A){u(A.id,{pinned:!A.pinned,archived:!1})}async function h(A,$){if(!n)return;const j=en(A.id)?r:m,M={...A,...$};j(w=>w.some(R=>R.id===A.id)?w.map(R=>R.id===A.id?M:R):[M,...w]);try{const w=await ae.patchSession(n,A.id,$);j(R=>R.some(O=>O.id===w.id)?R.map(O=>O.id===w.id?w:O):[w,...R])}catch(w){s(w instanceof Error?w.message:String(w)),j(R=>R.map(O=>O.id===A.id?A:O))}}function x(A){h(A,{pinned:!1,savedForLater:!A.savedForLater,archived:!1})}function k(A){h(A,{pinned:!A.pinned,savedForLater:!1,archived:!1})}function _(A){h(A,{pinned:!1,savedForLater:!1,archived:!0}),a===A.id&&c(null)}function P(A){h(A,{archived:!1})}function E(A,$){const j=$.trim();!j||j===A.title||h(A,{title:j})}return{archiveSession:_,renameSession:E,restoreSession:P,toggleProjectPinned:f,toggleSessionPinned:k,toggleSessionSavedForLater:x}}function bae(e){return e.toLowerCase().replace(/[^a-z0-9._-]+/g,"-").replace(/^-+|-+$/g,"").slice(0,72)||"new-branch"}function yae({connection:e,activeWorkspaceAppId:t,appDefaults:n,bootstrap:a,branchDialogName:o,commitIncludeUnstaged:r,commitMessage:s,commitNextStep:c,draftModel:m,draftProvider:u,cloudProjects:f,selectedApp:h,selectedProject:x,selectedProjectLinkedOpenPondApp:k,selectedSession:_,sessions:P,title:E,visibleWorkspaceDiff:A,visibleWorkspaceState:$,workspaceBusy:j,workspaceName:M,appDispatch:w,applyBootstrapPayload:R,expandProject:O,refreshWorkspace:N,refreshWorkspaceDiff:F,rememberWorkspaceState:L,setBranchDialogOpen:Y,setCommitDialogOpen:re,setError:ve,setSessions:oe,setSettingsSection:K,setSyncingWorkspaceAppId:H,setView:de,setWorkspaceBusy:X,showToast:Z}){function pe(){return`${qP(n.defaultBranchPrefix)}${bae(M??E??"new-branch")}`}function ee(){return M?`Update ${M}`:(A?.filesChanged??$?.changedFilesCount??0)===1?"Update workspace file":"Update workspace files"}function me(Ve="commit"){w({type:"openCommitDialog",nextStep:Ve})}function be(){w({type:"openBranchDialog",branchName:pe()})}function Me(){j||Y(!1),K("configuration"),de("settings"),Ft({kind:"settings",section:"configuration"})}async function ke(Ve){if(!(!e||!t)){X(!0),ve(null);try{const U=await ae.checkoutWorkspaceBranch(e,t,{branch:Ve});L(U),U.initialized&&F(t)}catch(U){ve(U instanceof Error?U.message:String(U))}finally{X(!1)}}}async function ue(){if(!e||!t)return;const Ve=o.trim();if(Ve){X(!0),ve(null);try{const U=await ae.createWorkspaceBranch(e,t,{branch:Ve});L(U),U.initialized&&F(t),Y(!1),Z(`Checked out ${Ve}`,"success")}catch(U){ve(U instanceof Error?U.message:String(U))}finally{X(!1)}}}async function Ie(Ve){H(Ve);const U=a?.apps.find(J=>J.id===Ve)?.name??a?.localProjects.find(J=>J.id===Ve)?.name??"Workspace";try{const J=await N(Ve,!0);J?.initialized&&Ve===t&&F(Ve),J?.initialized&&!J.error?Z(`${U} synced locally`,"success"):J?.error&&Z("Workspace sync failed","error")}finally{H(J=>J===Ve?null:J)}}async function Le(){t&&await Ie(t)}async function Fe(Ve,U,J={}){if(!e)return null;const q=_&&!en(_.id)?_:null;if(wae(U,q,J)||q&&Sae(q,x,h))return q;const ie=q?await Xe(q):null;if(ie)return ie;const he=xae(P,x,h);if(he){const et=he.workspaceKind==="local_project"&&he.workspaceId?kt("local",he.workspaceId):null;return w({type:"selectSession",sessionId:he.id,appId:he.appId,projectId:et}),he.workspaceKind==="local_project"&&he.workspaceId&&O(kt("local",he.workspaceId)),he}const Pe=Ga(x,f),qe=await ae.createSession(e,{provider:u,modelRef:ii(u,m,a?.providers??null),appId:k?.appId??h?.id??null,appName:k?.appName??h?.name??null,workspaceKind:x?"local_project":h?"sandbox_app":void 0,workspaceId:x?.id??h?.id??null,workspaceName:x?.name??h?.name??null,localProjectId:x?.id??null,cloudProjectId:Pe?.id??null,cloudTeamId:Pe?.teamId??null,cwd:x?x.workspacePath:null,title:Ve});oe(et=>[qe,...et]);const Je=qe.workspaceKind==="local_project"&&qe.workspaceId?kt("local",qe.workspaceId):null;return w({type:"selectSession",sessionId:qe.id,appId:qe.appId,projectId:Je}),qe.workspaceKind==="local_project"&&qe.workspaceId&&O(kt("local",qe.workspaceId)),qe}async function Xe(Ve){if(!e||!x||!k?.appId||en(Ve.id)||Ve.workspaceKind==="local_project"||Ve.appId!==k.appId)return null;const U=Ga(x,f),J=await ae.patchSession(e,Ve.id,{appId:k.appId,appName:k.appName,workspaceKind:"local_project",workspaceId:x.id,workspaceName:x.name,localProjectId:x.id,cloudProjectId:U?.id??null,cloudTeamId:U?.teamId??null,cwd:x.workspacePath});return oe(q=>q.map(ie=>ie.id===J.id?J:ie)),w({type:"selectSession",sessionId:J.id,appId:J.appId,projectId:kt("local",x.id)}),O(kt("local",x.id)),J}async function Ze(Ve,U={}){if(!e)return null;const J=await Fe(M?`${M} workspace`:"Workspace action",Ve,U);if(!J)return null;const q=await ae.workspaceTool(e,J.id,{action:Ve,args:U,source:"ui_button"});Z(q.output,q.ok?"success":"error"),R(await ae.bootstrap(e));const ie=q.appId??kae(J);return ie&&(await N(ie,!1))?.initialized&&await F(ie),q}async function Be(Ve,U={}){if(Ve==="git_commit"&&typeof U.message!="string")return me("commit"),null;X(!0),ve(null);try{return await Ze(Ve,U)}catch(J){return ve(J instanceof Error?J.message:String(J)),null}finally{X(!1)}}async function Ge(){const Ve=s.trim()||ee(),U=c==="commit_publish",J=U&&!!$?.remoteUrl;if(!(J&&!window.confirm("Replace the current origin remote with the new OpenPond repo after committing?"))){X(!0),ve(null);try{if(!(await Ze("git_commit",{message:Ve,includeUnstaged:r}))?.ok||c==="commit_push"&&!(await Ze("git_push",{runChecks:!1}))?.ok||U&&!(await Ze("publish_openpond_repo",{replaceOrigin:J}))?.ok)return;re(!1)}catch(q){ve(q instanceof Error?q.message:String(q))}finally{X(!1)}}}return{changeWorkspaceBranch:ke,openCommitDialog:me,openCreateWorkspaceBranchDialog:be,openDefaultsSettingsFromBranchDialog:Me,runWorkspaceTool:Be,submitCommitDialog:Ge,submitCreateWorkspaceBranch:ue,syncWorkspaceLocally:Le,syncWorkspaceLocallyForApp:Ie}}function Sae(e,t,n){return!t&&!n?!0:$T(e,t,n)}function xae(e,t,n){if(!t&&!n)return null;let a=null,o=Number.NEGATIVE_INFINITY;for(const r of e){if(r.archived||!$T(r,t,n))continue;const s=Date.parse(r.updatedAt),c=Number.isFinite(s)?s:0;(!a||c>o)&&(a=r,o=c)}return a}function $T(e,t,n){return t?e.workspaceKind==="local_project"&&e.workspaceId===t.id:n?e.appId===n.id||e.workspaceId===n.id:!1}function kae(e){return e.workspaceKind==="sandbox"?e.localProjectId??null:e.workspaceId??e.appId??null}function wae(e,t,n={}){return(Iae(e)||Cae(e,n))&&_ae(t)}function Iae(e){return e.startsWith("sandbox_")?e!=="sandbox_create"&&e!=="sandbox_templates"&&e!=="sandbox_template_launch":!1}function _ae(e){return e?.workspaceKind==="sandbox"||e?.workspaceKind==="sandbox_template"}function Cae(e,t){if(e!=="sandbox_create")return!1;const n=t.runtime;return!!(n&&typeof n=="object"&&!Array.isArray(n)&&typeof n.runtimeId=="string"&&n.runtimeId.trim())}function Rae(e,t){return e.kind==="general"?"# general":e.title?e.title:e.participants.find(a=>a.userId!==t)?.name??"Direct message"}const Pae=[];function Aae(e){const{composerDraftStore:t,appDispatch:n,mentionedAppId:a,setMentionedAppId:o,cloudSetupDialog:r,setCloudSetupDialog:s,setRightPanelTabRequest:c,workspaceDiffPanelViewState:m,setWorkspaceDiffPanelViewState:u,rightChatHistoryEvents:f,setRightChatHistoryEvents:h,locallyActiveCodexHistorySessionIds:x,setCodexHistoryTurnLocallyActive:k,draftSubagentDelegationMode:_,setDraftSubagentDelegationMode:P,confirmProjectAction:E,view:A,selectedAppId:$,selectedProjectId:j,selectedSessionId:M,draftProvider:w,draftModel:R,activeExperience:O,codexPermissionMode:N,codexReasoningEffort:F,openPondCommandAccessMode:L,busy:Y,diffPanelOpen:re,diffPanelExpanded:ve,rightPanelMode:oe,rightChatPanels:K,newProjectMode:H,newProjectName:de,newProjectBusy:X,commitMessage:Z,commitIncludeUnstaged:pe,commitNextStep:ee,branchDialogName:me,setSectionMenuOpen:be,setView:Me,setSelectedAppId:ke,setSelectedProjectId:ue,setSelectedSessionId:Ie,setPrompt:Le,setDraftProvider:Fe,setDraftModel:Xe,setDiffPanelOpen:Ze,setRightPanelMode:Be,setRightChatPanels:Ge,setSyncingWorkspaceAppId:Ve,setSettingsSection:U,setNewProjectDialogOpen:J,setNewProjectMode:q,setNewProjectName:ie,setNewProjectPath:he,setNewProjectBusy:Pe,setCommitDialogOpen:qe,setBranchDialogOpen:Je,setError:et,showToast:ut,appPreferences:_t,applyBootstrapPayload:Ne,approvals:Ye,bootstrap:g,connection:B,events:ne,runtimeEventStore:we,sessions:fe,startup:Q,setAppPreferences:C,setCodexHistorySessions:G,setEvents:se,setSessions:te,cloudProjectById:ge,localProjectById:Se,selectedApp:xe,selectedCloudProject:Oe,selectedProject:Te,selectedProjectLinkedOpenPondApp:Ue,selectedSession:Ee,sidebarSessions:tt,runtimeIndexes:ht,connectedAppMentions:xn,codexHistoryEvents:xt,setCodexHistoryEvents:Xn,account:kn,accountPending:Rn,accountSignedOut:Zt,activeModel:On,activeProvider:Pn,activeWorkspaceAppId:$n,activeWorkspaceKind:Un,activeWorkspaceLocation:Gt,appDefaults:Ct,selectedSessionProjectId:Nn,workspaceName:pt,accountScopeKey:Nt,teamChat:ea,communities:$t,selectedProjectConfirmedCloudProject:zn,activeOpenPondCommandAccessMode:xa,viewWorkspaceAppId:lt,viewWorkspaceId:Dn,viewWorkspaceKind:gi,openPondActionCatalog:ka,selectedActionCatalog:Gn,expandProject:Hn,setExpandedProjectIds:Vi,advanceTrainingModelChatAfterTurn:Ki,bindTrainingModelChatSession:ei,prepareTrainingModelChatTurn:wt,chatMessages:pn,pendingChatUserMessages:it,recordPendingChatUserMessage:Et,runningSessionIds:ln,workspaceBusy:Ln,visibleWorkspaceState:mt,visibleWorkspaceDiff:V,rememberWorkspaceState:Ae,refreshWorkspace:De,setWorkspaceBusy:rt,refreshWorkspaceDiffWhenNeeded:Vt,setPendingWorkspaceTarget:ca,pendingSidebarWorkspaceTarget:vi,setPendingSidebarWorkspaceTarget:wn,projectTarget:Wi,workspaceTarget:Jn}=e,Ma=A==="apps"?"Apps":A==="get-started"?"Walkthroughs":A==="labs"?"Models":A==="scheduled"?"Workflows":A==="outputs"?"Outputs":A==="projects"?"Projects":A==="team"?ea.detail?Rae(ea.detail.thread,ea.currentUserId):"Team Chat":A==="community"?$t.preview?.displayName??"Communities":Ee?.title??CP(O),{browserConversationId:da,handleWorkspaceDiffPanelViewStateChange:xo}=Qne({appDispatch:n,diffPanelExpanded:ve,diffPanelOpen:re,rightChatPanels:K,rightPanelMode:oe,selectedAppId:$,selectedCloudProject:Oe,selectedProjectId:j,selectedSession:Ee,selectedSessionId:M,setWorkspaceDiffPanelViewState:u,view:A,viewWorkspaceAppId:lt,viewWorkspaceId:Dn,viewWorkspaceKind:gi,workspaceDiffPanelViewState:m}),ir=y.useCallback(gt=>{Ft({kind:"chat",sessionId:gt}),Ie(gt),ke(null),ue(null),Me("chat")},[ke,ue,Ie,Me]),ko=y.useCallback(()=>{q("existing-local"),ie(""),he(""),J(!0)},[J,q,ie,he]),wo=y.useCallback(()=>{q("local"),ie(""),he(""),J(!0)},[J,q,ie,he]),{createCloudProjectFromScratch:It,createProjectFromScratch:bl,createProjectCollection:or,removeProject:yl}=nae({connection:B,defaultTeamId:Ct.defaultTeamId,sessions:fe,selectedProjectId:j,confirmProjectAction:E,applyBootstrapPayload:Ne,expandProject:Hn,setExpandedProjectIds:Vi,setSelectedAppId:ke,setSelectedProjectId:ue,setSelectedSessionId:Ie,setError:et,setView:Me,showToast:ut}),{changeWorkspaceBranch:zr,openCommitDialog:Sl,openCreateWorkspaceBranchDialog:Gi,openDefaultsSettingsFromBranchDialog:xl,runWorkspaceTool:Br,submitCommitDialog:Fr,submitCreateWorkspaceBranch:Vr,syncWorkspaceLocally:kl}=yae({connection:B,activeWorkspaceAppId:$n,appDefaults:Ct,bootstrap:g,branchDialogName:me,commitIncludeUnstaged:pe,commitMessage:Z,commitNextStep:ee,draftModel:R,draftProvider:w,cloudProjects:g?.cloudProjects??[],selectedApp:xe,selectedProject:Te,selectedProjectLinkedOpenPondApp:Ue,selectedSession:Ee,sessions:fe,title:Ma,visibleWorkspaceDiff:V,visibleWorkspaceState:mt,workspaceBusy:Ln,workspaceName:pt,appDispatch:n,applyBootstrapPayload:Ne,expandProject:Hn,refreshWorkspace:De,refreshWorkspaceDiff:Vt,rememberWorkspaceState:Ae,setBranchDialogOpen:Je,setCommitDialogOpen:qe,setError:et,setSessions:te,setSettingsSection:U,setSyncingWorkspaceAppId:Ve,setView:Me,setWorkspaceBusy:rt,showToast:ut}),wl=Wne({applyBootstrapPayload:Ne,cloudProjects:g?.cloudProjects??[],connection:B,localProjectById:Se,selectedCloudProject:Oe,selectedProject:Te,setWorkspaceBusy:rt,showToast:ut,visibleWorkspaceState:mt}),bi=g?.preferences.subagents.delegationMode??"manual",Il=Ee?.subagentDelegationMode??_,Kr=!!(O==="development"&&g?.preferences.subagents.enabled&&Pn!=="codex"&&!en(M)&&!Ee?.subagentRunId),Wr=y.useCallback(gt=>{if(!Ee){P(gt);return}if(!B||en(Ee.id)||Ee.subagentRunId)return;const cn=Ee.id,ma=Ee.subagentDelegationMode??null;te(vn=>vn.map(Bn=>Bn.id===cn?{...Bn,subagentDelegationMode:gt}:Bn)),ae.patchSession(B,cn,{subagentDelegationMode:gt}).then(vn=>{te(Bn=>Bn.map(_a=>_a.id===vn.id?vn:_a))}).catch(vn=>{te(Bn=>Bn.map(_a=>_a.id===cn?{..._a,subagentDelegationMode:ma}:_a)),et(vn instanceof Error?vn.message:String(vn))})},[B,Ee,et,te]),Io=y.useCallback(gt=>{h(cn=>cn[gt.session.id]===gt.events?cn:{...cn,[gt.session.id]:gt.events}),G(cn=>vp(cn,gt.session))},[G]),{answerCreateImproveQuestion:Gr,applyCreateImproveCandidate:wa,approveCreateImproveRun:_l,cancelCreateImproveRun:rr,changeDraftProvider:Ji,openCreateImprovePullRequest:ua,reconcileCreateImprovePullRequest:Cl,rejectCreateImproveCandidate:Rl,pauseCreateImproveRun:An,resumeCreateImproveRun:_o,reviseCreateImproveRun:Oa,sendPrompt:ti,stopTurn:sr}=zne({applyBootstrapPayload:Ne,bootstrap:g,chatMessages:pn,connection:B,codexPermissionMode:N,codexReasoningEffort:F,openPondCommandAccessMode:xa,draftModel:R,draftProvider:w,experience:O,expandProject:Hn,getPrompt:t.getSnapshot,apps:g?.apps??[],connectedAppMentions:xn,mentionedAppId:a,ensureCloudSessionReady:wl,refreshWorkspace:De,refreshWorkspaceDiff:Vt,selectedApp:xe,selectedActionCatalog:Gn,openPondActionCatalog:ka,cloudProjects:g?.cloudProjects??[],accountScopeKey:Nt,selectedCloudProject:Oe,selectedProject:Te,selectedProjectLinkedOpenPondApp:Ue,selectedSession:Ee,sessions:fe,workspaceTarget:Jn.value,subagentDelegationMode:Ee?.subagentDelegationMode??_,setDraftModel:Xe,setDraftProvider:Fe,setError:et,setPrompt:Le,setMentionedAppId:o,setCodexHistoryEvents:Xn,setCodexHistorySessions:G,onCodexHistoryTurnActivityChange:k,onCodexHistoryTurnPayload:Io,onPendingUserMessage:Et,setEvents:se,setSelectedAppId:ke,setSelectedProjectId:ue,setSelectedSessionId:Ie,setSessions:te,setView:Me,setWorkspaceBusy:rt}),{archiveSession:Co,restoreSession:Pl,renameSession:Jr,toggleProjectPinned:lr,toggleSessionPinned:Zi,toggleSessionSavedForLater:Ro}=vae({appPreferences:_t,connection:B,selectedSessionId:M,setAppPreferences:C,setCodexHistorySessions:G,setError:et,setSelectedSessionId:Ie,setSessions:te}),{changeWorkspaceTarget:Po,moveProjectToCloud:Zr,startCloudSetupUpload:Yr}=Xne({account:kn,accountPending:Rn,accountSignedOut:Zt,activeWorkspaceKind:Un,activeWorkspaceLocation:Gt,appDispatch:n,applyBootstrapPayload:Ne,busy:Y,cloudSetupDialog:r,cloudProjects:g?.cloudProjects??[],connection:B,defaultTeamId:Ct.defaultTeamId,expandProject:Hn,localProjectById:Se,selectedCloudProject:Oe,selectedProject:Te,selectedSession:Ee,selectedSessionProjectId:Nn,setCloudSetupDialog:s,setDiffPanelOpen:Ze,setError:et,setSessions:te,setWorkspaceBusy:rt,showToast:ut,visibleWorkspaceState:mt,workspaceBusy:Ln}),$a=y.useCallback(async gt=>{if(O==="work"&&!Ee){if(gt==="local"){ca("local"),ut(Te?`Next task will use the local ${Te.name} checkout.`:"Next task will use an app-managed local workspace.","info");return}if(gt==="cloud"&&!Te&&!Oe){if(Rn){ut("Checking OpenPond account. Try again in a moment.","info");return}if(Zt){ut("Add an OpenPond account before using Hosted.","error");return}ca("cloud"),ut("Next task will use Hosted without a Project.","info");return}}if(gt==="hybrid"){const cn=Oe?.id??zn?.id??Ee?.cloudProjectId??null,ma=Oe?.teamId??zn?.teamId??Ee?.cloudTeamId??null;if(Rn){ut("Checking OpenPond account. Try again in a moment.","info");return}if(Zt){ut("Add an OpenPond account before using Hybrid.","error");return}if(!cn||!ma){ca(null),ut("Upload/sync this Project to Cloud before using Hybrid.","error");return}if(Ee&&!en(Ee.id)){if(zi(Ee))return;if(!B){ut("OpenPond App server is not connected.","error");return}const vn=await ae.patchSession(B,Ee.id,{provider:w,modelRef:ii(w,R,g?.providers??null),appId:null,appName:null,workspaceKind:"sandbox",workspaceId:null,workspaceName:Oe?.name??zn?.name??Te?.name??Ee.workspaceName??"Hybrid workspace",localProjectId:Te?.id??Ee.localProjectId??null,cloudProjectId:cn,cloudTeamId:ma,metadata:TA(Ee.metadata),cwd:Te?.workspacePath??Ee.cwd??null});te(Bn=>Bn.map(_a=>_a.id===vn.id?vn:_a)),ca(null),ut("Hybrid will use your selected model with hosted sandbox edits.","info");return}ca("hybrid"),ut("Next message will use Hybrid with a hosted sandbox.","info");return}ca(null),await Po(gt)},[Rn,Zt,O,g?.providers,Po,B,R,w,Oe?.id,Oe?.name,Oe?.teamId,Te?.id,zn?.id,zn?.name,zn?.teamId,Te?.name,Te?.workspacePath,Ee,ca,te,ut]),Na=y.useCallback((gt,cn)=>{ke(null),ue(gt),Ie(null),Me("chat"),Hn(gt),wn({projectId:gt,target:cn})},[Hn,ke,ue,Ie,Me]);y.useEffect(()=>{if(!vi||A!=="chat"||j!==vi.projectId||M!==null)return;const gt=vi.target;wn(null),$a(gt)},[$a,vi,j,M,A]);const Qr=eae({advanceTrainingTurn:Ki,bindTrainingSession:ei,composerDraftStore:t,onSessionCreated:gt=>{Ie(gt.id),Me("chat"),Ft({kind:"chat",sessionId:gt.id}),P(null)},onSubmitted:async()=>{const gt=Ee;if(!(!B||!gt||!zc(gt)))try{const cn=await ae.patchSession(B,gt.id,{metadata:nG(gt.metadata)});te(ma=>ma.map(vn=>vn.id===cn.id?cn:vn))}catch(cn){ut(cn instanceof Error?`Task started, but its Draft label could not be cleared: ${cn.message}`:"Task started, but its Draft label could not be cleared.","error")}},prepareTrainingTurn:wt,sendPrompt:ti,setMentionedAppId:o,showToast:ut}),cr=tae({appDispatch:n,connection:B,sessions:fe,setDiffPanelOpen:Ze,setRightPanelMode:Be,setSessions:te,setView:Me}),{createCloudEnvironmentFromSidebar:yi,openCloudProjectDialog:dr,openUrlInBrowserPanel:Yi,showBrowserPanel:Xr,showChangesPanel:es,showGoalSidebarTab:ts}=dne({account:kn,browserConversationId:da,cloudProjectById:ge,cloudProjects:g?.cloudProjects??[],diffPanelOpen:re,rightPanelMode:oe,selectedProjectId:j,setDiffPanelOpen:Ze,setNewProjectDialogOpen:J,setNewProjectMode:q,setNewProjectName:ie,setRightPanelMode:Be}),{changeProjectTarget:Al,submitNewProjectDialog:ns}=aae({appDispatch:n,busy:Y,cloudProjectById:ge,createCloudProjectFromScratch:It,createProjectFromScratch:bl,createProjectCollection:or,expandProject:Hn,localProjectById:Se,newProjectBusy:X,newProjectMode:H,newProjectName:de,onCreateCloudEnvironment:yi,onNewCloudProject:dr,onNewLocalProject:wo,onUseExistingFolderPath:ko,projectTargetValue:Wi.value,setDiffPanelOpen:Ze,setDraftModel:Xe,setDraftProvider:Fe,setError:et,setNewProjectBusy:Pe,setNewProjectDialogOpen:J,setNewProjectName:ie,setNewProjectPath:he,showToast:ut,workspaceBusy:Ln}),as=y.useMemo(()=>fe.map(gt=>gt.id),[fe]);mne({browserConversationId:da,sessionIds:as,onOpenSession:ir,onShowBrowserPanel:Xr});const[Tl,Ao]=y.useState(null),is=y.useCallback(gt=>{Ao({id:Date.now(),objective:gt.objective,initialSessionIds:gt.sessionId?[gt.sessionId]:[]}),Ar(Fa()),Me("labs")},[Me]),{activateRightChatPanel:ur,closeRightChatPanel:Si,openRightChatPanel:El,rightChatPanelViews:jl,showRightChatPanel:Ml,showRightPanelDiffTab:Ol,submitRightChatPrompt:xi,updateRightChatModel:os,updateRightChatPrompt:$l,updateRightChatProvider:Nl,updateRightChatScrollState:Dl}=gae({activeModel:On,activeProvider:Pn,approvals:Ye,applyRightCodexHistoryPayload:Io,codexHistoryEvents:xt,connectedAppMentions:xn,connection:B,contextCompaction:Ct.contextCompaction,openLabTraining:is,locallyActiveCodexHistorySessionIds:x,openPondCommandAccessMode:L,pendingChatUserMessages:it,providerSettings:g?.providers??null,rightChatHistoryEvents:f,rightChatPanels:K,rightPanelMode:oe,runtimeIndexes:ht,runtimeEventStore:we,runningSessionIds:ln,selectedSession:Ee,selectedSessionId:M,sendPrompt:ti,setDiffPanelOpen:Ze,setError:et,setRightChatHistoryEvents:h,setRightChatPanels:Ge,setRightPanelMode:Be,setRightPanelTabRequest:c,setView:Me,showChangesPanel:es,showToast:ut,sidebarSessions:tt,startupReady:Q.ready}),Ia=y.useCallback(()=>{be(null),U("profile"),Me("settings"),Ft({kind:"settings",section:"profile"})},[be,U,Me]),rs=y.useMemo(()=>io(g?.diagnostics??Pae,ne.filter(gt=>gt.name==="diagnostic")),[g?.diagnostics,ne]),Hl=y.useCallback(()=>{if(re){Ze(!1);return}if(A==="labs"){Be("changes"),c({id:Date.now(),tab:"summary"}),Ze(!0);return}Be("home"),Ze(!0)},[re,Ze,Be,c,A]);return{title:Ma,browserConversationId:da,handleWorkspaceDiffPanelViewStateChange:xo,openSessionInChat:ir,openExistingProjectPathDialog:ko,removeProject:yl,changeProjectTarget:Al,submitNewProjectDialog:ns,changeWorkspaceBranch:zr,openCommitDialog:Sl,openCreateWorkspaceBranchDialog:Gi,openDefaultsSettingsFromBranchDialog:xl,runWorkspaceTool:Br,submitCommitDialog:Fr,submitCreateWorkspaceBranch:Vr,syncWorkspaceLocally:kl,subagentDelegationDefaultMode:bi,subagentDelegationMode:Il,subagentDelegationAvailable:Kr,changeSubagentDelegationMode:Wr,answerCreateImproveQuestion:Gr,applyCreateImproveCandidate:wa,approveCreateImproveRun:_l,cancelCreateImproveRun:rr,changeDraftProvider:Ji,openCreateImprovePullRequest:ua,reconcileCreateImprovePullRequest:Cl,rejectCreateImproveCandidate:Rl,pauseCreateImproveRun:An,resumeCreateImproveRun:_o,reviseCreateImproveRun:Oa,sendPrompt:ti,stopTurn:sr,archiveSession:Co,restoreSession:Pl,renameSession:Jr,toggleProjectPinned:lr,toggleSessionPinned:Zi,toggleSessionSavedForLater:Ro,moveProjectToCloud:Zr,startCloudSetupUpload:Yr,changeWorkspaceTarget:$a,switchProjectWorkspaceTarget:Na,sendPromptFromMainComposer:Qr,openSandboxWorkspace:cr,createCloudEnvironmentFromSidebar:yi,openCloudProjectDialog:dr,openUrlInBrowserPanel:Yi,showBrowserPanel:Xr,showChangesPanel:es,showGoalSidebarTab:ts,rightChatTrainingLaunchRequest:Tl,setRightChatTrainingLaunchRequest:Ao,closeRightChatPanel:Si,openRightChatPanel:El,rightChatPanelViews:jl,showRightChatPanel:Ml,showRightPanelDiffTab:Ol,submitRightChatPrompt:xi,activateRightChatPanel:ur,updateRightChatModel:os,updateRightChatPrompt:$l,updateRightChatProvider:Nl,updateRightChatScrollState:Dl,openProfileSettings:Ia,diagnosticEvents:rs,toggleRightSidebar:Hl}}const Tae=AE();function Eae(){return S.jsx(KT,{client:Tae,children:S.jsx(jae,{})})}function jae(){const e=ane(),t=Aae(e);return S.jsx(_Z,{primary:e,secondary:t})}const Tre=Object.freeze(Object.defineProperty({__proto__:null,App:Eae},Symbol.toStringTag,{value:"Module"}));export{nr as $,LE as A,SW as B,Go as C,C8 as D,al as E,bP as F,ae as G,Fo as H,Q8 as I,xoe as J,koe as K,wP as L,Z8 as M,zW as N,Ty as O,i8 as P,i1 as Q,xr as R,Ng as S,Gy as T,Qn as U,Sre as V,$A as W,Sd as X,tre as Y,_re as Z,Cc as _,Ix as a,Fx as a$,wre as a0,Kg as a1,Coe as a2,Xoe as a3,zZ as a4,Are as a5,jne as a6,Qoe as a7,ere as a8,mre as a9,VW as aA,Ih as aB,en as aC,Bs as aD,KA as aE,zoe as aF,pZ as aG,Jee as aH,Uoe as aI,lZ as aJ,ure as aK,Gee as aL,La as aM,Ui as aN,MT as aO,dae as aP,uae as aQ,sne as aR,Boe as aS,V8 as aT,dy as aU,pP as aV,mp as aW,ire as aX,Iy as aY,L8 as aZ,yoe as a_,lre as aa,xJ as ab,ii as ac,qJ as ad,ks as ae,Dk as af,sre as ag,ore as ah,rre as ai,Xk as aj,uv as ak,Eu as al,qW as am,xP as an,are as ao,$g as ap,vm as aq,JA as ar,mm as as,pp as at,WW as au,u8 as av,yP as aw,rie as ax,yre as ay,EW as az,cX as b,Joe as b$,kP as b0,gJ as b1,ev as b2,MZ as b3,Cre as b4,CZ as b5,Xx as b6,gp as b7,vJ as b8,Uy as b9,tie as bA,uW as bB,Rre as bC,kp as bD,WP as bE,Poe as bF,Bc as bG,Hae as bH,Lae as bI,Aoe as bJ,ZW as bK,Fa as bL,Ar as bM,l as bN,i as bO,p as bP,dt as bQ,Mm as bR,uy as bS,fP as bT,yd as bU,Voe as bV,Zoe as bW,Yoe as bX,tk as bY,Woe as bZ,Hh as b_,qP as ba,MW as bb,woe as bc,Ioe as bd,Y$ as be,c8 as bf,mZ as bg,uZ as bh,ly as bi,r8 as bj,gP as bk,cy as bl,aie as bm,$v as bn,Roe as bo,Soe as bp,fy as bq,IP as br,Ft as bs,I8 as bt,GA as bu,va as bv,nie as bw,Pv as bx,Av as by,ru as bz,st as c,s4 as c$,Goe as c0,Koe as c1,ek as c2,Foe as c3,Dt as c4,jD as c5,oie as c6,MA as c7,sie as c8,hoe as c9,Vc as cA,Ef as cB,bc as cC,fE as cD,Vn as cE,ha as cF,f1 as cG,PE as cH,qae as cI,X1 as cJ,Km as cK,mie as cL,Qa as cM,u4 as cN,pi as cO,die as cP,Fm as cQ,cd as cR,ct as cS,Lt as cT,sd as cU,vt as cV,T as cW,K_ as cX,x4 as cY,fh as cZ,z_ as c_,d as ca,v as cb,He as cc,ot as cd,b as ce,Ys as cf,ld as cg,At as ch,I as ci,QP as cj,k7 as ck,DG as cl,ch as cm,iie as cn,B7 as co,_oe as cp,joe as cq,Moe as cr,Ooe as cs,$oe as ct,q8 as cu,Toe as cv,Eoe as cw,uE as cx,Nae as cy,$ae as cz,iA as d,fb as d$,E_ as d0,Gz as d1,d4 as d2,v4 as d3,gie as d4,f4 as d5,C4 as d6,ye as d7,W as d8,D as d9,$ie as dA,boe as dB,XV as dC,dV as dD,Fie as dE,Vie as dF,voe as dG,Iie as dH,fd as dI,ew as dJ,on as dK,eoe as dL,poe as dM,zb as dN,MK as dO,toe as dP,hy as dQ,oy as dR,ioe as dS,g_ as dT,mu as dU,lie as dV,_n as dW,p_ as dX,ce as dY,rJ as dZ,od as d_,H_ as da,C_ as db,y4 as dc,U_ as dd,fie as de,pie as df,k4 as dg,q_ as dh,xb as di,Sb as dj,L_ as dk,Wm as dl,Gm as dm,yie as dn,hie as dp,S4 as dq,p4 as dr,zK as ds,foe as dt,qoe as du,Tie as dv,Eie as dw,n6 as dx,Nie as dy,b6 as dz,x1 as e,Lr as e$,US as e0,cie as e1,Ac as e2,T4 as e3,Ke as e4,Xa as e5,Vz as e6,Pie as e7,Aie as e8,kie as e9,noe as eA,Bi as eB,FU as eC,tu as eD,id as eE,Rie as eF,F3 as eG,Doe as eH,Hoe as eI,uie as eJ,bie as eK,Sie as eL,vie as eM,Oie as eN,Mie as eO,si as eP,xie as eQ,q4 as eR,ap as eS,dR as eT,Lie as eU,Jie as eV,Gie as eW,Wie as eX,aoe as eY,wie as eZ,aC as e_,wR as ea,jie as eb,l6 as ec,zie as ed,HR as ee,Bie as ef,mC as eg,Uie as eh,qie as ei,_ie as ej,pc as ek,DR as el,i4 as em,doe as en,loe as eo,uoe as ep,moe as eq,roe as er,Pm as es,coe as et,soe as eu,bd as ev,em as ew,hb as ex,le as ey,Li as ez,gm as f,sa as f0,s3 as f1,X4 as f2,Kie as f3,J9 as f4,vd as f5,Zie as f6,Xie as f7,Qie as f8,Yie as f9,Pre as fA,hre as fB,pre as fC,fre as fD,Ste as fE,Rae as fF,gre as fG,vre as fH,bre as fI,Sx as fJ,Tre as fK,M9 as fa,tK as fb,Jm as fc,R8 as fd,O8 as fe,goe as ff,Die as fg,Hie as fh,fp as fi,cre as fj,dre as fk,Cie as fl,uo as fm,TC as fn,YF as fo,Xo as fp,Ko as fq,qS as fr,Loe as fs,hP as ft,Qk as fu,rne as fv,Xg as fw,RA as fx,dA as fy,CA as fz,Jo as g,hW as h,Pi as i,up as j,Y8 as k,jP as l,Uc as m,nre as n,Noe as o,yx as p,sy as q,HP as r,FK as s,xne as t,c1 as u,xre as v,Ire as w,TT as x,kre as y,z};