@rubytech/create-maxy-code 0.1.558 → 0.1.560

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 (253) hide show
  1. package/package.json +1 -1
  2. package/payload/platform/plugins/admin/mcp/dist/index.js +34 -0
  3. package/payload/platform/plugins/admin/mcp/dist/index.js.map +1 -1
  4. package/payload/platform/plugins/admin/mcp/dist/lib/roster-census.d.ts +39 -0
  5. package/payload/platform/plugins/admin/mcp/dist/lib/roster-census.d.ts.map +1 -0
  6. package/payload/platform/plugins/admin/mcp/dist/lib/roster-census.js +67 -0
  7. package/payload/platform/plugins/admin/mcp/dist/lib/roster-census.js.map +1 -0
  8. package/payload/platform/plugins/admin/skills/agent-builder/SKILL.md +15 -10
  9. package/payload/platform/plugins/admin/skills/agent-builder/references/agent-pattern.md +6 -3
  10. package/payload/platform/plugins/admin/skills/specialist-management/SKILL.md +26 -0
  11. package/payload/platform/plugins/admin/skills/whats-new/SKILL.md +10 -0
  12. package/payload/platform/plugins/filesystem/mcp/dist/lib/result.d.ts +5 -1
  13. package/payload/platform/plugins/filesystem/mcp/dist/lib/result.d.ts.map +1 -1
  14. package/payload/platform/plugins/filesystem/mcp/dist/lib/result.js +4 -1
  15. package/payload/platform/plugins/filesystem/mcp/dist/lib/result.js.map +1 -1
  16. package/payload/platform/plugins/filesystem/mcp/dist/tools/file-read.d.ts.map +1 -1
  17. package/payload/platform/plugins/filesystem/mcp/dist/tools/file-read.js +2 -1
  18. package/payload/platform/plugins/filesystem/mcp/dist/tools/file-read.js.map +1 -1
  19. package/payload/platform/plugins/filesystem/mcp/dist/tools/file-write.d.ts.map +1 -1
  20. package/payload/platform/plugins/filesystem/mcp/dist/tools/file-write.js +2 -1
  21. package/payload/platform/plugins/filesystem/mcp/dist/tools/file-write.js.map +1 -1
  22. package/payload/platform/plugins/scheduling/PLUGIN.md +4 -2
  23. package/payload/platform/plugins/scheduling/mcp/dist/index.js +15 -3
  24. package/payload/platform/plugins/scheduling/mcp/dist/index.js.map +1 -1
  25. package/payload/platform/plugins/scheduling/mcp/dist/lib/__tests__/schedule-audit.test.js +72 -0
  26. package/payload/platform/plugins/scheduling/mcp/dist/lib/__tests__/schedule-audit.test.js.map +1 -1
  27. package/payload/platform/plugins/scheduling/mcp/dist/lib/__tests__/workflow-census.test.d.ts +2 -0
  28. package/payload/platform/plugins/scheduling/mcp/dist/lib/__tests__/workflow-census.test.d.ts.map +1 -0
  29. package/payload/platform/plugins/scheduling/mcp/dist/lib/__tests__/workflow-census.test.js +112 -0
  30. package/payload/platform/plugins/scheduling/mcp/dist/lib/__tests__/workflow-census.test.js.map +1 -0
  31. package/payload/platform/plugins/scheduling/mcp/dist/lib/schedule-audit.d.ts +59 -6
  32. package/payload/platform/plugins/scheduling/mcp/dist/lib/schedule-audit.d.ts.map +1 -1
  33. package/payload/platform/plugins/scheduling/mcp/dist/lib/schedule-audit.js +154 -18
  34. package/payload/platform/plugins/scheduling/mcp/dist/lib/schedule-audit.js.map +1 -1
  35. package/payload/platform/plugins/scheduling/mcp/dist/scripts/check-due-events.js +17 -2
  36. package/payload/platform/plugins/scheduling/mcp/dist/scripts/check-due-events.js.map +1 -1
  37. package/payload/platform/plugins/scheduling/mcp/dist/tools/__tests__/schedule-list-kind.test.d.ts +2 -0
  38. package/payload/platform/plugins/scheduling/mcp/dist/tools/__tests__/schedule-list-kind.test.d.ts.map +1 -0
  39. package/payload/platform/plugins/scheduling/mcp/dist/tools/__tests__/schedule-list-kind.test.js +25 -0
  40. package/payload/platform/plugins/scheduling/mcp/dist/tools/__tests__/schedule-list-kind.test.js.map +1 -0
  41. package/payload/platform/plugins/scheduling/mcp/dist/tools/schedule-list.d.ts +15 -0
  42. package/payload/platform/plugins/scheduling/mcp/dist/tools/schedule-list.d.ts.map +1 -1
  43. package/payload/platform/plugins/scheduling/mcp/dist/tools/schedule-list.js +66 -46
  44. package/payload/platform/plugins/scheduling/mcp/dist/tools/schedule-list.js.map +1 -1
  45. package/payload/platform/plugins/storage-broker/mcp/dist/index.js +5 -2
  46. package/payload/platform/plugins/storage-broker/mcp/dist/index.js.map +1 -1
  47. package/payload/platform/plugins/url-get/mcp/dist/index.js +13 -13
  48. package/payload/platform/plugins/url-get/mcp/dist/index.js.map +1 -1
  49. package/payload/platform/plugins/workflows/PLUGIN.md +4 -1
  50. package/payload/platform/plugins/workflows/mcp/dist/__tests__/retry-delay.test.d.ts +2 -0
  51. package/payload/platform/plugins/workflows/mcp/dist/__tests__/retry-delay.test.d.ts.map +1 -0
  52. package/payload/platform/plugins/workflows/mcp/dist/__tests__/retry-delay.test.js +33 -0
  53. package/payload/platform/plugins/workflows/mcp/dist/__tests__/retry-delay.test.js.map +1 -0
  54. package/payload/platform/plugins/workflows/mcp/dist/index.js +1 -0
  55. package/payload/platform/plugins/workflows/mcp/dist/index.js.map +1 -1
  56. package/payload/platform/plugins/workflows/mcp/dist/lib/__tests__/step-resolver.test.d.ts +2 -0
  57. package/payload/platform/plugins/workflows/mcp/dist/lib/__tests__/step-resolver.test.d.ts.map +1 -0
  58. package/payload/platform/plugins/workflows/mcp/dist/lib/__tests__/step-resolver.test.js +42 -0
  59. package/payload/platform/plugins/workflows/mcp/dist/lib/__tests__/step-resolver.test.js.map +1 -0
  60. package/payload/platform/plugins/workflows/mcp/dist/lib/step-resolver.d.ts +23 -5
  61. package/payload/platform/plugins/workflows/mcp/dist/lib/step-resolver.d.ts.map +1 -1
  62. package/payload/platform/plugins/workflows/mcp/dist/lib/step-resolver.js +20 -12
  63. package/payload/platform/plugins/workflows/mcp/dist/lib/step-resolver.js.map +1 -1
  64. package/payload/platform/plugins/workflows/mcp/dist/tools/workflow-create.d.ts +2 -0
  65. package/payload/platform/plugins/workflows/mcp/dist/tools/workflow-create.d.ts.map +1 -1
  66. package/payload/platform/plugins/workflows/mcp/dist/tools/workflow-create.js +2 -0
  67. package/payload/platform/plugins/workflows/mcp/dist/tools/workflow-create.js.map +1 -1
  68. package/payload/platform/plugins/workflows/mcp/dist/tools/workflow-execute.d.ts +10 -0
  69. package/payload/platform/plugins/workflows/mcp/dist/tools/workflow-execute.d.ts.map +1 -1
  70. package/payload/platform/plugins/workflows/mcp/dist/tools/workflow-execute.js +53 -7
  71. package/payload/platform/plugins/workflows/mcp/dist/tools/workflow-execute.js.map +1 -1
  72. package/payload/platform/plugins/workflows/mcp/dist/tools/workflow-update.d.ts.map +1 -1
  73. package/payload/platform/plugins/workflows/mcp/dist/tools/workflow-update.js +2 -0
  74. package/payload/platform/plugins/workflows/mcp/dist/tools/workflow-update.js.map +1 -1
  75. package/payload/platform/scripts/__tests__/authored-agent-durable-copy.test.sh +78 -0
  76. package/payload/platform/scripts/__tests__/provision-bundle-orphan.test.sh +132 -0
  77. package/payload/platform/scripts/__tests__/provision-honours-disabled-agents.test.sh +4 -3
  78. package/payload/platform/scripts/__tests__/provision-specialist-retirement.test.sh +115 -0
  79. package/payload/platform/scripts/lib/provision-account-dir.sh +135 -13
  80. package/payload/platform/scripts/logs-rotate.sh +6 -1
  81. package/payload/platform/services/claude-session-manager/dist/pty-spawner.d.ts.map +1 -1
  82. package/payload/platform/services/claude-session-manager/dist/pty-spawner.js +42 -5
  83. package/payload/platform/services/claude-session-manager/dist/pty-spawner.js.map +1 -1
  84. package/payload/platform/services/claude-session-manager/dist/pty-tee.d.ts +16 -0
  85. package/payload/platform/services/claude-session-manager/dist/pty-tee.d.ts.map +1 -0
  86. package/payload/platform/services/claude-session-manager/dist/pty-tee.js +84 -0
  87. package/payload/platform/services/claude-session-manager/dist/pty-tee.js.map +1 -0
  88. package/payload/premium-plugins/writer-craft/agents/writer-craft--manuscript-reviewer.md +2 -0
  89. package/payload/server/public/activity.html +5 -5
  90. package/payload/server/public/agents.html +4 -4
  91. package/payload/server/public/assets/{AdminLoginScreens-BUv_EOfw.js → AdminLoginScreens-DLogIsJT.js} +1 -1
  92. package/payload/server/public/assets/AdminLoginScreens-DLogIsJT.js.br +0 -0
  93. package/payload/server/public/assets/AdminLoginScreens-DLogIsJT.js.gz +0 -0
  94. package/payload/server/public/assets/{AdminShell-BVKfxSgh.js → AdminShell-B67tPTyE.js} +1 -1
  95. package/payload/server/public/assets/AdminShell-B67tPTyE.js.br +0 -0
  96. package/payload/server/public/assets/AdminShell-B67tPTyE.js.gz +0 -0
  97. package/payload/server/public/assets/{activity-CBcvL5MZ.js → activity-AVJSFESV.js} +1 -1
  98. package/payload/server/public/assets/activity-AVJSFESV.js.br +0 -0
  99. package/payload/server/public/assets/activity-AVJSFESV.js.gz +0 -0
  100. package/payload/server/public/assets/{admin-BUor8KRy.js → admin-eFgbld42.js} +1 -1
  101. package/payload/server/public/assets/admin-eFgbld42.js.br +0 -0
  102. package/payload/server/public/assets/admin-eFgbld42.js.gz +0 -0
  103. package/payload/server/public/assets/{agents-Dzx8Uxgz.js → agents-CoWLZMf7.js} +1 -1
  104. package/payload/server/public/assets/agents-CoWLZMf7.js.br +0 -0
  105. package/payload/server/public/assets/agents-CoWLZMf7.js.gz +0 -0
  106. package/payload/server/public/assets/{browser-B7EsGyVd.js → browser-C6K66_fw.js} +1 -1
  107. package/payload/server/public/assets/browser-C6K66_fw.js.br +0 -0
  108. package/payload/server/public/assets/browser-C6K66_fw.js.gz +0 -0
  109. package/payload/server/public/assets/{calendar-D4qD0upn.js → calendar-Dnw_cP4b.js} +1 -1
  110. package/payload/server/public/assets/calendar-Dnw_cP4b.js.br +0 -0
  111. package/payload/server/public/assets/calendar-Dnw_cP4b.js.gz +0 -0
  112. package/payload/server/public/assets/chat-Cm0fkpg1.js +1 -0
  113. package/payload/server/public/assets/chat-Cm0fkpg1.js.br +0 -0
  114. package/payload/server/public/assets/chat-Cm0fkpg1.js.gz +0 -0
  115. package/payload/server/public/assets/chevron-left-CjRH-BtF.js +1 -0
  116. package/payload/server/public/assets/chevron-left-CjRH-BtF.js.br +0 -0
  117. package/payload/server/public/assets/clock-wbYEt1kM.js +1 -0
  118. package/payload/server/public/assets/clock-wbYEt1kM.js.br +0 -0
  119. package/payload/server/public/assets/clock-wbYEt1kM.js.gz +0 -0
  120. package/payload/server/public/assets/{copy-CG2tAK16.js → copy-kuNM0Etw.js} +1 -1
  121. package/payload/server/public/assets/copy-kuNM0Etw.js.br +0 -0
  122. package/payload/server/public/assets/copy-kuNM0Etw.js.gz +0 -0
  123. package/payload/server/public/assets/data-c47T2NCd.js +1 -0
  124. package/payload/server/public/assets/data-c47T2NCd.js.br +1 -0
  125. package/payload/server/public/assets/data-c47T2NCd.js.gz +0 -0
  126. package/payload/server/public/assets/{file-text-47cIljhV.js → file-text-BWkobrcx.js} +1 -1
  127. package/payload/server/public/assets/file-text-BWkobrcx.js.br +0 -0
  128. package/payload/server/public/assets/file-text-BWkobrcx.js.gz +0 -0
  129. package/payload/server/public/assets/{graph-CDbi-eqF.js → graph-BGjTL5Vz.js} +1 -1
  130. package/payload/server/public/assets/graph-BGjTL5Vz.js.br +0 -0
  131. package/payload/server/public/assets/graph-BGjTL5Vz.js.gz +0 -0
  132. package/payload/server/public/assets/{graph-labels-Byp2RkVg.js → graph-labels-Dvc5Kw_r.js} +1 -1
  133. package/payload/server/public/assets/graph-labels-Dvc5Kw_r.js.br +0 -0
  134. package/payload/server/public/assets/graph-labels-Dvc5Kw_r.js.gz +0 -0
  135. package/payload/server/public/assets/{operator-t15ZvJER.js → operator-CzBGv_he.js} +1 -1
  136. package/payload/server/public/assets/operator-CzBGv_he.js.br +0 -0
  137. package/payload/server/public/assets/operator-CzBGv_he.js.gz +0 -0
  138. package/payload/server/public/assets/{page-DcKH1PVD.js → page-BIY4Ku8Q.js} +1 -1
  139. package/payload/server/public/assets/page-BIY4Ku8Q.js.br +0 -0
  140. package/payload/server/public/assets/page-BIY4Ku8Q.js.gz +0 -0
  141. package/payload/server/public/assets/{page-CogD1Hho.js → page-DaySqamH.js} +1 -1
  142. package/payload/server/public/assets/page-DaySqamH.js.br +0 -0
  143. package/payload/server/public/assets/page-DaySqamH.js.gz +0 -0
  144. package/payload/server/public/assets/play-C8RA52_i.js +1 -0
  145. package/payload/server/public/assets/play-C8RA52_i.js.br +0 -0
  146. package/payload/server/public/assets/play-C8RA52_i.js.gz +0 -0
  147. package/payload/server/public/assets/{public-UlLvs9vV.js → public-pwDSvhBv.js} +1 -1
  148. package/payload/server/public/assets/public-pwDSvhBv.js.br +0 -0
  149. package/payload/server/public/assets/public-pwDSvhBv.js.gz +0 -0
  150. package/payload/server/public/assets/{rotate-ccw-Dbj7NrEB.js → rotate-ccw-B6s7tkEt.js} +1 -1
  151. package/payload/server/public/assets/rotate-ccw-B6s7tkEt.js.br +0 -0
  152. package/payload/server/public/assets/rotate-ccw-B6s7tkEt.js.gz +0 -0
  153. package/payload/server/public/assets/routines-CFlyRdYg.js +2 -0
  154. package/payload/server/public/assets/routines-CFlyRdYg.js.br +0 -0
  155. package/payload/server/public/assets/routines-CFlyRdYg.js.gz +0 -0
  156. package/payload/server/public/assets/{skills-EtKyNK_3.js → skills-C45kfL_Q.js} +1 -1
  157. package/payload/server/public/assets/skills-C45kfL_Q.js.br +0 -0
  158. package/payload/server/public/assets/skills-C45kfL_Q.js.gz +0 -0
  159. package/payload/server/public/assets/{tasks-U0poqfi9.js → tasks-BwoCTCu5.js} +1 -1
  160. package/payload/server/public/assets/tasks-BwoCTCu5.js.br +0 -0
  161. package/payload/server/public/assets/tasks-BwoCTCu5.js.gz +0 -0
  162. package/payload/server/public/assets/{triangle-alert-D7zwttJW.js → triangle-alert-B3bthSzx.js} +1 -1
  163. package/payload/server/public/assets/triangle-alert-B3bthSzx.js.br +0 -0
  164. package/payload/server/public/assets/triangle-alert-B3bthSzx.js.gz +0 -0
  165. package/payload/server/public/assets/{useCopyFeedback-Ae_va0Ps.js → useCopyFeedback-BzJAkFEb.js} +1 -1
  166. package/payload/server/public/assets/useCopyFeedback-BzJAkFEb.js.br +0 -0
  167. package/payload/server/public/assets/useCopyFeedback-BzJAkFEb.js.gz +0 -0
  168. package/payload/server/public/assets/{useMediaQuery-HRgPNA8l.css → useMediaQuery-DW_xRrMl.css} +1 -1
  169. package/payload/server/public/assets/useMediaQuery-DW_xRrMl.css.br +0 -0
  170. package/payload/server/public/assets/{useMediaQuery-HRgPNA8l.css.gz → useMediaQuery-DW_xRrMl.css.gz} +0 -0
  171. package/payload/server/public/assets/{useVoiceRecorder-q9U5ahfg.js → useVoiceRecorder-_qI_BAOo.js} +1 -1
  172. package/payload/server/public/assets/useVoiceRecorder-_qI_BAOo.js.br +0 -0
  173. package/payload/server/public/assets/useVoiceRecorder-_qI_BAOo.js.gz +0 -0
  174. package/payload/server/public/assets/{wrench-BmXV4Tmh.js → wrench-Bqux9jaw.js} +1 -1
  175. package/payload/server/public/assets/wrench-Bqux9jaw.js.br +0 -0
  176. package/payload/server/public/assets/wrench-Bqux9jaw.js.gz +0 -0
  177. package/payload/server/public/browser.html +4 -4
  178. package/payload/server/public/calendar.html +7 -7
  179. package/payload/server/public/chat.html +13 -13
  180. package/payload/server/public/data.html +11 -11
  181. package/payload/server/public/graph.html +9 -9
  182. package/payload/server/public/index.html +13 -13
  183. package/payload/server/public/operator.html +14 -14
  184. package/payload/server/public/public.html +13 -13
  185. package/payload/server/public/routines.html +7 -7
  186. package/payload/server/public/skills.html +5 -5
  187. package/payload/server/public/tasks.html +6 -6
  188. package/payload/server/server.js +169 -43
  189. package/payload/server/public/assets/AdminLoginScreens-BUv_EOfw.js.br +0 -0
  190. package/payload/server/public/assets/AdminLoginScreens-BUv_EOfw.js.gz +0 -0
  191. package/payload/server/public/assets/AdminShell-BVKfxSgh.js.br +0 -0
  192. package/payload/server/public/assets/AdminShell-BVKfxSgh.js.gz +0 -0
  193. package/payload/server/public/assets/activity-CBcvL5MZ.js.br +0 -0
  194. package/payload/server/public/assets/activity-CBcvL5MZ.js.gz +0 -0
  195. package/payload/server/public/assets/admin-BUor8KRy.js.br +0 -0
  196. package/payload/server/public/assets/admin-BUor8KRy.js.gz +0 -0
  197. package/payload/server/public/assets/agents-Dzx8Uxgz.js.br +0 -0
  198. package/payload/server/public/assets/agents-Dzx8Uxgz.js.gz +0 -0
  199. package/payload/server/public/assets/browser-B7EsGyVd.js.br +0 -0
  200. package/payload/server/public/assets/browser-B7EsGyVd.js.gz +0 -0
  201. package/payload/server/public/assets/calendar-D4qD0upn.js.br +0 -0
  202. package/payload/server/public/assets/calendar-D4qD0upn.js.gz +0 -0
  203. package/payload/server/public/assets/chat-D7LjNerV.js +0 -1
  204. package/payload/server/public/assets/chat-D7LjNerV.js.br +0 -0
  205. package/payload/server/public/assets/chat-D7LjNerV.js.gz +0 -0
  206. package/payload/server/public/assets/chevron-left-CGsW9Vsp.js +0 -1
  207. package/payload/server/public/assets/chevron-left-CGsW9Vsp.js.br +0 -0
  208. package/payload/server/public/assets/clock-B_xWWLQW.js +0 -1
  209. package/payload/server/public/assets/clock-B_xWWLQW.js.br +0 -0
  210. package/payload/server/public/assets/clock-B_xWWLQW.js.gz +0 -0
  211. package/payload/server/public/assets/copy-CG2tAK16.js.br +0 -0
  212. package/payload/server/public/assets/copy-CG2tAK16.js.gz +0 -0
  213. package/payload/server/public/assets/data-BU60tJiv.js +0 -1
  214. package/payload/server/public/assets/data-BU60tJiv.js.br +0 -0
  215. package/payload/server/public/assets/data-BU60tJiv.js.gz +0 -0
  216. package/payload/server/public/assets/file-text-47cIljhV.js.br +0 -0
  217. package/payload/server/public/assets/file-text-47cIljhV.js.gz +0 -0
  218. package/payload/server/public/assets/graph-CDbi-eqF.js.br +0 -0
  219. package/payload/server/public/assets/graph-CDbi-eqF.js.gz +0 -0
  220. package/payload/server/public/assets/graph-labels-Byp2RkVg.js.br +0 -0
  221. package/payload/server/public/assets/graph-labels-Byp2RkVg.js.gz +0 -0
  222. package/payload/server/public/assets/operator-t15ZvJER.js.br +0 -0
  223. package/payload/server/public/assets/operator-t15ZvJER.js.gz +0 -0
  224. package/payload/server/public/assets/page-CogD1Hho.js.br +0 -0
  225. package/payload/server/public/assets/page-CogD1Hho.js.gz +0 -0
  226. package/payload/server/public/assets/page-DcKH1PVD.js.br +0 -0
  227. package/payload/server/public/assets/page-DcKH1PVD.js.gz +0 -0
  228. package/payload/server/public/assets/play-Bankj0zU.js +0 -1
  229. package/payload/server/public/assets/play-Bankj0zU.js.br +0 -0
  230. package/payload/server/public/assets/play-Bankj0zU.js.gz +0 -0
  231. package/payload/server/public/assets/public-UlLvs9vV.js.br +0 -0
  232. package/payload/server/public/assets/public-UlLvs9vV.js.gz +0 -0
  233. package/payload/server/public/assets/rotate-ccw-Dbj7NrEB.js.br +0 -0
  234. package/payload/server/public/assets/rotate-ccw-Dbj7NrEB.js.gz +0 -0
  235. package/payload/server/public/assets/routines-CdqGJwyD.js +0 -2
  236. package/payload/server/public/assets/routines-CdqGJwyD.js.br +0 -0
  237. package/payload/server/public/assets/routines-CdqGJwyD.js.gz +0 -0
  238. package/payload/server/public/assets/skills-EtKyNK_3.js.br +0 -0
  239. package/payload/server/public/assets/skills-EtKyNK_3.js.gz +0 -0
  240. package/payload/server/public/assets/tasks-U0poqfi9.js.br +0 -0
  241. package/payload/server/public/assets/tasks-U0poqfi9.js.gz +0 -0
  242. package/payload/server/public/assets/triangle-alert-D7zwttJW.js.br +0 -0
  243. package/payload/server/public/assets/triangle-alert-D7zwttJW.js.gz +0 -0
  244. package/payload/server/public/assets/useCopyFeedback-Ae_va0Ps.js.br +0 -4
  245. package/payload/server/public/assets/useCopyFeedback-Ae_va0Ps.js.gz +0 -0
  246. package/payload/server/public/assets/useMediaQuery-HRgPNA8l.css.br +0 -0
  247. package/payload/server/public/assets/useVoiceRecorder-q9U5ahfg.js.br +0 -0
  248. package/payload/server/public/assets/useVoiceRecorder-q9U5ahfg.js.gz +0 -0
  249. package/payload/server/public/assets/wrench-BmXV4Tmh.js.br +0 -0
  250. package/payload/server/public/assets/wrench-BmXV4Tmh.js.gz +0 -0
  251. /package/payload/server/public/assets/{useMediaQuery-DIm6yGOl.js → useMediaQuery-DJ6XeNN7.js} +0 -0
  252. /package/payload/server/public/assets/{useMediaQuery-DIm6yGOl.js.br → useMediaQuery-DJ6XeNN7.js.br} +0 -0
  253. /package/payload/server/public/assets/{useMediaQuery-DIm6yGOl.js.gz → useMediaQuery-DJ6XeNN7.js.gz} +0 -0
@@ -18,6 +18,17 @@
18
18
  # Owned-dir schema merge (plugin-declared top-level account dirs).
19
19
  . "$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)/account-schema-owned-dirs.sh"
20
20
 
21
+ # Task 2415 — bash 3.2 has no associative arrays; a linear scan over the
22
+ # template basenames is the membership test the retirement loop needs.
23
+ _specialist_in_list() {
24
+ local _needle="$1"; shift
25
+ local _x
26
+ for _x in "$@"; do
27
+ [ "$_x" = "$_needle" ] && return 0
28
+ done
29
+ return 1
30
+ }
31
+
21
32
  provision_account_dir() {
22
33
  local ACCOUNT_DIR="$1"
23
34
  local ACCOUNT_ID="$2"
@@ -240,21 +251,84 @@ SETTINGS_EOF
240
251
 
241
252
  cp "$TEMPLATES_DIR/specialists/.claude-plugin/plugin.json" "$ACCOUNT_DIR/specialists/.claude-plugin/plugin.json"
242
253
 
243
- # Replace core specialist files (no '--'); preserve premium plugin agents.
244
- local _existing
245
- for _existing in "$ACCOUNT_DIR/specialists/agents/"*.md; do
246
- [ -f "$_existing" ] || continue
247
- case "$(basename "$_existing")" in
248
- *--*) continue ;;
249
- esac
250
- rm -f "$_existing"
254
+ # Task 2415 retire against provenance, never against the filename.
255
+ #
256
+ # The old predicate identified "core" by the ABSENCE of `--` and deleted
257
+ # everything that matched, while the copy loop below restored only bundled
258
+ # templates. Anything neither `--`-named nor a template was destroyed and
259
+ # never came back: authored specialists on two installs, and three premium
260
+ # agents that happen to be named without `--`. A plain-named file carries no
261
+ # record of who put it there, so the manifest supplies it: `.provisioned.json`
262
+ # names exactly what THIS installer delivered on the previous run, and only
263
+ # what it delivered can be retired.
264
+ #
265
+ # Retirement stays a real job — archive-ingest-operator, dropped from
266
+ # templates at 55b3577cb, is correctly gone from every install that had it.
267
+ local _manifest="$ACCOUNT_DIR/specialists/.provisioned.json"
268
+ local _templates=() _t
269
+ for _t in "$TEMPLATES_DIR/specialists/agents/"*.md; do
270
+ [ -f "$_t" ] && _templates+=("$(basename "$_t")")
251
271
  done
252
272
 
253
- local specialist
273
+ if [ "${#_templates[@]}" -eq 0 ]; then
274
+ # Zero templates on disk is a broken install tree, not twelve simultaneous
275
+ # retirements. Retire nothing and leave the manifest alone, so a later
276
+ # healthy run can still retire against the ownership record that survived.
277
+ echo " op=specialist-retirement retired=0 reason=no-templates-on-disk path=$TEMPLATES_DIR/specialists/agents"
278
+ elif [ ! -f "$_manifest" ]; then
279
+ # Every install that predates this manifest. Nothing is provably ours, so
280
+ # nothing is retired; one is written at the end of this run.
281
+ echo " op=specialist-retirement retired=0 reason=no-manifest"
282
+ else
283
+ local _prev _retired=0
284
+ if _prev="$(python3 -c '
285
+ import json, sys
286
+ with open(sys.argv[1]) as fh:
287
+ names = json.load(fh)["delivered"]
288
+ if not isinstance(names, list):
289
+ raise SystemExit(1)
290
+ for n in names:
291
+ if isinstance(n, str) and n.endswith(".md") and "/" not in n and ".." not in n:
292
+ print(n)
293
+ ' "$_manifest" 2>/dev/null)"; then
294
+ local _name
295
+ while IFS= read -r _name; do
296
+ [ -n "$_name" ] || continue
297
+ _specialist_in_list "$_name" "${_templates[@]}" && continue
298
+ [ -e "$ACCOUNT_DIR/specialists/agents/$_name" ] || continue
299
+ rm -f "$ACCOUNT_DIR/specialists/agents/$_name"
300
+ echo " op=specialist-retired name=$_name reason=absent-from-templates"
301
+ _retired=$((_retired + 1))
302
+ done <<< "$_prev"
303
+ echo " op=specialist-retirement retired=$_retired"
304
+ else
305
+ # Same doctrine as the disabled store below: a corrupt file is not
306
+ # evidence that anything should be deleted.
307
+ echo " op=specialist-retirement retired=0 reason=manifest-unreadable"
308
+ fi
309
+ fi
310
+
311
+ local specialist _delivered=()
254
312
  for specialist in "$TEMPLATES_DIR/specialists/agents/"*.md; do
255
- [ -f "$specialist" ] && cp "$specialist" "$ACCOUNT_DIR/specialists/agents/$(basename "$specialist")"
313
+ [ -f "$specialist" ] || continue
314
+ if cp "$specialist" "$ACCOUNT_DIR/specialists/agents/$(basename "$specialist")"; then
315
+ _delivered+=("$(basename "$specialist")")
316
+ fi
256
317
  done
257
318
 
319
+ # Task 2415 — the ownership record the retirement loop reads next run. It
320
+ # names what was actually copied, not what the template dir listed, so a
321
+ # failed cp never lets a later run claim the file was ours to delete.
322
+ if [ "${#_delivered[@]}" -gt 0 ]; then
323
+ python3 -c '
324
+ import json, sys
325
+ with open(sys.argv[1], "w") as fh:
326
+ json.dump({"delivered": sorted(sys.argv[2:])}, fh, indent=2)
327
+ fh.write("\n")
328
+ ' "$_manifest" "${_delivered[@]}"
329
+ echo " op=specialist-manifest delivered=${#_delivered[@]}"
330
+ fi
331
+
258
332
  # Task 1996 — the copy loop above re-delivers every core specialist, which
259
333
  # would silently undo a disable on the next publish. specialists/agents/ is
260
334
  # the dispatchable set (spawn-context.ts reads it), so an agent the operator
@@ -283,9 +357,10 @@ for n in names:
283
357
  if [ -e "$ACCOUNT_DIR/specialists/agents/$_name" ]; then
284
358
  # MOVE, never delete. In the drift state the standing parity check
285
359
  # exists to catch (store names it, file is live, quarantine empty) a
286
- # delete would destroy the only copy of a premium `--` agent or an
287
- # operator-edited override: the replace loop above skips `*--*` and
288
- # the copy loop only restores templates, so nothing re-delivers it.
360
+ # delete would destroy the only copy of a premium agent or an
361
+ # operator-edited override: the retirement loop above touches only
362
+ # names the manifest claims, and the copy loop only restores
363
+ # templates, so nothing re-delivers it.
289
364
  mkdir -p "$ACCOUNT_DIR/specialists/agents-disabled"
290
365
  mv -f "$ACCOUNT_DIR/specialists/agents/$_name" \
291
366
  "$ACCOUNT_DIR/specialists/agents-disabled/$_name"
@@ -298,6 +373,53 @@ for n in names:
298
373
  fi
299
374
  fi
300
375
 
376
+ # Task 2418 — a `--` agent whose bundle has left the install tree stays
377
+ # dispatchable forever. The retirement loop above deletes only what the
378
+ # manifest claims, and the manifest names only files copied from
379
+ # $TEMPLATES_DIR, so a premium `--` file is never in it and nothing notices
380
+ # when its bundle goes. Measured on beacons: writer-craft--manuscript-reviewer
381
+ # dispatchable since May 13 with no writer-craft bundle under premium-plugins/.
382
+ #
383
+ # MOVE, never delete. The bundle is gone, so unlike a retired template there is
384
+ # nothing to restore from and this may be the only copy on the machine. It does
385
+ # NOT go to agents-disabled/: that directory is paired with agents-disabled.json
386
+ # and a file there with no store entry is exactly the drift described above.
387
+ #
388
+ # Runs AFTER the disabled block so that in the drift state (store names it,
389
+ # file still live) the disable wins and the store and its directory agree.
390
+ local _premium_root="$PROJECT_DIR/../premium-plugins"
391
+ local _bundle_count=0 _b
392
+ for _b in "$_premium_root"/*/; do
393
+ [ -d "$_b" ] && _bundle_count=$((_bundle_count + 1))
394
+ done
395
+ if [ "$_bundle_count" -eq 0 ]; then
396
+ # No bundle resolvable, whether the root is missing or merely empty. Both
397
+ # make every `--` file test as orphaned, and both are indistinguishable from
398
+ # a brand that legitimately ships none (paths.ts bundleMode defaults to
399
+ # 'none'). Acting would strip the account's whole premium set. Same doctrine
400
+ # as no-templates-on-disk above.
401
+ echo " op=specialist-orphan-reconcile orphaned=0 reason=no-premium-bundles"
402
+ else
403
+ local _orphaned=0 _cand _base _twin _found
404
+ for _cand in "$ACCOUNT_DIR/specialists/agents/"*--*.md; do
405
+ [ -f "$_cand" ] || continue
406
+ _base="$(basename "$_cand")"
407
+ # Any bundle's agents/ dir. `--` names are already bundle-unique, so this
408
+ # answers the same question as parsing the prefix, without reintroducing a
409
+ # filename-derived predicate.
410
+ _found=0
411
+ for _twin in "$_premium_root"/*/agents/"$_base"; do
412
+ [ -f "$_twin" ] && { _found=1; break; }
413
+ done
414
+ [ "$_found" = 1 ] && continue
415
+ mkdir -p "$ACCOUNT_DIR/specialists/agents-orphaned"
416
+ mv -f "$_cand" "$ACCOUNT_DIR/specialists/agents-orphaned/$_base"
417
+ echo " op=specialist-orphaned name=$_base reason=bundle-absent"
418
+ _orphaned=$((_orphaned + 1))
419
+ done
420
+ echo " op=specialist-orphan-reconcile orphaned=$_orphaned"
421
+ fi
422
+
301
423
  rm -f "$ACCOUNT_DIR/.claude/agents/"*.md 2>/dev/null || true
302
424
 
303
425
  # SOUL.md — user-controlled. Only create if missing. Never overwrite.
@@ -161,8 +161,12 @@ done
161
161
  # sitedesk-code, 3.25x the cap. A long-lived session's file also has a fresh
162
162
  # mtime forever, so the age purge below never reaches it — without size rotation
163
163
  # it is genuinely unbounded.
164
+ #
165
+ # pty-*.log: the per-session capture of what a spawned claude process printed
166
+ # (Task 2407, pty-tee.ts). One file per session, appendFileSync, no fd held.
167
+ # Carries no in-process cap at all, so rotation is its only bound.
164
168
  shopt -s nullglob
165
- for f in "$LOGS_DIR"/mcp-*.log "$LOGS_DIR"/rc-child-*.log; do
169
+ for f in "$LOGS_DIR"/mcp-*.log "$LOGS_DIR"/rc-child-*.log "$LOGS_DIR"/pty-*.log; do
166
170
  rotate_file "$f"
167
171
  done
168
172
  shopt -u nullglob
@@ -203,5 +207,6 @@ purge_old() {
203
207
 
204
208
  purge_old 'rc-child-*.log*'
205
209
  purge_old 'mcp-*.log*'
210
+ purge_old 'pty-*.log*'
206
211
 
207
212
  exit 0
@@ -1 +1 @@
1
- {"version":3,"file":"pty-spawner.d.ts","sourceRoot":"","sources":["../src/pty-spawner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pty-spawner.d.ts","sourceRoot":"","sources":["../src/pty-spawner.ts"],"names":[],"mappings":"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"}
@@ -33,6 +33,7 @@ import { applyHostCredsEnv } from './claude-host-creds.js';
33
33
  import { randomUUID } from 'node:crypto';
34
34
  import { defaultSystemctlRunner, evictSessionProcess, scopeUnitName, stopScopeUnit, } from './systemd-scope.js';
35
35
  import { startUrlCapture } from './url-capture.js';
36
+ import { attachPtyTee } from './pty-tee.js';
36
37
  import { buildWebchatChannelMcpServers, buildWebchatChannelArgv, webchatChannelMcpConfigPath, } from './webchat-channel-mcp.js';
37
38
  // Task 2262 — the reply-tool constants moved with the arms into
38
39
  // public-allowlist.ts; this file no longer names any of them directly.
@@ -1176,8 +1177,27 @@ export async function spawnClaudeSession(deps, args) {
1176
1177
  // session_<id> RC URL, so the flag is dead weight (one idle outbound
1177
1178
  // WebSocket per visitor). Admin interactive sessions now run under the
1178
1179
  // per-account `claude rc` daemon, not per-spawn --remote-control.
1180
+ // Task 2420 — a CHANNEL-BOUND public spawn is the exception to Task 500. The
1181
+ // flag is not dead weight there: without it a notifications/claude/channel
1182
+ // message reaches the agent and never becomes a turn, so every public webchat,
1183
+ // WhatsApp and Telegram session received its inbound and answered nothing.
1184
+ // Measured on the laptop 2026-08-04 by driving the real webhook with synthetic
1185
+ // senders — the identical public argv replied with the flag (op=reply bytes=32,
1186
+ // 75,360-byte transcript) and produced no turn at all without it, across three
1187
+ // sessions, against the admin path which carries the flag and has always
1188
+ // worked. A public spawn with NO channel keeps Task 500's saving.
1179
1189
  const headless = isSpecialistSpawn && HEADLESS_ROLES.has(args.specialist);
1180
- const remoteControl = !headless && args.role !== 'public';
1190
+ const channelBound = Boolean(args.webchatChannel || args.waChannel || args.telegramChannel);
1191
+ const remoteControl = !headless && (args.role !== 'public' || channelBound);
1192
+ // Task 2420 — the flag widened; the OPERATOR surface did not. Two other things
1193
+ // keyed off the old predicate: `CLAUDE_CODE_REMOTE_ENVIRONMENT_TYPE` below,
1194
+ // which Task 1724 documents as enabling SendUserFile, and URL capture, which
1195
+ // exists to give an operator an iframe URL. Neither belongs to a visitor: the
1196
+ // first would put a file-sending tool inside the Task 615 ringfence, whose
1197
+ // whole premise is that a public spawn's surface is its channel reply tool or
1198
+ // nothing, and the second captures a URL Task 500 established no visitor ever
1199
+ // opens. They keep the narrow predicate.
1200
+ const remoteOperatorSurface = !headless && args.role !== 'public';
1181
1201
  const argv = ['--verbose'];
1182
1202
  if (remoteControl)
1183
1203
  argv.push('--remote-control');
@@ -1826,7 +1846,7 @@ export async function spawnClaudeSession(deps, args) {
1826
1846
  // happens on every spawn whose bridge DID bind — this makes it unconditional
1827
1847
  // rather than new in kind. An upload failure is recorded on the attachment
1828
1848
  // (`upload_error`) and never thrown, so it cannot fail the delivery itself.
1829
- if (remoteControl)
1849
+ if (remoteOperatorSurface)
1830
1850
  spawnEnv.CLAUDE_CODE_REMOTE_ENVIRONMENT_TYPE = 'remote';
1831
1851
  // Task 207 — specialist spawns inherit per-account env explicitly so
1832
1852
  // plugin-system MCP children get a deterministic context without the
@@ -2001,6 +2021,15 @@ export async function spawnClaudeSession(deps, args) {
2001
2021
  // below passes without each test harvesting `--session-id` from argv.
2002
2022
  deps.watcher.registerPidSessionId?.(pty.pid, sessionId);
2003
2023
  const tail = attachPtyTail(pty);
2024
+ // Task 2407 — the process's own output, to `logs/pty-<sessionId>.log`. The
2025
+ // in-memory tail above is 4 KiB and dies with this function; the startup
2026
+ // watcher, the dev-channel confirm and the URL capture are all disposed at
2027
+ // boot completion. So nothing survived boot to say what a session that took a
2028
+ // channel notification and produced no turn actually did. Nothing gates this:
2029
+ // not role, not channel, not remoteControl. A spawn that hangs is the case it
2030
+ // exists for, and roles differ only in which faults they hit. Disposed at the
2031
+ // four exits below, never at boot.
2032
+ const ptyTee = attachPtyTee(pty, { logDir: deps.logDir, sessionId, logger: deps.logger });
2004
2033
  // Task 2283 — armed HERE, above the dev-channel confirm below, so the confirm
2005
2034
  // can clear this buffer. Two properties are load-bearing:
2006
2035
  //
@@ -2071,8 +2100,10 @@ export async function spawnClaudeSession(deps, args) {
2071
2100
  // Task 171 — headless spawns never emit the `/remote-control is active`
2072
2101
  // banner (the flag is absent), so the handler is not attached and no
2073
2102
  // PTY bytes are consumed by a regex that will never match. Task 500 —
2074
- // same for public spawns (remoteControl is false), so the gate keys off
2075
- // `remoteControl`, not `headless`.
2103
+ // same for public spawns, so the gate keys off the operator-surface
2104
+ // predicate, not `headless`. Task 2420 — and not off `remoteControl`
2105
+ // either, now that a channel-bound public spawn carries the flag: the
2106
+ // banner it emits names a URL no visitor opens.
2076
2107
  //
2077
2108
  // Task 260 — `capturedUrl` is the value SpawnedSession returns to the
2078
2109
  // caller (the route includes it in the immediate /spawn response when
@@ -2083,7 +2114,7 @@ export async function spawnClaudeSession(deps, args) {
2083
2114
  // Mutable holder so the URL callback can find the row once sessionId
2084
2115
  // is known. The PID-file event below sets sessionIdRef.current.
2085
2116
  const sessionIdRef = { current: null };
2086
- if (remoteControl) {
2117
+ if (remoteOperatorSurface) {
2087
2118
  startUrlCapture({
2088
2119
  pty,
2089
2120
  timeoutMs: deps.urlCaptureTimeoutMs,
@@ -2134,6 +2165,9 @@ export async function spawnClaudeSession(deps, args) {
2134
2165
  pty.kill('SIGKILL');
2135
2166
  const stderrTail = tail.getTail();
2136
2167
  tail.dispose();
2168
+ // Task 2407 — this path SIGKILLs the pty and returns before `pty.onExit` is
2169
+ // ever registered, so it is a process exit that must detach explicitly.
2170
+ ptyTee.dispose();
2137
2171
  startupPrompt.dispose();
2138
2172
  if (err instanceof StartupPromptError) {
2139
2173
  deps.logger(`spawn-failed reason=startup-prompt-block pid=${pty.pid} prompt=${JSON.stringify(err.title)} captureTail=${Buffer.byteLength(stderrTail, 'utf8')}`);
@@ -2155,6 +2189,7 @@ export async function spawnClaudeSession(deps, args) {
2155
2189
  if (sessionIdSource === 'minted' && row.sessionId !== sessionId) {
2156
2190
  pty.kill('SIGKILL');
2157
2191
  tail.dispose();
2192
+ ptyTee.dispose();
2158
2193
  deps.logger(`spawn-failed reason=pid-file-session-mismatch minted=${sessionId.slice(0, 8)} pid-file=${row.sessionId.slice(0, 8)} pid=${pty.pid}`);
2159
2194
  return { ok: false, reason: 'pid-file-session-mismatch', stderrTail: `pid-file sessionId=${row.sessionId} != minted=${sessionId}` };
2160
2195
  }
@@ -2272,6 +2307,7 @@ export async function spawnClaudeSession(deps, args) {
2272
2307
  pty.kill('SIGKILL');
2273
2308
  const stderrTail = tail.getTail();
2274
2309
  tail.dispose();
2310
+ ptyTee.dispose();
2275
2311
  deps.logger(`spawn-failed reason=sidecar-write-failed sessionId=${sessionId.slice(0, 8)} path=${sidecarPath} err=${JSON.stringify(detail)} stderr-tail=${formatTailForLog(stderrTail)}`);
2276
2312
  return { ok: false, reason: 'sidecar-write-failed', stderrTail };
2277
2313
  }
@@ -2307,6 +2343,7 @@ export async function spawnClaudeSession(deps, args) {
2307
2343
  pty.onExit((e) => {
2308
2344
  const stderrTail = tail.getTail();
2309
2345
  tail.dispose();
2346
+ ptyTee.dispose();
2310
2347
  handlePtyNaturalExit({ logger: deps.logger }, tracker, e, stderrTail);
2311
2348
  });
2312
2349
  const responseMs = Date.now() - start;