sensorium-mcp 3.1.2 → 3.1.3-board.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 (625) hide show
  1. package/Install-Sensorium.ps1 +257 -43
  2. package/README.md +2 -0
  3. package/dist/board/api/api.js +84 -0
  4. package/dist/board/api/api.test.ts +23 -0
  5. package/dist/board/api/client.js +113 -0
  6. package/dist/board/components/BottomNav.js +32 -0
  7. package/dist/board/components/Card.js +78 -0
  8. package/dist/board/components/Combobox.js +79 -0
  9. package/dist/board/components/CommentComposer.js +29 -0
  10. package/dist/board/components/CommentList.js +42 -0
  11. package/dist/board/components/DirTreePicker.js +128 -0
  12. package/dist/board/components/Dropdown.js +67 -0
  13. package/dist/board/components/Lane.js +47 -0
  14. package/dist/board/components/PriorityChip.js +20 -0
  15. package/dist/board/components/ProfileSummary.js +89 -0
  16. package/dist/board/components/StateBanner.js +24 -0
  17. package/dist/board/components/StatusChip.js +26 -0
  18. package/dist/board/components/rateLimit.js +32 -0
  19. package/dist/board/components/rateLimit.test.ts +16 -0
  20. package/dist/board/components/time.js +14 -0
  21. package/dist/board/config.js +56 -0
  22. package/dist/board/index.html +18 -0
  23. package/dist/board/main.js +37 -0
  24. package/dist/board/mock/api.mock.js +491 -0
  25. package/dist/board/mock/api.mock.test.ts +460 -0
  26. package/dist/board/mock/fixtures.js +512 -0
  27. package/dist/board/schema/policy.js +261 -0
  28. package/dist/board/state/recur.js +24 -0
  29. package/dist/board/state/recur.test.ts +24 -0
  30. package/dist/board/state/useBoard.js +161 -0
  31. package/dist/board/state/useBuilder.js +357 -0
  32. package/dist/board/state/useBuilder.test.ts +468 -0
  33. package/dist/board/state/useCard.js +193 -0
  34. package/dist/board/state/useCard.test.ts +435 -0
  35. package/dist/board/state/useDirBrowser.js +23 -0
  36. package/dist/board/styles/board.css +2885 -0
  37. package/dist/board/styles/tokens.css +72 -0
  38. package/dist/board/vendor/vue.esm-browser.js +9 -0
  39. package/dist/board/views/App.js +61 -0
  40. package/dist/board/views/BoardView.js +153 -0
  41. package/dist/board/views/BuilderView.js +582 -0
  42. package/dist/board/views/CardView.js +382 -0
  43. package/dist/board/views/SettingsView.js +152 -0
  44. package/dist/config/agent-settings.d.ts +11 -0
  45. package/dist/config/agent-settings.d.ts.map +1 -1
  46. package/dist/config/agent-settings.js +79 -0
  47. package/dist/config/agent-settings.js.map +1 -1
  48. package/dist/config/detail-grant.d.ts +7 -16
  49. package/dist/config/detail-grant.d.ts.map +1 -1
  50. package/dist/config/detail-grant.js +12 -35
  51. package/dist/config/detail-grant.js.map +1 -1
  52. package/dist/config/index.d.ts +2 -0
  53. package/dist/config/index.d.ts.map +1 -1
  54. package/dist/config/index.js +17 -0
  55. package/dist/config/index.js.map +1 -1
  56. package/dist/config/mcp-settings.d.ts +7 -1
  57. package/dist/config/mcp-settings.d.ts.map +1 -1
  58. package/dist/config/mcp-settings.js +9 -0
  59. package/dist/config/mcp-settings.js.map +1 -1
  60. package/dist/config/misc-settings.d.ts +22 -1
  61. package/dist/config/misc-settings.d.ts.map +1 -1
  62. package/dist/config/misc-settings.js +93 -3
  63. package/dist/config/misc-settings.js.map +1 -1
  64. package/dist/config/operator-grant.d.ts +9 -0
  65. package/dist/config/operator-grant.d.ts.map +1 -0
  66. package/dist/config/operator-grant.js +24 -0
  67. package/dist/config/operator-grant.js.map +1 -0
  68. package/dist/config/voice-grant.d.ts +10 -0
  69. package/dist/config/voice-grant.d.ts.map +1 -0
  70. package/dist/config/voice-grant.js +18 -0
  71. package/dist/config/voice-grant.js.map +1 -0
  72. package/dist/dashboard/board-static.d.ts +22 -0
  73. package/dist/dashboard/board-static.d.ts.map +1 -0
  74. package/dist/dashboard/board-static.js +130 -0
  75. package/dist/dashboard/board-static.js.map +1 -0
  76. package/dist/dashboard/presets.d.ts +1 -1
  77. package/dist/dashboard/presets.d.ts.map +1 -1
  78. package/dist/dashboard/presets.js +1 -1
  79. package/dist/dashboard/presets.js.map +1 -1
  80. package/dist/dashboard/routes/agent-templates.d.ts.map +1 -1
  81. package/dist/dashboard/routes/agent-templates.js +6 -9
  82. package/dist/dashboard/routes/agent-templates.js.map +1 -1
  83. package/dist/dashboard/routes/board-body.d.ts +8 -0
  84. package/dist/dashboard/routes/board-body.d.ts.map +1 -0
  85. package/dist/dashboard/routes/board-body.js +20 -0
  86. package/dist/dashboard/routes/board-body.js.map +1 -0
  87. package/dist/dashboard/routes/board-dir-listing.d.ts +70 -0
  88. package/dist/dashboard/routes/board-dir-listing.d.ts.map +1 -0
  89. package/dist/dashboard/routes/board-dir-listing.js +192 -0
  90. package/dist/dashboard/routes/board-dir-listing.js.map +1 -0
  91. package/dist/dashboard/routes/board-lane-groups.d.ts +6 -0
  92. package/dist/dashboard/routes/board-lane-groups.d.ts.map +1 -0
  93. package/dist/dashboard/routes/board-lane-groups.js +52 -0
  94. package/dist/dashboard/routes/board-lane-groups.js.map +1 -0
  95. package/dist/dashboard/routes/board-policy.d.ts +224 -0
  96. package/dist/dashboard/routes/board-policy.d.ts.map +1 -0
  97. package/dist/dashboard/routes/board-policy.js +214 -0
  98. package/dist/dashboard/routes/board-policy.js.map +1 -0
  99. package/dist/dashboard/routes/board-profile-parse.d.ts +32 -0
  100. package/dist/dashboard/routes/board-profile-parse.d.ts.map +1 -0
  101. package/dist/dashboard/routes/board-profile-parse.js +338 -0
  102. package/dist/dashboard/routes/board-profile-parse.js.map +1 -0
  103. package/dist/dashboard/routes/board.d.ts +90 -0
  104. package/dist/dashboard/routes/board.d.ts.map +1 -0
  105. package/dist/dashboard/routes/board.js +721 -0
  106. package/dist/dashboard/routes/board.js.map +1 -0
  107. package/dist/dashboard/routes/codex.d.ts +14 -0
  108. package/dist/dashboard/routes/codex.d.ts.map +1 -0
  109. package/dist/dashboard/routes/codex.js +92 -0
  110. package/dist/dashboard/routes/codex.js.map +1 -0
  111. package/dist/dashboard/routes/prompts.d.ts +2 -2
  112. package/dist/dashboard/routes/prompts.d.ts.map +1 -1
  113. package/dist/dashboard/routes/prompts.js +2 -2
  114. package/dist/dashboard/routes/prompts.js.map +1 -1
  115. package/dist/dashboard/routes/settings.d.ts +2 -0
  116. package/dist/dashboard/routes/settings.d.ts.map +1 -1
  117. package/dist/dashboard/routes/settings.js +24 -1
  118. package/dist/dashboard/routes/settings.js.map +1 -1
  119. package/dist/dashboard/routes/skills.d.ts +7 -1
  120. package/dist/dashboard/routes/skills.d.ts.map +1 -1
  121. package/dist/dashboard/routes/skills.js +6 -6
  122. package/dist/dashboard/routes/skills.js.map +1 -1
  123. package/dist/dashboard/routes/snapshots.d.ts +2 -1
  124. package/dist/dashboard/routes/snapshots.d.ts.map +1 -1
  125. package/dist/dashboard/routes/snapshots.js +24 -18
  126. package/dist/dashboard/routes/snapshots.js.map +1 -1
  127. package/dist/dashboard/routes/templates.js +5 -5
  128. package/dist/dashboard/routes/templates.js.map +1 -1
  129. package/dist/dashboard/routes/threads-create.d.ts +17 -0
  130. package/dist/dashboard/routes/threads-create.d.ts.map +1 -1
  131. package/dist/dashboard/routes/threads-create.js +32 -10
  132. package/dist/dashboard/routes/threads-create.js.map +1 -1
  133. package/dist/dashboard/routes/threads-helpers.d.ts +11 -2
  134. package/dist/dashboard/routes/threads-helpers.d.ts.map +1 -1
  135. package/dist/dashboard/routes/threads-helpers.js +20 -3
  136. package/dist/dashboard/routes/threads-helpers.js.map +1 -1
  137. package/dist/dashboard/routes/threads-read.d.ts +16 -4
  138. package/dist/dashboard/routes/threads-read.d.ts.map +1 -1
  139. package/dist/dashboard/routes/threads-read.js +61 -55
  140. package/dist/dashboard/routes/threads-read.js.map +1 -1
  141. package/dist/dashboard/routes/threads.d.ts +2 -2
  142. package/dist/dashboard/routes/threads.d.ts.map +1 -1
  143. package/dist/dashboard/routes/threads.js +143 -29
  144. package/dist/dashboard/routes/threads.js.map +1 -1
  145. package/dist/dashboard/routes/types.d.ts +6 -0
  146. package/dist/dashboard/routes/types.d.ts.map +1 -1
  147. package/dist/dashboard/routes/types.js.map +1 -1
  148. package/dist/dashboard/routes.d.ts +2 -2
  149. package/dist/dashboard/routes.d.ts.map +1 -1
  150. package/dist/dashboard/routes.js +85 -7
  151. package/dist/dashboard/routes.js.map +1 -1
  152. package/dist/dashboard/spa.html +15 -12
  153. package/dist/data/board/board-schema.d.ts +29 -0
  154. package/dist/data/board/board-schema.d.ts.map +1 -0
  155. package/dist/data/board/board-schema.js +202 -0
  156. package/dist/data/board/board-schema.js.map +1 -0
  157. package/dist/data/board/board-types.d.ts +175 -0
  158. package/dist/data/board/board-types.d.ts.map +1 -0
  159. package/dist/data/board/board-types.js +9 -0
  160. package/dist/data/board/board-types.js.map +1 -0
  161. package/dist/data/board/card.repository.d.ts +137 -0
  162. package/dist/data/board/card.repository.d.ts.map +1 -0
  163. package/dist/data/board/card.repository.js +470 -0
  164. package/dist/data/board/card.repository.js.map +1 -0
  165. package/dist/data/board/comment.repository.d.ts +14 -0
  166. package/dist/data/board/comment.repository.d.ts.map +1 -0
  167. package/dist/data/board/comment.repository.js +42 -0
  168. package/dist/data/board/comment.repository.js.map +1 -0
  169. package/dist/data/board/lane-group.repository.d.ts +19 -0
  170. package/dist/data/board/lane-group.repository.d.ts.map +1 -0
  171. package/dist/data/board/lane-group.repository.js +66 -0
  172. package/dist/data/board/lane-group.repository.js.map +1 -0
  173. package/dist/data/board/profile-defaults.d.ts +17 -0
  174. package/dist/data/board/profile-defaults.d.ts.map +1 -0
  175. package/dist/data/board/profile-defaults.js +107 -0
  176. package/dist/data/board/profile-defaults.js.map +1 -0
  177. package/dist/data/interfaces.d.ts +1 -0
  178. package/dist/data/interfaces.d.ts.map +1 -1
  179. package/dist/data/memory/bootstrap.d.ts +1 -8
  180. package/dist/data/memory/bootstrap.d.ts.map +1 -1
  181. package/dist/data/memory/bootstrap.js +27 -37
  182. package/dist/data/memory/bootstrap.js.map +1 -1
  183. package/dist/data/memory/consolidation.d.ts +9 -31
  184. package/dist/data/memory/consolidation.d.ts.map +1 -1
  185. package/dist/data/memory/consolidation.js +22 -32
  186. package/dist/data/memory/consolidation.js.map +1 -1
  187. package/dist/data/memory/db-maintenance.d.ts +54 -0
  188. package/dist/data/memory/db-maintenance.d.ts.map +1 -0
  189. package/dist/data/memory/db-maintenance.js +81 -0
  190. package/dist/data/memory/db-maintenance.js.map +1 -0
  191. package/dist/data/memory/episodes.d.ts +2 -1
  192. package/dist/data/memory/episodes.d.ts.map +1 -1
  193. package/dist/data/memory/episodes.js +5 -1
  194. package/dist/data/memory/episodes.js.map +1 -1
  195. package/dist/data/memory/index.d.ts +0 -4
  196. package/dist/data/memory/index.d.ts.map +1 -1
  197. package/dist/data/memory/index.js +0 -4
  198. package/dist/data/memory/index.js.map +1 -1
  199. package/dist/data/memory/key-knowledge.d.ts +51 -0
  200. package/dist/data/memory/key-knowledge.d.ts.map +1 -0
  201. package/dist/data/memory/key-knowledge.js +128 -0
  202. package/dist/data/memory/key-knowledge.js.map +1 -0
  203. package/dist/data/memory/migration-runner.d.ts +1 -1
  204. package/dist/data/memory/migration-runner.d.ts.map +1 -1
  205. package/dist/data/memory/migration-runner.js +407 -1
  206. package/dist/data/memory/migration-runner.js.map +1 -1
  207. package/dist/data/memory/narrative-lint.d.ts +2 -2
  208. package/dist/data/memory/narrative-lint.d.ts.map +1 -1
  209. package/dist/data/memory/narrative-lint.js +23 -13
  210. package/dist/data/memory/narrative-lint.js.map +1 -1
  211. package/dist/data/memory/narrative-resolutions.d.ts +9 -2
  212. package/dist/data/memory/narrative-resolutions.d.ts.map +1 -1
  213. package/dist/data/memory/narrative-resolutions.js +9 -8
  214. package/dist/data/memory/narrative-resolutions.js.map +1 -1
  215. package/dist/data/memory/narrative-sources.d.ts +1 -1
  216. package/dist/data/memory/narrative-sources.d.ts.map +1 -1
  217. package/dist/data/memory/narrative-sources.js +8 -3
  218. package/dist/data/memory/narrative-sources.js.map +1 -1
  219. package/dist/data/memory/narrative-store.d.ts +24 -0
  220. package/dist/data/memory/narrative-store.d.ts.map +1 -1
  221. package/dist/data/memory/narrative-store.js +73 -35
  222. package/dist/data/memory/narrative-store.js.map +1 -1
  223. package/dist/data/memory/narrative.d.ts.map +1 -1
  224. package/dist/data/memory/narrative.js +47 -29
  225. package/dist/data/memory/narrative.js.map +1 -1
  226. package/dist/data/memory/note-archival.d.ts +1 -1
  227. package/dist/data/memory/note-archival.d.ts.map +1 -1
  228. package/dist/data/memory/note-archival.js +7 -3
  229. package/dist/data/memory/note-archival.js.map +1 -1
  230. package/dist/data/memory/note-embeddings.d.ts +7 -0
  231. package/dist/data/memory/note-embeddings.d.ts.map +1 -1
  232. package/dist/data/memory/note-embeddings.js +6 -2
  233. package/dist/data/memory/note-embeddings.js.map +1 -1
  234. package/dist/data/memory/passive-notice.repository.d.ts +70 -0
  235. package/dist/data/memory/passive-notice.repository.d.ts.map +1 -0
  236. package/dist/data/memory/passive-notice.repository.js +85 -0
  237. package/dist/data/memory/passive-notice.repository.js.map +1 -0
  238. package/dist/data/memory/schema-ddl.d.ts +120 -1
  239. package/dist/data/memory/schema-ddl.d.ts.map +1 -1
  240. package/dist/data/memory/schema-ddl.js +171 -4
  241. package/dist/data/memory/schema-ddl.js.map +1 -1
  242. package/dist/data/memory/schema-guard.d.ts.map +1 -1
  243. package/dist/data/memory/schema-guard.js +5 -41
  244. package/dist/data/memory/schema-guard.js.map +1 -1
  245. package/dist/data/memory/schema.d.ts.map +1 -1
  246. package/dist/data/memory/schema.js +10 -34
  247. package/dist/data/memory/schema.js.map +1 -1
  248. package/dist/data/memory/semantic-notes.d.ts +13 -8
  249. package/dist/data/memory/semantic-notes.d.ts.map +1 -1
  250. package/dist/data/memory/semantic-notes.js +12 -17
  251. package/dist/data/memory/semantic-notes.js.map +1 -1
  252. package/dist/data/memory/thread-registry.d.ts +330 -15
  253. package/dist/data/memory/thread-registry.d.ts.map +1 -1
  254. package/dist/data/memory/thread-registry.js +523 -67
  255. package/dist/data/memory/thread-registry.js.map +1 -1
  256. package/dist/data/memory/utils.d.ts +6 -0
  257. package/dist/data/memory/utils.d.ts.map +1 -1
  258. package/dist/data/memory/utils.js +13 -0
  259. package/dist/data/memory/utils.js.map +1 -1
  260. package/dist/data/memory/worker-lifecycle.repository.d.ts +308 -0
  261. package/dist/data/memory/worker-lifecycle.repository.d.ts.map +1 -0
  262. package/dist/data/memory/worker-lifecycle.repository.js +428 -0
  263. package/dist/data/memory/worker-lifecycle.repository.js.map +1 -0
  264. package/dist/data/optional.d.ts +16 -0
  265. package/dist/data/optional.d.ts.map +1 -0
  266. package/dist/data/optional.js +47 -0
  267. package/dist/data/optional.js.map +1 -0
  268. package/dist/index.js +156 -24
  269. package/dist/index.js.map +1 -1
  270. package/dist/integrations/openai/speech.d.ts.map +1 -1
  271. package/dist/integrations/openai/speech.js +52 -19
  272. package/dist/integrations/openai/speech.js.map +1 -1
  273. package/dist/integrations/openai/video.d.ts +1 -1
  274. package/dist/integrations/openai/video.d.ts.map +1 -1
  275. package/dist/integrations/openai/video.js +13 -8
  276. package/dist/integrations/openai/video.js.map +1 -1
  277. package/dist/integrations/telegram/types.d.ts +11 -0
  278. package/dist/integrations/telegram/types.d.ts.map +1 -1
  279. package/dist/lib/http-retry.d.ts +91 -0
  280. package/dist/lib/http-retry.d.ts.map +1 -0
  281. package/dist/lib/http-retry.js +177 -0
  282. package/dist/lib/http-retry.js.map +1 -0
  283. package/dist/lib/mcp-http-port.d.ts +12 -0
  284. package/dist/lib/mcp-http-port.d.ts.map +1 -0
  285. package/dist/lib/mcp-http-port.js +19 -0
  286. package/dist/lib/mcp-http-port.js.map +1 -0
  287. package/dist/lib/paths.d.ts +29 -4
  288. package/dist/lib/paths.d.ts.map +1 -1
  289. package/dist/lib/paths.js +31 -4
  290. package/dist/lib/paths.js.map +1 -1
  291. package/dist/lib/types.d.ts +2 -0
  292. package/dist/lib/types.d.ts.map +1 -1
  293. package/dist/lib/usage-metering/pricing.js +1 -1
  294. package/dist/lib/usage-metering/pricing.js.map +1 -1
  295. package/dist/lib/usage-metering/sink.d.ts +4 -0
  296. package/dist/lib/usage-metering/sink.d.ts.map +1 -1
  297. package/dist/lib/usage-metering/sink.js +6 -4
  298. package/dist/lib/usage-metering/sink.js.map +1 -1
  299. package/dist/lib/utils.d.ts +31 -0
  300. package/dist/lib/utils.d.ts.map +1 -1
  301. package/dist/lib/utils.js +49 -0
  302. package/dist/lib/utils.js.map +1 -1
  303. package/dist/llm/prompts/narrative.d.ts.map +1 -1
  304. package/dist/llm/prompts/narrative.js +27 -86
  305. package/dist/llm/prompts/narrative.js.map +1 -1
  306. package/dist/log-parsing/log-events.d.ts +38 -0
  307. package/dist/log-parsing/log-events.d.ts.map +1 -0
  308. package/dist/log-parsing/log-events.js +2 -0
  309. package/dist/log-parsing/log-events.js.map +1 -0
  310. package/dist/log-parsing/parser-registry.d.ts +4 -0
  311. package/dist/log-parsing/parser-registry.d.ts.map +1 -0
  312. package/dist/log-parsing/parser-registry.js +18 -0
  313. package/dist/log-parsing/parser-registry.js.map +1 -0
  314. package/dist/log-parsing/parsers/claude.d.ts +6 -0
  315. package/dist/log-parsing/parsers/claude.d.ts.map +1 -0
  316. package/dist/log-parsing/parsers/claude.js +100 -0
  317. package/dist/log-parsing/parsers/claude.js.map +1 -0
  318. package/dist/log-parsing/parsers/codex.d.ts +6 -0
  319. package/dist/log-parsing/parsers/codex.d.ts.map +1 -0
  320. package/dist/log-parsing/parsers/codex.js +116 -0
  321. package/dist/log-parsing/parsers/codex.js.map +1 -0
  322. package/dist/log-parsing/parsers/copilot.d.ts +6 -0
  323. package/dist/log-parsing/parsers/copilot.d.ts.map +1 -0
  324. package/dist/log-parsing/parsers/copilot.js +65 -0
  325. package/dist/log-parsing/parsers/copilot.js.map +1 -0
  326. package/dist/log-parsing/parsers/json-lines.d.ts +9 -0
  327. package/dist/log-parsing/parsers/json-lines.d.ts.map +1 -0
  328. package/dist/log-parsing/parsers/json-lines.js +25 -0
  329. package/dist/log-parsing/parsers/json-lines.js.map +1 -0
  330. package/dist/log-parsing/render.d.ts +33 -0
  331. package/dist/log-parsing/render.d.ts.map +1 -0
  332. package/dist/log-parsing/render.js +113 -0
  333. package/dist/log-parsing/render.js.map +1 -0
  334. package/dist/log-parsing/text.d.ts +8 -0
  335. package/dist/log-parsing/text.d.ts.map +1 -0
  336. package/dist/log-parsing/text.js +20 -0
  337. package/dist/log-parsing/text.js.map +1 -0
  338. package/dist/server/http-server.d.ts +8 -1
  339. package/dist/server/http-server.d.ts.map +1 -1
  340. package/dist/server/http-server.js +41 -19
  341. package/dist/server/http-server.js.map +1 -1
  342. package/dist/server/port-holder.d.ts +94 -0
  343. package/dist/server/port-holder.d.ts.map +1 -0
  344. package/dist/server/port-holder.js +122 -0
  345. package/dist/server/port-holder.js.map +1 -0
  346. package/dist/services/agent-spawn.service.d.ts +50 -5
  347. package/dist/services/agent-spawn.service.d.ts.map +1 -1
  348. package/dist/services/agent-spawn.service.js +59 -66
  349. package/dist/services/agent-spawn.service.js.map +1 -1
  350. package/dist/services/background-runner.d.ts +0 -1
  351. package/dist/services/background-runner.d.ts.map +1 -1
  352. package/dist/services/background-runner.js +0 -58
  353. package/dist/services/background-runner.js.map +1 -1
  354. package/dist/services/board/board-signals.d.ts +45 -0
  355. package/dist/services/board/board-signals.d.ts.map +1 -0
  356. package/dist/services/board/board-signals.js +170 -0
  357. package/dist/services/board/board-signals.js.map +1 -0
  358. package/dist/services/board/card-briefing.d.ts +24 -0
  359. package/dist/services/board/card-briefing.d.ts.map +1 -0
  360. package/dist/services/board/card-briefing.js +132 -0
  361. package/dist/services/board/card-briefing.js.map +1 -0
  362. package/dist/services/board/card-diagnostics.d.ts +25 -0
  363. package/dist/services/board/card-diagnostics.d.ts.map +1 -0
  364. package/dist/services/board/card-diagnostics.js +50 -0
  365. package/dist/services/board/card-diagnostics.js.map +1 -0
  366. package/dist/services/board/live-root-thread.d.ts +8 -0
  367. package/dist/services/board/live-root-thread.d.ts.map +1 -0
  368. package/dist/services/board/live-root-thread.js +2 -0
  369. package/dist/services/board/live-root-thread.js.map +1 -0
  370. package/dist/services/board/orchestrator.service.d.ts +119 -0
  371. package/dist/services/board/orchestrator.service.d.ts.map +1 -0
  372. package/dist/services/board/orchestrator.service.js +387 -0
  373. package/dist/services/board/orchestrator.service.js.map +1 -0
  374. package/dist/services/board/release-worker.d.ts +43 -0
  375. package/dist/services/board/release-worker.d.ts.map +1 -0
  376. package/dist/services/board/release-worker.js +96 -0
  377. package/dist/services/board/release-worker.js.map +1 -0
  378. package/dist/services/board/report-capture.d.ts +94 -0
  379. package/dist/services/board/report-capture.d.ts.map +1 -0
  380. package/dist/services/board/report-capture.js +398 -0
  381. package/dist/services/board/report-capture.js.map +1 -0
  382. package/dist/services/board/worker-spawn.d.ts +89 -0
  383. package/dist/services/board/worker-spawn.d.ts.map +1 -0
  384. package/dist/services/board/worker-spawn.js +177 -0
  385. package/dist/services/board/worker-spawn.js.map +1 -0
  386. package/dist/services/board/worktree.d.ts +45 -0
  387. package/dist/services/board/worktree.d.ts.map +1 -0
  388. package/dist/services/board/worktree.js +183 -0
  389. package/dist/services/board/worktree.js.map +1 -0
  390. package/dist/services/broker-client.d.ts +84 -2
  391. package/dist/services/broker-client.d.ts.map +1 -1
  392. package/dist/services/broker-client.js +72 -6
  393. package/dist/services/broker-client.js.map +1 -1
  394. package/dist/services/claude-spawn.service.d.ts +5 -0
  395. package/dist/services/claude-spawn.service.d.ts.map +1 -1
  396. package/dist/services/claude-spawn.service.js +37 -21
  397. package/dist/services/claude-spawn.service.js.map +1 -1
  398. package/dist/services/codex-spawn.service.d.ts +8 -3
  399. package/dist/services/codex-spawn.service.d.ts.map +1 -1
  400. package/dist/services/codex-spawn.service.js +84 -67
  401. package/dist/services/codex-spawn.service.js.map +1 -1
  402. package/dist/services/consolidation.service.d.ts.map +1 -1
  403. package/dist/services/consolidation.service.js +5 -49
  404. package/dist/services/consolidation.service.js.map +1 -1
  405. package/dist/services/copilot-spawn.service.d.ts +1 -1
  406. package/dist/services/copilot-spawn.service.d.ts.map +1 -1
  407. package/dist/services/copilot-spawn.service.js +10 -5
  408. package/dist/services/copilot-spawn.service.js.map +1 -1
  409. package/dist/services/daily-session.d.ts +24 -11
  410. package/dist/services/daily-session.d.ts.map +1 -1
  411. package/dist/services/daily-session.js +113 -33
  412. package/dist/services/daily-session.js.map +1 -1
  413. package/dist/services/death-alert.service.d.ts +55 -0
  414. package/dist/services/death-alert.service.d.ts.map +1 -0
  415. package/dist/services/death-alert.service.js +64 -0
  416. package/dist/services/death-alert.service.js.map +1 -0
  417. package/dist/services/dispatcher/broker.d.ts +66 -0
  418. package/dist/services/dispatcher/broker.d.ts.map +1 -1
  419. package/dist/services/dispatcher/broker.js +60 -52
  420. package/dist/services/dispatcher/broker.js.map +1 -1
  421. package/dist/services/dispatcher/poller.d.ts.map +1 -1
  422. package/dist/services/dispatcher/poller.js +31 -24
  423. package/dist/services/dispatcher/poller.js.map +1 -1
  424. package/dist/services/http-retry.d.ts +1 -90
  425. package/dist/services/http-retry.d.ts.map +1 -1
  426. package/dist/services/http-retry.js +1 -176
  427. package/dist/services/http-retry.js.map +1 -1
  428. package/dist/services/intent.d.ts +15 -1
  429. package/dist/services/intent.d.ts.map +1 -1
  430. package/dist/services/intent.js +39 -27
  431. package/dist/services/intent.js.map +1 -1
  432. package/dist/services/keeper.service.d.ts +76 -3
  433. package/dist/services/keeper.service.d.ts.map +1 -1
  434. package/dist/services/keeper.service.js +112 -35
  435. package/dist/services/keeper.service.js.map +1 -1
  436. package/dist/services/mcp-config.service.d.ts.map +1 -1
  437. package/dist/services/mcp-config.service.js +14 -1
  438. package/dist/services/mcp-config.service.js.map +1 -1
  439. package/dist/services/memory-briefing.service.d.ts +1 -1
  440. package/dist/services/memory-briefing.service.d.ts.map +1 -1
  441. package/dist/services/memory-briefing.service.js +28 -73
  442. package/dist/services/memory-briefing.service.js.map +1 -1
  443. package/dist/services/passive-notice.service.d.ts +56 -0
  444. package/dist/services/passive-notice.service.d.ts.map +1 -0
  445. package/dist/services/passive-notice.service.js +92 -0
  446. package/dist/services/passive-notice.service.js.map +1 -0
  447. package/dist/services/predefined-prompts.d.ts +11 -0
  448. package/dist/services/predefined-prompts.d.ts.map +1 -0
  449. package/dist/services/predefined-prompts.js +25 -0
  450. package/dist/services/predefined-prompts.js.map +1 -0
  451. package/dist/services/process.service.d.ts +111 -27
  452. package/dist/services/process.service.d.ts.map +1 -1
  453. package/dist/services/process.service.js +245 -173
  454. package/dist/services/process.service.js.map +1 -1
  455. package/dist/services/spawn-common.d.ts +281 -5
  456. package/dist/services/spawn-common.d.ts.map +1 -1
  457. package/dist/services/spawn-common.js +884 -188
  458. package/dist/services/spawn-common.js.map +1 -1
  459. package/dist/services/spawn-exit-watcher.d.ts +45 -35
  460. package/dist/services/spawn-exit-watcher.d.ts.map +1 -1
  461. package/dist/services/spawn-exit-watcher.js +120 -100
  462. package/dist/services/spawn-exit-watcher.js.map +1 -1
  463. package/dist/services/telegram.d.ts +31 -8
  464. package/dist/services/telegram.d.ts.map +1 -1
  465. package/dist/services/telegram.js +58 -26
  466. package/dist/services/telegram.js.map +1 -1
  467. package/dist/services/thread-health.service.d.ts +8 -0
  468. package/dist/services/thread-health.service.d.ts.map +1 -1
  469. package/dist/services/thread-health.service.js +14 -10
  470. package/dist/services/thread-health.service.js.map +1 -1
  471. package/dist/services/thread-lifecycle.service.d.ts +17 -1
  472. package/dist/services/thread-lifecycle.service.d.ts.map +1 -1
  473. package/dist/services/thread-lifecycle.service.js +47 -6
  474. package/dist/services/thread-lifecycle.service.js.map +1 -1
  475. package/dist/services/thread-log-reader.d.ts +81 -0
  476. package/dist/services/thread-log-reader.d.ts.map +1 -0
  477. package/dist/services/thread-log-reader.js +141 -0
  478. package/dist/services/thread-log-reader.js.map +1 -0
  479. package/dist/services/thread-purge.service.d.ts +200 -0
  480. package/dist/services/thread-purge.service.d.ts.map +1 -0
  481. package/dist/services/thread-purge.service.js +644 -0
  482. package/dist/services/thread-purge.service.js.map +1 -0
  483. package/dist/services/topic.service.d.ts +44 -2
  484. package/dist/services/topic.service.d.ts.map +1 -1
  485. package/dist/services/topic.service.js +74 -13
  486. package/dist/services/topic.service.js.map +1 -1
  487. package/dist/services/usage/usage-inbox-notifier.d.ts +50 -0
  488. package/dist/services/usage/usage-inbox-notifier.d.ts.map +1 -0
  489. package/dist/services/usage/usage-inbox-notifier.js +118 -0
  490. package/dist/services/usage/usage-inbox-notifier.js.map +1 -0
  491. package/dist/services/usage/usage-poller.service.d.ts +41 -0
  492. package/dist/services/usage/usage-poller.service.d.ts.map +1 -0
  493. package/dist/services/usage/usage-poller.service.js +67 -0
  494. package/dist/services/usage/usage-poller.service.js.map +1 -0
  495. package/dist/services/usage/usage-snapshot-provider.d.ts +40 -0
  496. package/dist/services/usage/usage-snapshot-provider.d.ts.map +1 -0
  497. package/dist/services/usage/usage-snapshot-provider.js +89 -0
  498. package/dist/services/usage/usage-snapshot-provider.js.map +1 -0
  499. package/dist/services/usage/usage-types.d.ts +28 -0
  500. package/dist/services/usage/usage-types.d.ts.map +1 -0
  501. package/dist/services/usage/usage-types.js +14 -0
  502. package/dist/services/usage/usage-types.js.map +1 -0
  503. package/dist/services/worker-birth.d.ts +154 -0
  504. package/dist/services/worker-birth.d.ts.map +1 -0
  505. package/dist/services/worker-birth.js +274 -0
  506. package/dist/services/worker-birth.js.map +1 -0
  507. package/dist/services/worker-cleanup.service.d.ts +242 -19
  508. package/dist/services/worker-cleanup.service.d.ts.map +1 -1
  509. package/dist/services/worker-cleanup.service.js +893 -355
  510. package/dist/services/worker-cleanup.service.js.map +1 -1
  511. package/dist/services/worker-lifecycle-executor.d.ts +42 -0
  512. package/dist/services/worker-lifecycle-executor.d.ts.map +1 -0
  513. package/dist/services/worker-lifecycle-executor.js +63 -0
  514. package/dist/services/worker-lifecycle-executor.js.map +1 -0
  515. package/dist/services/worker-single-use.d.ts +92 -0
  516. package/dist/services/worker-single-use.d.ts.map +1 -0
  517. package/dist/services/worker-single-use.js +155 -0
  518. package/dist/services/worker-single-use.js.map +1 -0
  519. package/dist/sessions/mcp-registry.d.ts +33 -2
  520. package/dist/sessions/mcp-registry.d.ts.map +1 -1
  521. package/dist/sessions/mcp-registry.js +153 -30
  522. package/dist/sessions/mcp-registry.js.map +1 -1
  523. package/dist/test-bootstrap.d.ts +19 -12
  524. package/dist/test-bootstrap.d.ts.map +1 -1
  525. package/dist/test-bootstrap.js +69 -21
  526. package/dist/test-bootstrap.js.map +1 -1
  527. package/dist/test-tripwire.test-support.d.ts +75 -0
  528. package/dist/test-tripwire.test-support.d.ts.map +1 -0
  529. package/dist/test-tripwire.test-support.js +353 -0
  530. package/dist/test-tripwire.test-support.js.map +1 -0
  531. package/dist/tools/defs/memory-defs.d.ts.map +1 -1
  532. package/dist/tools/defs/memory-defs.js +12 -4
  533. package/dist/tools/defs/memory-defs.js.map +1 -1
  534. package/dist/tools/defs/session-defs.d.ts.map +1 -1
  535. package/dist/tools/defs/session-defs.js +26 -10
  536. package/dist/tools/defs/session-defs.js.map +1 -1
  537. package/dist/tools/defs/utility-defs.js +1 -1
  538. package/dist/tools/defs/utility-defs.js.map +1 -1
  539. package/dist/tools/delegate-tool.d.ts +81 -1
  540. package/dist/tools/delegate-tool.d.ts.map +1 -1
  541. package/dist/tools/delegate-tool.js +840 -219
  542. package/dist/tools/delegate-tool.js.map +1 -1
  543. package/dist/tools/memory-tools.d.ts.map +1 -1
  544. package/dist/tools/memory-tools.js +66 -9
  545. package/dist/tools/memory-tools.js.map +1 -1
  546. package/dist/tools/response-builders.d.ts.map +1 -1
  547. package/dist/tools/response-builders.js +12 -8
  548. package/dist/tools/response-builders.js.map +1 -1
  549. package/dist/tools/session-tools.d.ts.map +1 -1
  550. package/dist/tools/session-tools.js +3 -32
  551. package/dist/tools/session-tools.js.map +1 -1
  552. package/dist/tools/skill-tools.js +1 -1
  553. package/dist/tools/skill-tools.js.map +1 -1
  554. package/dist/tools/start-session-tool.d.ts.map +1 -1
  555. package/dist/tools/start-session-tool.js +66 -20
  556. package/dist/tools/start-session-tool.js.map +1 -1
  557. package/dist/tools/utility-tools.d.ts.map +1 -1
  558. package/dist/tools/utility-tools.js +38 -3
  559. package/dist/tools/utility-tools.js.map +1 -1
  560. package/dist/tools/wait/auto-forward.d.ts.map +1 -1
  561. package/dist/tools/wait/auto-forward.js +8 -3
  562. package/dist/tools/wait/auto-forward.js.map +1 -1
  563. package/dist/tools/wait/consolidation-strategy.d.ts +42 -0
  564. package/dist/tools/wait/consolidation-strategy.d.ts.map +1 -0
  565. package/dist/tools/wait/consolidation-strategy.js +50 -0
  566. package/dist/tools/wait/consolidation-strategy.js.map +1 -0
  567. package/dist/tools/wait/drive-handler.d.ts +5 -7
  568. package/dist/tools/wait/drive-handler.d.ts.map +1 -1
  569. package/dist/tools/wait/drive-handler.js +45 -59
  570. package/dist/tools/wait/drive-handler.js.map +1 -1
  571. package/dist/tools/wait/media-processor.d.ts.map +1 -1
  572. package/dist/tools/wait/media-processor.js +8 -4
  573. package/dist/tools/wait/media-processor.js.map +1 -1
  574. package/dist/tools/wait/message-delivery.d.ts +9 -6
  575. package/dist/tools/wait/message-delivery.d.ts.map +1 -1
  576. package/dist/tools/wait/message-delivery.js +77 -58
  577. package/dist/tools/wait/message-delivery.js.map +1 -1
  578. package/dist/tools/wait/message-processing.d.ts.map +1 -1
  579. package/dist/tools/wait/message-processing.js +2 -1
  580. package/dist/tools/wait/message-processing.js.map +1 -1
  581. package/dist/tools/wait/poll-loop.d.ts.map +1 -1
  582. package/dist/tools/wait/poll-loop.js +339 -239
  583. package/dist/tools/wait/poll-loop.js.map +1 -1
  584. package/package.json +4 -3
  585. package/templates/azure-devops-securevault.default.md +20 -6
  586. package/templates/board-quality-checklist.default.md +121 -0
  587. package/templates/buildless-vue-preview.default.md +47 -0
  588. package/templates/expert-code-review.default.md +12 -0
  589. package/templates/handoff.default.md +41 -18
  590. package/templates/increment-pr-pipeline.default.md +79 -0
  591. package/templates/swarm.default.md +1 -0
  592. package/templates/worker-autonomous.default.md +1 -0
  593. package/templates/worker-delegate.default.md +1 -0
  594. package/dist/dashboard/log-parser.d.ts +0 -65
  595. package/dist/dashboard/log-parser.d.ts.map +0 -1
  596. package/dist/dashboard/log-parser.js +0 -219
  597. package/dist/dashboard/log-parser.js.map +0 -1
  598. package/dist/data/memory/reflection-dedup.d.ts +0 -17
  599. package/dist/data/memory/reflection-dedup.d.ts.map +0 -1
  600. package/dist/data/memory/reflection-dedup.js +0 -55
  601. package/dist/data/memory/reflection-dedup.js.map +0 -1
  602. package/dist/data/memory/reflection-gates.d.ts +0 -40
  603. package/dist/data/memory/reflection-gates.d.ts.map +0 -1
  604. package/dist/data/memory/reflection-gates.js +0 -220
  605. package/dist/data/memory/reflection-gates.js.map +0 -1
  606. package/dist/data/memory/reflection-sources.d.ts +0 -13
  607. package/dist/data/memory/reflection-sources.d.ts.map +0 -1
  608. package/dist/data/memory/reflection-sources.js +0 -115
  609. package/dist/data/memory/reflection-sources.js.map +0 -1
  610. package/dist/data/memory/reflection.d.ts +0 -43
  611. package/dist/data/memory/reflection.d.ts.map +0 -1
  612. package/dist/data/memory/reflection.js +0 -329
  613. package/dist/data/memory/reflection.js.map +0 -1
  614. package/dist/llm/prompts/reflection.d.ts +0 -6
  615. package/dist/llm/prompts/reflection.d.ts.map +0 -1
  616. package/dist/llm/prompts/reflection.js +0 -77
  617. package/dist/llm/prompts/reflection.js.map +0 -1
  618. package/dist/services/memory-pruning.service.d.ts +0 -12
  619. package/dist/services/memory-pruning.service.d.ts.map +0 -1
  620. package/dist/services/memory-pruning.service.js +0 -179
  621. package/dist/services/memory-pruning.service.js.map +0 -1
  622. package/templates/daily-review.default.md +0 -26
  623. package/templates/fire-and-forget.default.md +0 -76
  624. package/templates/offload.default.md +0 -33
  625. package/templates/sensorium-repair.default.md +0 -114
@@ -1 +1 @@
1
- {"version":3,"file":"poll-loop.js","sourceRoot":"","sources":["../../../src/tools/wait/poll-loop.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"poll-loop.js","sourceRoot":"","sources":["../../../src/tools/wait/poll-loop.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "sensorium-mcp",
3
- "version": "3.1.2",
3
+ "version": "3.1.3-board.10",
4
4
  "description": "MCP server for remote control of AI assistants via Telegram",
5
5
  "main": "dist/index.js",
6
6
  "bin": {
@@ -13,14 +13,15 @@
13
13
  "Install-Sensorium.ps1"
14
14
  ],
15
15
  "scripts": {
16
- "build": "cd src/dashboard/vue && npx vite build && cd ../../.. && node -e \"const fs=require('fs');if(fs.existsSync('dist/dashboard/index.html'))fs.renameSync('dist/dashboard/index.html','dist/dashboard/spa.html')\" && tsc",
16
+ "build": "cd src/dashboard/vue && npx vite build && cd ../../.. && node -e \"const fs=require('fs');if(fs.existsSync('dist/dashboard/index.html'))fs.renameSync('dist/dashboard/index.html','dist/dashboard/spa.html')\" && tsc && node -e \"const fs=require('fs');fs.cpSync('src/board-front','dist/board',{recursive:true,filter:(s)=>!/(?:\\.d\\.ts|\\.md)$/.test(s)})\"",
17
17
  "start": "node dist/index.js",
18
18
  "dev": "tsx src/index.ts",
19
19
  "supervisor:install": "pwsh Install-Sensorium.ps1",
20
20
  "supervisor:start": "node dist/index.js --supervisor",
21
21
  "prepublishOnly": "npm run build",
22
- "test": "node --import tsx --import ./src/test-bootstrap.ts --test \"src/**/*.test.ts\"",
22
+ "test": "node scripts/run-tests.mjs \"src/**/*.test.ts\"",
23
23
  "lint": "eslint .",
24
+ "lint:changed": "node scripts/lint-changed.mjs",
24
25
  "format": "prettier --write \"src/**/*.ts\"",
25
26
  "format:check": "prettier --check \"src/**/*.ts\"",
26
27
  "typecheck": "tsc --noEmit -p tsconfig.typecheck.json",
@@ -44,13 +44,27 @@ securevault run --profile Azure_DevOps git push origin <branch>
44
44
  - NEVER use `az` directly, NEVER ask for PAT values
45
45
  - `#<number>` in Azure DevOps PR comments/descriptions auto-links to a **work item**, not a PR. To reference a PR, use the full URL: `[PR 12345](https://dev.azure.com/ORG/PROJECT/_git/REPO/pullrequest/12345)`
46
46
 
47
+ ## PR pipeline builds (diagnosing / re-running CI)
48
+ PR validation builds are keyed to the **merge ref `refs/pull/<prId>/merge`**, NOT the head branch — listing by the head branch returns `[]`.
49
+
50
+ ```bash
51
+ # Find the PR's validation builds (newest first)
52
+ securevault run --profile Azure_DevOps az pipelines build list --org <org> -p <project> --branch refs/pull/<prId>/merge --top 5 --query "[].{id:id,result:result,num:buildNumber}" -o json
53
+
54
+ # Find the REAL failure: read the timeline's failed records (not just "build failed")
55
+ securevault run --profile Azure_DevOps az devops invoke --area build --resource Timeline --route-parameters project=<project> buildId=<id> --api-version 7.1 --query "records[?result=='failed'].{name:name,type:type,log:log.id,issues:issues[].message}" -o json
56
+
57
+ # Read a failing task's log for the exact compiler/test error
58
+ securevault run --profile Azure_DevOps az devops invoke --area build --resource Logs --route-parameters project=<project> buildId=<id> logId=<logId> --api-version 7.1
59
+
60
+ # Re-queue after an infra/flaky failure or a pushed fix (need definition id from `az pipelines build show`)
61
+ securevault run --profile Azure_DevOps az pipelines build queue --definition-id <defId> --org <org> -p <project> --branch refs/pull/<prId>/merge --query "{id:id,num:buildNumber}" -o json
62
+ ```
63
+
64
+ Distinguish causes before acting: an agent-lost message (`"We stopped hearing from agent ..."`) = the build agent died = **infra/flaky**, just re-queue (don't touch code). A compiler error / named failing test / version-gate = **real**, read the log and fix. A local test run of only the projects you edited can miss failures in others (e.g. separate integration/BDD test projects) — run the failing project locally to reproduce before pushing.
65
+
47
66
  ## PR Comments
48
- When leaving comments on pull requests (e.g. replying to reviewer questions), write structured, human-readable responses:
49
- - Use **bold** for key terms and section headers
50
- - Use bullet lists and numbered lists for clarity
51
- - Compare before/after when explaining a change
52
- - Explain the "why" clearly — the reviewer is a person, not a compiler
53
- - Keep technical but conversational — no walls of unformatted text
67
+ For how a review comment must read, be typed, and be anchored, follow the **PR Comment Style** skill — that is the single source of truth; do not duplicate its guidance here.
54
68
 
55
69
  ### Posting comments via API
56
70
  When using `az devops invoke` to post PR comments with `--in-file`, **always write a fresh file** with the comment payload immediately before posting. Never reuse a temp file path that may contain stale content from a previous operation — this can accidentally post unrelated comments to the wrong PR thread.
@@ -0,0 +1,121 @@
1
+ # Board Code-Quality Checklist (operator, thread 1327)
2
+
3
+ Load this FIRST when building/reviewing any Sensorium board increment. These are hard rules the
4
+ operator enforces on review — violating them gets the PR bounced. Be concise; no ceremony.
5
+
6
+ ## Types
7
+ - [ ] Use `Optional<T>` — NEVER `| null` / `| undefined` / bare `null` on lines you add or change.
8
+ - [ ] NO gratuitous / redundant / dead `null`. Question every `null` you write: if a guard above already
9
+ makes the value non-`undefined`, `x ?? null` is just `x`; if a field is only ever SET (never cleared),
10
+ `x == null ? null : f(x)` is dead — write `f(x)`. Prefer DELETING a null over annotating it. "Why is
11
+ null here?" must have a real answer or the null goes. (Both were bounced today.)
12
+ - [ ] Scoped `// eslint-disable-next-line no-restricted-syntax -- <reason>` ONLY at a genuine, REACHABLE
13
+ boundary (wire JSON mirror, SQLite bind, transport "unusable = null"). One per boundary, with a real
14
+ reason. NOT a cop-out to avoid Optional in ordinary code, and NOT for a boundary that can't actually
15
+ be hit.
16
+ - [ ] NEVER declare `unknown` as a type, and no `Record<string, unknown>` bag. Type it properly. ZERO
17
+ exceptions — NOT even at a JSON/body boundary: take the typed `JsonObject` + a key accessor, or a
18
+ type guard, never an `unknown` parameter/annotation. A reviewer must FAIL this, not rationalize it as
19
+ "a boundary" (that excuse got two `unknown`s merged-then-bounced today).
20
+ - [ ] No meaningless unions (`unknown | null`). No `any`.
21
+
22
+ ## Design (SOLID, not ceremony)
23
+ - [ ] No `static` helper classes/methods doing real logic — use injected instances / DI.
24
+ - [ ] No needless interface for a single implementation with no second consumer (that's ceremony).
25
+ - [ ] Extend at the existing seam (e.g. `IUsageSource`); NEVER `if (provider === "…")` / branch on agentType
26
+ in logic — keep it provider-agnostic, drive by data/lookup tables.
27
+ - [ ] Don't over-engineer defensive parsing of OUR OWN established contract — typed direct access + a
28
+ minimal top-level guard (present + object/array), not a per-field validator. Fail-open via optional
29
+ chaining. Mirror the sibling parser (e.g. `parseProfile`), don't invent a stricter one.
30
+ - [ ] Inject dependencies; don't reach for global singletons inside handlers/helpers. Thread the `db` handle
31
+ from callers — no `getMemoryDb()` re-fetch inside a helper the caller already has a db for.
32
+ - [ ] SRP, clear names, no dead code, no duplication, no comments that are wrong-by-adjacency after edits.
33
+ - [ ] SINGLE source of truth for each piece of state. No unreachable/dead branch kept "defensively" — if a
34
+ code path can't be reached on the real happy path, don't ship it (it hides bugs and masks bad fixtures).
35
+ Gate UI on the AUTHORITATIVE signal (e.g. card `status`), not on a retained/stale field that lingers.
36
+
37
+ ## Architecture (STOP AND ASK — do not patch your way through)
38
+ - [ ] If you find yourself looking at a pile of crutches, or at fixes that exist only to hold an earlier fix
39
+ together, STOP AND ASK. Do not fix them one by one. Say plainly what you are seeing, name the design
40
+ defect you think is underneath, and escalate to the operator — he decides whether the architecture
41
+ changes. A long list of small findings that all trace to one bad seam is ONE finding about that seam,
42
+ and reporting it as a list hides the thing that matters.
43
+ - [ ] A fix must be a fix for a real defect, not for the shape of the code. "Fix for the sake of a fix" gets
44
+ bounced: if you cannot state the user-visible or data-visible failure it prevents, don't write it.
45
+ - [ ] Correct architecture beats a working patch. When both are available, take the architecture — and when
46
+ only the patch is available, say so out loud instead of shipping it quietly as if it were the design.
47
+ - [ ] Never widen a brief on your own initiative to absorb what you found. Report it, let the operator scope
48
+ it, and keep the increment the size of the bug.
49
+
50
+ ## Mixing sync and async code
51
+ - [ ] NO `*Sync` fs call on an async path. In an `async` function, or anything it awaits, or anything reached
52
+ from the poll loop / teardown / per-thread work: use `fs/promises` and AWAIT it. `readFileSync`,
53
+ `writeFileSync`, `unlinkSync`, `existsSync`, `renameSync`, `appendFileSync`, `execSync` are all bounced
54
+ there. This is not style — sync I/O on a per-thread path starves the event loop and the whole MCP
55
+ freezes at ~12 threads while looking perfectly fine at two. It has happened, twice, and the review
56
+ apparatus missed it both times; the operator caught it by eye on the diff. Check it FIRST, not last.
57
+ - [ ] Multiply by the thread count before you decide something is cheap. A 3 ms sync read every 2 s is
58
+ nothing for one thread and six blocking bursts a second at twelve. "It's just one small read" is the
59
+ exact sentence that preceded the freeze.
60
+ - [ ] `better-sqlite3` is EXEMPT — its calls are synchronous by design, that is the DB, leave them alone.
61
+ Genuinely non-async contexts (module init, a CLI entry, a sync callback you do not control) may use a
62
+ fast single-file sync read; say which one you are in when you do.
63
+ - [ ] NO floating promise. Every promise is awaited, returned, or explicitly `void`ed with a reason. An
64
+ unawaited async call in a teardown path is a race that only shows up under load.
65
+ - [ ] Do NOT half-convert a path. A sync function that calls an async one and ignores the result, or an
66
+ async function whose callers never await it, is worse than either consistent choice — it reads as
67
+ ordered and executes unordered. If the conversion cannot be finished in this increment, say so.
68
+ - [ ] Do not convert sync → async to "be safe" when nothing is wrong. A conversion needs a named symptom
69
+ (a measured stall, a path that runs per-thread) — otherwise it is churn on a hot path, and the operator
70
+ has bounced that too.
71
+
72
+ ## UI / copy (user-facing)
73
+ - [ ] ONE language per UI. This board's UI is English — no mixed-language strings (do not splice UA + EN in
74
+ one sentence). Match the wording/casing of the existing labels.
75
+ - [ ] After a user action, give clear feedback (e.g. an in-place "saved ✓"), but drive it from the right
76
+ state; don't fake it and don't let it re-appear on cards where it no longer applies.
77
+ - [ ] Reuse the components/markup from the Claude Design pass; don't invent new UI when a locked decision
78
+ says reuse.
79
+
80
+ ## Tests
81
+ - [ ] ONE behavior per test, structured AAA (Arrange → Act → Assert): a single Act, then assertions on
82
+ ONE observable outcome. A test that runs one action and checks several FACETS of that one outcome is
83
+ fine; a test that crams multiple scenarios / a chain of act→assert→tick→assert is NOT — split it into
84
+ atomic cases. No "does X, then Y, then recovers Z" mega-tests. It must read as a unit test, NOT a script.
85
+ - [ ] NO hand-rolled scripting inside a test body: no `let calls=0; if (calls===1) throw…` counters, no
86
+ inline DB/state built up step-by-step. Push that into a small local Arrange helper (e.g. `openV6Board()`,
87
+ a programmable stub that replays an ordered list of responses/errors). The test body stays tiny.
88
+ - [ ] Shared Arrange is encouraged as a small local factory/helper; shared MUTABLE state across tests is not.
89
+ - [ ] NO DUPLICATED TEST CODE (mandatory, not a style preference). The same setup written in two tests →
90
+ one shared Arrange helper; a helper the file (or a sibling test file) already has is REUSED, never
91
+ redeclared. Cases that share one Arrange and one Act and differ only by input/expected value → ONE
92
+ table-driven test, each row its own subtest (`t.test` per row), so every row still fails on its own.
93
+ Measure it: a diff whose added test lines are more than ~1.5× its added production code is suspect —
94
+ name the repeated blocks and how many lines collapse. (inc66 / #153: 2054 test lines vs ~1030 code,
95
+ ~half of it copy-pasted setup; two correctness rounds passed it.)
96
+ - [ ] NO resource management in the test body. Teardown (timers, polling, db close) is registered by the
97
+ Arrange helper via the test-context after hook (`t.after`) — the body must contain ZERO cleanup calls
98
+ (no `stopLogPolling()`, no `close()`). Managing resources inside a unit test is a bad practice.
99
+ - [ ] NO shared mutable state between tests. Each test owns its OWN isolated resources (fresh in-memory db /
100
+ unique lane id).
101
+ - [ ] NEVER reach into / mutate a GLOBAL singleton in a test — inject a FAKE dependency instead
102
+ (that's what makes the handler testable; if you can't, the production seam is wrong — fix that).
103
+ - [ ] Real behavioral assertions on outcomes, not implementation trivia; tests must FAIL on regression.
104
+ No rubber-stamps.
105
+ - [ ] Fixtures mirror the REAL wire/domain shape AND a REACHABLE state — no impossible combinations the
106
+ backend would never produce (e.g. `status:"decision_needed"` carrying a recorded `answer`). Big
107
+ fixtures → a shared factory, not an inline wall of eslint-disables.
108
+
109
+ ## Gate (run ALL locally before reporting — the local typecheck/test gate is NOT enough)
110
+ - [ ] `npm run lint:changed -- <BASE ref>` → 0 violations. THIS IS MANDATORY and the most-missed step:
111
+ it is the LINE-level prefer-Optional ratchet, CI runs it, and it is NOT part of typecheck/test. A PR
112
+ that skips it gets bounced (14 violations slipped through today because it wasn't run).
113
+ The argument is the ref you BRANCHED FROM (`feature/agent-task-board`), NOT your own branch. Pass your
114
+ own branch and `merge-base` resolves to HEAD, the script prints "no changed .ts files — skipping" and
115
+ exits 0 — a pass that linted nothing. If the output does not name the files you touched, it did not run.
116
+ - [ ] `npm run typecheck` clean.
117
+ - [ ] `npm run format:check` clean (note: globs `*.ts` only — hand-check front `.js` indentation).
118
+ - [ ] `npm test` green — report the REAL observed total (build the test project; never claim green unseen).
119
+ The backend `flight-recorder.service.test.ts` has a known Windows temp-file flake; rerun to confirm
120
+ it's that and not your change, and say so.
121
+ - [ ] Commit with EXPLICIT paths (never `git add -A/./ -u`, never `commit -a`).
@@ -0,0 +1,47 @@
1
+ ---
2
+ name: Buildless Vue Preview
3
+ triggers:
4
+ - buildless vue
5
+ - vue without build
6
+ - claude design over repo
7
+ - live design preview
8
+ - mock adapter
9
+ - preview mode ui
10
+ - design in place
11
+ ---
12
+
13
+ ## Buildless Vue Preview — edit the real UI live, no bundler
14
+
15
+ ### The problem this solves
16
+ An external design tool (Claude Design / claude.ai artifacts) can only run **static HTML/JS in a browser sandbox** — it has **no bundler**, so it cannot run a Vite/`.vue` SFC/TypeScript app. That forces one of two bad workflows:
17
+ - **`.zip` roundtrip** — export from the design tool, import into the repo, re-integrate by hand on every edit. Slow, error-prone, drifts.
18
+ - **Mirror mockups + Claude Code** — the design tool edits its own copy blind, then a coding agent ports the diff into the real repo. Double work, always something missed.
19
+
20
+ Both mean the designer edits something that is **not the running app**. The goal is the opposite: **iterate the UI on the real repo files with a live preview, zero re-integration.**
21
+
22
+ ### The pattern
23
+ Build the front-end as **buildless Vue 3**: ES modules straight in the browser, components as plain `.js` with template strings, Vue loaded as `vue.esm-browser.js`. **No npm, no Vite, no bundler.** The *same* files run in the design tool's preview AND in production.
24
+
25
+ - **The only seam is data.** A thin `api.js` with a **swappable adapter**:
26
+ - `production` → real `fetch` to the backend (with the app's real auth).
27
+ - `preview` → `api.mock.js` returns fixtures; auth guard passes through.
28
+ - **One MODE flag** (`config.js`: `MODE = 'production' | 'preview'`, or auto-detect by hostname) drives everything downstream, including auth. Login/error/expired-session screens become just fixture states, so **every screen is physically visible** in preview.
29
+ - **Isolation contract:**
30
+ - `api/`, `state/`, `config.js`, entry/router = the **frozen seam** — the design tool does NOT edit these.
31
+ - `views/`, `components/`, `styles/` = the **only** folders the design tool edits.
32
+ - `mock/` fixtures are **loaded only when `MODE === 'preview'`** — statically un-imported in production, so **no mock byte ships to prod**.
33
+ - Keep a **typed contract on the data seam** even without TypeScript: a shared types file (`.d.ts` or JSDoc typedefs) so type-safety on the API boundary isn't lost.
34
+
35
+ ### What you trade away (and why it's OK here)
36
+ Lose: SFC syntax (`<template>` blocks), hot-reload, tree-shaking, TypeScript. For a dashboard-sized app this is non-critical. You gain: the design tool edits the **real running app** with a live preview, small components (Card, Row, Builder…) instead of 1000-line files, and a backend left completely untouched (it just serves JSON).
37
+
38
+ ### When to use
39
+ - You want a designer/agent to iterate UI **directly on the repo** with a live preview and no bundler in their environment.
40
+ - The app is small-to-medium (a dashboard/board), backend serves JSON, and SFC/HMR/TS are nice-to-have rather than essential.
41
+
42
+ ### When NOT to use
43
+ - Large SPA where TypeScript, tree-shaking, and SFC tooling materially matter → use Vite+SFC and accept the mirror-mockup + Claude Code porting workflow.
44
+ - The existing app already standardises on a build step you must not diverge from (unless this is a separate app whose live-edit workflow justifies the divergence — state the justification).
45
+
46
+ ### Adapting to a specific stack
47
+ The PATTERN is portable; the specifics are not. Map to the target app: swap the real API endpoints + the app's real auth (Bearer, session, OAuth, …) into the `production` adapter; the `preview` adapter mocks exactly those. Do not copy another app's auth/framework specifics — take buildless-Vue + swappable-adapter + MODE-flag only.
@@ -0,0 +1,12 @@
1
+ ---
2
+ name: Expert Code Review
3
+ triggers:
4
+ - expert code review
5
+ - review the changes
6
+ - code review worker
7
+ replaces_orchestrator: false
8
+ ---
9
+
10
+ # Expert Code Review
11
+
12
+ Orchestrator skill: spawn an expert code review worker via the **Handoff** skill — once per increment / unit of work / phase, not only at the end.
@@ -1,5 +1,6 @@
1
1
  ---
2
2
  name: Handoff
3
+ system: true
3
4
  triggers:
4
5
  - handoff
5
6
  - hand off
@@ -27,34 +28,51 @@ This skill describes the **orchestrator-worker** pattern: you spawn a worker thr
27
28
  #### Step 1 — Spawn the worker thread
28
29
  ```
29
30
  start_thread(
31
+ mode: "worker", // mints the worker an id of its own
30
32
  name: "Dashboard Worker",
31
- task: "You are a dashboard specialist. You build and maintain the Vue dashboard.",
32
- memorySourceThreadId: <ORCHESTRATOR_THREAD_ID> // share memory context
33
+ parentThreadId: <ORCHESTRATOR_THREAD_ID> // required for worker mode; the worker reads this thread's memory
33
34
  )
34
35
  → returns { threadId: <WORKER_THREAD_ID> }
35
36
  ```
36
37
 
37
- #### Step 2 — Send a detailed task with worker skill and report-back instruction
38
+ `mode: "worker"` is what mints the worker its own id, so the id you get back is unique
39
+ for the life of the database and is never a Telegram topic number. `parentThreadId`
40
+ carries the memory context: the worker bootstraps from the parent's own memory source
41
+ (its root) when the parent has one, and from the parent itself otherwise.
42
+
43
+ **Do NOT pass `task` here.** `start_thread`'s `task` is written to the worker's mailbox
44
+ *before the process exists* and is handed over verbatim on its first poll, with no
45
+ envelope around it — so whatever you put there is the whole task the worker thinks it
46
+ was given. The task belongs in Step 2, where it is delivered exactly once inside an
47
+ envelope that also tells the worker where to report. A worker spawned with no `task`
48
+ parks on `wait_for_instructions`, so send Step 2 immediately.
49
+
50
+ #### Step 2 — Send the task in the mode that asks for a report back
38
51
  ```
39
52
  send_message_to_thread(
40
53
  threadId: <WORKER_THREAD_ID>,
41
- message: "Load the 'Worker — Delegate' skill via get_skill for reporting instructions.
42
-
43
- Task: Rewrite the dashboard settings page using React.
54
+ mode: "manager-worker", // the only task mode that asks for a report back
55
+ senderName: "<ORCHESTRATOR_NAME>",
56
+ senderThreadId: <ORCHESTRATOR_THREAD_ID>,
57
+ message: "Task: Rewrite the dashboard settings page using React.
44
58
  Acceptance criteria:
45
59
  - Settings load from /api/settings
46
60
  - Form validates input
47
- - Save button persists changes
48
-
49
- Report results back to thread <ORCHESTRATOR_THREAD_ID>."
61
+ - Save button persists changes"
50
62
  )
51
63
  ```
52
64
 
53
- **CRITICAL**: The task message MUST include:
54
- 1. `Load the 'Worker — Delegate' skill via get_skill` — this teaches the worker HOW to report back
55
- 2. The orchestrator's thread ID so the worker knows WHERE to send results
65
+ **CRITICAL**: `mode: "manager-worker"` is what makes Step 3 possible. That mode wraps
66
+ your `message` in an envelope that already carries the two things the worker needs, so
67
+ you do NOT write them into the message yourself:
68
+
69
+ 1. `Load the 'Worker — Delegate' skill via get_skill for reporting instructions.` — prepended for you
70
+ 2. `Report progress and message "<senderName>" (thread <senderThreadId>) when complete.` — appended for you, which is why BOTH sender fields must be passed: without `senderThreadId` that line names no thread, and without `senderName` it says "another thread"
56
71
 
57
- Tasks sent TO workers use mode `"one-shot"` or `"manager-worker"`, but RESULTS sent BACK use mode `"reply"` for clean delivery.
72
+ Leaving `mode` out defaults to `"one-shot"`, whose envelope loads the *Worker —
73
+ Autonomous* skill instead and ends with **"Do NOT message the sender back"** — the
74
+ opposite of what Step 3 is waiting for. Use `"one-shot"` only for work you will not
75
+ wait on. RESULTS sent BACK use mode `"reply"` for clean delivery.
58
76
 
59
77
  #### Step 3 — Wait for results (do NOT duplicate the work)
60
78
  ```
@@ -63,23 +81,28 @@ remote_copilot_wait_for_instructions(threadId: <ORCHESTRATOR_THREAD_ID>)
63
81
  The orchestrator parks here. It does NOT start doing the work itself. The worker will execute the task and send results back via `send_message_to_thread`.
64
82
 
65
83
  #### Step 4 — Process results when they arrive
66
- Results arrive as a message in `wait_for_instructions`. Review, approve, or request changes by sending another message to the worker.
84
+ Results arrive as a message in `wait_for_instructions`. Review, approve, or request changes by sending another message to the worker — while it is still LIVE. Once it has exited or been archived, `send_message_to_thread` rejects the send and tells you to spawn a fresh worker; see the single-use rule below.
67
85
 
68
86
  ### Rules
69
87
 
70
88
  - **PREFER** breaking down your main task into atomic, small steps. A worker should never recieve a huge task to work on.
71
89
  - **NEVER** duplicate work after delegating. If you sent it to a worker, wait for the response.
72
- - **ALWAYS** include the orchestrator thread ID in the task message so the worker can report back.
90
+ - **ALWAYS** pass `senderName` and `senderThreadId` on the task send — they are what the `manager-worker` envelope puts in its report-back line, and they are the only place the worker learns which thread to answer.
73
91
  - **ALWAYS** include clear acceptance criteria in the task message.
92
+ - **ALWAYS** deliver the task exactly once, in Step 2. Never pre-queue it through `start_thread`'s `task` as well.
74
93
  - **ALWAYS** use `wait_for_instructions` after sending the task — this is what makes you an orchestrator, not a doer.
75
- - Worker threads build domain-specific memory over time — reuse the same thread for the same domain.
94
+ - A worker is **single-use**. Follow-ups to a worker that is still LIVE and working on your task are fine — that is one conversation, not reuse. Once it has reported and finished, it is retired and never addressed again; `start_thread` refuses its id.
95
+ - Domain context does NOT come from reusing a thread — pass the same `parentThreadId` so a fresh worker bootstraps from the same memory source.
76
96
  - The orchestrator stays clean for high-level decisions and operator interaction.
77
97
 
78
98
  ### Anti-Patterns
79
99
 
80
100
  - ❌ Sending a task then immediately doing the work yourself
81
101
  - ❌ Creating a worker thread AND running a subagent for the same task
82
- - ❌ Forgetting to include the orchestrator thread ID in the task message
102
+ - ❌ Omitting `senderThreadId` — the envelope's report-back line then names no thread for the worker to answer
103
+ - ❌ Sending the task with no `mode` — the one-shot envelope tells the worker not to message you back, and Step 3 waits forever
104
+ - ❌ Passing the task (or a role sentence standing in for it) to `start_thread`'s `task` — the worker reads that as its whole task before Step 2 arrives
83
105
  - ❌ Sending tasks without acceptance criteria
84
- - ❌ Creating a new thread for every task instead of reusing domain threads
106
+ - ❌ Sending a NEW task to a worker that already finished one — spawn a fresh worker with the same `parentThreadId`
107
+ - ❌ Spawning a worker without `mode: "worker"` + `parentThreadId` — that pair is what mints its id and names its parent
85
108
  - ❌ Reading worker results and re-doing the work instead of applying them
@@ -0,0 +1,79 @@
1
+ ---
2
+ name: Increment PR Pipeline
3
+ triggers:
4
+ - increment pipeline
5
+ - one increment per pr
6
+ - worktree per increment
7
+ - pr per increment
8
+ - board increment
9
+ - build increment by increment
10
+ - increment workflow
11
+ ---
12
+
13
+ ## Increment PR Pipeline — one atomic increment, one worktree, one PR, reviewed then merged
14
+
15
+ ### What this is
16
+ The EXECUTION workflow for building a decomposed plan **increment by increment**, where every
17
+ increment is isolated in its own git worktree + branch and lands as a **real GitHub PR into the
18
+ feature branch** (e.g. the board branch), reviewed by a separate agent before the operator merges.
19
+ It complements:
20
+ - **Atomic Build Spec** — how to DECOMPOSE work into tiny, testable increments.
21
+ - **Phased Worker Pipeline** — the fresh-worker-per-step loop (this skill is its PR-based, worktree-
22
+ isolated form).
23
+ - **Handoff** — how to spawn a worker and wait for its result.
24
+
25
+ Use this when the operator wants small PRs, isolated worktrees, and per-increment review — NOT one
26
+ big branch with everything hammered in at once.
27
+
28
+ ### The invariants
29
+ - **One increment in flight at a time, strictly serial.** The next increment branches off the
30
+ **updated** feature branch (after the previous PR merges). Do not parallelise dependent increments.
31
+ - **Own worktree + own branch per increment**, branched off the feature branch (NOT main).
32
+ - **Builder ≠ Reviewer.** A worker never reviews its own code; the reviewer is a fresh, separate
33
+ agent — ideally a DIFFERENT agent type than the builder, for independent perspective.
34
+ - **A regression is never merged.** Blocking review findings are fixed by the SAME builder in the
35
+ SAME PR before merge; cosmetic/non-blocking items become explicit fast-follows.
36
+ - **The operator does the final verify and merges the PR himself.** The orchestrator stays thin.
37
+
38
+ ### The loop (orchestrator-driven), per increment
39
+ 1. **Create the worktree + branch** off the feature branch:
40
+ `git worktree add -b <feat>/inc<N>-<slug> C:/src/rcm-inc<N>-<slug> <feature-branch>`.
41
+ 2. **Spawn the BUILDER worker** (agentType per the operator's choice for this run), cwd = the
42
+ worktree. It MUST, as its FIRST action, load the **Clean Code** skill via `get_skill`. Give it:
43
+ the increment goal, the smallest-honest-slice scope, exact file list, invariants, and what is
44
+ explicitly OUT of scope (name later increments so it can't scope-creep).
45
+ 3. Builder implements ONLY this increment + an automated test, then runs the FULL local gate and
46
+ **STOPS and reports back** — it does not start the next increment.
47
+ 4. **Spawn a separate REVIEWER worker** (a different agentType than the builder, for independence),
48
+ read-only, adversarial / refute-mode, cwd = the same worktree (deps already installed). It loads
49
+ Clean Code first, reviews
50
+ the PR diff vs the feature branch, confirms the tests are REAL (not rubber-stamps) and the gate is
51
+ green, and returns a clear **GO-to-merge** or **CHANGES-NEEDED** verdict with ranked findings.
52
+ 5. **Blocking findings** → hand back to the SAME builder to fix in the same PR; then a focused DELTA
53
+ re-review confirms the finding is CLOSED. Non-blockers → note as fast-follows.
54
+ 6. **Operator verifies** (the builder supplies a ~30s click-checklist) and **merges** the PR.
55
+ 7. **Cleanup**: `git worktree remove --force <path>` + `git worktree prune` + delete the local
56
+ branch. Advance to the next increment off the updated feature branch.
57
+
58
+ ### The gate — ALL must be green before a PR is "ready" (builder runs these IN the worktree)
59
+ - `npm ci` **first** — a fresh worktree has NO `node_modules`; typecheck/tests won't run without it.
60
+ (Install can be slow on Windows; that's expected.)
61
+ - `npm run typecheck` — clean.
62
+ - `npm run format:check` — clean. **CI fails on format independently of tests**; running only tests
63
+ is not enough. Auto-fix with `npm run format` / `npx prettier --write` and re-check.
64
+ - `npm test` — all pass, including the new test for this increment.
65
+
66
+ ### The PR
67
+ - **Base = the feature branch (e.g. feature/agent-task-board), NOT main.**
68
+ - Title: `<feat>(inc<N>): <what it does>`.
69
+ - Body: plain and accurate — what the increment does, files touched, gate status. No filler, no
70
+ AI/tool attribution.
71
+ - Commits use **explicit paths** — never `git add -A/./ -u`, never `commit -a`.
72
+
73
+ ### Anti-patterns
74
+ - ❌ Skipping `npm ci` in a fresh worktree, then reporting "done" when the gate never actually ran.
75
+ - ❌ Running only `npm test` and missing the separate `format:check` → red CI on the PR.
76
+ - ❌ PR based on `main` instead of the feature branch.
77
+ - ❌ The building worker reviewing its own increment.
78
+ - ❌ Merging a PR with an unresolved regression instead of fixing it in the same PR.
79
+ - ❌ Leaving the merged increment's worktree/branch around instead of cleaning up before the next.
@@ -1,5 +1,6 @@
1
1
  ---
2
2
  name: Swarm
3
+ system: true
3
4
  triggers:
4
5
  - swarm
5
6
  - fan out
@@ -1,5 +1,6 @@
1
1
  ---
2
2
  name: Worker — Autonomous
3
+ system: true
3
4
  triggers:
4
5
  - worker autonomous
5
6
  - worker fire and forget
@@ -1,5 +1,6 @@
1
1
  ---
2
2
  name: Worker — Delegate
3
+ system: true
3
4
  triggers:
4
5
  - worker delegate
5
6
  - delegate worker
@@ -1,65 +0,0 @@
1
- /**
2
- * Parser for Claude CLI stream-json thread logs (newline-delimited JSON).
3
- *
4
- * The agent's stdout is captured as one JSON event per line. This turns that
5
- * raw event stream into readable, condensed "turns" for display over Telegram.
6
- * A turn is one assistant message (its text + any tool calls) together with the
7
- * tool results that immediately follow it.
8
- *
9
- * Assistant text is shown in full; tool inputs and tool results are previewed
10
- * (collapsed to a single line and capped) because they are machine output, not
11
- * the agent's reasoning, and would otherwise drown the useful signal.
12
- *
13
- * Each entry is prefixed with the wall-clock time of the event it came from, so
14
- * the reader can tell when a step ran and how long the next one waited.
15
- */
16
- export interface LogTurn {
17
- /** Rendered lines for this turn, in display order. */
18
- lines: string[];
19
- }
20
- export declare const DEFAULT_PREVIEW_CHARS = 300;
21
- /**
22
- * Parse a raw stream-json log into chronological turns. Malformed lines and
23
- * noise events (system, rate_limit_event) are skipped.
24
- */
25
- export declare function parseClaudeStreamLog(raw: string, previewChars?: number): LogTurn[];
26
- /**
27
- * Extract the agent's most recent assistant TEXT from a raw stream-json log.
28
- *
29
- * Walks the stream-json events and returns the concatenated text blocks of the
30
- * last `assistant` message that carried any non-empty text. tool_use-only
31
- * assistant messages are ignored (they carry no operator-visible prose).
32
- *
33
- * Returns an empty string when the log has no assistant text at all — the
34
- * caller (auto-forward) treats that as "nothing to forward".
35
- */
36
- export declare function extractLastAssistantText(raw: string): string;
37
- /**
38
- * Render turns to a single string. With tailFirst (default) the most recent
39
- * turn appears first, so a reader paging from the top sees latest activity.
40
- */
41
- export declare function renderThreadLog(turns: LogTurn[], tailFirst?: boolean): string;
42
- /** Default character window per page — matches Telegram's ~4096-char message cap. */
43
- export declare const DEFAULT_LOG_PAGE_CHARS = 4000;
44
- export interface LogPage {
45
- /** The character window for this page. */
46
- text: string;
47
- /** Start index of this page within the rendered log. */
48
- offset: number;
49
- /** Start index of the next page (feeds a "next chunk" button). */
50
- nextOffset: number;
51
- /** Whether more text remains after this page. */
52
- hasMore: boolean;
53
- /** Total length of the rendered log. */
54
- totalLength: number;
55
- }
56
- /**
57
- * Extract a single character window from a rendered log for paginated display.
58
- *
59
- * The digest uses astral emoji markers (🤖🔧✅…), so a naive .slice() could cut
60
- * between the two UTF-16 code units of a surrogate pair and emit a lone
61
- * surrogate that renders as �. When the window would end mid-pair we snap the
62
- * end back one unit; that code unit becomes the start of the next page.
63
- */
64
- export declare function sliceLogWindow(rendered: string, offsetRaw: number, limitRaw: number): LogPage;
65
- //# sourceMappingURL=log-parser.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"log-parser.d.ts","sourceRoot":"","sources":["../../src/dashboard/log-parser.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAmBH,MAAM,WAAW,OAAO;IACtB,sDAAsD;IACtD,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB;AAED,eAAO,MAAM,qBAAqB,MAAM,CAAC;AA+DzC;;;GAGG;AACH,wBAAgB,oBAAoB,CAClC,GAAG,EAAE,MAAM,EACX,YAAY,GAAE,MAA8B,GAC3C,OAAO,EAAE,CAiDX;AAED;;;;;;;;;GASG;AACH,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAoB5D;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE,SAAS,GAAE,OAAc,GAAG,MAAM,CAGnF;AAED,qFAAqF;AACrF,eAAO,MAAM,sBAAsB,OAAO,CAAC;AAE3C,MAAM,WAAW,OAAO;IACtB,0CAA0C;IAC1C,IAAI,EAAE,MAAM,CAAC;IACb,wDAAwD;IACxD,MAAM,EAAE,MAAM,CAAC;IACf,kEAAkE;IAClE,UAAU,EAAE,MAAM,CAAC;IACnB,iDAAiD;IACjD,OAAO,EAAE,OAAO,CAAC;IACjB,wCAAwC;IACxC,WAAW,EAAE,MAAM,CAAC;CACrB;AAcD;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAkB7F"}