@wular/coder 0.4.9 → 0.4.10

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 (547) hide show
  1. package/dist/actions-C3Mgpl9J.js +2 -0
  2. package/dist/adapter-BeezVK-B.js +1 -0
  3. package/dist/{adapter-YCvP9H2n.js → adapter-ChaISKgI.js} +42 -42
  4. package/dist/{adapter-B2RXnvqt.js → adapter-MD6ahqPR.js} +6 -6
  5. package/dist/{add-CvBTpxgY.js → add-B26QSwPY.js} +2 -2
  6. package/dist/add-BbXuvqj1.js +1 -0
  7. package/dist/add-Bk8drM-8.js +1 -0
  8. package/dist/add-CD_L-WW8.js +2 -0
  9. package/dist/agent-B8ItyuHN.js +8 -0
  10. package/dist/{agent-vYm7Geh-.js → agent-DHpMqHVi.js} +1 -1
  11. package/dist/alias-CScCzXhS.js +2 -0
  12. package/dist/{app-CJPFaLIV.js → app-wHQJHu6N.js} +1 -1
  13. package/dist/approvals-BIGQBbCM.js +2 -0
  14. package/dist/{approve-CBuGu3du.js → approve-BnZ3v-3c.js} +1 -1
  15. package/dist/approve-DFSy7Z72.js +2 -0
  16. package/dist/apps-6BgpUsFh.js +372 -0
  17. package/dist/archive-CU0nhUeJ.js +4 -0
  18. package/dist/{archive-C89Z4kSx.js → archive-CY2lvp_c.js} +2 -2
  19. package/dist/args-BekfmD9t.js +1 -0
  20. package/dist/ask-CLDgHB_Y.js +4 -0
  21. package/dist/auth-C3KrIUf1.js +1 -0
  22. package/dist/auth-CGeSfgNb.js +1 -0
  23. package/dist/builtin/coder/agent.json +5 -9
  24. package/dist/chat-AbW-LOHo.js +13 -0
  25. package/dist/chat-bridge-WK-pKNfw.js +2 -0
  26. package/dist/chat-bwKd3y6V.js +1 -0
  27. package/dist/cli-Fp28pM4Y.js +9 -0
  28. package/dist/cli.js +1 -1
  29. package/dist/client-DzwzCsue.js +22 -0
  30. package/dist/config-DoVedq6T.js +3 -0
  31. package/dist/{connection-BtUZA2St.js → connection-5V8doFL7.js} +1 -1
  32. package/dist/connection-Cb0TK201.js +1 -0
  33. package/dist/conversation-DT-35cEt.js +1 -0
  34. package/dist/create-CrjRdQip.js +1 -0
  35. package/dist/credentials-DoL9w8D1.js +1 -0
  36. package/dist/dash/standalone/server/build-index.json +1 -1
  37. package/dist/dash/standalone/server/manifest.json +1317 -1303
  38. package/dist/dash/standalone/server/modules-server-server-react-server/src/client/{index.8e150ef2bc6a5f4e.js → index.843431e3538fd9a4.js} +7 -11
  39. package/dist/dash/standalone/server/modules-server-server-react-server/src/core/{defaults.e6ce0944639198a2.js → defaults.1b615366c56838a1.js} +27 -1
  40. package/dist/dash/standalone/server/modules-server-server-react-server/src/core/event-prompt.87f064ca0141e796.js +30 -0
  41. package/dist/dash/standalone/server/modules-server-server-react-server/src/core/task/{log-view.871cbff2605b5cfd.js → log-view.60308a11f7001eb7.js} +10 -0
  42. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/api/{load.4f942c7f68b2e273.js → load.7ae462ef36271be8.js} +15 -2
  43. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/api/{types.9f59e6c761d6aac4.js → types.79f9092cdb5a00d1.js} +4 -0
  44. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/connect/{page.a2a16ead424b2185.js → page.806027fde54ab723.js} +3 -3
  45. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/create/[id]/{page.90e312759b87cfa2.js → page.bd04d2d3eba00676.js} +2 -2
  46. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/account/{loading.787d09fb0b2b6b57.js → loading.e348ec45e9ed951b.js} +2 -2
  47. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/account/{notify.5fc5e4346dcbfc32.js → notify.857748e260c691e3.js} +1 -1
  48. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/account/{page.1641da62504df30a.js → page.25153459858542f9.js} +9 -9
  49. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/account/{sign-out.5dac3bf780c74354.js → sign-out.ff98573f362d76f3.js} +4 -4
  50. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/agents/(list)/{agent-menu.f1dacbfebc27a656.js → agent-menu.2ed0e66d131fc148.js} +3 -3
  51. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/agents/(list)/{agents-grid.5da78e9a741b028a.js → agents-grid.8efd14bc39281da9.js} +22 -13
  52. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/agents/(list)/{connect-apps.722bc3e4ec1f9fad.js → connect-apps.d1e67db29b12dc0a.js} +5 -5
  53. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/agents/(list)/{loading.2815a010098aa676.js → loading.fac1132ad9c4248e.js} +5 -5
  54. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/agents/(list)/{page.b01992337eeca2dc.js → page.0f7d5e3e42462870.js} +15 -20
  55. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/agents/[slug]/(tabs)/{layout.8aeb0fddffe22ad5.js → layout.05210ffa6038791f.js} +19 -19
  56. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/agents/[slug]/(tabs)/{loading.50692149df9abb28.js → loading.388aeaf0c2edf8f8.js} +1 -1
  57. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/agents/[slug]/(tabs)/{page.e2e23101c05b9548.js → page.19fe116c0f802cb1.js} +80 -30
  58. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/agents/[slug]/(tabs)/platforms/{loading.31d2c13229ae9222.js → loading.4da9e2ba3fea937f.js} +2 -2
  59. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/agents/[slug]/(tabs)/platforms/{page.11c7b50d6119efe6.js → page.f87fd8eb66f73af0.js} +37 -30
  60. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/agents/[slug]/(tabs)/platforms/{platform-actions.92ac7aa258e706a4.js → platform-actions.b6c3d3184e167d0b.js} +68 -41
  61. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/agents/[slug]/(tabs)/settings/{agent-settings-form.fc530622fa2292a0.js → agent-settings-form.28220621573033d7.js} +47 -72
  62. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/agents/[slug]/(tabs)/settings/{loading.bf17bd39f41db826.js → loading.ad1a4c9b000d269a.js} +1 -1
  63. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/agents/[slug]/(tabs)/settings/{page.6e95dfe07dfebf4b.js → page.2f7467868f599ebc.js} +15 -21
  64. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/agents/[slug]/(tabs)/tasks/{loading.7b17368ee81275ab.js → loading.ec94096015346f2c.js} +2 -2
  65. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/agents/[slug]/(tabs)/tasks/{page.0bd3da9b3227b12f.js → page.a92a36a8ce21088c.js} +1 -1
  66. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/agents/[slug]/(tabs)/usage/{loading.d2cc33cf044a92a3.js → loading.8f998a9c511e1fb3.js} +3 -3
  67. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/agents/[slug]/(tabs)/usage/{page.91c43fbc54e37646.js → page.8935a5fe5c08bcf1.js} +7 -7
  68. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/agents/[slug]/(tabs)/{versions-list.23e4131cdf71daa5.js → versions-list.5b97ab6d40e2e639.js} +6 -6
  69. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/agents/[slug]/edit/{loading.47c4c8f31b4f17cc.js → loading.bedcc1aba372fbce.js} +5 -5
  70. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/agents/[slug]/edit/{page.cbd2bad8fede6fef.js → page.14760e9eedd6ff8e.js} +13 -24
  71. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/agents/agent/{agent-pills.d8e785c45f5410a6.js → agent-pills.f987c12bcbc5c850.js} +13 -7
  72. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/agents/agent/{agent-toggle.a6e27ac4171bfdb0.js → agent-toggle.a6ee8bd882178e29.js} +3 -3
  73. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/agents/agent/{hero.96bdca9762ff3e2e.js → hero.8be1dd4ea3ed6e17.js} +6 -6
  74. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/agents/agent/{instructions.ca0c09d4849bfc30.js → instructions.85b1cd986a9edbb5.js} +1 -1
  75. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/agents/editor/{connect-repositories.258f6c2c5f1b1b17.js → connect-repositories.59d89152fe845af2.js} +1 -1
  76. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/agents/editor/{editor.20c42102ed262db7.js → editor.77f68d431408745b.js} +36 -76
  77. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/agents/editor/{import-picker.b8093a7ca97656a5.js → import-picker.a7b01817a821819a.js} +15 -16
  78. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/agents/new/{loading.6012b36c10c68657.js → loading.ee001af7a96e3972.js} +6 -6
  79. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/agents/new/{page.1ebdb0247922fc14.js → page.c4570fd80bdda68c.js} +11 -19
  80. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/{layout.6d2242d49ae9dd35.js → layout.19006c2d7dc8d114.js} +13 -13
  81. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/operator/{operator-apps.a56516bc0ba79187.js → operator-apps.d350a52d27f69fa6.js} +7 -7
  82. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/operator/{page.af19494c89ac62c0.js → page.4a652f5080c2b863.js} +8 -9
  83. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/{page.c720853404d94114.js → page.d39f7a1719f50c6d.js} +2 -2
  84. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/settings/[tab]/{connections-list.9b96914a4fa4e2a9.js → connections-list.ff7e1dadcd4df17f.js} +36 -31
  85. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/settings/[tab]/{credentials-list.dbaa8f3d82445b90.js → credentials-list.87a1f8ab71eb4bed.js} +204 -240
  86. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/settings/[tab]/{credentials.c4b01484d183549d.js → credentials.a535c9c6dd8b4cdf.js} +10 -11
  87. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/settings/[tab]/{engines-list.5c03e83663a6a9b7.js → engines-list.29fffd07c1c3b771.js} +7 -7
  88. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/settings/[tab]/{list.df5ee5d74bec0f5b.js → list.0c87d55cf4ef382c.js} +43 -33
  89. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/settings/[tab]/{loading.480b8f915bae18c1.js → loading.7ca95dcb4fb3362b.js} +1 -1
  90. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/settings/[tab]/{models-list.2835a48d1edeb6d1.js → models-list.6fea9faddb8300bb.js} +147 -137
  91. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/settings/[tab]/{page.1d53415d55e77fee.js → page.295245052b93af90.js} +23 -23
  92. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/settings/[tab]/{runners-list.bf5746f48e3f78f5.js → runners-list.a4a38e54d834a1ec.js} +18 -19
  93. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/settings/[tab]/{secrets-list.b0dedc1567efc09f.js → secrets-list.50f487766f87383c.js} +23 -15
  94. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/settings/{layout.567d27e39d42d719.js → layout.c42e0ab39cb2c0e0.js} +5 -5
  95. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/settings/{model-options.2eacf7f8ac0032df.js → model-options.a96c11d11674f598.js} +13 -0
  96. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/settings/{page.bac05d6e87953d0e.js → page.6997506eaa1a4824.js} +1 -1
  97. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/settings/{settings-head.5e2dff2550b3b73e.js → settings-head.bbc7ced8dd5491eb.js} +1 -1
  98. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/settings/{tunnel-guide.d6fae1c5d62f2c74.js → tunnel-guide.29eee1a0b1852168.js} +1 -1
  99. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/setup/{create-link.03989d2f7585a045.js → create-link.9458b49dc99bbaaa.js} +5 -5
  100. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/setup/{outcome-dialog.4debc1a8c644df4b.js → outcome-dialog.894c73f9abee3ce1.js} +5 -4
  101. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/setup/{page.43c969f59a710781.js → page.77e402bb6e8e7f7e.js} +7 -7
  102. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/tasks/[id]/{activity.3755ae6065c3fc28.js → activity.fcda6f18c8207c99.js} +22 -27
  103. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/tasks/[id]/{loading.9efbed6531879838.js → loading.56520888d5270b88.js} +6 -9
  104. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/tasks/[id]/{page.7b92dcd08095b934.js → page.d0f039221a27b8ef.js} +7 -7
  105. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/tasks/[id]/{task-actions.62422b873f98ee8e.js → task-actions.f5f2016d2dc7f422.js} +14 -12
  106. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/tasks/[id]/{task-view.ae0e9c9dffe0ff9f.js → task-view.a292baa2410cdf64.js} +129 -66
  107. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/tasks/{composer-data.ff108c0ef82a4d7b.js → composer-data.309a194fc7fa34be.js} +3 -3
  108. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/tasks/{composer.fdad306647cbaa59.js → composer.2d4122eb33addbdd.js} +29 -41
  109. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/tasks/list/{task.af5001e51d2f612b.js → task.a0c68180db5fb4c1.js} +26 -2
  110. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/tasks/list/{tasks-list.952f37a9486aebe7.js → tasks-list.021bdc2f3d90af2d.js} +34 -31
  111. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/tasks/list/{tasks-section.1247d4765d0e1bdc.js → tasks-section.13f64b0836ae406b.js} +10 -10
  112. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/tasks/{page.cf74c55e6528c7c9.js → page.b78f0df100410db0.js} +5 -5
  113. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/usage/{custom-range.2d55812ec086b540.js → custom-range.2e21c7f891966c15.js} +3 -3
  114. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/usage/{day-chart.08d378cca93d3ab1.js → day-chart.261b6651df2d3966.js} +2 -2
  115. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/usage/{loading.7aed78a276b08a4f.js → loading.97d277dbab9c15cf.js} +4 -5
  116. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/usage/{metric.ada350d2b7449b39.js → metric.5ff3636065481c44.js} +1 -1
  117. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/usage/{page.fed9345ebac3e1b3.js → page.93c2306069c03c68.js} +11 -18
  118. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/usage/{range-bar.b1296c2378128472.js → range-bar.2197d8f43216d104.js} +4 -4
  119. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/usage/{top-agents.e215d44e00192271.js → top-agents.18fc469e781e2305.js} +6 -10
  120. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/{layout.b7e3af142b17941b.js → layout.185dbc99875e208a.js} +11 -3
  121. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/login/{page.226544940a39fd3a.js → page.a82be2fd23e9ac67.js} +2 -7
  122. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/zone.0515a688ee5ff6ca.js +17 -0
  123. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/comps/frame/{drawer.8287e5a02144e4f1.js → drawer.d3e61538dbc8ec39.js} +2 -2
  124. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/comps/frame/{foreign-link.86f0cc228353da6e.js → foreign-link.1f4217895ff1e835.js} +3 -3
  125. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/comps/frame/heads.37e35439c02fc636.js +16 -0
  126. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/comps/frame/{loading-card.0c6ac62ff3ccf38a.js → loading-card.cc76fc9708142525.js} +5 -5
  127. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/comps/frame/{page-head.bd54e52ac4a7a89c.js → page-head.85f15db7b648d48c.js} +4 -3
  128. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/comps/frame/{stream.1cc355a530dcc5e3.js → stream.95a2468086aceb84.js} +3 -3
  129. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/comps/frame/{task-toasts.63f673632770924d.js → task-toasts.e1a484113e1df660.js} +11 -7
  130. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/comps/frame/{theme-choices.5f59814a635caeec.js → theme-choices.85100ed66d6f9200.js} +2 -2
  131. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/comps/nav/{back.5681714d0cf45454.js → back.180765bdadf6d602.js} +3 -3
  132. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/comps/nav/{org.4d84ad0ac340fbe2.js → org.572ad93c7707ab27.js} +1 -1
  133. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/comps/nav/{side-toggle.249400957d6a7527.js → side-toggle.489faf1a259479f7.js} +2 -2
  134. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/comps/ui/{badge.0851f234f300c694.js → badge.c0bc352791a95fd6.js} +1 -1
  135. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/comps/ui/{button.983daea9e687fc5d.js → button.ce9e6cdb08ca86db.js} +1 -1
  136. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/comps/ui/{card.c08471eaa0bc1cec.js → card.9f0d45b73bc78b4f.js} +9 -5
  137. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/comps/ui/{collapse.762eba56417214ca.js → collapse.93e4d1b20c2873ed.js} +13 -3
  138. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/comps/ui/{combo.efb84f0cca771948.js → combo.54270c0251466fda.js} +3 -22
  139. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/comps/ui/{confirm.53edc755945b0563.js → confirm.c1281f9b12854210.js} +3 -3
  140. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/comps/ui/{copy.0b23d7dc05757df5.js → copy.bd6fc1577a393965.js} +2 -2
  141. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/comps/ui/{filter.1983b85dd0679af6.js → filter.3a452a262f040973.js} +6 -6
  142. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/comps/ui/{icons.a34176f37808cd66.js → icons.e36c72f54750663a.js} +0 -1
  143. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/comps/ui/{menu-items.a8e580a0c90631ff.js → menu-items.1d082ac4dae8f3d4.js} +1 -1
  144. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/comps/ui/{menu.a41edd5cde1c90cf.js → menu.ee45bace979944b6.js} +2 -2
  145. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/comps/ui/{modal.b5f74ebf59590fa6.js → modal.25d53e5b41b9c4e5.js} +2 -2
  146. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/comps/ui/{select.36c6f21ce6aa720f.js → select.2eb33e5bea28d804.js} +28 -23
  147. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/comps/ui/{tail.a8a951c757376590.js → tail.04132db0c5033d4f.js} +4 -3
  148. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/comps/ui/{toolbar.9621ef221a896a8e.js → toolbar.24036899654de6df.js} +2 -2
  149. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/utils/{action.1a6356d5b722cafb.js → action.968bcab0f5e3665d.js} +2 -2
  150. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/utils/{client.d25e6dcc6704eb60.js → client.189224c16057d7a1.js} +1 -1
  151. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/utils/follow.bfb9bcff3c1366d7.js +32 -0
  152. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/utils/{format.6a7d1beaf4d09d9c.js → format.ceeaafa10a0563f3.js} +1 -0
  153. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/utils/{paged.18f5872fc5aebe96.js → paged.0e54c3044f8ca567.js} +1 -7
  154. package/dist/dash/standalone/static/assets/chunks/action-410bdc82c416bc01.js +1 -0
  155. package/dist/dash/standalone/static/assets/chunks/agent-pills-0c0b8d40b9bfc78f.js +2 -0
  156. package/dist/dash/standalone/static/assets/chunks/agent-settings-form-5a2601316e2ab283.js +1 -0
  157. package/dist/dash/standalone/static/assets/chunks/{agent-toggle-b2f2c22e63dedc1f.js → agent-toggle-5ede0c449e88cb9d.js} +1 -1
  158. package/dist/dash/standalone/static/assets/chunks/agents-grid-ffb18df48e951ecb.js +1 -0
  159. package/dist/dash/standalone/static/assets/chunks/{back-1d1b062f0e1b29b7.js → back-602db2cfdccf2e7f.js} +1 -1
  160. package/dist/dash/standalone/static/assets/chunks/combo-df2685e277db02c0.js +1 -0
  161. package/dist/dash/standalone/static/assets/chunks/composer-08e49d49c0c3ee94.js +1 -0
  162. package/dist/dash/standalone/static/assets/chunks/composer-data-5fed6c271a4791ca.js +1 -0
  163. package/dist/dash/standalone/static/assets/chunks/composer-e1cefed81ea89b7e.js +1 -0
  164. package/dist/dash/standalone/static/assets/chunks/{confirm-1cb4d8df3974f34a.js → confirm-d163e6865d66dfab.js} +1 -1
  165. package/dist/dash/standalone/static/assets/chunks/connect-apps-ce3c9d049ebad459.js +1 -0
  166. package/dist/dash/standalone/static/assets/chunks/{connect-repositories-995d55b3f166337d.js → connect-repositories-0aa9abc77b9c3d48.js} +1 -1
  167. package/dist/dash/standalone/static/assets/chunks/connections-list-6eddeb8583ded10f.js +1 -0
  168. package/dist/dash/standalone/static/assets/chunks/{copy-c938369a1bfe75fd.js → copy-0cc00656953531be.js} +1 -1
  169. package/dist/dash/standalone/static/assets/chunks/create-link-bc365f8dfe88e6b3.js +1 -0
  170. package/dist/dash/standalone/static/assets/chunks/credentials-list-1b6a81e9b4934dc8.js +1 -0
  171. package/dist/dash/standalone/static/assets/chunks/{custom-range-4eeb710748887f3a.js → custom-range-cae5567874db83ca.js} +1 -1
  172. package/dist/dash/standalone/static/assets/chunks/defaults-52f30e83d7666f7a.js +1 -0
  173. package/dist/dash/standalone/static/assets/chunks/editor-d55d247a1d7de5f0.js +6 -0
  174. package/dist/dash/standalone/static/assets/chunks/engines-list-288559344de4d4b9.js +1 -0
  175. package/dist/dash/standalone/static/assets/chunks/{field-657227821326b5b3.js → field-693bb870ad0bdee8.js} +1 -1
  176. package/dist/dash/standalone/static/assets/chunks/format-a27067f0186e78ac.js +1 -0
  177. package/dist/dash/standalone/static/assets/chunks/instructions-3f18e035338b0d0b.js +1 -0
  178. package/dist/dash/standalone/static/assets/chunks/instructions-a3d7688e421f2a08.js +2 -0
  179. package/dist/dash/standalone/static/assets/chunks/list-2a59237cb7cb0a7c.js +1 -0
  180. package/dist/dash/standalone/static/assets/chunks/model-options-8d2170eebe0d061d.js +1 -0
  181. package/dist/dash/standalone/static/assets/chunks/models-list-5ed9ee02f9b66d98.js +1 -0
  182. package/dist/dash/standalone/static/assets/chunks/{notice-cd32ca98bbc10844.js → notice-7d84ffab32ff24ca.js} +1 -1
  183. package/dist/dash/standalone/static/assets/chunks/outcome-dialog-3cffe3507ea92af2.js +1 -0
  184. package/dist/dash/standalone/static/assets/chunks/outcome-dialog-f6fb8c69efa66508.js +1 -0
  185. package/dist/dash/standalone/static/assets/chunks/platform-actions-4dc31567d00c4cb2.js +1 -0
  186. package/dist/dash/standalone/static/assets/chunks/platform-actions-ecd7200f7749c258.js +1 -0
  187. package/dist/dash/standalone/static/assets/chunks/runners-list-984246a8f9450da1.js +1 -0
  188. package/dist/dash/standalone/static/assets/chunks/{runtime-e8b9eb1e537215ed-1.js → runtime-6e12333f12903a62-1.js} +1 -1
  189. package/dist/dash/standalone/static/assets/chunks/secrets-list-88f8b30abbab52f0.js +1 -0
  190. package/dist/dash/standalone/static/assets/chunks/{segmented-24da438244eedc8f.js → segmented-79c9c69b702e0b90.js} +1 -1
  191. package/dist/dash/standalone/static/assets/chunks/shared-init-6e12333f12903a62-2.js +1 -0
  192. package/dist/dash/standalone/static/assets/chunks/shared-init-962398d15ee67c92.js +5 -0
  193. package/dist/dash/standalone/static/assets/chunks/shared-init-ae95a674d381c095.js +2 -0
  194. package/dist/dash/standalone/static/assets/chunks/side-toggle-7ada95cc7601eb49.js +1 -0
  195. package/dist/dash/standalone/static/assets/chunks/tail-99e29a541a072002.js +1 -0
  196. package/dist/dash/standalone/static/assets/chunks/task-95daa40d39de664f.js +1 -0
  197. package/dist/dash/standalone/static/assets/chunks/task-actions-1cdca1e8d3eee490.js +1 -0
  198. package/dist/dash/standalone/static/assets/chunks/task-view-fdcde0e31f63b737.js +5 -0
  199. package/dist/dash/standalone/static/assets/chunks/tasks-list-3ad1c93deff4fb2e.js +1 -0
  200. package/dist/dash/standalone/static/assets/chunks/types-3eca2c7f47c46054.js +1 -0
  201. package/dist/dash/standalone/static/assets/chunks/{versions-list-31f31eb1923a0ded.js → versions-list-60ac4d8f715bf5f7.js} +1 -1
  202. package/dist/dash/standalone/static/assets/chunks/{wular-pnext-e8b9eb1e537215ed-0.js → wular-pnext-6e12333f12903a62-0.js} +1 -1
  203. package/dist/dash/standalone/static/assets/create-param-id-da3f7e20689fe51a.css +1 -0
  204. package/dist/dash/standalone/static/assets/{dash-param-org-account-3f646d473e3bd795.css → dash-param-org-account-9471bec93c444232.css} +1 -1
  205. package/dist/dash/standalone/static/assets/dash-param-org-agents-64500e78caae32df.css +1 -0
  206. package/dist/dash/standalone/static/assets/dash-param-org-agents-new-c067c22928a2d7cc.css +1 -0
  207. package/dist/dash/standalone/static/assets/dash-param-org-agents-param-slug-9dec87710e04f949.css +1 -0
  208. package/dist/dash/standalone/static/assets/dash-param-org-agents-param-slug-edit-779c474301e04440.css +1 -0
  209. package/dist/dash/standalone/static/assets/dash-param-org-agents-param-slug-platforms-c7d594b5232630c2.css +1 -0
  210. package/dist/dash/standalone/static/assets/dash-param-org-agents-param-slug-settings-a80e62570716fdb9.css +1 -0
  211. package/dist/dash/standalone/static/assets/dash-param-org-agents-param-slug-tasks-ce278252012297b9.css +1 -0
  212. package/dist/dash/standalone/static/assets/dash-param-org-agents-param-slug-usage-d3b6d701eb8e1403.css +1 -0
  213. package/dist/dash/standalone/static/assets/{dash-param-org-67f7811b1343c064.css → dash-param-org-bcfa3de29341d5ba.css} +1 -1
  214. package/dist/dash/standalone/static/assets/dash-param-org-operator-b7bc6447cc27c9ce.css +1 -0
  215. package/dist/dash/standalone/static/assets/{dash-param-org-settings-a851a659784d94b5.css → dash-param-org-settings-6d6902345d88a687.css} +1 -1
  216. package/dist/dash/standalone/static/assets/dash-param-org-settings-param-tab-85c7af9a89eef06e.css +1 -0
  217. package/dist/dash/standalone/static/assets/{dash-param-org-setup-1b708aa5bb2f83ef.css → dash-param-org-setup-173efecd7b990c2e.css} +1 -1
  218. package/dist/dash/standalone/static/assets/dash-param-org-tasks-ae0bc03f468e63cc.css +1 -0
  219. package/dist/dash/standalone/static/assets/dash-param-org-tasks-param-id-7325d8cff5be3592.css +1 -0
  220. package/dist/dash/standalone/static/assets/{dash-param-org-operator-56742192a9aafc19.css → dash-param-org-usage-517b2a7ae462ac57.css} +1 -1
  221. package/dist/dash/standalone/static/assets/global-87e1762113874559.css +1 -0
  222. package/dist/dash/standalone/static/assets/pnext-client-0b3b70f1aefb9947.js +1 -0
  223. package/dist/dash/standalone/static/assets/pnext-client-0d90849808b6eb05.js +1 -0
  224. package/dist/dash/standalone/static/assets/pnext-client-12faa1754e3ef3be.js +1 -0
  225. package/dist/dash/standalone/static/assets/pnext-client-23384b239b81a761.js +1 -0
  226. package/dist/dash/standalone/static/assets/pnext-client-23e200dd9b7a79c0.js +1 -0
  227. package/dist/dash/standalone/static/assets/pnext-client-2562299eef46e62c.js +1 -0
  228. package/dist/dash/standalone/static/assets/pnext-client-3a4ada64991e6a40.js +1 -0
  229. package/dist/dash/standalone/static/assets/pnext-client-71e7ecdfcf86be84.js +1 -0
  230. package/dist/dash/standalone/static/assets/pnext-client-726c29bbb81054c0.js +1 -0
  231. package/dist/dash/standalone/static/assets/pnext-client-825e9f5b63950ef4.js +1 -0
  232. package/dist/dash/standalone/static/assets/pnext-client-894cff70289fb7a3.js +1 -0
  233. package/dist/dash/standalone/static/assets/pnext-client-8f96a4b8a00ff460.js +1 -0
  234. package/dist/dash/standalone/static/assets/pnext-client-9bc9b14c08020649.js +1 -0
  235. package/dist/dash/standalone/static/assets/pnext-client-ab36b406301fd2a4.js +1 -0
  236. package/dist/dash/standalone/static/assets/pnext-client-b8c585cae8da7778.js +1 -0
  237. package/dist/dash/standalone/static/assets/pnext-client-bab4305b41abb15a.js +1 -0
  238. package/dist/dash/standalone/static/assets/pnext-client-bd80926822b3993d.js +1 -0
  239. package/dist/dash/standalone/static/assets/pnext-client-cd4c7b4318fa1846.js +1 -0
  240. package/dist/dash/standalone/static/assets/pnext-client-db55344d00b7888f.js +1 -0
  241. package/dist/dash/standalone/static/assets/pnext-client-eddcd5df2b28120f.js +1 -0
  242. package/dist/default-tTTSBdXq.js +1 -0
  243. package/dist/delete-DM2sA12f.js +2 -0
  244. package/dist/{delete-DS6P_fun.js → delete-DR37NTr1.js} +2 -2
  245. package/dist/disable-Dz_zLPX5.js +1 -0
  246. package/dist/{discover-pKrMDvpW.js → discover-CqabH4Fx.js} +2 -2
  247. package/dist/dispatch-BJZqI7sj.js +8 -0
  248. package/dist/{dist-C3wD7GfG.js → dist-B2jiMMxZ.js} +2 -2
  249. package/dist/{dist-DkATuPBB.js → dist-ClCNj65n.js} +2 -2
  250. package/dist/{dist-BTornX7Y.js → dist-DAnSqY1s.js} +2 -2
  251. package/dist/docs-BV9SC67g.js +2 -0
  252. package/dist/{docs-sFUXzJbk.js → docs-b2mAKC8Z.js} +1 -1
  253. package/dist/drive-CU2HOCfR.js +1 -0
  254. package/dist/{enable-BWvDv7dP.js → enable-Cfeki-ne.js} +1 -1
  255. package/dist/env-DSddo-fz.js +1 -0
  256. package/dist/exec-DcWxZar6.js +3 -0
  257. package/dist/executor-LkokKTTd.js +11 -0
  258. package/dist/flow/builtin/review.d.ts +2 -2
  259. package/dist/flow/builtin/review.js +7 -14
  260. package/dist/flow/index.d.ts +1 -1
  261. package/dist/flow/index.js +1 -1
  262. package/dist/flow-BQcdyrVK.js +1 -0
  263. package/dist/history-D_A5odLI.js +8 -0
  264. package/dist/http-CXaW1e7x.js +1 -0
  265. package/dist/init-DU_S43NG.js +1 -0
  266. package/dist/integrations-DPxWtNnS.js +2 -0
  267. package/dist/integrations-Dwvxl7i2.js +1 -0
  268. package/dist/lib/broker.js +2 -2
  269. package/dist/{list-BDpYPbJF.js → list-7yd9K7d8.js} +1 -1
  270. package/dist/list-BJ0j5eP9.js +4 -0
  271. package/dist/list-Boaz5b5n.js +2 -0
  272. package/dist/{list-CaFQOnfI.js → list-CIS-GYO1.js} +1 -1
  273. package/dist/list-CR0_Emod2.js +4 -0
  274. package/dist/list-CnHZriYt.js +3 -0
  275. package/dist/list-_EH6c041.js +1 -0
  276. package/dist/list-i2r3Nlyz.js +1 -0
  277. package/dist/load-C-GZnuok.js +2 -0
  278. package/dist/local-Fs-dx_dP.js +5 -0
  279. package/dist/log-view-CL3_S0IQ.js +3 -0
  280. package/dist/{login-CpHx_RCq.js → login-CzD2EMD_.js} +1 -1
  281. package/dist/login-DISw6--d.js +1 -0
  282. package/dist/{logout-zSQBDPCK.js → logout-DMnc5yri.js} +1 -1
  283. package/dist/{maintenance-DuIspk-y.js → maintenance-BVDuG9Hg.js} +1 -1
  284. package/dist/match-BfjPZ7gJ.js +1 -0
  285. package/dist/mcp-B-hy3eM-.js +11 -0
  286. package/dist/mcp-CbN-QcpF.js +1 -0
  287. package/dist/mcp-server-DQqSgD3P.js +1 -0
  288. package/dist/model-Ckyoyji3.js +1 -0
  289. package/dist/models-VaiIYlOW.js +1 -0
  290. package/dist/prompt-DQyPCLUo.js +8 -0
  291. package/dist/prompts-CEf7z4i_.js +77 -0
  292. package/dist/push-BNomfHJ3.js +1 -0
  293. package/dist/reconnect-Bd_jna1M.js +1 -0
  294. package/dist/refresh-D-broYEx.js +1 -0
  295. package/dist/remote-f-uny3XZ.js +3 -0
  296. package/dist/remove-CCYHc1FN.js +1 -0
  297. package/dist/remove-DMTz_c25.js +1 -0
  298. package/dist/remove-DdcQ-6by.js +1 -0
  299. package/dist/{remove-BcewhH1U.js → remove-VtavIuGm.js} +1 -1
  300. package/dist/rename-CKMyelWN.js +1 -0
  301. package/dist/{result-Bg557zR6.js → result-CH3_tVXO.js} +2 -2
  302. package/dist/result-DvOqIwhh.js +18 -0
  303. package/dist/{resume-fnx4FUQF.js → resume-6j3RUpqa.js} +2 -2
  304. package/dist/{review-CAHDqPq8.js → review-B4ETH5ki.js} +2 -2
  305. package/dist/{index-vd37q3fn.d.ts → review-DDYD3Yvq.d.ts} +173 -74
  306. package/dist/{rotate-key-Dpx_WmuU.js → rotate-key-Byk_wI73.js} +1 -1
  307. package/dist/run-DKJW7qwy.js +2 -0
  308. package/dist/run-DkYzyUnp.js +5 -0
  309. package/dist/run-LCE1XiyU.js +2 -0
  310. package/dist/runner-CxtzTgVq.js +1 -0
  311. package/dist/runner-Dnu1Vx_i.js +1 -0
  312. package/dist/runner.json +1 -0
  313. package/dist/runner.tgz +0 -0
  314. package/dist/runners-vsoGeyuc.js +36 -0
  315. package/dist/schema-Brm7WIKd.js +8 -0
  316. package/dist/schema.d.ts +2 -2
  317. package/dist/schema.js +1 -1
  318. package/dist/{sdk-CWerLcF5.d.ts → sdk-CKTCrtGe.d.ts} +660 -376
  319. package/dist/sdk.d.ts +4 -5
  320. package/dist/sdk.js +1 -1
  321. package/dist/serve-C1zag2nr.js +1 -0
  322. package/dist/{serve-w-9qRCP1.js → serve-C6tsUF0D.js} +2 -2
  323. package/dist/serve-CCxSxXgv.js +1 -0
  324. package/dist/serve-D8J-sEqm.js +12 -0
  325. package/dist/{server-Bw_YmgCf.js → server-B4SRYM2L.js} +1 -1
  326. package/dist/setup-host-EaP4GPKB.js +6 -0
  327. package/dist/show-CjUG_aIp.js +1 -0
  328. package/dist/show-xdsqD6de.js +1 -0
  329. package/dist/slack-Kpj-G9FE.js +5 -0
  330. package/dist/{status-PO1YXbt4.js → status-BxV_ITeF.js} +1 -1
  331. package/dist/steer-DZ3nkHfC.js +4 -0
  332. package/dist/{stop-CkvoZEAH.js → stop-DGTUYxd6.js} +2 -2
  333. package/dist/stop-qDw_DjOB.js +1 -0
  334. package/dist/task-C506SkPR.js +1 -0
  335. package/dist/task-CQmx_2SI.js +7 -0
  336. package/dist/task-Ls_-kcSx.js +1 -0
  337. package/dist/test-DF_qVK6S.js +1 -0
  338. package/dist/tools-S3eRQOVm.js +1 -0
  339. package/dist/{types-C1tWi5lP.d.ts → types-8zO5Tc9c.d.ts} +91 -26
  340. package/dist/{types-B42Oh0zF.js → types-D_xnfP7m.js} +1 -1
  341. package/dist/unalias-CklkAN1B.js +1 -0
  342. package/dist/update-CZaFjwOJ.js +2 -0
  343. package/dist/upgrade-CUhFmPhl.js +2 -0
  344. package/dist/usage-DTAlb2rC.js +1 -0
  345. package/dist/views-LmbLfqpu.js +5 -0
  346. package/dist/watch-CJruitc6.js +5 -0
  347. package/dist/watch-p0j69fVA.js +9 -0
  348. package/dist/wire-DshFMRsS.js +1 -0
  349. package/dist/worker-BHXjDzRp.js +1 -0
  350. package/dist/worker-nyRZuq4g.js +2 -0
  351. package/dist/{workflow-BKxG9OUk.js → workflow-CJJUiSfv.js} +1 -1
  352. package/docs/agents/coder.md +7 -7
  353. package/docs/agents/index.md +17 -19
  354. package/docs/agents/prompt.md +220 -0
  355. package/docs/cli.md +2 -2
  356. package/docs/config.md +5 -3
  357. package/docs/mcp.md +1 -1
  358. package/docs/review.md +1 -1
  359. package/docs/sdk.md +1 -1
  360. package/docs/self-host.md +7 -9
  361. package/package.json +2 -1
  362. package/dist/actions-5TDwmn_z.js +0 -20
  363. package/dist/adapter-sKt1J1Cm.js +0 -1
  364. package/dist/add-BftLUw05.js +0 -1
  365. package/dist/add-CXAGrCnC.js +0 -1
  366. package/dist/add-Ck_y_nKX.js +0 -2
  367. package/dist/agent-ChnedLBv.js +0 -8
  368. package/dist/alias-BpgVDY6_.js +0 -2
  369. package/dist/approvals-CE8dXZhE.js +0 -2
  370. package/dist/approve-dWW4qt76.js +0 -2
  371. package/dist/apps-B60OpAHX.js +0 -242
  372. package/dist/archive-CmRVm4iS.js +0 -4
  373. package/dist/archive-sweep-EiiXIqjr.js +0 -1
  374. package/dist/args-CxsMr9Un.js +0 -1
  375. package/dist/ask-Bou8zg-4.js +0 -4
  376. package/dist/auth-CImjIcG5.js +0 -1
  377. package/dist/auth-CWzSsiSC.js +0 -1
  378. package/dist/chat-Bbzlea60.js +0 -1
  379. package/dist/chat-Djps0Seg.js +0 -13
  380. package/dist/chat-bridge-CvspGKBc.js +0 -2
  381. package/dist/cli-ZUdhZnuW.js +0 -9
  382. package/dist/config-CF3_A3NX.js +0 -3
  383. package/dist/config-D2FxHWwi.js +0 -14
  384. package/dist/connection-BCRJHTgp.js +0 -1
  385. package/dist/create-Z0QxarzN.js +0 -1
  386. package/dist/credentials-Dt2uP3AQ.js +0 -1
  387. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/responsive.82549d958fae8f00.css.pnext-asset.js +0 -0
  388. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/zone.dbc84f981415d8f7.js +0 -10
  389. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/comps/frame/heads.20414ddcb2d08bcd.js +0 -51
  390. package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/comps/ui/card.15f7435f202831c3.css.pnext-asset.js +0 -0
  391. package/dist/dash/standalone/static/assets/chunks/action-977f2355e308d7d0.js +0 -1
  392. package/dist/dash/standalone/static/assets/chunks/agent-pills-e75e6ac80d515ffc.js +0 -1
  393. package/dist/dash/standalone/static/assets/chunks/agent-settings-form-09f23ed893d441c7.js +0 -1
  394. package/dist/dash/standalone/static/assets/chunks/agents-grid-bb4f3e4d38b2f459.js +0 -1
  395. package/dist/dash/standalone/static/assets/chunks/combo-126d5709a0b3a5bd.js +0 -1
  396. package/dist/dash/standalone/static/assets/chunks/composer-6bf94d1087a6e6a6.js +0 -1
  397. package/dist/dash/standalone/static/assets/chunks/composer-9c1fe67a0de73997.js +0 -1
  398. package/dist/dash/standalone/static/assets/chunks/connect-apps-32c169b6e00711ff.js +0 -1
  399. package/dist/dash/standalone/static/assets/chunks/connections-list-a102e909edff14d4.js +0 -1
  400. package/dist/dash/standalone/static/assets/chunks/create-link-a147953f343355ec.js +0 -1
  401. package/dist/dash/standalone/static/assets/chunks/credentials-list-31e0fbc1ef0d003e.js +0 -1
  402. package/dist/dash/standalone/static/assets/chunks/defaults-dcc0eccad4e8585b.js +0 -1
  403. package/dist/dash/standalone/static/assets/chunks/editor-79560c0f91cfc2f6.js +0 -7
  404. package/dist/dash/standalone/static/assets/chunks/engines-list-d22f50040e6842ae.js +0 -1
  405. package/dist/dash/standalone/static/assets/chunks/format-b19b8eec331414f4.js +0 -1
  406. package/dist/dash/standalone/static/assets/chunks/instructions-a08bb02650dedb8d.js +0 -2
  407. package/dist/dash/standalone/static/assets/chunks/instructions-a1f10bc3c2866e3f.js +0 -1
  408. package/dist/dash/standalone/static/assets/chunks/list-a0cc9bdb05fc71d4.js +0 -1
  409. package/dist/dash/standalone/static/assets/chunks/model-options-3a57918eaa4a2a82.js +0 -1
  410. package/dist/dash/standalone/static/assets/chunks/models-list-63ab774de3bf3788.js +0 -1
  411. package/dist/dash/standalone/static/assets/chunks/outcome-dialog-4ab62d613bee243a.js +0 -1
  412. package/dist/dash/standalone/static/assets/chunks/platform-actions-40824017c7b5b910.js +0 -1
  413. package/dist/dash/standalone/static/assets/chunks/platform-actions-a515643f341df568.js +0 -1
  414. package/dist/dash/standalone/static/assets/chunks/runners-list-a9f4f71695f7b376.js +0 -1
  415. package/dist/dash/standalone/static/assets/chunks/secrets-list-34e09c332363564c.js +0 -1
  416. package/dist/dash/standalone/static/assets/chunks/shared-init-02aaa49ed4606a76.js +0 -2
  417. package/dist/dash/standalone/static/assets/chunks/shared-init-03e620f936463465.js +0 -5
  418. package/dist/dash/standalone/static/assets/chunks/shared-init-6f8c76316a2cd9da.js +0 -1
  419. package/dist/dash/standalone/static/assets/chunks/shared-init-e8b9eb1e537215ed-2.js +0 -1
  420. package/dist/dash/standalone/static/assets/chunks/side-toggle-8563e6056e862225.js +0 -1
  421. package/dist/dash/standalone/static/assets/chunks/tail-ebdefca4d5c23266.js +0 -1
  422. package/dist/dash/standalone/static/assets/chunks/task-6ae2bb4f1b384140.js +0 -1
  423. package/dist/dash/standalone/static/assets/chunks/task-actions-462507b76bda4657.js +0 -1
  424. package/dist/dash/standalone/static/assets/chunks/task-view-341d79730a341007.js +0 -5
  425. package/dist/dash/standalone/static/assets/chunks/tasks-list-6037ecd098332564.js +0 -1
  426. package/dist/dash/standalone/static/assets/create-param-id-8fa3e9101430f26a.css +0 -1
  427. package/dist/dash/standalone/static/assets/dash-param-org-agents-0ddb989cab5b0fbf.css +0 -1
  428. package/dist/dash/standalone/static/assets/dash-param-org-agents-new-504d1a906feabb6f.css +0 -1
  429. package/dist/dash/standalone/static/assets/dash-param-org-agents-param-slug-edit-7cd987a1a42a3b44.css +0 -1
  430. package/dist/dash/standalone/static/assets/dash-param-org-agents-param-slug-fcdddf2dc26453ce.css +0 -1
  431. package/dist/dash/standalone/static/assets/dash-param-org-agents-param-slug-platforms-26b84d659dbca7f4.css +0 -1
  432. package/dist/dash/standalone/static/assets/dash-param-org-agents-param-slug-settings-97ff652f9fe5979d.css +0 -1
  433. package/dist/dash/standalone/static/assets/dash-param-org-agents-param-slug-tasks-d47377c0f877c5c0.css +0 -1
  434. package/dist/dash/standalone/static/assets/dash-param-org-agents-param-slug-usage-6a09580f11d669b7.css +0 -1
  435. package/dist/dash/standalone/static/assets/dash-param-org-settings-param-tab-06283106fffbd5c6.css +0 -1
  436. package/dist/dash/standalone/static/assets/dash-param-org-tasks-9cb2bb12389c9a04.css +0 -1
  437. package/dist/dash/standalone/static/assets/dash-param-org-tasks-param-id-a87fa0eaa02e4008.css +0 -1
  438. package/dist/dash/standalone/static/assets/dash-param-org-usage-786c91a7640542e6.css +0 -1
  439. package/dist/dash/standalone/static/assets/global-eee296f070a9bb95.css +0 -1
  440. package/dist/dash/standalone/static/assets/pnext-client-17c3ee29b7487596.js +0 -1
  441. package/dist/dash/standalone/static/assets/pnext-client-1eaa8deb5395345f.js +0 -1
  442. package/dist/dash/standalone/static/assets/pnext-client-29e2b964470f6587.js +0 -1
  443. package/dist/dash/standalone/static/assets/pnext-client-2a1e756934e7be1a.js +0 -1
  444. package/dist/dash/standalone/static/assets/pnext-client-31e64d49f6132b26.js +0 -1
  445. package/dist/dash/standalone/static/assets/pnext-client-3d13328ad0b1148b.js +0 -1
  446. package/dist/dash/standalone/static/assets/pnext-client-4ac29d3e9f1a91be.js +0 -1
  447. package/dist/dash/standalone/static/assets/pnext-client-7d479b3375e3c07e.js +0 -1
  448. package/dist/dash/standalone/static/assets/pnext-client-9eac45990b233b55.js +0 -1
  449. package/dist/dash/standalone/static/assets/pnext-client-a8c9c169322e7e3d.js +0 -1
  450. package/dist/dash/standalone/static/assets/pnext-client-b622d087a38b1b77.js +0 -1
  451. package/dist/dash/standalone/static/assets/pnext-client-b7fea94dfda72453.js +0 -1
  452. package/dist/dash/standalone/static/assets/pnext-client-cc8e5e6c95040688.js +0 -1
  453. package/dist/dash/standalone/static/assets/pnext-client-d16e2a42b0a274c0.js +0 -1
  454. package/dist/dash/standalone/static/assets/pnext-client-dbccfef0cbb6b18d.js +0 -1
  455. package/dist/dash/standalone/static/assets/pnext-client-e74706ae238018e5.js +0 -1
  456. package/dist/dash/standalone/static/assets/pnext-client-ebe7c9692619ea00.js +0 -1
  457. package/dist/dash/standalone/static/assets/pnext-client-ef8d348060493085.js +0 -1
  458. package/dist/dash/standalone/static/assets/pnext-client-fcdfa8b2c8824449.js +0 -1
  459. package/dist/dash/standalone/static/assets/pnext-client-ff36e2f8a0522759.js +0 -1
  460. package/dist/default-DcYwZCnl.js +0 -1
  461. package/dist/default-EXRzdZUY.js +0 -1
  462. package/dist/delete-Bmn2_TiV.js +0 -2
  463. package/dist/disable-CnCxTC3X.js +0 -1
  464. package/dist/discover-CBP4Uw0N.js +0 -1
  465. package/dist/dispatch-D3Dqxijf.js +0 -8
  466. package/dist/docs-3SW1O9iS.js +0 -2
  467. package/dist/env-C_DoQYl5.js +0 -1
  468. package/dist/exec-BsXFIdTl.js +0 -11
  469. package/dist/executor-5j-Ewzzb.js +0 -11
  470. package/dist/flow-CuUq-MDm.js +0 -1
  471. package/dist/http-Cg_wYcZT.js +0 -1
  472. package/dist/init-Dgj6V-aS.js +0 -1
  473. package/dist/integrations-D3OgJk6Y.js +0 -1
  474. package/dist/integrations-DsFX2KCq.js +0 -1
  475. package/dist/list-B6lwbCEp.js +0 -1
  476. package/dist/list-BE3xmX_4.js +0 -1
  477. package/dist/list-BVIAyAAE.js +0 -4
  478. package/dist/list-Bggy3HZY.js +0 -4
  479. package/dist/list-CLtqMYPK.js +0 -2
  480. package/dist/list-DkO78ZEF.js +0 -3
  481. package/dist/load-CRmQB1LD.js +0 -2
  482. package/dist/local-ccKBhpQc.js +0 -1
  483. package/dist/log-view-DB4nXHXO.js +0 -3
  484. package/dist/login-BCdXHQ7z.js +0 -1
  485. package/dist/match-Kt3vFTl1.js +0 -1
  486. package/dist/mcp-O8VTfzdL.js +0 -12
  487. package/dist/mcp-YhyTUMIM.js +0 -11
  488. package/dist/mcp-server-DGzme0YX.js +0 -1
  489. package/dist/model-Bzpwl_95.js +0 -1
  490. package/dist/models-CdvmuaLv.js +0 -1
  491. package/dist/prompt-C--TI1qn.js +0 -8
  492. package/dist/push-vt81gcxD.js +0 -1
  493. package/dist/reconnect-BfghDbl1.js +0 -1
  494. package/dist/refresh-yXJ13FAf.js +0 -1
  495. package/dist/remote-oQs6My_3.js +0 -1
  496. package/dist/remove-5iAM2aTO.js +0 -1
  497. package/dist/remove-BZCA-gdU.js +0 -1
  498. package/dist/remove-BwhcR6ig.js +0 -1
  499. package/dist/rename-lyssPQfD.js +0 -1
  500. package/dist/result-jeiRJTzA.js +0 -18
  501. package/dist/review-CJS59vO-.d.ts +0 -157
  502. package/dist/run-CLy9a2MO.js +0 -2
  503. package/dist/run-DU4G8gNw.js +0 -2
  504. package/dist/run-D_pl9GF_.js +0 -5
  505. package/dist/runner-DME7ohjt.js +0 -1
  506. package/dist/runner-zT5Oyrfr.js +0 -1
  507. package/dist/runners-CNhxPjg8.js +0 -36
  508. package/dist/schema-BSlHRFSP.js +0 -8
  509. package/dist/serve-FG2LgXxM.js +0 -9
  510. package/dist/serve-UE1fcf4t.js +0 -1
  511. package/dist/serve-wQgyxwdY.js +0 -1
  512. package/dist/setup-host-BsbDs4lJ.js +0 -6
  513. package/dist/show-Cajmf606.js +0 -1
  514. package/dist/show-D0qTuXRU.js +0 -1
  515. package/dist/slack-C_RlVDz7.js +0 -3
  516. package/dist/steer-i6w87g_t.js +0 -4
  517. package/dist/stop-CJ0PHvKp.js +0 -1
  518. package/dist/task-DTN_fIGC.js +0 -1
  519. package/dist/task-DXHKWB_J.js +0 -5
  520. package/dist/task-IoBYe7ok.js +0 -1
  521. package/dist/test-BTkKFbnx.js +0 -1
  522. package/dist/tools-B-2oi2wI.js +0 -1
  523. package/dist/unalias-Cqx7i_L0.js +0 -1
  524. package/dist/update-MNyeVXyy.js +0 -2
  525. package/dist/upgrade-CGSkY0FY.js +0 -2
  526. package/dist/usage-sx-FR0bz.js +0 -1
  527. package/dist/views-BhsnL0nr.js +0 -5
  528. package/dist/watch-IL2eEgwD.js +0 -9
  529. package/dist/watch-qfr7aSfo.js +0 -5
  530. package/dist/wire-B5rc5Av6.js +0 -1
  531. package/dist/worker-BBZ36xL0.js +0 -1
  532. package/dist/worker-D2csFtoH.js +0 -9
  533. /package/dist/dash/standalone/server/modules-server-server-react-server/src/core/{errors.5954bd9bd05e8230.js → errors.0a735590a5412ea6.js} +0 -0
  534. /package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/agents/(list)/{page.76589c15dee1732d.css.pnext-asset.js → page.cf7460a024706f75.css.pnext-asset.js} +0 -0
  535. /package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/agents/[slug]/(tabs)/platforms/{page.3ffef848a0b0dda3.css.pnext-asset.js → page.c811938ae8a8f1df.css.pnext-asset.js} +0 -0
  536. /package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/agents/[slug]/(tabs)/settings/{agent-settings-form.2d19ea3a4d380e0d.css.pnext-asset.js → agent-settings-form.ca926c58d15044aa.css.pnext-asset.js} +0 -0
  537. /package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/agents/agent/{hero.13019680f38b0630.css.pnext-asset.js → hero.1bef5dca89b5942c.css.pnext-asset.js} +0 -0
  538. /package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/{operator/page.9002a449f872a10e.css.pnext-asset.js → settings/[tab]/connections-list.46786fe36b121a43.css.pnext-asset.js} +0 -0
  539. /package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/settings/[tab]/{connections-list.f742847e4887f072.css.pnext-asset.js → credentials-list.f7c27f170ec1e868.css.pnext-asset.js} +0 -0
  540. /package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/settings/[tab]/{credentials-list.98e0b34932a6ee4c.css.pnext-asset.js → list.8cbee173a5aff98d.css.pnext-asset.js} +0 -0
  541. /package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/settings/[tab]/{list.e0ce46919b75ef76.css.pnext-asset.js → runners-list.53c7ea80b6fb734c.css.pnext-asset.js} +0 -0
  542. /package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/{settings/[tab]/runners-list.a835c9a264cf8903.css.pnext-asset.js → tasks/[id]/task-view.57990cfd2bdf5c11.css.pnext-asset.js} +0 -0
  543. /package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/tasks/{[id]/task-view.38b1b7ef3976ba71.css.pnext-asset.js → composer.5b8687662e1629fa.css.pnext-asset.js} +0 -0
  544. /package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/dash/[org]/tasks/{composer.79c015348f861749.css.pnext-asset.js → list/tasks-list.abbbc9ace4d866e5.css.pnext-asset.js} +0 -0
  545. /package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/{dash/[org]/tasks/list/tasks-list.2282a7cef8b15bd8.css.pnext-asset.js → globals.c8fd2b8b01e7077b.css.pnext-asset.js} +0 -0
  546. /package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/app/{dash/[org]/usage/usage.775df2f43187c487.css.pnext-asset.js → responsive.ebc5f7d77b4b86a0.css.pnext-asset.js} +0 -0
  547. /package/dist/dash/standalone/server/modules-server-server-react-server/src/server/dash/{app/globals.dccea8b03fa4b6d2.css.pnext-asset.js → comps/ui/card.f80288cc42f9bcae.css.pnext-asset.js} +0 -0
@@ -1,33 +1,34 @@
1
1
  "use client";
2
- import "./task-view.38b1b7ef3976ba71.css.pnext-asset.js";
2
+ import "./task-view.57990cfd2bdf5c11.css.pnext-asset.js";
3
3
  import { Fragment } from "../../../../../../../../../../node_modules/preact/dist/preact.mjs";
4
4
  import { useEffect, useMemo, useRef, useState } from "../../../../../../../../../../node_modules/preact/hooks/dist/hooks.mjs";
5
- import { serverEvents } from "../../../../../../../client/index.8e150ef2bc6a5f4e.js";
6
- import { LogView } from "../../../../../../../core/task/log-view.871cbff2605b5cfd.js";
7
- import { client } from "../../../../../utils/client.d25e6dcc6704eb60.js";
8
- import { formatDate, formatDuration, reasonText } from "../../../../../utils/format.6a7d1beaf4d09d9c.js";
5
+ import { useFollowEnd } from "../../../../../utils/follow.bfb9bcff3c1366d7.js";
6
+ import { serverEvents } from "../../../../../../../client/index.843431e3538fd9a4.js";
7
+ import { LogView } from "../../../../../../../core/task/log-view.60308a11f7001eb7.js";
8
+ import { EMPTY_MESSAGE, EMPTY_MESSAGE_NOTICE, SKIPPED } from "../../../../../../../core/defaults.1b615366c56838a1.js";
9
+ import { client } from "../../../../../utils/client.189224c16057d7a1.js";
10
+ import { formatDate, formatDuration, reasonText } from "../../../../../utils/format.ceeaafa10a0563f3.js";
9
11
  import { Link } from "../../../../../../../../../../node_modules/@wular/pnext/src/api/link.tsx";
10
12
  import { useSearchParams } from "../../../../../../../../../../node_modules/@wular/pnext/src/api/client-navigation.ts";
11
- import { useOrg } from "../../../../../comps/nav/org.4d84ad0ac340fbe2.js";
12
- import { iAgent, iClock, iDown, iFolder, iPlug, iRight, iTerminal } from "../../../../../comps/ui/icons.a34176f37808cd66.js";
13
- import { Badge } from "../../../../../comps/ui/badge.0851f234f300c694.js";
14
- import { Button } from "../../../../../comps/ui/button.983daea9e687fc5d.js";
15
- import { Card, Loading } from "../../../../../comps/ui/card.c08471eaa0bc1cec.js";
16
- import { Collapse } from "../../../../../comps/ui/collapse.762eba56417214ca.js";
13
+ import { useOrg } from "../../../../../comps/nav/org.572ad93c7707ab27.js";
14
+ import { iAgent, iClock, iDown, iFolder, iPlug, iRight, iTerminal } from "../../../../../comps/ui/icons.e36c72f54750663a.js";
15
+ import { Badge } from "../../../../../comps/ui/badge.c0bc352791a95fd6.js";
16
+ import { Button } from "../../../../../comps/ui/button.ce9e6cdb08ca86db.js";
17
+ import { Card, Loading } from "../../../../../comps/ui/card.9f0d45b73bc78b4f.js";
18
+ import { Collapse } from "../../../../../comps/ui/collapse.93e4d1b20c2873ed.js";
17
19
  import { Icon } from "../../../../../comps/ui/icon.0874ca2f58f7db14.js";
18
- import { Menu } from "../../../../../comps/ui/menu.a41edd5cde1c90cf.js";
19
- import { MenuRadio } from "../../../../../comps/ui/menu-items.a8e580a0c90631ff.js";
20
- import { Back, PageHead } from "../../../../../comps/frame/page-head.bd54e52ac4a7a89c.js";
21
- import { backFrom } from "../../../../../comps/frame/heads.20414ddcb2d08bcd.js";
22
- import { markdown } from "../../agents/agent/instructions.ca0c09d4849bfc30.js";
20
+ import { Menu } from "../../../../../comps/ui/menu.ee45bace979944b6.js";
21
+ import { MenuRadio } from "../../../../../comps/ui/menu-items.1d082ac4dae8f3d4.js";
22
+ import { Back, PageHead } from "../../../../../comps/frame/page-head.85f15db7b648d48c.js";
23
+ import { markdown } from "../../agents/agent/instructions.85b1cd986a9edbb5.js";
23
24
  import { Status } from "../list/status.16190fdd5fd7daad.js";
24
- import { folderName, sourceLabel, taskActive, taskTitle } from "../list/task.af5001e51d2f612b.js";
25
- import { useAction } from "../../../../../utils/action.1a6356d5b722cafb.js";
26
- import { Approval, TaskActions } from "./task-actions.62422b873f98ee8e.js";
27
- import { Activity, RunPreview, runSummary } from "./activity.3755ae6065c3fc28.js";
28
- import { toastError, useTaskEvents, watchTask } from "../../../../../comps/frame/task-toasts.63f673632770924d.js";
25
+ import { eventMessages, folderName, replyRequired, sourceLabel, taskActive, taskTitle, TASK_TABS } from "../list/task.a0c68180db5fb4c1.js";
26
+ import { useAction } from "../../../../../utils/action.968bcab0f5e3665d.js";
27
+ import { useZone } from "../../../../zone.0515a688ee5ff6ca.js";
28
+ import { Approval, TaskActions } from "./task-actions.f5f2016d2dc7f422.js";
29
+ import { Activity, RunPreview, runSummary } from "./activity.fcda6f18c8207c99.js";
30
+ import { toastError, useTaskEvents, watchTask } from "../../../../../comps/frame/task-toasts.e1a484113e1df660.js";
29
31
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "../../../../../../../../../../node_modules/preact/jsx-runtime/dist/jsxRuntime.mjs";
30
- const TABS = ["Conversation", "Activity"];
31
32
  function messageOf(value, fallback) {
32
33
  if (typeof value === "string") return value;
33
34
  if (!value || typeof value !== "object") return fallback;
@@ -39,6 +40,34 @@ function messageOf(value, fallback) {
39
40
  ]) if (typeof record[key] === "string") return record[key];
40
41
  return fallback;
41
42
  }
43
+ /** Who made a turn and what they said: a platform turn's messages, else its prompt. */
44
+ function turnMessages(task, prompt, first) {
45
+ const { event } = task.task;
46
+ return eventMessages(prompt) ?? (first && event?.actor && prompt === event.text ? [{
47
+ author: event.actor.login ?? event.actor.id,
48
+ text: prompt
49
+ }] : [{
50
+ author: "Prompt",
51
+ text: prompt
52
+ }]);
53
+ }
54
+ /** Whether a log line came before the end of a turn: a hosted turn's log sequence, else its finish time. */
55
+ const within = (turn, line) => turn.logSeq !== undefined ? line.seq < turn.logSeq : turn.finishedAt === undefined || line.at <= turn.finishedAt;
56
+ /** Each turn's posts from the reply tool, in order, from the lines loaded so far; a line past every turn goes to the last. */
57
+ function turnReplies(turns, lines) {
58
+ const replies = turns.map(() => []);
59
+ for (const line of lines) {
60
+ const message = line.entry?.kind === "reply" ? line.entry.message : undefined;
61
+ if (!message) continue;
62
+ const index = turns.findIndex((turn) => within(turn, line));
63
+ replies.at(index).push(message);
64
+ }
65
+ return replies;
66
+ }
67
+ function isEmpty(text) {
68
+ const bare = text.trim().replace(/^`+|`+$/g, "");
69
+ return bare.trim() === EMPTY_MESSAGE;
70
+ }
42
71
  const isFindings = (json) => typeof json === "object" && json !== null && Array.isArray(json.findings) && json.findings.every((f) => typeof f === "object" && f !== null && "file" in f && "summary" in f);
43
72
  /** A review.s findings, one per changed line, worst first. */
44
73
  function Findings({ findings }) {
@@ -84,8 +113,13 @@ function Findings({ findings }) {
84
113
  }, index))
85
114
  });
86
115
  }
87
- function ResultBody({ value }) {
116
+ /** A result as the platform got it: an empty answer is the notice when a reply was due, else the skip. */
117
+ function ResultBody({ value, required }) {
88
118
  const text = messageOf(value, "Result received.");
119
+ if (isEmpty(text)) return /* @__PURE__ */ _jsx("p", {
120
+ class: "body muted",
121
+ children: required ? EMPTY_MESSAGE_NOTICE : SKIPPED
122
+ });
89
123
  let json;
90
124
  if (/^\s*[[{]/.test(text)) try {
91
125
  json = JSON.parse(text);
@@ -100,16 +134,14 @@ function ResultBody({ value }) {
100
134
  children: markdown(text)
101
135
  });
102
136
  }
103
- /** Back to where the task was opened from: a `back` path, a `from` list, or Tasks. */
137
+ /** Back to where the task was opened from, a `back` path, or Tasks. */
104
138
  function TaskBack() {
105
139
  const search = useSearchParams();
106
140
  const org = useOrg();
107
141
  return /* @__PURE__ */ _jsx(Back, {
108
- ...backFrom(search.get("from"), {
109
- href: "/dash/[org]/tasks",
110
- params: { org },
111
- label: "Tasks"
112
- }),
142
+ href: "/dash/[org]/tasks",
143
+ params: { org },
144
+ label: "Tasks",
113
145
  back: search.get("back")
114
146
  });
115
147
  }
@@ -123,9 +155,10 @@ function TaskHead({ task, tz }) {
123
155
  };
124
156
  const source = task.task.event?.integration ?? task.task.source;
125
157
  const kind = task.task.event?.type ?? (task.task.flow !== "default" ? task.task.flow : undefined);
158
+ const title = useMemo(() => taskTitle(task).split("\n")[0], [task.task, task.turns]);
126
159
  return /* @__PURE__ */ _jsx(PageHead, {
127
160
  back: /* @__PURE__ */ _jsx(TaskBack, {}),
128
- title: taskTitle(task).split("\n")[0],
161
+ title,
129
162
  meta: /* @__PURE__ */ _jsxs(_Fragment, { children: [/* @__PURE__ */ _jsx(Status, { status: task.status }), task.archivedAt ? /* @__PURE__ */ _jsx(Badge, { children: "archived" }) : null] }),
130
163
  lead: /* @__PURE__ */ _jsxs(_Fragment, { children: [
131
164
  /* @__PURE__ */ _jsxs("span", {
@@ -156,7 +189,7 @@ function TaskHead({ task, tz }) {
156
189
  org,
157
190
  slug: task.task.agent
158
191
  },
159
- search: { from: `/dash/${org}/tasks/${task.task.id}` },
192
+ search: { back: `/dash/${org}/tasks/${task.task.id}` },
160
193
  children: [/* @__PURE__ */ _jsx(Icon, { d: iAgent }), task.task.agent]
161
194
  }), engine ? /* @__PURE__ */ _jsx("span", {
162
195
  class: "fact-dim",
@@ -193,10 +226,12 @@ function useDisplayRows(lines) {
193
226
  }, [lines]);
194
227
  }
195
228
  /** A task as a conversation with its activity; the box at the bottom steers, asks, or continues. */
196
- export function TaskView({ initial, tz }) {
229
+ export function TaskView({ initial, tz: serverZone }) {
230
+ const tz = useZone(serverZone);
197
231
  const [task, setTask] = useState(initial);
198
232
  const [lines, setLines] = useState(initial.logs ?? []);
199
- const [complete, setComplete] = useState((initial.logs?.length ?? 0) < LOG_CHUNK);
233
+ // A full first page leaves older lines for the stream to replay; turns wait for them.
234
+ const [caughtUp, setCaughtUp] = useState((initial.logs?.length ?? 0) < LOG_PAGE);
200
235
  const [tab, setTab] = useState("conversation");
201
236
  const [at, setAt] = useState();
202
237
  const [sent, setSent] = useState([]);
@@ -216,6 +251,8 @@ export function TaskView({ initial, tz }) {
216
251
  observer.observe(form);
217
252
  return () => observer.disconnect();
218
253
  }, [task.task.flow]);
254
+ // A sent message takes the page to its end, which then follows the conversation while you stay there.
255
+ const { follow } = useFollowEnd();
219
256
  const sender = useAction({ toast: "Not sent" });
220
257
  const asker = useAction({ toast: "Not sent" });
221
258
  const sending = Boolean(sender.pending);
@@ -245,7 +282,14 @@ export function TaskView({ initial, tz }) {
245
282
  return () => removeEventListener("visibilitychange", sync);
246
283
  }, []);
247
284
  // Logs stream from when the task runs until the stream ends them, which waits for logs still arriving.
248
- const [streaming, setStreaming] = useState(live);
285
+ const [streaming, setStreaming] = useState(live || !caughtUp);
286
+ // Each catch-up opens a fresh stream, which says again when it has caught up.
287
+ const [follows, setFollows] = useState(0);
288
+ const resume = () => {
289
+ setCaughtUp(false);
290
+ setStreaming(true);
291
+ setFollows((n) => n + 1);
292
+ };
249
293
  // Each turn's reads apply to it alone: a continue, here or from elsewhere, starts the next.
250
294
  const [round, setRound] = useState(0);
251
295
  const roundNow = useRef(0);
@@ -258,10 +302,10 @@ export function TaskView({ initial, tz }) {
258
302
  if (taskActive(full)) setStreaming(true);
259
303
  }).catch((reason) => toastError("Task not refreshed", reasonText(reason)));
260
304
  };
261
- // A running stream follows its own cursor; a stopped page fetches the lines it missed.
305
+ // A running stream follows its own cursor; a stopped page streams the lines it missed.
262
306
  const catchUp = () => {
263
307
  reload();
264
- if (!streaming) setComplete(false);
308
+ if (!streaming) resume();
265
309
  };
266
310
  // A new turn's prompt, from this page or elsewhere; its state comes from the events stream.
267
311
  const nextRound = () => {
@@ -286,7 +330,7 @@ export function TaskView({ initial, tz }) {
286
330
  // A turn continued and finished elsewhere while this page heard nothing of it.
287
331
  if (!live && !taskActive(event) && event.finishedAt !== task.finishedAt) {
288
332
  reload();
289
- setComplete(false);
333
+ resume();
290
334
  }
291
335
  setTask((current) => ({
292
336
  ...current,
@@ -305,17 +349,9 @@ export function TaskView({ initial, tz }) {
305
349
  // Missed events: refetch the task and catch up its logs from the cursor.
306
350
  catchUp
307
351
  );
308
- // Older lines a chunk at a time, then the stream follows the run.
309
- useEffect(() => {
310
- if (complete) return;
311
- void client.tasks.logs(task.task.id, after.current, LOG_CHUNK).then((more) => {
312
- append(more);
313
- if (more.length < LOG_CHUNK) setComplete(true);
314
- }).catch((reason) => toastError("Activity not loaded", reasonText(reason)));
315
- }, [complete, lines.length]);
316
352
  // A hidden tab holds no log stream and resumes from its cursor.
317
353
  useEffect(() => {
318
- if (!complete || !streaming || !visible) return;
354
+ if (!streaming || !visible) return;
319
355
  const abort = new AbortController();
320
356
  const follow = async () => {
321
357
  while (!abort.signal.aborted) {
@@ -328,10 +364,15 @@ export function TaskView({ initial, tz }) {
328
364
  for await (const event of serverEvents(response.body)) {
329
365
  if (abort.signal.aborted) return;
330
366
  if (event.event === "log") append([JSON.parse(event.data)]);
331
- else if (event.event === "end") return setStreaming(false);
367
+ else if (event.event === "caught-up") setCaughtUp(true);
368
+ else if (event.event === "end") {
369
+ setCaughtUp(true);
370
+ return setStreaming(false);
371
+ }
332
372
  }
333
- } catch {
373
+ } catch (reason) {
334
374
  if (abort.signal.aborted) return;
375
+ console.error("coder dashboard: task stream", reason);
335
376
  }
336
377
  await new Promise((done) => setTimeout(done, 1e3));
337
378
  }
@@ -339,10 +380,10 @@ export function TaskView({ initial, tz }) {
339
380
  void follow();
340
381
  return () => abort.abort();
341
382
  }, [
342
- complete,
343
383
  streaming,
344
384
  visible,
345
- round
385
+ round,
386
+ follows
346
387
  ]);
347
388
  const turns = task.turns ?? [{
348
389
  prompt: task.task.prompt ?? task.task.event?.text ?? taskTitle(task),
@@ -350,10 +391,19 @@ export function TaskView({ initial, tz }) {
350
391
  error: task.error,
351
392
  finishedAt: task.finishedAt
352
393
  }];
394
+ const parsed = useMemo(() => turns.map((turn, index) => ({
395
+ messages: turnMessages(task, turn.prompt, index === 0),
396
+ required: replyRequired(task, turn.prompt)
397
+ })), [turns, task.task]);
398
+ const replied = useMemo(() => turnReplies(turns, lines), [turns, lines]);
399
+ // Turns show once their log lines are in, so a reply never pushes what is already shown.
400
+ const loaded = turns.findIndex((turn) => !caughtUp && (!lines.length || within(turn, lines.at(-1))));
401
+ const shown = loaded < 0 ? turns : turns.slice(0, loaded);
353
402
  const send = async () => {
354
403
  const text = input.current?.value.trim();
355
404
  if (!text || sending) return;
356
405
  const kind = live ? ask ? "ask" : "steer" : "continue";
406
+ follow();
357
407
  if (kind === "ask") {
358
408
  // A question never blocks the box: it shows at once and its answer lands under it.
359
409
  input.current.value = "";
@@ -439,7 +489,7 @@ export function TaskView({ initial, tz }) {
439
489
  class: "tabs",
440
490
  role: "tablist",
441
491
  "aria-label": "Task",
442
- children: TABS.map((label) => {
492
+ children: TASK_TABS.map((label) => {
443
493
  const key = label.toLowerCase();
444
494
  return /* @__PURE__ */ _jsx("button", {
445
495
  type: "button",
@@ -451,26 +501,33 @@ export function TaskView({ initial, tz }) {
451
501
  }, key);
452
502
  })
453
503
  }),
504
+ task.approval ? /* @__PURE__ */ _jsx(Approval, { task }) : null,
454
505
  tab === "activity" ? /* @__PURE__ */ _jsx(Activity, {
455
506
  rows,
456
507
  live,
457
508
  tz,
458
509
  at
459
- }) : /* @__PURE__ */ _jsx("div", {
510
+ }) : /* @__PURE__ */ _jsxs("div", {
460
511
  class: "convo",
461
- children: turns.map((turn, index) => {
512
+ children: [shown.map((turn, index) => {
462
513
  const last = index === turns.length - 1;
514
+ const posts = replied[index];
515
+ // A turn that posted with the reply tool and ended empty posted nothing more.
516
+ const body = posts.length > 0 && isEmpty(messageOf(turn.result, "")) ? null : /* @__PURE__ */ _jsx(ResultBody, {
517
+ value: turn.result,
518
+ required: parsed[index].required
519
+ });
463
520
  return /* @__PURE__ */ _jsxs(Fragment, { children: [
464
- /* @__PURE__ */ _jsxs("div", {
521
+ parsed[index].messages.map((message, index) => /* @__PURE__ */ _jsxs("div", {
465
522
  class: "turn prompt",
466
523
  children: [/* @__PURE__ */ _jsx("p", {
467
524
  class: "who",
468
- children: "Prompt"
525
+ children: message.author
469
526
  }), /* @__PURE__ */ _jsx(Collapse, {
470
527
  class: "prose",
471
- children: turn.prompt
528
+ children: message.text
472
529
  })]
473
- }),
530
+ }, `p${index}`)),
474
531
  last ? (task.answer ?? []).slice(0, knownAnswers.current).map((answer, index) => /* @__PURE__ */ _jsxs("div", {
475
532
  class: "turn answer",
476
533
  children: [/* @__PURE__ */ _jsx("p", {
@@ -481,6 +538,16 @@ export function TaskView({ initial, tz }) {
481
538
  children: messageOf(answer, "Answer received.")
482
539
  })]
483
540
  }, `a${index}`)) : null,
541
+ posts.map((text, index) => /* @__PURE__ */ _jsxs("div", {
542
+ class: "turn reply",
543
+ children: [/* @__PURE__ */ _jsx("p", {
544
+ class: "who",
545
+ children: task.task.agent
546
+ }), /* @__PURE__ */ _jsx("div", {
547
+ class: "prose md",
548
+ children: markdown(text)
549
+ })]
550
+ }, `r${index}`)),
484
551
  sent.filter((message) => message.turn === index).map((message, index) => {
485
552
  const asked = message.kind === "ask" ? sent.filter((each) => each.kind === "ask").indexOf(message) : -1;
486
553
  const answer = asked < 0 ? undefined : task.answer?.[knownAnswers.current + asked];
@@ -512,9 +579,9 @@ export function TaskView({ initial, tz }) {
512
579
  ]
513
580
  }, index);
514
581
  }),
515
- turn.result ? /* @__PURE__ */ _jsxs(Card, {
582
+ turn.result && (body || last && foot) ? /* @__PURE__ */ _jsxs(Card, {
516
583
  title: "Result",
517
- children: [/* @__PURE__ */ _jsx(ResultBody, { value: turn.result }), last ? foot : null]
584
+ children: [body, last ? foot : null]
518
585
  }) : last && live ? /* @__PURE__ */ _jsx(Card, {
519
586
  title: "Result",
520
587
  actions: activityLink,
@@ -533,7 +600,7 @@ export function TaskView({ initial, tz }) {
533
600
  }), last && !turn.result ? foot : null]
534
601
  }) : null
535
602
  ] }, index);
536
- })
603
+ }), shown.length < turns.length ? /* @__PURE__ */ _jsx(Loading, { label: "Loading the conversation." }) : null]
537
604
  }),
538
605
  replies ? /* @__PURE__ */ _jsx("form", {
539
606
  ref: reply,
@@ -587,12 +654,8 @@ export function TaskView({ initial, tz }) {
587
654
  }) : /* @__PURE__ */ _jsx("p", {
588
655
  class: "muted no-reply",
589
656
  children: "This flow takes no follow-ups."
590
- }),
591
- /* @__PURE__ */ _jsx("div", {
592
- class: "approval-dock",
593
- children: task.approval ? /* @__PURE__ */ _jsx(Approval, { task }) : null
594
657
  })
595
658
  ] });
596
659
  }
597
- /** Lines per request when a task's log loads or follows. */
598
- export const LOG_CHUNK = 500;
660
+ /** Lines the task read carries; a full page means more wait in the log. */
661
+ const LOG_PAGE = 500;
@@ -1,6 +1,6 @@
1
- import { localServer } from "../../../../api/types.9f59e6c761d6aac4.js";
2
- import { modelsByEngine } from "../settings/model-options.2eacf7f8ac0032df.js";
3
- import { DEFAULT_ENGINE } from "../../../../../../core/defaults.e6ce0944639198a2.js";
1
+ import { localServer } from "../../../../api/types.79f9092cdb5a00d1.js";
2
+ import { modelsByEngine } from "../settings/model-options.a96c11d11674f598.js";
3
+ import { DEFAULT_ENGINE } from "../../../../../../core/defaults.1b615366c56838a1.js";
4
4
  export const PLACEHOLDER = "What should the agent do? Type / for flows and reviews.";
5
5
  export const CHOICE = {
6
6
  repo: "",
@@ -1,39 +1,27 @@
1
1
  "use client";
2
- import "./composer.79c015348f861749.css.pnext-asset.js";
2
+ import "./composer.5b8687662e1629fa.css.pnext-asset.js";
3
3
  import { Fragment } from "../../../../../../../../../node_modules/preact/dist/preact.mjs";
4
4
  import { useEffect, useId, useLayoutEffect, useRef, useState } from "../../../../../../../../../node_modules/preact/hooks/dist/hooks.mjs";
5
- import { client } from "../../../../utils/client.d25e6dcc6704eb60.js";
6
- import { toastFailure, useAction } from "../../../../utils/action.1a6356d5b722cafb.js";
7
- import { formatDate } from "../../../../utils/format.6a7d1beaf4d09d9c.js";
8
- import { iAlert, iPlus, iRight, iSliders, iSteer, iX } from "../../../../comps/ui/icons.a34176f37808cd66.js";
5
+ import { client } from "../../../../utils/client.189224c16057d7a1.js";
6
+ import { toastFailure, useAction } from "../../../../utils/action.968bcab0f5e3665d.js";
7
+ import { formatDate } from "../../../../utils/format.ceeaafa10a0563f3.js";
8
+ import { iAlert, iPlus, iRight, iSliders, iSteer, iX } from "../../../../comps/ui/icons.e36c72f54750663a.js";
9
9
  import { useRouter } from "../../../../../../../../../node_modules/@wular/pnext/src/api/client-navigation.ts";
10
- import { useOrg } from "../../../../comps/nav/org.4d84ad0ac340fbe2.js";
11
- import { Loading } from "../../../../comps/ui/card.c08471eaa0bc1cec.js";
12
- import { Button, IconButton } from "../../../../comps/ui/button.983daea9e687fc5d.js";
13
- import { reasonText } from "../../../../utils/format.6a7d1beaf4d09d9c.js";
10
+ import { useOrg } from "../../../../comps/nav/org.572ad93c7707ab27.js";
11
+ import { Loading } from "../../../../comps/ui/card.9f0d45b73bc78b4f.js";
12
+ import { Button, IconButton } from "../../../../comps/ui/button.ce9e6cdb08ca86db.js";
13
+ import { reasonText } from "../../../../utils/format.ceeaafa10a0563f3.js";
14
14
  import { Icon } from "../../../../comps/ui/icon.0874ca2f58f7db14.js";
15
- import { Select } from "../../../../comps/ui/select.36c6f21ce6aa720f.js";
16
- import { MenuLabel, MenuLink, MenuNote, MenuOption, MenuPanel, MenuRadio, MenuRow } from "../../../../comps/ui/menu-items.a8e580a0c90631ff.js";
17
- import { connectRepositories } from "../agents/editor/connect-repositories.258f6c2c5f1b1b17.js";
18
- import { ENGINES, ENGINE_NAMES, defaultLabel, modelValue, splitModel } from "../settings/model-options.2eacf7f8ac0032df.js";
19
- import { folderName } from "./list/task.af5001e51d2f612b.js";
20
- import { watchTask } from "../../../../comps/frame/task-toasts.63f673632770924d.js";
21
- import { CHOICE, PLACEHOLDER, loadComposer, savedChoice, usableAgent } from "./composer-data.ff108c0ef82a4d7b.js";
15
+ import { Select } from "../../../../comps/ui/select.2eb33e5bea28d804.js";
16
+ import { MenuLabel, MenuLink, MenuNote, MenuOption, MenuPanel, MenuRadio, MenuRow } from "../../../../comps/ui/menu-items.1d082ac4dae8f3d4.js";
17
+ import { connectRepositories } from "../agents/editor/connect-repositories.59d89152fe845af2.js";
18
+ import { EFFORTS, ENGINES, ENGINE_NAMES, PERMISSIONS, defaultLabel, modelValue, splitModel } from "../settings/model-options.a96c11d11674f598.js";
19
+ import { folderName } from "./list/task.a0c68180db5fb4c1.js";
20
+ import { watchTask } from "../../../../comps/frame/task-toasts.e1a484113e1df660.js";
21
+ import { CHOICE, PLACEHOLDER, loadComposer, savedChoice, usableAgent } from "./composer-data.309a194fc7fa34be.js";
22
22
  import { Notice } from "../../../../comps/ui/notice.f395f231cbb96445.js";
23
- import { CredentialsLink } from "../../../../comps/nav/back.5681714d0cf45454.js";
23
+ import { CredentialsLink } from "../../../../comps/nav/back.180765bdadf6d602.js";
24
24
  import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "../../../../../../../../../node_modules/preact/jsx-runtime/dist/jsxRuntime.mjs";
25
- const EFFORTS = [
26
- ["", "Default"],
27
- ["low", "Low"],
28
- ["medium", "Medium"],
29
- ["high", "High"]
30
- ];
31
- const PERMISSIONS = [
32
- ["", "Default"],
33
- ["read-only", "Read-only"],
34
- ["workspace-write", "Write"],
35
- ["auto", "Auto"]
36
- ];
37
25
  const DRAFT = "coder:draft";
38
26
  const CONNECT = "+connect";
39
27
  const REFRESH = "+refresh";
@@ -54,7 +42,6 @@ const folderOptions = (folders, added, value) => {
54
42
  [CLONE, "Repository…"]
55
43
  ];
56
44
  };
57
- /** Segments whose unset first one names the value it resolves to. */
58
45
  /** The chain.s default first, then one section per engine: its own default and its models. */
59
46
  function modelSections(groups, defaults) {
60
47
  const sections = [["", [["", `Default · ${[ENGINE_NAMES[defaults.engine] ?? defaults.engine, defaults.engines[defaults.engine]?.model].filter(Boolean).join(" ")}`]]]];
@@ -65,8 +52,8 @@ function modelSections(groups, defaults) {
65
52
  return sections;
66
53
  }
67
54
  const resolved = (options, value) => {
68
- const label = options.find(([key]) => key && key === value)?.[1];
69
- return [["", defaultLabel(label?.toLowerCase())], ...options.slice(1)];
55
+ const label = options.find(([key]) => key === value)?.[1];
56
+ return [["", defaultLabel(label?.toLowerCase())], ...options];
70
57
  };
71
58
  /** Places an opening popover under its button, right-aligned to it. */
72
59
  function place(event) {
@@ -171,15 +158,15 @@ export function Composer({ initial, data, defaults, missing, connectLabel, tz })
171
158
  const draft = localStorage.getItem(DRAFT);
172
159
  if (draft && box.current && !box.current.value) box.current.value = draft;
173
160
  setText(box.current?.value ?? "");
161
+ prefetch(box.current?.value ?? "");
174
162
  box.current?.focus();
175
163
  // A restored draft waits for typing before its slash menu opens.
176
164
  setDismissed(true);
177
165
  }, []);
178
- // The repository's open pull requests and its own flows, once a command is being typed.
179
- const commanding = text.startsWith("/");
180
- useEffect(() => {
181
- const repo = choice.repo;
182
- if (!commanding || !repo || pulls?.repo === repo) return;
166
+ // Once a command is typed: the repository's open pull requests and its own flows, or the repositories to pick.
167
+ const prefetch = (value, repo = choice.repo) => {
168
+ if (!repo && /^\/review\s/.test(value)) readRepos();
169
+ if (!value.startsWith("/") || !repo || pulls?.repo === repo) return;
183
170
  setPulls({ repo });
184
171
  void client.pulls.list(repo).then((items) => setPulls({
185
172
  repo,
@@ -194,8 +181,8 @@ export function Composer({ initial, data, defaults, missing, connectLabel, tz })
194
181
  void client.flows.list(repo).then((flows) => setLists((current) => ({
195
182
  ...current,
196
183
  flows: flows.map((flow) => flow.name)
197
- }))).catch(() => {});
198
- }, [commanding, choice.repo]);
184
+ }))).catch((reason) => console.error("coder dashboard: flows", reason));
185
+ };
199
186
  const reposRead = useRef(Boolean(data.repos));
200
187
  const readRepos = () => {
201
188
  if (reposRead.current) return;
@@ -221,8 +208,6 @@ export function Composer({ initial, data, defaults, missing, connectLabel, tz })
221
208
  }));
222
209
  });
223
210
  };
224
- const choosingRepo = !choice.repo && /^\/review\s/.test(text);
225
- useEffect(() => void (choosingRepo && readRepos()), [choosingRepo]);
226
211
  const pick = (key, value) => {
227
212
  if (value === OTHER) return setTyping("path");
228
213
  if (value === CLONE) return setTyping("url");
@@ -238,6 +223,7 @@ export function Composer({ initial, data, defaults, missing, connectLabel, tz })
238
223
  ...change
239
224
  };
240
225
  setChoice(next);
226
+ prefetch(text, next.repo);
241
227
  document.cookie = `compose=${encodeURIComponent(JSON.stringify(next))}; path=/; max-age=31536000; samesite=lax`;
242
228
  };
243
229
  const chose = (checked) => {
@@ -280,6 +266,7 @@ export function Composer({ initial, data, defaults, missing, connectLabel, tz })
280
266
  field.value = value;
281
267
  localStorage.setItem(DRAFT, value);
282
268
  setText(value);
269
+ prefetch(value);
283
270
  setAt(0);
284
271
  setDismissed(false);
285
272
  field.focus();
@@ -456,6 +443,7 @@ export function Composer({ initial, data, defaults, missing, connectLabel, tz })
456
443
  const value = event.currentTarget.value;
457
444
  localStorage.setItem(DRAFT, value);
458
445
  setText(value);
446
+ prefetch(value);
459
447
  setAt(0);
460
448
  setDismissed(false);
461
449
  },
@@ -1,4 +1,7 @@
1
- import { byListKey, listRank } from "../../../../../../../core/defaults.e6ce0944639198a2.js";
1
+ import { byListKey, listRank } from "../../../../../../../core/defaults.1b615366c56838a1.js";
2
+ import { eventJsons, replyRequired as turnReplyRequired } from "../../../../../../../core/event-prompt.87f064ca0141e796.js";
3
+ /** A task page's tabs, the loading frame's too. */
4
+ export const TASK_TABS = ["Conversation", "Activity"];
2
5
  /** Task statuses a list filters by. */
3
6
  export const STATUSES = [
4
7
  ["", "Recent"],
@@ -59,6 +62,27 @@ export function readDelta(changed, cursor, touched, started) {
59
62
  } : cursor
60
63
  };
61
64
  }
62
- export const taskTitle = (task) => task.task.name?.trim() || task.task.prompt?.trim() || task.task.event?.text?.trim() || `${task.task.event?.type ?? "task"} on ${task.task.agent}`;
65
+ /** A platform turn's messages from its `<event>` prompt; undefined for any other prompt. */
66
+ export function eventMessages(prompt) {
67
+ return eventJsons(prompt)?.flatMap((json) => {
68
+ if (json.reactions) return json.reactions.map(({ emoji, by }) => ({
69
+ author: by.join(", "),
70
+ text: `reacted ${emoji}`,
71
+ reaction: true
72
+ }));
73
+ return (json.messages ?? (json.message ? [json.message] : [])).map(({ text, author }) => ({
74
+ author: author.handle ?? author.name ?? author.id,
75
+ text: text || (json.event ?? "")
76
+ }));
77
+ });
78
+ }
79
+ /** Whether a turn had to be answered: any of its events asks for a reply, else the task's event decides. */
80
+ export const replyRequired = (task, prompt) => turnReplyRequired(prompt, task.task.event?.mustReply !== false);
81
+ /** A platform task is titled by its first message; dashboard and CLI tasks by their prompt. */
82
+ export function taskTitle(task) {
83
+ const prompt = task.task.prompt?.trim();
84
+ const first = !prompt || eventMessages(prompt) ? task.task.event?.text?.trim() || eventMessages(task.turns?.[0]?.prompt ?? prompt)?.find((message) => !message.reaction)?.text.trim() : prompt;
85
+ return task.task.name?.trim() || first || `${task.task.event?.type ?? "task"} on ${task.task.agent}`;
86
+ }
63
87
  /** A folder path's last segment. */
64
88
  export const folderName = (path) => path.split(/[\\/]/).filter(Boolean).at(-1) ?? path;