@winspan/claude-forge 8.54.3 → 9.2.0

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 (879) hide show
  1. package/DEVELOPMENT.md +649 -33
  2. package/README.md +155 -17
  3. package/dist/catalogs/agents.json +72 -0
  4. package/dist/catalogs/skills.json +194 -0
  5. package/dist/claudemd/claudemd-generator.d.ts +45 -45
  6. package/dist/claudemd/claudemd-generator.d.ts.map +1 -1
  7. package/dist/claudemd/claudemd-generator.js +128 -449
  8. package/dist/claudemd/claudemd-generator.js.map +1 -1
  9. package/dist/claudemd/index.d.ts +14 -4
  10. package/dist/claudemd/index.d.ts.map +1 -1
  11. package/dist/claudemd/index.js +15 -4
  12. package/dist/claudemd/index.js.map +1 -1
  13. package/dist/claudemd/resume-manager.d.ts.map +1 -1
  14. package/dist/claudemd/resume-manager.js +37 -9
  15. package/dist/claudemd/resume-manager.js.map +1 -1
  16. package/dist/claudemd/templates/swarm-protocol.md +35 -186
  17. package/dist/claudemd/violations-manager.d.ts +40 -0
  18. package/dist/claudemd/violations-manager.d.ts.map +1 -0
  19. package/dist/claudemd/violations-manager.js +106 -0
  20. package/dist/claudemd/violations-manager.js.map +1 -0
  21. package/dist/cli/commands/admin.d.ts +15 -0
  22. package/dist/cli/commands/admin.d.ts.map +1 -0
  23. package/dist/cli/commands/admin.js +177 -0
  24. package/dist/cli/commands/admin.js.map +1 -0
  25. package/dist/cli/commands/agents.d.ts +18 -0
  26. package/dist/cli/commands/agents.d.ts.map +1 -0
  27. package/dist/cli/commands/agents.js +160 -0
  28. package/dist/cli/commands/agents.js.map +1 -0
  29. package/dist/cli/commands/bypass.d.ts +18 -0
  30. package/dist/cli/commands/bypass.d.ts.map +1 -0
  31. package/dist/cli/commands/bypass.js +87 -0
  32. package/dist/cli/commands/bypass.js.map +1 -0
  33. package/dist/cli/commands/claudemd.d.ts +60 -0
  34. package/dist/cli/commands/claudemd.d.ts.map +1 -1
  35. package/dist/cli/commands/claudemd.js +174 -37
  36. package/dist/cli/commands/claudemd.js.map +1 -1
  37. package/dist/cli/commands/config.d.ts.map +1 -1
  38. package/dist/cli/commands/config.js +94 -1
  39. package/dist/cli/commands/config.js.map +1 -1
  40. package/dist/cli/commands/daemon.d.ts +39 -0
  41. package/dist/cli/commands/daemon.d.ts.map +1 -1
  42. package/dist/cli/commands/daemon.js +167 -20
  43. package/dist/cli/commands/daemon.js.map +1 -1
  44. package/dist/cli/commands/decisions.d.ts +129 -0
  45. package/dist/cli/commands/decisions.d.ts.map +1 -0
  46. package/dist/cli/commands/decisions.js +669 -0
  47. package/dist/cli/commands/decisions.js.map +1 -0
  48. package/dist/cli/commands/doctor.d.ts +29 -0
  49. package/dist/cli/commands/doctor.d.ts.map +1 -0
  50. package/dist/cli/commands/doctor.js +124 -0
  51. package/dist/cli/commands/doctor.js.map +1 -0
  52. package/dist/cli/commands/entropy.d.ts +35 -0
  53. package/dist/cli/commands/entropy.d.ts.map +1 -0
  54. package/dist/cli/commands/entropy.js +121 -0
  55. package/dist/cli/commands/entropy.js.map +1 -0
  56. package/dist/cli/commands/executions.d.ts +1 -0
  57. package/dist/cli/commands/executions.d.ts.map +1 -1
  58. package/dist/cli/commands/executions.js +10 -1
  59. package/dist/cli/commands/executions.js.map +1 -1
  60. package/dist/cli/commands/fix.d.ts +31 -0
  61. package/dist/cli/commands/fix.d.ts.map +1 -0
  62. package/dist/cli/commands/fix.js +108 -0
  63. package/dist/cli/commands/fix.js.map +1 -0
  64. package/dist/cli/commands/governance.d.ts +21 -0
  65. package/dist/cli/commands/governance.d.ts.map +1 -0
  66. package/dist/cli/commands/governance.js +60 -0
  67. package/dist/cli/commands/governance.js.map +1 -0
  68. package/dist/cli/commands/init.d.ts +27 -0
  69. package/dist/cli/commands/init.d.ts.map +1 -1
  70. package/dist/cli/commands/init.js +158 -146
  71. package/dist/cli/commands/init.js.map +1 -1
  72. package/dist/cli/commands/insights-goal-check.d.ts +50 -0
  73. package/dist/cli/commands/insights-goal-check.d.ts.map +1 -0
  74. package/dist/cli/commands/insights-goal-check.js +318 -0
  75. package/dist/cli/commands/insights-goal-check.js.map +1 -0
  76. package/dist/cli/commands/insights.d.ts +15 -0
  77. package/dist/cli/commands/insights.d.ts.map +1 -0
  78. package/dist/cli/commands/insights.js +127 -0
  79. package/dist/cli/commands/insights.js.map +1 -0
  80. package/dist/cli/commands/knowledge.d.ts +66 -0
  81. package/dist/cli/commands/knowledge.d.ts.map +1 -0
  82. package/dist/cli/commands/knowledge.js +897 -0
  83. package/dist/cli/commands/knowledge.js.map +1 -0
  84. package/dist/cli/commands/mcp.d.ts +0 -12
  85. package/dist/cli/commands/mcp.d.ts.map +1 -1
  86. package/dist/cli/commands/mcp.js +11 -5
  87. package/dist/cli/commands/mcp.js.map +1 -1
  88. package/dist/cli/commands/menu.d.ts.map +1 -1
  89. package/dist/cli/commands/menu.js +10 -184
  90. package/dist/cli/commands/menu.js.map +1 -1
  91. package/dist/cli/commands/project.d.ts +98 -0
  92. package/dist/cli/commands/project.d.ts.map +1 -0
  93. package/dist/cli/commands/project.js +382 -0
  94. package/dist/cli/commands/project.js.map +1 -0
  95. package/dist/cli/commands/skills.d.ts.map +1 -1
  96. package/dist/cli/commands/skills.js +14 -128
  97. package/dist/cli/commands/skills.js.map +1 -1
  98. package/dist/cli/commands/spec.d.ts +40 -0
  99. package/dist/cli/commands/spec.d.ts.map +1 -0
  100. package/dist/cli/commands/spec.js +49 -0
  101. package/dist/cli/commands/spec.js.map +1 -0
  102. package/dist/cli/commands/stats.d.ts.map +1 -1
  103. package/dist/cli/commands/stats.js +3 -2
  104. package/dist/cli/commands/stats.js.map +1 -1
  105. package/dist/cli/commands/status.d.ts.map +1 -1
  106. package/dist/cli/commands/status.js +17 -2
  107. package/dist/cli/commands/status.js.map +1 -1
  108. package/dist/cli/commands/trace.d.ts.map +1 -1
  109. package/dist/cli/commands/trace.js +4 -9
  110. package/dist/cli/commands/trace.js.map +1 -1
  111. package/dist/cli/commands/violations.d.ts +14 -0
  112. package/dist/cli/commands/violations.d.ts.map +1 -0
  113. package/dist/cli/commands/violations.js +43 -0
  114. package/dist/cli/commands/violations.js.map +1 -0
  115. package/dist/cli/index.js +26 -0
  116. package/dist/cli/index.js.map +1 -1
  117. package/dist/cli/init/hook-manager.d.ts +1 -1
  118. package/dist/cli/init/hook-manager.d.ts.map +1 -1
  119. package/dist/cli/init/hook-manager.js +6 -0
  120. package/dist/cli/init/hook-manager.js.map +1 -1
  121. package/dist/cli/utils/resolve-session.d.ts +32 -0
  122. package/dist/cli/utils/resolve-session.d.ts.map +1 -0
  123. package/dist/cli/utils/resolve-session.js +39 -0
  124. package/dist/cli/utils/resolve-session.js.map +1 -0
  125. package/dist/core/config.d.ts +4 -1
  126. package/dist/core/config.d.ts.map +1 -1
  127. package/dist/core/config.js +11 -23
  128. package/dist/core/config.js.map +1 -1
  129. package/dist/core/constants.d.ts +14 -13
  130. package/dist/core/constants.d.ts.map +1 -1
  131. package/dist/core/constants.js +20 -13
  132. package/dist/core/constants.js.map +1 -1
  133. package/dist/core/diagnostics/checks.d.ts +151 -0
  134. package/dist/core/diagnostics/checks.d.ts.map +1 -0
  135. package/dist/core/diagnostics/checks.js +765 -0
  136. package/dist/core/diagnostics/checks.js.map +1 -0
  137. package/dist/core/diagnostics/daemon-status.d.ts +77 -0
  138. package/dist/core/diagnostics/daemon-status.d.ts.map +1 -0
  139. package/dist/core/diagnostics/daemon-status.js +113 -0
  140. package/dist/core/diagnostics/daemon-status.js.map +1 -0
  141. package/dist/core/diagnostics/entropy-checks.d.ts +82 -0
  142. package/dist/core/diagnostics/entropy-checks.d.ts.map +1 -0
  143. package/dist/core/diagnostics/entropy-checks.js +395 -0
  144. package/dist/core/diagnostics/entropy-checks.js.map +1 -0
  145. package/dist/core/diagnostics/fix-runner.d.ts +54 -0
  146. package/dist/core/diagnostics/fix-runner.d.ts.map +1 -0
  147. package/dist/core/diagnostics/fix-runner.js +90 -0
  148. package/dist/core/diagnostics/fix-runner.js.map +1 -0
  149. package/dist/core/diagnostics/knip-runner.d.ts +49 -0
  150. package/dist/core/diagnostics/knip-runner.d.ts.map +1 -0
  151. package/dist/core/diagnostics/knip-runner.js +100 -0
  152. package/dist/core/diagnostics/knip-runner.js.map +1 -0
  153. package/dist/core/diagnostics/markers.d.ts +96 -0
  154. package/dist/core/diagnostics/markers.d.ts.map +1 -0
  155. package/dist/core/diagnostics/markers.js +153 -0
  156. package/dist/core/diagnostics/markers.js.map +1 -0
  157. package/dist/core/governance/global-inject.d.ts +60 -0
  158. package/dist/core/governance/global-inject.d.ts.map +1 -0
  159. package/dist/core/governance/global-inject.js +129 -0
  160. package/dist/core/governance/global-inject.js.map +1 -0
  161. package/dist/core/queue/index.d.ts +16 -3
  162. package/dist/core/queue/index.d.ts.map +1 -1
  163. package/dist/core/queue/index.js +14 -3
  164. package/dist/core/queue/index.js.map +1 -1
  165. package/dist/core/storage/base.d.ts +158 -0
  166. package/dist/core/storage/base.d.ts.map +1 -1
  167. package/dist/core/storage/base.js +570 -0
  168. package/dist/core/storage/base.js.map +1 -1
  169. package/dist/core/storage/codec/tool-input-codec.d.ts +93 -0
  170. package/dist/core/storage/codec/tool-input-codec.d.ts.map +1 -0
  171. package/dist/core/storage/codec/tool-input-codec.js +159 -0
  172. package/dist/core/storage/codec/tool-input-codec.js.map +1 -0
  173. package/dist/core/storage/decisions.d.ts +362 -0
  174. package/dist/core/storage/decisions.d.ts.map +1 -0
  175. package/dist/core/storage/decisions.js +502 -0
  176. package/dist/core/storage/decisions.js.map +1 -0
  177. package/dist/core/storage/events.d.ts +112 -8
  178. package/dist/core/storage/events.d.ts.map +1 -1
  179. package/dist/core/storage/events.js +390 -39
  180. package/dist/core/storage/events.js.map +1 -1
  181. package/dist/core/storage/feedback.d.ts +131 -0
  182. package/dist/core/storage/feedback.d.ts.map +1 -0
  183. package/dist/core/storage/feedback.js +187 -0
  184. package/dist/core/storage/feedback.js.map +1 -0
  185. package/dist/core/storage/forge-config.d.ts +40 -0
  186. package/dist/core/storage/forge-config.d.ts.map +1 -0
  187. package/dist/core/storage/forge-config.js +65 -0
  188. package/dist/core/storage/forge-config.js.map +1 -0
  189. package/dist/core/storage/injections.d.ts +28 -0
  190. package/dist/core/storage/injections.d.ts.map +1 -1
  191. package/dist/core/storage/injections.js +62 -5
  192. package/dist/core/storage/injections.js.map +1 -1
  193. package/dist/core/storage/knowledge.d.ts +106 -0
  194. package/dist/core/storage/knowledge.d.ts.map +1 -0
  195. package/dist/core/storage/knowledge.js +202 -0
  196. package/dist/core/storage/knowledge.js.map +1 -0
  197. package/dist/core/storage/maintenance.d.ts +36 -9
  198. package/dist/core/storage/maintenance.d.ts.map +1 -1
  199. package/dist/core/storage/maintenance.js +56 -24
  200. package/dist/core/storage/maintenance.js.map +1 -1
  201. package/dist/core/storage/pipeline-rollup.d.ts +117 -0
  202. package/dist/core/storage/pipeline-rollup.d.ts.map +1 -0
  203. package/dist/core/storage/pipeline-rollup.js +471 -0
  204. package/dist/core/storage/pipeline-rollup.js.map +1 -0
  205. package/dist/core/storage/routing.d.ts +16 -3
  206. package/dist/core/storage/routing.d.ts.map +1 -1
  207. package/dist/core/storage/routing.js +39 -8
  208. package/dist/core/storage/routing.js.map +1 -1
  209. package/dist/core/storage/rows.d.ts +50 -7
  210. package/dist/core/storage/rows.d.ts.map +1 -1
  211. package/dist/core/storage/schema.sql +302 -23
  212. package/dist/core/storage/sessions.d.ts +136 -0
  213. package/dist/core/storage/sessions.d.ts.map +1 -1
  214. package/dist/core/storage/sessions.js +351 -15
  215. package/dist/core/storage/sessions.js.map +1 -1
  216. package/dist/core/storage/skills.d.ts +1 -0
  217. package/dist/core/storage/skills.d.ts.map +1 -1
  218. package/dist/core/storage/skills.js +21 -6
  219. package/dist/core/storage/skills.js.map +1 -1
  220. package/dist/core/storage/sqlite.d.ts +253 -20
  221. package/dist/core/storage/sqlite.d.ts.map +1 -1
  222. package/dist/core/storage/sqlite.js +425 -16
  223. package/dist/core/storage/sqlite.js.map +1 -1
  224. package/dist/core/storage/tasks.d.ts +474 -2
  225. package/dist/core/storage/tasks.d.ts.map +1 -1
  226. package/dist/core/storage/tasks.js +1213 -18
  227. package/dist/core/storage/tasks.js.map +1 -1
  228. package/dist/core/storage/tool-intercepts.d.ts +69 -0
  229. package/dist/core/storage/tool-intercepts.d.ts.map +1 -0
  230. package/dist/core/storage/tool-intercepts.js +116 -0
  231. package/dist/core/storage/tool-intercepts.js.map +1 -0
  232. package/dist/core/storage/workflow-recommendations.d.ts +124 -0
  233. package/dist/core/storage/workflow-recommendations.d.ts.map +1 -0
  234. package/dist/core/storage/workflow-recommendations.js +274 -0
  235. package/dist/core/storage/workflow-recommendations.js.map +1 -0
  236. package/dist/core/types.d.ts +112 -17
  237. package/dist/core/types.d.ts.map +1 -1
  238. package/dist/core/types.js +12 -0
  239. package/dist/core/types.js.map +1 -1
  240. package/dist/core/utils/backup.d.ts +81 -0
  241. package/dist/core/utils/backup.d.ts.map +1 -0
  242. package/dist/core/utils/backup.js +98 -0
  243. package/dist/core/utils/backup.js.map +1 -0
  244. package/dist/core/utils/binary-paths.d.ts +92 -0
  245. package/dist/core/utils/binary-paths.d.ts.map +1 -0
  246. package/dist/core/utils/binary-paths.js +166 -0
  247. package/dist/core/utils/binary-paths.js.map +1 -0
  248. package/dist/core/utils/bypass-token.d.ts +75 -0
  249. package/dist/core/utils/bypass-token.d.ts.map +1 -0
  250. package/dist/core/utils/bypass-token.js +133 -0
  251. package/dist/core/utils/bypass-token.js.map +1 -0
  252. package/dist/core/utils/cc-builtin-agents.d.ts +3 -0
  253. package/dist/core/utils/cc-builtin-agents.d.ts.map +1 -0
  254. package/dist/core/utils/cc-builtin-agents.js +29 -0
  255. package/dist/core/utils/cc-builtin-agents.js.map +1 -0
  256. package/dist/core/utils/claude-cli-spawn.d.ts +106 -0
  257. package/dist/core/utils/claude-cli-spawn.d.ts.map +1 -0
  258. package/dist/core/utils/claude-cli-spawn.js +219 -0
  259. package/dist/core/utils/claude-cli-spawn.js.map +1 -0
  260. package/dist/core/utils/forge-resume-block.d.ts.map +1 -1
  261. package/dist/core/utils/forge-resume-block.js +3 -2
  262. package/dist/core/utils/forge-resume-block.js.map +1 -1
  263. package/dist/core/utils/logger.d.ts +15 -3
  264. package/dist/core/utils/logger.d.ts.map +1 -1
  265. package/dist/core/utils/logger.js +20 -2
  266. package/dist/core/utils/logger.js.map +1 -1
  267. package/dist/core/utils/noise-prompt.d.ts +97 -0
  268. package/dist/core/utils/noise-prompt.d.ts.map +1 -0
  269. package/dist/core/utils/noise-prompt.js +127 -0
  270. package/dist/core/utils/noise-prompt.js.map +1 -0
  271. package/dist/core/utils/path.d.ts +0 -4
  272. package/dist/core/utils/path.d.ts.map +1 -1
  273. package/dist/core/utils/path.js +0 -7
  274. package/dist/core/utils/path.js.map +1 -1
  275. package/dist/core/utils/time.d.ts +41 -0
  276. package/dist/core/utils/time.d.ts.map +1 -1
  277. package/dist/core/utils/time.js +114 -0
  278. package/dist/core/utils/time.js.map +1 -1
  279. package/dist/daemon/agent-sync.d.ts +24 -0
  280. package/dist/daemon/agent-sync.d.ts.map +1 -0
  281. package/dist/daemon/agent-sync.js +114 -0
  282. package/dist/daemon/agent-sync.js.map +1 -0
  283. package/dist/daemon/config-store.d.ts +55 -0
  284. package/dist/daemon/config-store.d.ts.map +1 -0
  285. package/dist/daemon/config-store.js +137 -0
  286. package/dist/daemon/config-store.js.map +1 -0
  287. package/dist/daemon/event-parser.d.ts +22 -0
  288. package/dist/daemon/event-parser.d.ts.map +1 -1
  289. package/dist/daemon/event-parser.js +49 -3
  290. package/dist/daemon/event-parser.js.map +1 -1
  291. package/dist/daemon/handlers/history-exporter.d.ts.map +1 -1
  292. package/dist/daemon/handlers/history-exporter.js +9 -8
  293. package/dist/daemon/handlers/history-exporter.js.map +1 -1
  294. package/dist/daemon/handlers/post-tool-use.d.ts +58 -4
  295. package/dist/daemon/handlers/post-tool-use.d.ts.map +1 -1
  296. package/dist/daemon/handlers/post-tool-use.js +261 -8
  297. package/dist/daemon/handlers/post-tool-use.js.map +1 -1
  298. package/dist/daemon/handlers/pre-tool-use.d.ts +156 -0
  299. package/dist/daemon/handlers/pre-tool-use.d.ts.map +1 -0
  300. package/dist/daemon/handlers/pre-tool-use.js +585 -0
  301. package/dist/daemon/handlers/pre-tool-use.js.map +1 -0
  302. package/dist/daemon/handlers/stop.d.ts +35 -7
  303. package/dist/daemon/handlers/stop.d.ts.map +1 -1
  304. package/dist/daemon/handlers/stop.js +157 -8
  305. package/dist/daemon/handlers/stop.js.map +1 -1
  306. package/dist/daemon/handlers/user-prompt.d.ts +36 -14
  307. package/dist/daemon/handlers/user-prompt.d.ts.map +1 -1
  308. package/dist/daemon/handlers/user-prompt.js +135 -48
  309. package/dist/daemon/handlers/user-prompt.js.map +1 -1
  310. package/dist/daemon/hook-sync.d.ts.map +1 -1
  311. package/dist/daemon/hook-sync.js +2 -1
  312. package/dist/daemon/hook-sync.js.map +1 -1
  313. package/dist/daemon/index.d.ts.map +1 -1
  314. package/dist/daemon/index.js +471 -43
  315. package/dist/daemon/index.js.map +1 -1
  316. package/dist/daemon/lifecycle.d.ts +48 -1
  317. package/dist/daemon/lifecycle.d.ts.map +1 -1
  318. package/dist/daemon/lifecycle.js +98 -2
  319. package/dist/daemon/lifecycle.js.map +1 -1
  320. package/dist/daemon/router.d.ts +4 -1
  321. package/dist/daemon/router.d.ts.map +1 -1
  322. package/dist/daemon/router.js +4 -2
  323. package/dist/daemon/router.js.map +1 -1
  324. package/dist/daemon/rules/defaults.d.ts +20 -0
  325. package/dist/daemon/rules/defaults.d.ts.map +1 -0
  326. package/dist/daemon/rules/defaults.js +692 -0
  327. package/dist/daemon/rules/defaults.js.map +1 -0
  328. package/dist/daemon/rules/registry.d.ts +47 -0
  329. package/dist/daemon/rules/registry.d.ts.map +1 -0
  330. package/dist/daemon/rules/registry.js +84 -0
  331. package/dist/daemon/rules/registry.js.map +1 -0
  332. package/dist/daemon/rules/types.d.ts +170 -0
  333. package/dist/daemon/rules/types.d.ts.map +1 -0
  334. package/dist/daemon/rules/types.js +15 -0
  335. package/dist/daemon/rules/types.js.map +1 -0
  336. package/dist/daemon/rules/whitelist.d.ts +101 -0
  337. package/dist/daemon/rules/whitelist.d.ts.map +1 -0
  338. package/dist/daemon/rules/whitelist.js +210 -0
  339. package/dist/daemon/rules/whitelist.js.map +1 -0
  340. package/dist/daemon/rules/workflow-defaults.d.ts +52 -0
  341. package/dist/daemon/rules/workflow-defaults.d.ts.map +1 -0
  342. package/dist/daemon/rules/workflow-defaults.js +521 -0
  343. package/dist/daemon/rules/workflow-defaults.js.map +1 -0
  344. package/dist/daemon/server.d.ts +11 -1
  345. package/dist/daemon/server.d.ts.map +1 -1
  346. package/dist/daemon/server.js +7 -1
  347. package/dist/daemon/server.js.map +1 -1
  348. package/dist/daemon/services/context-injector.d.ts +34 -0
  349. package/dist/daemon/services/context-injector.d.ts.map +1 -0
  350. package/dist/daemon/services/context-injector.js +61 -0
  351. package/dist/daemon/services/context-injector.js.map +1 -0
  352. package/dist/daemon/services/decision-hint.d.ts +203 -0
  353. package/dist/daemon/services/decision-hint.d.ts.map +1 -0
  354. package/dist/daemon/services/decision-hint.js +487 -0
  355. package/dist/daemon/services/decision-hint.js.map +1 -0
  356. package/dist/daemon/services/event-ttl-sweep.d.ts +86 -0
  357. package/dist/daemon/services/event-ttl-sweep.d.ts.map +1 -0
  358. package/dist/daemon/services/event-ttl-sweep.js +123 -0
  359. package/dist/daemon/services/event-ttl-sweep.js.map +1 -0
  360. package/dist/daemon/services/experience-extractor.d.ts +67 -0
  361. package/dist/daemon/services/experience-extractor.d.ts.map +1 -0
  362. package/dist/daemon/services/experience-extractor.js +323 -0
  363. package/dist/daemon/services/experience-extractor.js.map +1 -0
  364. package/dist/daemon/services/feedback-aggregator.d.ts +179 -0
  365. package/dist/daemon/services/feedback-aggregator.d.ts.map +1 -0
  366. package/dist/daemon/services/feedback-aggregator.js +455 -0
  367. package/dist/daemon/services/feedback-aggregator.js.map +1 -0
  368. package/dist/daemon/services/heartbeat-writer.d.ts +55 -0
  369. package/dist/daemon/services/heartbeat-writer.d.ts.map +1 -0
  370. package/dist/daemon/services/heartbeat-writer.js +111 -0
  371. package/dist/daemon/services/heartbeat-writer.js.map +1 -0
  372. package/dist/daemon/services/idle-session-sweeper.d.ts +61 -0
  373. package/dist/daemon/services/idle-session-sweeper.d.ts.map +1 -0
  374. package/dist/daemon/services/idle-session-sweeper.js +94 -0
  375. package/dist/daemon/services/idle-session-sweeper.js.map +1 -0
  376. package/dist/daemon/services/idle-task-budget.d.ts +50 -0
  377. package/dist/daemon/services/idle-task-budget.d.ts.map +1 -0
  378. package/dist/daemon/services/idle-task-budget.js +72 -0
  379. package/dist/daemon/services/idle-task-budget.js.map +1 -0
  380. package/dist/daemon/services/intercept-revive.d.ts +60 -0
  381. package/dist/daemon/services/intercept-revive.d.ts.map +1 -0
  382. package/dist/daemon/services/intercept-revive.js +86 -0
  383. package/dist/daemon/services/intercept-revive.js.map +1 -0
  384. package/dist/daemon/services/intercept-rollback-guard.d.ts +105 -0
  385. package/dist/daemon/services/intercept-rollback-guard.d.ts.map +1 -0
  386. package/dist/daemon/services/intercept-rollback-guard.js +152 -0
  387. package/dist/daemon/services/intercept-rollback-guard.js.map +1 -0
  388. package/dist/daemon/services/intercept-timeout-sweeper.d.ts +58 -0
  389. package/dist/daemon/services/intercept-timeout-sweeper.d.ts.map +1 -0
  390. package/dist/daemon/services/intercept-timeout-sweeper.js +83 -0
  391. package/dist/daemon/services/intercept-timeout-sweeper.js.map +1 -0
  392. package/dist/daemon/services/kb-injector.d.ts +57 -0
  393. package/dist/daemon/services/kb-injector.d.ts.map +1 -0
  394. package/dist/daemon/services/kb-injector.js +140 -0
  395. package/dist/daemon/services/kb-injector.js.map +1 -0
  396. package/dist/daemon/services/outcome-classification-service.d.ts +49 -0
  397. package/dist/daemon/services/outcome-classification-service.d.ts.map +1 -0
  398. package/dist/daemon/services/outcome-classification-service.js +214 -0
  399. package/dist/daemon/services/outcome-classification-service.js.map +1 -0
  400. package/dist/daemon/services/outcome-classifier.d.ts +136 -0
  401. package/dist/daemon/services/outcome-classifier.d.ts.map +1 -0
  402. package/dist/daemon/services/outcome-classifier.js +178 -0
  403. package/dist/daemon/services/outcome-classifier.js.map +1 -0
  404. package/dist/daemon/services/outcome-nudge.d.ts +107 -0
  405. package/dist/daemon/services/outcome-nudge.d.ts.map +1 -0
  406. package/dist/daemon/services/outcome-nudge.js +242 -0
  407. package/dist/daemon/services/outcome-nudge.js.map +1 -0
  408. package/dist/daemon/services/spec-approval.d.ts +127 -0
  409. package/dist/daemon/services/spec-approval.d.ts.map +1 -0
  410. package/dist/daemon/services/spec-approval.js +216 -0
  411. package/dist/daemon/services/spec-approval.js.map +1 -0
  412. package/dist/daemon/services/spec-gate.d.ts +54 -0
  413. package/dist/daemon/services/spec-gate.d.ts.map +1 -0
  414. package/dist/daemon/services/spec-gate.js +113 -0
  415. package/dist/daemon/services/spec-gate.js.map +1 -0
  416. package/dist/daemon/services/task-boundary-classifier.d.ts +78 -0
  417. package/dist/daemon/services/task-boundary-classifier.d.ts.map +1 -0
  418. package/dist/daemon/services/task-boundary-classifier.js +202 -0
  419. package/dist/daemon/services/task-boundary-classifier.js.map +1 -0
  420. package/dist/daemon/services/task-segmenter.d.ts +219 -1
  421. package/dist/daemon/services/task-segmenter.d.ts.map +1 -1
  422. package/dist/daemon/services/task-segmenter.js +481 -17
  423. package/dist/daemon/services/task-segmenter.js.map +1 -1
  424. package/dist/daemon/services/violation-reporter.d.ts +130 -0
  425. package/dist/daemon/services/violation-reporter.d.ts.map +1 -0
  426. package/dist/daemon/services/violation-reporter.js +339 -0
  427. package/dist/daemon/services/violation-reporter.js.map +1 -0
  428. package/dist/daemon/skill-sync.d.ts +7 -2
  429. package/dist/daemon/skill-sync.d.ts.map +1 -1
  430. package/dist/daemon/skill-sync.js +114 -9
  431. package/dist/daemon/skill-sync.js.map +1 -1
  432. package/dist/daemon/templates/agents/claudemd-writer.md +101 -0
  433. package/dist/daemon/templates/agents/coder.md +105 -0
  434. package/dist/daemon/templates/agents/decision-maker.md +460 -0
  435. package/dist/daemon/templates/agents/doc-reviewer.md +115 -0
  436. package/dist/daemon/templates/agents/harness-debug-full.md +114 -0
  437. package/dist/daemon/templates/agents/harness-hotfix.md +99 -0
  438. package/dist/daemon/templates/agents/hybrid-feature-with-safety.md +104 -0
  439. package/dist/daemon/templates/agents/knowledge-builder.md +119 -0
  440. package/dist/daemon/templates/agents/patch-applier.md +144 -0
  441. package/dist/daemon/templates/agents/planner.md +165 -0
  442. package/dist/daemon/templates/agents/refactor-specialist.md +98 -0
  443. package/dist/daemon/templates/agents/skill-distiller.md +113 -0
  444. package/dist/daemon/templates/agents/task-boundary-classifier.md +64 -0
  445. package/dist/daemon/templates/agents/verify-agent.md +136 -0
  446. package/dist/daemon/utils/inject-block.d.ts +39 -0
  447. package/dist/daemon/utils/inject-block.d.ts.map +1 -0
  448. package/dist/daemon/utils/inject-block.js +25 -0
  449. package/dist/daemon/utils/inject-block.js.map +1 -0
  450. package/dist/hooks/hook-lib.sh +8 -0
  451. package/dist/hooks/notification.sh +19 -8
  452. package/dist/hooks/post-tool-use.sh +41 -23
  453. package/dist/hooks/pre-tool-use.sh +54 -23
  454. package/dist/hooks/session-start.sh +68 -0
  455. package/dist/hooks/stop.sh +24 -10
  456. package/dist/hooks/user-prompt-submit.sh +37 -21
  457. package/dist/knowledge/adapters/go-adapter.d.ts +65 -0
  458. package/dist/knowledge/adapters/go-adapter.d.ts.map +1 -0
  459. package/dist/knowledge/adapters/go-adapter.js +294 -0
  460. package/dist/knowledge/adapters/go-adapter.js.map +1 -0
  461. package/dist/knowledge/adapters/index.d.ts +41 -0
  462. package/dist/knowledge/adapters/index.d.ts.map +1 -0
  463. package/dist/knowledge/adapters/index.js +71 -0
  464. package/dist/knowledge/adapters/index.js.map +1 -0
  465. package/dist/knowledge/adapters/java-adapter.d.ts +66 -0
  466. package/dist/knowledge/adapters/java-adapter.d.ts.map +1 -0
  467. package/dist/knowledge/adapters/java-adapter.js +260 -0
  468. package/dist/knowledge/adapters/java-adapter.js.map +1 -0
  469. package/dist/knowledge/adapters/js-vue-adapter.d.ts +56 -0
  470. package/dist/knowledge/adapters/js-vue-adapter.d.ts.map +1 -0
  471. package/dist/knowledge/adapters/js-vue-adapter.js +203 -0
  472. package/dist/knowledge/adapters/js-vue-adapter.js.map +1 -0
  473. package/dist/knowledge/adapters/kotlin-adapter.d.ts +55 -0
  474. package/dist/knowledge/adapters/kotlin-adapter.d.ts.map +1 -0
  475. package/dist/knowledge/adapters/kotlin-adapter.js +209 -0
  476. package/dist/knowledge/adapters/kotlin-adapter.js.map +1 -0
  477. package/dist/knowledge/adapters/monorepo-adapter.d.ts +77 -0
  478. package/dist/knowledge/adapters/monorepo-adapter.d.ts.map +1 -0
  479. package/dist/knowledge/adapters/monorepo-adapter.js +170 -0
  480. package/dist/knowledge/adapters/monorepo-adapter.js.map +1 -0
  481. package/dist/knowledge/adapters/python-adapter.d.ts +89 -0
  482. package/dist/knowledge/adapters/python-adapter.d.ts.map +1 -0
  483. package/dist/knowledge/adapters/python-adapter.js +358 -0
  484. package/dist/knowledge/adapters/python-adapter.js.map +1 -0
  485. package/dist/knowledge/adapters/rust-adapter.d.ts +73 -0
  486. package/dist/knowledge/adapters/rust-adapter.d.ts.map +1 -0
  487. package/dist/knowledge/adapters/rust-adapter.js +329 -0
  488. package/dist/knowledge/adapters/rust-adapter.js.map +1 -0
  489. package/dist/knowledge/adapters/types.d.ts +99 -0
  490. package/dist/knowledge/adapters/types.d.ts.map +1 -0
  491. package/dist/knowledge/adapters/types.js +17 -0
  492. package/dist/knowledge/adapters/types.js.map +1 -0
  493. package/dist/knowledge/adapters/typescript-adapter.d.ts +57 -0
  494. package/dist/knowledge/adapters/typescript-adapter.d.ts.map +1 -0
  495. package/dist/knowledge/adapters/typescript-adapter.js +171 -0
  496. package/dist/knowledge/adapters/typescript-adapter.js.map +1 -0
  497. package/dist/knowledge/audit-applier.d.ts +70 -0
  498. package/dist/knowledge/audit-applier.d.ts.map +1 -0
  499. package/dist/knowledge/audit-applier.js +251 -0
  500. package/dist/knowledge/audit-applier.js.map +1 -0
  501. package/dist/knowledge/builder.d.ts +261 -0
  502. package/dist/knowledge/builder.d.ts.map +1 -0
  503. package/dist/knowledge/builder.js +937 -0
  504. package/dist/knowledge/builder.js.map +1 -0
  505. package/dist/knowledge/cli-provider.d.ts +151 -0
  506. package/dist/knowledge/cli-provider.d.ts.map +1 -0
  507. package/dist/knowledge/cli-provider.js +313 -0
  508. package/dist/knowledge/cli-provider.js.map +1 -0
  509. package/dist/knowledge/constants.d.ts +73 -0
  510. package/dist/knowledge/constants.d.ts.map +1 -0
  511. package/dist/knowledge/constants.js +93 -0
  512. package/dist/knowledge/constants.js.map +1 -0
  513. package/dist/knowledge/cross-module.d.ts +139 -0
  514. package/dist/knowledge/cross-module.d.ts.map +1 -0
  515. package/dist/knowledge/cross-module.js +370 -0
  516. package/dist/knowledge/cross-module.js.map +1 -0
  517. package/dist/knowledge/git-hooks.d.ts +67 -0
  518. package/dist/knowledge/git-hooks.d.ts.map +1 -0
  519. package/dist/knowledge/git-hooks.js +258 -0
  520. package/dist/knowledge/git-hooks.js.map +1 -0
  521. package/dist/knowledge/module-hash.d.ts +88 -0
  522. package/dist/knowledge/module-hash.d.ts.map +1 -0
  523. package/dist/knowledge/module-hash.js +162 -0
  524. package/dist/knowledge/module-hash.js.map +1 -0
  525. package/dist/knowledge/project-detector.d.ts +101 -0
  526. package/dist/knowledge/project-detector.d.ts.map +1 -0
  527. package/dist/knowledge/project-detector.js +223 -0
  528. package/dist/knowledge/project-detector.js.map +1 -0
  529. package/dist/knowledge/prompt.d.ts +228 -0
  530. package/dist/knowledge/prompt.d.ts.map +1 -0
  531. package/dist/knowledge/prompt.js +404 -0
  532. package/dist/knowledge/prompt.js.map +1 -0
  533. package/dist/knowledge/query.d.ts +105 -0
  534. package/dist/knowledge/query.d.ts.map +1 -0
  535. package/dist/knowledge/query.js +341 -0
  536. package/dist/knowledge/query.js.map +1 -0
  537. package/dist/knowledge/repo-map.d.ts +91 -0
  538. package/dist/knowledge/repo-map.d.ts.map +1 -0
  539. package/dist/knowledge/repo-map.js +408 -0
  540. package/dist/knowledge/repo-map.js.map +1 -0
  541. package/dist/knowledge/tools/index.d.ts +14 -0
  542. package/dist/knowledge/tools/index.d.ts.map +1 -0
  543. package/dist/knowledge/tools/index.js +11 -0
  544. package/dist/knowledge/tools/index.js.map +1 -0
  545. package/dist/knowledge/tools/knowledge-get-page.d.ts +46 -0
  546. package/dist/knowledge/tools/knowledge-get-page.d.ts.map +1 -0
  547. package/dist/knowledge/tools/knowledge-get-page.js +101 -0
  548. package/dist/knowledge/tools/knowledge-get-page.js.map +1 -0
  549. package/dist/knowledge/tools/knowledge-query.d.ts +77 -0
  550. package/dist/knowledge/tools/knowledge-query.d.ts.map +1 -0
  551. package/dist/knowledge/tools/knowledge-query.js +104 -0
  552. package/dist/knowledge/tools/knowledge-query.js.map +1 -0
  553. package/dist/knowledge/tools/repo-map-lookup.d.ts +45 -0
  554. package/dist/knowledge/tools/repo-map-lookup.d.ts.map +1 -0
  555. package/dist/knowledge/tools/repo-map-lookup.js +82 -0
  556. package/dist/knowledge/tools/repo-map-lookup.js.map +1 -0
  557. package/dist/knowledge/types.d.ts +269 -0
  558. package/dist/knowledge/types.d.ts.map +1 -0
  559. package/dist/knowledge/types.js +10 -0
  560. package/dist/knowledge/types.js.map +1 -0
  561. package/dist/knowledge/validator.d.ts +90 -0
  562. package/dist/knowledge/validator.d.ts.map +1 -0
  563. package/dist/knowledge/validator.js +288 -0
  564. package/dist/knowledge/validator.js.map +1 -0
  565. package/dist/mcp/server.d.ts.map +1 -1
  566. package/dist/mcp/server.js +222 -1
  567. package/dist/mcp/server.js.map +1 -1
  568. package/dist/skills/builtin-skills.d.ts +35 -0
  569. package/dist/skills/builtin-skills.d.ts.map +1 -0
  570. package/dist/skills/builtin-skills.js +68 -0
  571. package/dist/skills/builtin-skills.js.map +1 -0
  572. package/dist/skills/distill/attribution.d.ts +59 -0
  573. package/dist/skills/distill/attribution.d.ts.map +1 -0
  574. package/dist/skills/distill/attribution.js +101 -0
  575. package/dist/skills/distill/attribution.js.map +1 -0
  576. package/dist/skills/distill/claude-cli-resolver.d.ts +26 -0
  577. package/dist/skills/distill/claude-cli-resolver.d.ts.map +1 -0
  578. package/dist/skills/distill/claude-cli-resolver.js +115 -0
  579. package/dist/skills/distill/claude-cli-resolver.js.map +1 -0
  580. package/dist/skills/distill/distiller.d.ts +161 -0
  581. package/dist/skills/distill/distiller.d.ts.map +1 -0
  582. package/dist/skills/distill/distiller.js +461 -0
  583. package/dist/skills/distill/distiller.js.map +1 -0
  584. package/dist/skills/distill/index.d.ts +223 -0
  585. package/dist/skills/distill/index.d.ts.map +1 -0
  586. package/dist/skills/distill/index.js +466 -0
  587. package/dist/skills/distill/index.js.map +1 -0
  588. package/dist/skills/distill/project-anchor-guard.d.ts +116 -0
  589. package/dist/skills/distill/project-anchor-guard.d.ts.map +1 -0
  590. package/dist/skills/distill/project-anchor-guard.js +334 -0
  591. package/dist/skills/distill/project-anchor-guard.js.map +1 -0
  592. package/dist/skills/distill/topic-deduper.d.ts +77 -0
  593. package/dist/skills/distill/topic-deduper.d.ts.map +1 -0
  594. package/dist/skills/distill/topic-deduper.js +119 -0
  595. package/dist/skills/distill/topic-deduper.js.map +1 -0
  596. package/dist/skills/distill/upstream-fetcher.d.ts +71 -0
  597. package/dist/skills/distill/upstream-fetcher.d.ts.map +1 -0
  598. package/dist/skills/distill/upstream-fetcher.js +202 -0
  599. package/dist/skills/distill/upstream-fetcher.js.map +1 -0
  600. package/dist/skills/distilled/distilled-api-design.md +491 -0
  601. package/dist/skills/distilled/distilled-architecture-decision.md +173 -0
  602. package/dist/skills/distilled/distilled-creator.md +178 -0
  603. package/dist/skills/distilled/distilled-db-schema-design.md +245 -0
  604. package/dist/skills/distilled/distilled-defi-amm-security.md +293 -0
  605. package/dist/skills/distilled/distilled-executing-plans.md +113 -0
  606. package/dist/skills/distilled/distilled-harness-engineering.md +242 -0
  607. package/dist/skills/distilled/distilled-karpathy-guidelines.md +104 -0
  608. package/dist/skills/distilled/distilled-performance-optimization.md +175 -0
  609. package/dist/skills/distilled/distilled-spec-driven-design.md +193 -0
  610. package/dist/skills/distilled/distilled-systematic-debugging.md +306 -0
  611. package/dist/skills/distilled/distilled-verification-before-completion.md +203 -0
  612. package/dist/skills/keyword-score.d.ts +29 -0
  613. package/dist/skills/keyword-score.d.ts.map +1 -0
  614. package/dist/skills/keyword-score.js +54 -0
  615. package/dist/skills/keyword-score.js.map +1 -0
  616. package/dist/skills/registry.d.ts +64 -20
  617. package/dist/skills/registry.d.ts.map +1 -1
  618. package/dist/skills/registry.js +102 -105
  619. package/dist/skills/registry.js.map +1 -1
  620. package/dist/skills/tools/pipeline-suggest.js +14 -14
  621. package/dist/skills/tools/skill-invoke.d.ts +1 -1
  622. package/dist/skills/tools/skill-invoke.js +1 -1
  623. package/dist/web/routes/agent-content.d.ts +30 -0
  624. package/dist/web/routes/agent-content.d.ts.map +1 -0
  625. package/dist/web/routes/agent-content.js +139 -0
  626. package/dist/web/routes/agent-content.js.map +1 -0
  627. package/dist/web/routes/decisions.d.ts +15 -0
  628. package/dist/web/routes/decisions.d.ts.map +1 -0
  629. package/dist/web/routes/decisions.js +181 -0
  630. package/dist/web/routes/decisions.js.map +1 -0
  631. package/dist/web/routes/diagnostics.d.ts +61 -0
  632. package/dist/web/routes/diagnostics.d.ts.map +1 -0
  633. package/dist/web/routes/diagnostics.js +203 -0
  634. package/dist/web/routes/diagnostics.js.map +1 -0
  635. package/dist/web/routes/events.d.ts.map +1 -1
  636. package/dist/web/routes/events.js +24 -0
  637. package/dist/web/routes/events.js.map +1 -1
  638. package/dist/web/routes/health.d.ts +33 -0
  639. package/dist/web/routes/health.d.ts.map +1 -0
  640. package/dist/web/routes/health.js +37 -0
  641. package/dist/web/routes/health.js.map +1 -0
  642. package/dist/web/routes/insights.d.ts +0 -5
  643. package/dist/web/routes/insights.d.ts.map +1 -1
  644. package/dist/web/routes/insights.js +783 -2
  645. package/dist/web/routes/insights.js.map +1 -1
  646. package/dist/web/routes/knowledge.d.ts +16 -0
  647. package/dist/web/routes/knowledge.d.ts.map +1 -0
  648. package/dist/web/routes/knowledge.js +661 -0
  649. package/dist/web/routes/knowledge.js.map +1 -0
  650. package/dist/web/routes/patch.d.ts +60 -1
  651. package/dist/web/routes/patch.d.ts.map +1 -1
  652. package/dist/web/routes/patch.js +170 -64
  653. package/dist/web/routes/patch.js.map +1 -1
  654. package/dist/web/routes/pipeline.d.ts +37 -0
  655. package/dist/web/routes/pipeline.d.ts.map +1 -0
  656. package/dist/web/routes/pipeline.js +149 -0
  657. package/dist/web/routes/pipeline.js.map +1 -0
  658. package/dist/web/routes/rules.d.ts.map +1 -1
  659. package/dist/web/routes/rules.js +6 -1
  660. package/dist/web/routes/rules.js.map +1 -1
  661. package/dist/web/routes/sessions.d.ts.map +1 -1
  662. package/dist/web/routes/sessions.js +9 -1
  663. package/dist/web/routes/sessions.js.map +1 -1
  664. package/dist/web/routes/skill-content.d.ts +30 -0
  665. package/dist/web/routes/skill-content.d.ts.map +1 -0
  666. package/dist/web/routes/skill-content.js +117 -0
  667. package/dist/web/routes/skill-content.js.map +1 -0
  668. package/dist/web/routes/skills-distill.d.ts +29 -0
  669. package/dist/web/routes/skills-distill.d.ts.map +1 -0
  670. package/dist/web/routes/skills-distill.js +552 -0
  671. package/dist/web/routes/skills-distill.js.map +1 -0
  672. package/dist/web/routes/skills.js +7 -7
  673. package/dist/web/routes/skills.js.map +1 -1
  674. package/dist/web/routes/task-timeline.d.ts +102 -0
  675. package/dist/web/routes/task-timeline.d.ts.map +1 -0
  676. package/dist/web/routes/task-timeline.js +274 -0
  677. package/dist/web/routes/task-timeline.js.map +1 -0
  678. package/dist/web/routes/tasks.d.ts.map +1 -1
  679. package/dist/web/routes/tasks.js +355 -8
  680. package/dist/web/routes/tasks.js.map +1 -1
  681. package/dist/web/routes/trace.d.ts.map +1 -1
  682. package/dist/web/routes/trace.js +3 -2
  683. package/dist/web/routes/trace.js.map +1 -1
  684. package/dist/web/routes/types.d.ts +0 -4
  685. package/dist/web/routes/types.d.ts.map +1 -1
  686. package/dist/web/routes/types.js +1 -1
  687. package/dist/web/routes/types.js.map +1 -1
  688. package/dist/web/routes/violations.d.ts +14 -0
  689. package/dist/web/routes/violations.d.ts.map +1 -0
  690. package/dist/web/routes/violations.js +111 -0
  691. package/dist/web/routes/violations.js.map +1 -0
  692. package/dist/web/server.d.ts.map +1 -1
  693. package/dist/web/server.js +79 -19
  694. package/dist/web/server.js.map +1 -1
  695. package/dist/web/services/build-manager.d.ts +72 -0
  696. package/dist/web/services/build-manager.d.ts.map +1 -0
  697. package/dist/web/services/build-manager.js +189 -0
  698. package/dist/web/services/build-manager.js.map +1 -0
  699. package/dist/web/services/distill-manager.d.ts +125 -0
  700. package/dist/web/services/distill-manager.d.ts.map +1 -0
  701. package/dist/web/services/distill-manager.js +308 -0
  702. package/dist/web/services/distill-manager.js.map +1 -0
  703. package/dist/web/static/assets/AgentContentPage-DkeRNxok.js +2 -0
  704. package/dist/web/static/assets/AgentContentPage-DkeRNxok.js.map +1 -0
  705. package/dist/web/static/assets/AgentDelegationTable-ByBa0x1l.js +2 -0
  706. package/dist/web/static/assets/AgentDelegationTable-ByBa0x1l.js.map +1 -0
  707. package/dist/web/static/assets/ContextInsightsPage-oUk7_I8u.js +3 -0
  708. package/dist/web/static/assets/ContextInsightsPage-oUk7_I8u.js.map +1 -0
  709. package/dist/web/static/assets/DaemonHealthPage-DG2fyOP7.js +2 -0
  710. package/dist/web/static/assets/DaemonHealthPage-DG2fyOP7.js.map +1 -0
  711. package/dist/web/static/assets/DecisionsPage-CMAPEnKb.js +2 -0
  712. package/dist/web/static/assets/DecisionsPage-CMAPEnKb.js.map +1 -0
  713. package/dist/web/static/assets/DiagnosticsPage-DQd-Zm4r.js +2 -0
  714. package/dist/web/static/assets/DiagnosticsPage-DQd-Zm4r.js.map +1 -0
  715. package/dist/web/static/assets/DriftTab-DqpepOhI.js +2 -0
  716. package/dist/web/static/assets/DriftTab-DqpepOhI.js.map +1 -0
  717. package/dist/web/static/assets/HealthHomePage-CN6zNIie.js +3 -0
  718. package/dist/web/static/assets/HealthHomePage-CN6zNIie.js.map +1 -0
  719. package/dist/web/static/assets/KbHitRateTable-ByEIWujF.js +2 -0
  720. package/dist/web/static/assets/KbHitRateTable-ByEIWujF.js.map +1 -0
  721. package/dist/web/static/assets/MarkdownRenderer-DZmTl-8J.js +3 -0
  722. package/dist/web/static/assets/MarkdownRenderer-DZmTl-8J.js.map +1 -0
  723. package/dist/web/static/assets/NotFound-BQPh0vaF.js +2 -0
  724. package/dist/web/static/assets/NotFound-BQPh0vaF.js.map +1 -0
  725. package/dist/web/static/assets/ProjectSwitcher-D3lZMFd3.js +2 -0
  726. package/dist/web/static/assets/ProjectSwitcher-D3lZMFd3.js.map +1 -0
  727. package/dist/web/static/assets/SettingsPage-oLJBNzQj.js +2 -0
  728. package/dist/web/static/assets/SettingsPage-oLJBNzQj.js.map +1 -0
  729. package/dist/web/static/assets/SkillContentPage-DK5rgfgw.js +2 -0
  730. package/dist/web/static/assets/SkillContentPage-DK5rgfgw.js.map +1 -0
  731. package/dist/web/static/assets/SkillStatsTable-DYMzjEUV.js +2 -0
  732. package/dist/web/static/assets/SkillStatsTable-DYMzjEUV.js.map +1 -0
  733. package/dist/web/static/assets/SkillsDistillTab-C7qaG8q3.js +2 -0
  734. package/dist/web/static/assets/SkillsDistillTab-C7qaG8q3.js.map +1 -0
  735. package/dist/web/static/assets/TasksHubPage-03wsRRsJ.js +6 -0
  736. package/dist/web/static/assets/TasksHubPage-03wsRRsJ.js.map +1 -0
  737. package/dist/web/static/assets/ViolationsPage-DSiLr-9O.js +3 -0
  738. package/dist/web/static/assets/ViolationsPage-DSiLr-9O.js.map +1 -0
  739. package/dist/web/static/assets/arco-Bhi3a6Qp.js +14 -0
  740. package/dist/web/static/assets/arco-Bhi3a6Qp.js.map +1 -0
  741. package/dist/web/static/assets/arco-DFQA6dO_.css +1 -0
  742. package/dist/web/static/assets/charts-BuHQWDbQ.js +37 -0
  743. package/dist/web/static/assets/charts-BuHQWDbQ.js.map +1 -0
  744. package/dist/web/static/assets/date-fns-sbWH3_uq.js +2 -0
  745. package/dist/web/static/assets/date-fns-sbWH3_uq.js.map +1 -0
  746. package/dist/web/static/assets/index-7bl3kbcx.css +1 -0
  747. package/dist/web/static/assets/index-BIYnq1Dx.js +4 -0
  748. package/dist/web/static/assets/index-BIYnq1Dx.js.map +1 -0
  749. package/dist/web/static/assets/lucide-CnlPQoG8.js +72 -0
  750. package/dist/web/static/assets/lucide-CnlPQoG8.js.map +1 -0
  751. package/dist/web/static/assets/outcome-DUn1NjlC.js +2 -0
  752. package/dist/web/static/assets/outcome-DUn1NjlC.js.map +1 -0
  753. package/dist/web/static/assets/query-S6X1S7K9.js +2 -0
  754. package/dist/web/static/assets/{query-C99w429o.js.map → query-S6X1S7K9.js.map} +1 -1
  755. package/dist/web/static/assets/{react-router-r79dBVy4.js → react-router-JVUrkhdd.js} +3 -3
  756. package/dist/web/static/assets/{react-router-r79dBVy4.js.map → react-router-JVUrkhdd.js.map} +1 -1
  757. package/dist/web/static/assets/react-vendor-tkvCrao7.js +57 -0
  758. package/dist/web/static/assets/react-vendor-tkvCrao7.js.map +1 -0
  759. package/dist/web/static/assets/syntax-highlighter-BkZfCDsz.js +6 -0
  760. package/dist/web/static/assets/syntax-highlighter-BkZfCDsz.js.map +1 -0
  761. package/dist/web/static/assets/useTabsParam-k8qte_0C.js +2 -0
  762. package/dist/web/static/assets/useTabsParam-k8qte_0C.js.map +1 -0
  763. package/dist/web/static/assets/vendor-DWgdB1eY.js +65 -0
  764. package/dist/web/static/assets/vendor-DWgdB1eY.js.map +1 -0
  765. package/dist/web/static/index.html +12 -8
  766. package/package.json +14 -3
  767. package/dist/core/ai/provider.d.ts +0 -63
  768. package/dist/core/ai/provider.d.ts.map +0 -1
  769. package/dist/core/ai/provider.js +0 -241
  770. package/dist/core/ai/provider.js.map +0 -1
  771. package/dist/core/ai/types.d.ts +0 -43
  772. package/dist/core/ai/types.d.ts.map +0 -1
  773. package/dist/core/ai/types.js +0 -5
  774. package/dist/core/ai/types.js.map +0 -1
  775. package/dist/core/storage/token-usage.d.ts +0 -36
  776. package/dist/core/storage/token-usage.d.ts.map +0 -1
  777. package/dist/core/storage/token-usage.js +0 -59
  778. package/dist/core/storage/token-usage.js.map +0 -1
  779. package/dist/core/utils/token-tracker.d.ts +0 -39
  780. package/dist/core/utils/token-tracker.d.ts.map +0 -1
  781. package/dist/core/utils/token-tracker.js +0 -69
  782. package/dist/core/utils/token-tracker.js.map +0 -1
  783. package/dist/skills/index.d.ts +0 -3
  784. package/dist/skills/index.d.ts.map +0 -1
  785. package/dist/skills/index.js +0 -3
  786. package/dist/skills/index.js.map +0 -1
  787. package/dist/skills/matcher.d.ts +0 -26
  788. package/dist/skills/matcher.d.ts.map +0 -1
  789. package/dist/skills/matcher.js +0 -113
  790. package/dist/skills/matcher.js.map +0 -1
  791. package/dist/skills/official/code-simplifier.md +0 -52
  792. package/dist/skills/official/find-skills.md +0 -142
  793. package/dist/skills/official/official-api-design.md +0 -30
  794. package/dist/skills/official/official-architecture-decision.md +0 -41
  795. package/dist/skills/official/official-bmad.md +0 -118
  796. package/dist/skills/official/official-db-schema-design.md +0 -34
  797. package/dist/skills/official/official-debug.md +0 -25
  798. package/dist/skills/official/official-doc-driven.md +0 -31
  799. package/dist/skills/official/official-harness-engineering.md +0 -108
  800. package/dist/skills/official/official-performance-optimization.md +0 -30
  801. package/dist/skills/official/official-pr-review.md +0 -35
  802. package/dist/skills/official/official-release-checklist.md +0 -30
  803. package/dist/skills/official/official-security-hardening.md +0 -32
  804. package/dist/skills/official/official-spec-driven-design.md +0 -31
  805. package/dist/skills/official/planning-with-files.md +0 -241
  806. package/dist/skills/official/ui-ux-pro-max.md +0 -105
  807. package/dist/skills/official/webapp-testing.md +0 -96
  808. package/dist/skills/official-skills.d.ts +0 -26
  809. package/dist/skills/official-skills.d.ts.map +0 -1
  810. package/dist/skills/official-skills.js +0 -73
  811. package/dist/skills/official-skills.js.map +0 -1
  812. package/dist/skills/semantic-matcher.d.ts +0 -60
  813. package/dist/skills/semantic-matcher.d.ts.map +0 -1
  814. package/dist/skills/semantic-matcher.js +0 -192
  815. package/dist/skills/semantic-matcher.js.map +0 -1
  816. package/dist/skills/upgrade-engine.d.ts +0 -93
  817. package/dist/skills/upgrade-engine.d.ts.map +0 -1
  818. package/dist/skills/upgrade-engine.js +0 -447
  819. package/dist/skills/upgrade-engine.js.map +0 -1
  820. package/dist/skills/upgrade-prompt.d.ts +0 -20
  821. package/dist/skills/upgrade-prompt.d.ts.map +0 -1
  822. package/dist/skills/upgrade-prompt.js +0 -75
  823. package/dist/skills/upgrade-prompt.js.map +0 -1
  824. package/dist/web/routes/ai.d.ts +0 -10
  825. package/dist/web/routes/ai.d.ts.map +0 -1
  826. package/dist/web/routes/ai.js +0 -186
  827. package/dist/web/routes/ai.js.map +0 -1
  828. package/dist/web/routes/token-usage.d.ts +0 -7
  829. package/dist/web/routes/token-usage.d.ts.map +0 -1
  830. package/dist/web/routes/token-usage.js +0 -18
  831. package/dist/web/routes/token-usage.js.map +0 -1
  832. package/dist/web/ssrf-guard.d.ts +0 -35
  833. package/dist/web/ssrf-guard.d.ts.map +0 -1
  834. package/dist/web/ssrf-guard.js +0 -93
  835. package/dist/web/ssrf-guard.js.map +0 -1
  836. package/dist/web/static/assets/AIConfig-CdDWzJyO.js +0 -2
  837. package/dist/web/static/assets/AIConfig-CdDWzJyO.js.map +0 -1
  838. package/dist/web/static/assets/Dashboard-CoEmmIDt.js +0 -2
  839. package/dist/web/static/assets/Dashboard-CoEmmIDt.js.map +0 -1
  840. package/dist/web/static/assets/Drawer-DdRTzlLB.js +0 -2
  841. package/dist/web/static/assets/Drawer-DdRTzlLB.js.map +0 -1
  842. package/dist/web/static/assets/Events-DrIq1SUS.js +0 -2
  843. package/dist/web/static/assets/Events-DrIq1SUS.js.map +0 -1
  844. package/dist/web/static/assets/Reports-DFBM3MDK.js +0 -2
  845. package/dist/web/static/assets/Reports-DFBM3MDK.js.map +0 -1
  846. package/dist/web/static/assets/SearchInput-qCj_jAcf.js +0 -2
  847. package/dist/web/static/assets/SearchInput-qCj_jAcf.js.map +0 -1
  848. package/dist/web/static/assets/SessionDetail-CCzwdoT7.js +0 -2
  849. package/dist/web/static/assets/SessionDetail-CCzwdoT7.js.map +0 -1
  850. package/dist/web/static/assets/Sessions-FfLYkAw9.js +0 -2
  851. package/dist/web/static/assets/Sessions-FfLYkAw9.js.map +0 -1
  852. package/dist/web/static/assets/Skills-C8Gvs3Qa.js +0 -2
  853. package/dist/web/static/assets/Skills-C8Gvs3Qa.js.map +0 -1
  854. package/dist/web/static/assets/TaskDetail-BS8pYhaR.js +0 -2
  855. package/dist/web/static/assets/TaskDetail-BS8pYhaR.js.map +0 -1
  856. package/dist/web/static/assets/Tasks-CyuhizG8.js +0 -2
  857. package/dist/web/static/assets/Tasks-CyuhizG8.js.map +0 -1
  858. package/dist/web/static/assets/charts-CLrM0_uM.js +0 -37
  859. package/dist/web/static/assets/charts-CLrM0_uM.js.map +0 -1
  860. package/dist/web/static/assets/date-fns-CZ_bHujz.js +0 -2
  861. package/dist/web/static/assets/date-fns-CZ_bHujz.js.map +0 -1
  862. package/dist/web/static/assets/export-L_VBD2p1.js +0 -4
  863. package/dist/web/static/assets/export-L_VBD2p1.js.map +0 -1
  864. package/dist/web/static/assets/index-CBX47X8l.js +0 -3
  865. package/dist/web/static/assets/index-CBX47X8l.js.map +0 -1
  866. package/dist/web/static/assets/index-DjIoMdoR.css +0 -1
  867. package/dist/web/static/assets/lucide-Bs_edTLa.js +0 -232
  868. package/dist/web/static/assets/lucide-Bs_edTLa.js.map +0 -1
  869. package/dist/web/static/assets/query-C99w429o.js +0 -2
  870. package/dist/web/static/assets/react-vendor-CSp-GLFF.js +0 -49
  871. package/dist/web/static/assets/react-vendor-CSp-GLFF.js.map +0 -1
  872. package/dist/web/static/assets/syntax-highlighter-44FakypI.js +0 -9
  873. package/dist/web/static/assets/syntax-highlighter-44FakypI.js.map +0 -1
  874. package/dist/web/static/assets/task-title-BhOcemuR.js +0 -2
  875. package/dist/web/static/assets/task-title-BhOcemuR.js.map +0 -1
  876. package/dist/web/static/assets/time-Bxuk0M-C.js +0 -2
  877. package/dist/web/static/assets/time-Bxuk0M-C.js.map +0 -1
  878. package/dist/web/static/assets/vendor-CMMjVdZs.js +0 -64
  879. package/dist/web/static/assets/vendor-CMMjVdZs.js.map +0 -1
@@ -0,0 +1,202 @@
1
+ /**
2
+ * TaskBoundaryClassifier — async LLM "new task vs continuation" re-attribution.
3
+ *
4
+ * decision 265f59d5 (Option A, 2026-06-08). Solves the residual case the
5
+ * synchronous lexical segmenter cannot: a SHORT, ambiguous follow-up prompt
6
+ * that is neither a clear ack ("继续"/"好的") nor carries a NEW_TASK_KEYWORD,
7
+ * e.g. "现在全链路是不是都顺了" vs "文件也看下" — lexically indistinguishable,
8
+ * yet one is a new task and the other a continuation.
9
+ *
10
+ * ── Hot-path contract (NEVER block UserPromptSubmit) ──────────────────────
11
+ * The synchronous segmenter ALWAYS runs first and gives the prompt a
12
+ * best-effort task (zero latency). THIS service runs entirely in the
13
+ * background, fire-and-forget. It spawns `claude` (haiku) only for the ~30%
14
+ * of prompts the segmenter flagged ambiguous, then LAZILY re-attributes:
15
+ * • LLM says NEW_TASK → move the prompt's event onto a brand-new task row
16
+ * (only `task_events.task_id` FK is touched — no event delete, no content
17
+ * mutation). See SQLiteStorage.reattributePromptToNewTask.
18
+ * • LLM says CONTINUATION → leave the sync best-effort merge untouched, just
19
+ * stamp `llm_classified_at` so a replay never re-spawns.
20
+ *
21
+ * Failure mode: ANY spawn / timeout / parse error → give up, keep the sync
22
+ * result, never throw. Mirrors OutcomeClassificationService's fire-and-forget
23
+ * discipline.
24
+ */
25
+ import { logger } from '../../core/utils/logger.js';
26
+ import { formatError, truncateString } from '../../core/utils/format.js';
27
+ import { truncateSessionId } from '../../core/utils/session.js';
28
+ import { spawnClaudeCli } from '../../core/utils/claude-cli-spawn.js';
29
+ import { randomUUID } from 'node:crypto';
30
+ /**
31
+ * Spawn timeout (decision 5266724a, 2026-06-08). Bumped 8s → 30s: live `claude`
32
+ * classification spawns were measured at 6.8–26s, so an 8s cap timed out the
33
+ * majority of calls and silently degraded back to the sync lexical path. 30s
34
+ * comfortably covers the observed tail. Still fire-and-forget / background, so
35
+ * a slow spawn never blocks UserPromptSubmit.
36
+ */
37
+ const DEFAULT_TIMEOUT_MS = 30_000;
38
+ /** How many prior prompts of the merged task to hand the LLM as context. */
39
+ const CONTEXT_PROMPT_LIMIT = 3;
40
+ export class TaskBoundaryClassifier {
41
+ spawnFn;
42
+ /**
43
+ * @param spawnFn optional spawn override (tests). Default spawns the
44
+ * `task-boundary-classifier` agent via claude haiku.
45
+ */
46
+ constructor(opts = {}) {
47
+ const timeoutMs = opts.timeoutMs ?? DEFAULT_TIMEOUT_MS;
48
+ this.spawnFn =
49
+ opts.spawnFn ??
50
+ ((prompt) => spawnClaudeCli({
51
+ agent: 'task-boundary-classifier',
52
+ prompt,
53
+ timeoutMs,
54
+ claudeBin: opts.claudeBin,
55
+ // No tools — pure classification, fastest path. Allowed list empty
56
+ // means the agent uses its own frontmatter (which declares none).
57
+ }));
58
+ }
59
+ /**
60
+ * Classify one ambiguous prompt and, if NEW_TASK, re-attribute it.
61
+ * Fire-and-forget: never throws. Returns the new task id when it split,
62
+ * else null (CONTINUATION, idempotent skip, or any failure).
63
+ */
64
+ async classify(job, storage) {
65
+ try {
66
+ // Idempotency short-circuit BEFORE spending a spawn: if the merged task
67
+ // is already stamped, a prior run (or replay) handled this prompt.
68
+ if (storage.isLlmClassified(job.mergedTaskId)) {
69
+ return null;
70
+ }
71
+ // INFO-level entry log so production can finally confirm the classifier
72
+ // is actually invoked. Before decision 083112fc EVERY branch below was
73
+ // logger.debug() (invisible at the daemon's default INFO level), so a
74
+ // classifier that never once spawned looked identical to one that ran
75
+ // fine — `llm_classified_at` stayed 0/1132 with zero log evidence.
76
+ logger.info(`[TaskBoundaryClassifier] classify called for session=${truncateSessionId(job.sessionId)} ` +
77
+ `mergedTask=${truncateString(job.mergedTaskId, 8)} prompt="${truncateString(job.prompt.replace(/\s+/g, ' ').trim(), 60)}"`);
78
+ const priorPrompts = this.safePriorPrompts(storage, job.mergedTaskId);
79
+ const agentPrompt = buildBoundaryPrompt(priorPrompts, job.prompt);
80
+ let raw;
81
+ try {
82
+ raw = await this.spawnFn(agentPrompt);
83
+ }
84
+ catch (err) {
85
+ // NEVER swallow spawn failures silently. This is the single most
86
+ // important observability fix: a launchd PATH miss / exit error /
87
+ // timeout used to vanish at debug level, so "the classifier never
88
+ // ran" had no diagnosable cause. warn carries the error reason.
89
+ logger.warn(`[TaskBoundaryClassifier] spawn FAILED for session=${truncateSessionId(job.sessionId)}: ${formatError(err)} — keeping sync merge`);
90
+ return null; // conservative: keep sync best-effort merge
91
+ }
92
+ const verdict = parseVerdict(raw);
93
+ if (verdict === null) {
94
+ logger.warn(`[TaskBoundaryClassifier] unparseable verdict (raw="${truncateString(raw.trim(), 60)}") for ` +
95
+ `session=${truncateSessionId(job.sessionId)} — keeping merge`);
96
+ return null;
97
+ }
98
+ logger.info(`[TaskBoundaryClassifier] verdict=${verdict} for session=${truncateSessionId(job.sessionId)} ` +
99
+ `mergedTask=${truncateString(job.mergedTaskId, 8)}`);
100
+ const atIso = new Date().toISOString();
101
+ if (verdict === 'CONTINUATION') {
102
+ // Correct already — just stamp so we never reprocess this prompt.
103
+ try {
104
+ storage.markLlmClassified(job.mergedTaskId, atIso);
105
+ }
106
+ catch (err) {
107
+ logger.warn(`[TaskBoundaryClassifier] stamp failed: ${formatError(err)}`);
108
+ }
109
+ return null;
110
+ }
111
+ // NEW_TASK → lazily re-attribute. reattributePromptToNewTask re-checks
112
+ // idempotency + the event's current FK inside one transaction (OQ #3).
113
+ const newTaskId = storage.reattributePromptToNewTask({
114
+ fromTaskId: job.mergedTaskId,
115
+ eventId: job.eventId,
116
+ newTask: {
117
+ id: randomUUID(),
118
+ session_id: job.sessionId,
119
+ title: extractTitle(job.prompt),
120
+ start_time: job.timestamp,
121
+ task_kind: 'user',
122
+ },
123
+ atIso,
124
+ });
125
+ if (newTaskId) {
126
+ logger.info(`[TaskBoundaryClassifier] split ambiguous prompt off ${truncateString(job.mergedTaskId, 8)} ` +
127
+ `→ new task ${truncateString(newTaskId, 8)} (session=${truncateSessionId(job.sessionId)})`);
128
+ }
129
+ else {
130
+ // reattribute can no-op if the FK moved under us (concurrent replay) —
131
+ // surface it so a silent "NEW_TASK verdict but no split" is diagnosable.
132
+ logger.info(`[TaskBoundaryClassifier] NEW_TASK verdict but reattribute no-op (idempotent skip) for ` +
133
+ `session=${truncateSessionId(job.sessionId)}`);
134
+ }
135
+ return newTaskId;
136
+ }
137
+ catch (err) {
138
+ logger.warn(`[TaskBoundaryClassifier] classify failed: ${formatError(err)}`);
139
+ return null;
140
+ }
141
+ }
142
+ safePriorPrompts(storage, taskId) {
143
+ try {
144
+ return storage.getTaskUserPrompts(taskId, CONTEXT_PROMPT_LIMIT);
145
+ }
146
+ catch (err) {
147
+ logger.warn(`[TaskBoundaryClassifier] prior-prompt fetch failed: ${formatError(err)}`);
148
+ return [];
149
+ }
150
+ }
151
+ }
152
+ // ── Pure helpers (exported for unit-test reuse) ─────────────────────────────
153
+ /**
154
+ * Build the bare classification prompt handed to the agent. The agent body
155
+ * (.claude/agents/task-boundary-classifier.md) instructs it to answer with a
156
+ * single token; we still keep the contract inline so a bare-prompt spawn
157
+ * (no agent template synced yet) also works.
158
+ */
159
+ export function buildBoundaryPrompt(priorPrompts, current) {
160
+ const prev = priorPrompts.length > 0
161
+ ? priorPrompts.map((p, i) => ` ${i + 1}. ${truncateString(p.replace(/\s+/g, ' ').trim(), 200)}`).join('\n')
162
+ : ' (无)';
163
+ return [
164
+ '你是 task-boundary 分类器。判断「当前 prompt」是开启一个新任务,还是对上一个任务的追问/续接。',
165
+ '只输出一个词:NEW_TASK 或 CONTINUATION。不要解释,不要输出其他任何内容。',
166
+ '',
167
+ '上一个任务的若干 prompt:',
168
+ prev,
169
+ '',
170
+ `当前 prompt:${current.replace(/\s+/g, ' ').trim()}`,
171
+ ].join('\n');
172
+ }
173
+ /**
174
+ * Extract the agent's single-token verdict from raw stdout. Tolerant: the
175
+ * model may wrap the token in punctuation / markdown / a sentence. We scan for
176
+ * the first NEW_TASK / CONTINUATION occurrence (case-insensitive). Returns null
177
+ * when neither token is present (caller keeps the sync merge).
178
+ */
179
+ export function parseVerdict(raw) {
180
+ if (!raw)
181
+ return null;
182
+ const upper = raw.toUpperCase();
183
+ const newIdx = upper.indexOf('NEW_TASK');
184
+ const contIdx = upper.indexOf('CONTINUATION');
185
+ if (newIdx < 0 && contIdx < 0)
186
+ return null;
187
+ if (newIdx < 0)
188
+ return 'CONTINUATION';
189
+ if (contIdx < 0)
190
+ return 'NEW_TASK';
191
+ // Both present — first one wins.
192
+ return newIdx < contIdx ? 'NEW_TASK' : 'CONTINUATION';
193
+ }
194
+ /** Title for a re-attributed prompt's new task (mirrors TaskSegmenter). */
195
+ function extractTitle(prompt) {
196
+ const cleaned = prompt.replace(/\[Image #\d+\]/g, '').trim();
197
+ const firstLine = cleaned.split('\n')[0].trim();
198
+ if (firstLine.length <= 60)
199
+ return firstLine || '(无标题)';
200
+ return truncateString(firstLine, 60);
201
+ }
202
+ //# sourceMappingURL=task-boundary-classifier.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"task-boundary-classifier.js","sourceRoot":"","sources":["../../../src/daemon/services/task-boundary-classifier.ts"],"names":[],"mappings":"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"}
@@ -1,20 +1,238 @@
1
1
  import type { SQLiteStorage } from '../../core/storage/sqlite.js';
2
+ /**
3
+ * Task-tracking overhaul (2026-05-27 spec §3.3 / §R4).
4
+ *
5
+ * Bug 3 orphan recovery window. When linkEvent fires without an active
6
+ * task (e.g. Stop already closed it but sub-agent PostToolUse is still
7
+ * landing), we attach the event to the most recently completed task on
8
+ * the session IF it ended within this window. Default 5 min — short
9
+ * enough to avoid cross-task mis-attribution, long enough to absorb
10
+ * typical async sub-agent tool flushes (observed 1-4 min in production).
11
+ *
12
+ * Exported as `const` (not env-tunable) on purpose: changing it changes
13
+ * KPI semantics and should be a code review event. R4 mitigation: pure
14
+ * attachment, end_time is NOT updated by the fallback path (Q3).
15
+ */
16
+ export declare const ORPHAN_RECOVERY_WINDOW_MS: number;
17
+ /**
18
+ * decision 265f59d5: result of a boundary decision. When `ambiguous` is set,
19
+ * the sync path best-effort MERGED `prompt`'s event into `taskId`, but lexical
20
+ * signals were inconclusive — the daemon should hand this off to the async
21
+ * {@link TaskBoundaryClassifier} for a possible re-attribution. When undefined,
22
+ * the decision was unambiguous (clear ack / clear new-task / hard signal) and
23
+ * no LLM call is warranted.
24
+ */
25
+ export interface BoundaryDecision {
26
+ /** The task id the synchronous path assigned the prompt to. */
27
+ taskId: string;
28
+ /**
29
+ * Present only when the prompt was MERGED into an already-active task via the
30
+ * ambiguous default (no ack token, no NEW_TASK_KEYWORD, no hard signal).
31
+ */
32
+ ambiguous?: {
33
+ sessionId: string;
34
+ mergedTaskId: string;
35
+ eventId: string;
36
+ prompt: string;
37
+ timestamp: string;
38
+ };
39
+ }
2
40
  export declare class TaskSegmenter {
3
41
  private storage;
4
42
  private currentTasks;
5
43
  constructor(storage: SQLiteStorage);
6
44
  processPrompt(sessionId: string, prompt: string, timestamp: string, eventId?: string): string;
7
- linkEvent(sessionId: string, eventId: string): void;
45
+ /**
46
+ * decision 265f59d5: same synchronous best-effort segmentation as
47
+ * {@link processPrompt}, but also reports whether the result was an AMBIGUOUS
48
+ * merge so the daemon can enqueue an async LLM re-attribution. The hot path is
49
+ * unchanged — this returns immediately; the LLM call (if any) is the caller's
50
+ * fire-and-forget responsibility.
51
+ */
52
+ processPromptWithBoundary(sessionId: string, prompt: string, timestamp: string, eventId?: string): BoundaryDecision;
53
+ /**
54
+ * Attach a non-prompt event (PostToolUse / PreToolUse / Stop / spawn …) to the
55
+ * session's currently-open task and refresh `lastTime`.
56
+ *
57
+ * Refreshing `lastTime` here is the critical part of the long-flow fix
58
+ * (2026-05-25): without it, `shouldStartNewTask` only sees the gap between
59
+ * user prompts, so a 20-minute background-agent run with hundreds of tool
60
+ * calls looks identical to the user walking away. The next prompt then trips
61
+ * `TASK_SWITCH_MINUTES` and the post-spawn work gets re-attributed to a
62
+ * brand-new task — exactly the symptom seen in task 36471706.
63
+ *
64
+ * `timestamp` is optional for backward compatibility; callers that already
65
+ * know the event timestamp should pass it (we trust hook timestamps more
66
+ * than wall-clock here because event delivery can be queued/replayed).
67
+ */
68
+ linkEvent(sessionId: string, eventId: string, timestamp?: string, opts?: {
69
+ hookType?: string;
70
+ toolName?: string;
71
+ }): void;
8
72
  /**
9
73
  * 从数据库恢复 session 的 active 任务到内存 Map。
10
74
  * 用于 daemon 重启后内存丢失场景的 lazy 恢复。
11
75
  * 找不到 active 任务时返回 null(不报错)。
76
+ *
77
+ * spec b1480935 (2026-06-01 Option A): only `task_kind='user'` tasks are
78
+ * eligible — callback / image / system rows MUST NOT be re-installed as
79
+ * the session's "current task" or every subsequent event would attach
80
+ * to an envelope row. The legacy `!is_noise` guard is preserved as a
81
+ * fallback for rows where backfill hasn't yet promoted task_kind.
82
+ *
83
+ * Orphan-event robustness fix (2026-06-01): switched from
84
+ * `queryTasks(limit:5).find(...)` to a DIRECT `getActiveUserTask()` SQL
85
+ * lookup. The old path took the most-recent 5 rows THEN filtered — on a
86
+ * high-task-count session a burst of newer agent-callback / completed rows
87
+ * pushed the active user task out of the top-5, so `.find()` returned null
88
+ * and every event after it orphaned. The direct query applies the predicate
89
+ * at the DB layer with no LIMIT truncation.
12
90
  */
13
91
  private recoverActiveTask;
92
+ /**
93
+ * Orphan-event robustness fix (2026-06-01): proactively re-populate the
94
+ * in-memory `currentTasks` map from the DB at daemon startup.
95
+ *
96
+ * Problem: after a daemon restart `currentTasks` is empty, so every event
97
+ * relies on per-event lazy `recoverActiveTask`. During the restart window a
98
+ * burst of buffered + replayed events arrives; any whose recovery heuristic
99
+ * doesn't fire (e.g. the orphan-recovery smart window finds no completed
100
+ * task) gets dropped. Hydrating up-front means those events hit the fast
101
+ * `currentTasks.get()` path instead.
102
+ *
103
+ * Idempotent + fault-tolerant: safe to call multiple times (it overwrites
104
+ * with the same DB-derived state) and never throws — a query failure logs
105
+ * and leaves the map untouched so the daemon still starts.
106
+ *
107
+ * @returns number of sessions hydrated (useful for the startup log line).
108
+ */
109
+ hydrateActiveTasks(): number;
110
+ /**
111
+ * decision c6613590 P0 缺陷 B: trusted map-hit accessor.
112
+ *
113
+ * The in-memory `currentTasks` map can hold a DANGLING pointer to a task the
114
+ * stale-task GC (daemon/index.ts `completeStaleActiveTasks`) already flipped
115
+ * to status='completed' in the DB. The old code trusted any map hit blindly,
116
+ * so a new prompt / late event would `linkEventToTask` onto that completed
117
+ * row — advancing its end_time and merging independent prompts into a stale
118
+ * task.
119
+ *
120
+ * Two defences run together (spec: "两个都修最稳"):
121
+ * 1. daemon evicts GC'd ids from the map (see {@link evictTasks}); but a
122
+ * daemon that never restarts can still race the 5-min GC tick.
123
+ * 2. THIS guard PK-rechecks `status='active'` before trusting a map hit.
124
+ * If the row is no longer active, we drop the stale entry and fall back
125
+ * to `recoverActiveTask` (DB-authoritative). This makes the map a cache,
126
+ * never an authority, for the active-task invariant.
127
+ */
128
+ private getTrustedCurrent;
129
+ /**
130
+ * decision c6613590 P0 缺陷 B: evict the given task ids from the in-memory
131
+ * `currentTasks` map. Called by the daemon's stale-task GC after it flips
132
+ * those tasks to 'completed' in the DB, so the map never keeps a dangling
133
+ * pointer that drags a closed task's end_time forward.
134
+ *
135
+ * Keyed by sessionId (the map's key), but we also verify the mapped task id
136
+ * matches before deleting — a session whose active task was already replaced
137
+ * by a newer one must NOT have its live entry evicted just because an older
138
+ * task on the same session was GC'd.
139
+ *
140
+ * @returns number of map entries actually evicted (for the daemon log line).
141
+ */
142
+ evictTasks(closed: Array<{
143
+ id: string;
144
+ session_id: string;
145
+ }>): number;
14
146
  getCurrentTaskId(sessionId: string): string | null;
15
147
  completeCurrentTask(sessionId: string, timestamp: string): void;
148
+ /**
149
+ * Boundary decision for the synchronous path.
150
+ *
151
+ * spec 1713 (2026-05-28) introduced the hard-signal boundary
152
+ * ({@link shouldStartNewTaskHard}); spec b1480935 (2026-06-01) kept the
153
+ * legacy keyword heuristic for the live daemon. We UNION the two so the
154
+ * decision is the strictly-more-eager of the pair: a new task starts if
155
+ * EITHER an explicit hard signal fires (5-min window / RESET_KEYWORDS /
156
+ * sub-agent return) OR the legacy keyword heuristic asks for it. This keeps
157
+ * every previously-passing keyword case green while satisfying the spec-1713
158
+ * hard-signal contract. The async classifier (when wired) corrects any
159
+ * over- or under-split after the fact.
160
+ */
16
161
  private shouldStartNewTask;
162
+ /**
163
+ * spec 1713 §10.2: the hard-signal boundary. Returns true when an OBJECTIVE
164
+ * marker says "new task":
165
+ * 1. a sub-agent just returned (agentJustReturned flag) → consumes the flag
166
+ * 2. gap > HARD_TIME_WINDOW_MIN (5 min)
167
+ * 3. an explicit RESET_KEYWORD appears in the prompt
168
+ *
169
+ * Pure of keyword *heuristics* (NEW_TASK_KEYWORDS) — those live in the legacy
170
+ * path. Mutates `current.agentJustReturned` (clears it) by design: the flag
171
+ * is a one-shot that only forces the immediately-following prompt.
172
+ */
173
+ private shouldStartNewTaskHard;
17
174
  private createTask;
18
175
  private extractTitle;
19
176
  }
177
+ /**
178
+ * Task-tracking overhaul (2026-05-27 spec §3.2).
179
+ *
180
+ * Compute the is_noise flag for a freshly-extracted task title. Three
181
+ * heuristics, all conservative — the goal is to drop obvious envelope /
182
+ * sub-3-char / slash-command noise WITHOUT eating real user prompts:
183
+ *
184
+ * • length(trim(title)) < 3 — sub-3-char titles ('好的'=2, 'ok'=2,
185
+ * single CJK char). Note: spec §3.2 lists '好的' as expected-noise
186
+ * and '推送吧'=3 as expected-real; this matches.
187
+ * • title matches one of NOISE_PROMPT_PREFIXES (envelope tags emitted
188
+ * by the framework on UserPromptSubmit).
189
+ * • title is a single-word slash command (`/help`, `/login`, …) — the
190
+ * user didn't actually start a new task, they fired a CC slash menu.
191
+ *
192
+ * What this DOES NOT flag (intentional — spec §3.2):
193
+ * - Semantic acknowledgements like '批准' / 'approve' / 'ok' / '可以'.
194
+ * Those titles should never reach createTask once SpecGate.handle
195
+ * Approval is wired in Step 6. If they DO arrive in the meantime
196
+ * (e.g. test seeds, legacy bug, race), Web shows them so the user
197
+ * can spot the regression rather than silently dropping them.
198
+ *
199
+ * Exported for unit-test reuse; the production caller is
200
+ * TaskSegmenter.createTask above.
201
+ */
202
+ export declare function computeIsNoise(title: string): boolean;
203
+ /**
204
+ * True if the prompt is actually a tool-generated envelope (task-notification,
205
+ * system-reminder, image attachment, etc.) rather than a real human prompt.
206
+ *
207
+ * Thin wrapper over the canonical {@link isNoisePrompt} (core/utils). Kept
208
+ * as a named export so existing imports stay stable; each consumer's
209
+ * "what to do with noise" decision still lives at the call site (spec-gate
210
+ * skips auto-spec, here we skip task creation).
211
+ */
212
+ export declare function isNoisePromptForSegmenter(prompt: string): boolean;
213
+ /**
214
+ * True if the prompt is a genuine short continuation / acknowledgement
215
+ * ("继续" / "好的,这样可以" / "对对对" / "ok" / "批准" …) that should resume
216
+ * a recently-completed task via the B+ smart-window gate.
217
+ *
218
+ * decision c6613590 P0 缺陷 A — the old implementation (and the now-retired
219
+ * `CONTINUE_KEYWORDS` table) was `CONTINUE_KEYWORDS.some(kw => prompt.includes(kw))`,
220
+ * a pure SUBSTRING match.
221
+ * Because the keyword list contained '不是' / '这个' / '那个' / '它' / '不对',
222
+ * ordinary NEW questions were mis-classified as continuations and merged into
223
+ * a stale task:
224
+ * • "现在全链路是不是都顺了?知识库、skill都正常了吗" → '不是' matched
225
+ * • "这个任务怎么又丢了?老是丢数据不行啊" → '这个' matched
226
+ *
227
+ * The fix has two layers, BOTH must hold:
228
+ * 1. Length gate — the trimmed prompt must be ≤ ACK_MAX_LEN. A genuine ack
229
+ * is short; a multi-clause question is not.
230
+ * 2. Ack-token presence — an ACK_CONTINUE_KEYWORD (collision-prone tokens
231
+ * removed) must appear in the (short) prompt.
232
+ *
233
+ * This keeps every real ack a continuation ("继续"/"好的,这样可以"/"对对对"/
234
+ * "好的可以这样做") while the two real-world merge bugs above now return false
235
+ * and correctly start a new task. Exported for unit-test reuse.
236
+ */
237
+ export declare function isContinuationPrompt(prompt: string): boolean;
20
238
  //# sourceMappingURL=task-segmenter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"task-segmenter.d.ts","sourceRoot":"","sources":["../../../src/daemon/services/task-segmenter.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAmBlE,qBAAa,aAAa;IAGZ,OAAO,CAAC,OAAO;IAF3B,OAAO,CAAC,YAAY,CAAuD;gBAEvD,OAAO,EAAE,aAAa;IAE1C,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM;IAoB7F,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;IAOnD;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAezB,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAIlD,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI;IAU/D,OAAO,CAAC,kBAAkB;IAW1B,OAAO,CAAC,UAAU;IAQlB,OAAO,CAAC,YAAY;CAMrB"}
1
+ {"version":3,"file":"task-segmenter.d.ts","sourceRoot":"","sources":["../../../src/daemon/services/task-segmenter.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AA0ElE;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,yBAAyB,QAAa,CAAC;AAEpD;;;;;;;GAOG;AACH,MAAM,WAAW,gBAAgB;IAC/B,+DAA+D;IAC/D,MAAM,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,SAAS,CAAC,EAAE;QACV,SAAS,EAAE,MAAM,CAAC;QAClB,YAAY,EAAE,MAAM,CAAC;QACrB,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;CACH;AAED,qBAAa,aAAa;IAGZ,OAAO,CAAC,OAAO;IAF3B,OAAO,CAAC,YAAY,CAAoF;gBAEpF,OAAO,EAAE,aAAa;IAE1C,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM;IAI7F;;;;;;OAMG;IACH,yBAAyB,CACvB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,MAAM,GACf,gBAAgB;IA6GnB;;;;;;;;;;;;;;OAcG;IACH,SAAS,CACP,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,SAAS,CAAC,EAAE,MAAM,EAClB,IAAI,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,GAC9C,IAAI;IAuDP;;;;;;;;;;;;;;;;;;OAkBG;IACH,OAAO,CAAC,iBAAiB;IAczB;;;;;;;;;;;;;;;;OAgBG;IACH,kBAAkB,IAAI,MAAM;IAsB5B;;;;;;;;;;;;;;;;;OAiBG;IACH,OAAO,CAAC,iBAAiB;IAgBzB;;;;;;;;;;;;OAYG;IACH,UAAU,CAAC,MAAM,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC,GAAG,MAAM;IAYrE,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAIlD,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI;IAU/D;;;;;;;;;;;;OAYG;IACH,OAAO,CAAC,kBAAkB;IA4B1B;;;;;;;;;;OAUG;IACH,OAAO,CAAC,sBAAsB;IAe9B,OAAO,CAAC,UAAU;IA6BlB,OAAO,CAAC,YAAY;CAMrB;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAUrD;AAED;;;;;;;;GAQG;AACH,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAEjE;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAK5D"}