cordn8 1.14.2 → 1.14.4

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 (548) hide show
  1. package/README.md +12 -5
  2. package/dist/channel/reader.js +22 -0
  3. package/dist/channel/reader.js.map +1 -1
  4. package/dist/channel/watcher-auto-resolve.d.ts +37 -0
  5. package/dist/channel/watcher-auto-resolve.d.ts.map +1 -0
  6. package/dist/channel/watcher-auto-resolve.js +212 -0
  7. package/dist/channel/watcher-auto-resolve.js.map +1 -0
  8. package/dist/channel/watcher.d.ts +1 -0
  9. package/dist/channel/watcher.d.ts.map +1 -1
  10. package/dist/channel/watcher.js +24 -0
  11. package/dist/channel/watcher.js.map +1 -1
  12. package/dist/channel/writer.d.ts.map +1 -1
  13. package/dist/channel/writer.js +8 -0
  14. package/dist/channel/writer.js.map +1 -1
  15. package/dist/cli.js +301 -1
  16. package/dist/cli.js.map +1 -1
  17. package/dist/commands/ask.d.ts.map +1 -1
  18. package/dist/commands/ask.js +54 -0
  19. package/dist/commands/ask.js.map +1 -1
  20. package/dist/commands/brief.d.ts +11 -0
  21. package/dist/commands/brief.d.ts.map +1 -0
  22. package/dist/commands/brief.js +41 -0
  23. package/dist/commands/brief.js.map +1 -0
  24. package/dist/commands/channel-awaiting.d.ts +58 -0
  25. package/dist/commands/channel-awaiting.d.ts.map +1 -0
  26. package/dist/commands/channel-awaiting.js +239 -0
  27. package/dist/commands/channel-awaiting.js.map +1 -0
  28. package/dist/commands/channel-broadcast.d.ts +14 -0
  29. package/dist/commands/channel-broadcast.d.ts.map +1 -0
  30. package/dist/commands/channel-broadcast.js +142 -0
  31. package/dist/commands/channel-broadcast.js.map +1 -0
  32. package/dist/commands/channel-triage.d.ts +21 -0
  33. package/dist/commands/channel-triage.d.ts.map +1 -1
  34. package/dist/commands/channel-triage.js +111 -14
  35. package/dist/commands/channel-triage.js.map +1 -1
  36. package/dist/commands/decisions.d.ts +50 -0
  37. package/dist/commands/decisions.d.ts.map +1 -0
  38. package/dist/commands/decisions.js +162 -0
  39. package/dist/commands/decisions.js.map +1 -0
  40. package/dist/commands/dispatch.d.ts +3 -0
  41. package/dist/commands/dispatch.d.ts.map +1 -1
  42. package/dist/commands/dispatch.js +9 -0
  43. package/dist/commands/dispatch.js.map +1 -1
  44. package/dist/commands/do.d.ts.map +1 -1
  45. package/dist/commands/do.js +68 -0
  46. package/dist/commands/do.js.map +1 -1
  47. package/dist/commands/doctor-agent.d.ts.map +1 -1
  48. package/dist/commands/doctor-agent.js +8 -2
  49. package/dist/commands/doctor-agent.js.map +1 -1
  50. package/dist/commands/doctor-inbox.d.ts +62 -0
  51. package/dist/commands/doctor-inbox.d.ts.map +1 -0
  52. package/dist/commands/doctor-inbox.js +329 -0
  53. package/dist/commands/doctor-inbox.js.map +1 -0
  54. package/dist/commands/doctor.d.ts.map +1 -1
  55. package/dist/commands/doctor.js +103 -0
  56. package/dist/commands/doctor.js.map +1 -1
  57. package/dist/commands/inbox.d.ts.map +1 -1
  58. package/dist/commands/inbox.js +32 -9
  59. package/dist/commands/inbox.js.map +1 -1
  60. package/dist/commands/maya-launch.d.ts +33 -0
  61. package/dist/commands/maya-launch.d.ts.map +1 -0
  62. package/dist/commands/maya-launch.js +266 -0
  63. package/dist/commands/maya-launch.js.map +1 -0
  64. package/dist/commands/maya.js +75 -1
  65. package/dist/commands/maya.js.map +1 -1
  66. package/dist/commands/sources.d.ts +32 -0
  67. package/dist/commands/sources.d.ts.map +1 -0
  68. package/dist/commands/sources.js +115 -0
  69. package/dist/commands/sources.js.map +1 -0
  70. package/dist/commands/status.js +1 -1
  71. package/dist/commands/status.js.map +1 -1
  72. package/dist/commands/workspace-heal-channels.d.ts +66 -0
  73. package/dist/commands/workspace-heal-channels.d.ts.map +1 -0
  74. package/dist/commands/workspace-heal-channels.js +294 -0
  75. package/dist/commands/workspace-heal-channels.js.map +1 -0
  76. package/dist/commands/workspace.d.ts.map +1 -1
  77. package/dist/commands/workspace.js +48 -0
  78. package/dist/commands/workspace.js.map +1 -1
  79. package/dist/cordn8-types.d.ts +60 -0
  80. package/dist/maya/launch/artifacts.d.ts +43 -0
  81. package/dist/maya/launch/artifacts.d.ts.map +1 -0
  82. package/dist/maya/launch/artifacts.js +202 -0
  83. package/dist/maya/launch/artifacts.js.map +1 -0
  84. package/dist/maya/launch/compare.d.ts +35 -0
  85. package/dist/maya/launch/compare.d.ts.map +1 -0
  86. package/dist/maya/launch/compare.js +61 -0
  87. package/dist/maya/launch/compare.js.map +1 -0
  88. package/dist/maya/launch/config.d.ts +33 -0
  89. package/dist/maya/launch/config.d.ts.map +1 -0
  90. package/dist/maya/launch/config.js +114 -0
  91. package/dist/maya/launch/config.js.map +1 -0
  92. package/dist/maya/launch/decision.d.ts +26 -0
  93. package/dist/maya/launch/decision.d.ts.map +1 -0
  94. package/dist/maya/launch/decision.js +74 -0
  95. package/dist/maya/launch/decision.js.map +1 -0
  96. package/dist/maya/launch/finding.d.ts +32 -0
  97. package/dist/maya/launch/finding.d.ts.map +1 -0
  98. package/dist/maya/launch/finding.js +74 -0
  99. package/dist/maya/launch/finding.js.map +1 -0
  100. package/dist/maya/launch/index.d.ts +19 -0
  101. package/dist/maya/launch/index.d.ts.map +1 -0
  102. package/dist/maya/launch/index.js +51 -0
  103. package/dist/maya/launch/index.js.map +1 -0
  104. package/dist/maya/launch/registry.d.ts +24 -0
  105. package/dist/maya/launch/registry.d.ts.map +1 -0
  106. package/dist/maya/launch/registry.js +212 -0
  107. package/dist/maya/launch/registry.js.map +1 -0
  108. package/dist/maya/launch/sources/accessibility.d.ts +23 -0
  109. package/dist/maya/launch/sources/accessibility.d.ts.map +1 -0
  110. package/dist/maya/launch/sources/accessibility.js +219 -0
  111. package/dist/maya/launch/sources/accessibility.js.map +1 -0
  112. package/dist/maya/launch/sources/agent-readiness.d.ts +3 -0
  113. package/dist/maya/launch/sources/agent-readiness.d.ts.map +1 -0
  114. package/dist/maya/launch/sources/agent-readiness.js +199 -0
  115. package/dist/maya/launch/sources/agent-readiness.js.map +1 -0
  116. package/dist/maya/launch/sources/evidence-citation.d.ts +3 -0
  117. package/dist/maya/launch/sources/evidence-citation.d.ts.map +1 -0
  118. package/dist/maya/launch/sources/evidence-citation.js +230 -0
  119. package/dist/maya/launch/sources/evidence-citation.js.map +1 -0
  120. package/dist/maya/launch/sources/lighthouse.d.ts +21 -0
  121. package/dist/maya/launch/sources/lighthouse.d.ts.map +1 -0
  122. package/dist/maya/launch/sources/lighthouse.js +290 -0
  123. package/dist/maya/launch/sources/lighthouse.js.map +1 -0
  124. package/dist/maya/launch/sources/schema-stability.d.ts +3 -0
  125. package/dist/maya/launch/sources/schema-stability.d.ts.map +1 -0
  126. package/dist/maya/launch/sources/schema-stability.js +207 -0
  127. package/dist/maya/launch/sources/schema-stability.js.map +1 -0
  128. package/dist/maya/launch/tasks.d.ts +26 -0
  129. package/dist/maya/launch/tasks.d.ts.map +1 -0
  130. package/dist/maya/launch/tasks.js +165 -0
  131. package/dist/maya/launch/tasks.js.map +1 -0
  132. package/dist/maya/launch/types.d.ts +229 -0
  133. package/dist/maya/launch/types.d.ts.map +1 -0
  134. package/dist/maya/launch/types.js +29 -0
  135. package/dist/maya/launch/types.js.map +1 -0
  136. package/dist/maya/v3/cli-path.d.ts +9 -0
  137. package/dist/maya/v3/cli-path.d.ts.map +1 -0
  138. package/dist/maya/v3/cli-path.js +86 -0
  139. package/dist/maya/v3/cli-path.js.map +1 -0
  140. package/dist/maya/v3/cli-top-level-overwhelm.d.ts +4 -4
  141. package/dist/maya/v3/cli-top-level-overwhelm.d.ts.map +1 -1
  142. package/dist/maya/v3/cli-top-level-overwhelm.js +9 -9
  143. package/dist/maya/v3/cli-top-level-overwhelm.js.map +1 -1
  144. package/dist/maya/v3/cold-start-no-agents.d.ts.map +1 -1
  145. package/dist/maya/v3/cold-start-no-agents.js +4 -3
  146. package/dist/maya/v3/cold-start-no-agents.js.map +1 -1
  147. package/dist/maya/v3/doctor-pre-init.d.ts +1 -1
  148. package/dist/maya/v3/doctor-pre-init.d.ts.map +1 -1
  149. package/dist/maya/v3/doctor-pre-init.js +5 -4
  150. package/dist/maya/v3/doctor-pre-init.js.map +1 -1
  151. package/dist/maya/v3/first-ship-under-15min.d.ts.map +1 -1
  152. package/dist/maya/v3/first-ship-under-15min.js +4 -3
  153. package/dist/maya/v3/first-ship-under-15min.js.map +1 -1
  154. package/dist/maya/v3/help-segments-daily-vs-expert.d.ts.map +1 -1
  155. package/dist/maya/v3/help-segments-daily-vs-expert.js +4 -4
  156. package/dist/maya/v3/help-segments-daily-vs-expert.js.map +1 -1
  157. package/dist/maya/v3/unknown-command-recovery.d.ts.map +1 -1
  158. package/dist/maya/v3/unknown-command-recovery.js +3 -2
  159. package/dist/maya/v3/unknown-command-recovery.js.map +1 -1
  160. package/dist/schemas/message.d.ts +1 -1
  161. package/dist/spine/brief.d.ts +27 -0
  162. package/dist/spine/brief.d.ts.map +1 -0
  163. package/dist/spine/brief.js +236 -0
  164. package/dist/spine/brief.js.map +1 -0
  165. package/dist/spine/evidence.d.ts +13 -0
  166. package/dist/spine/evidence.d.ts.map +1 -0
  167. package/dist/spine/evidence.js +114 -0
  168. package/dist/spine/evidence.js.map +1 -0
  169. package/dist/spine/ledger.d.ts +17 -0
  170. package/dist/spine/ledger.d.ts.map +1 -0
  171. package/dist/spine/ledger.js +213 -0
  172. package/dist/spine/ledger.js.map +1 -0
  173. package/dist/spine/types.d.ts +84 -0
  174. package/dist/spine/types.d.ts.map +1 -0
  175. package/dist/spine/types.js +3 -0
  176. package/dist/spine/types.js.map +1 -0
  177. package/dist/spine/vault.d.ts +10 -0
  178. package/dist/spine/vault.d.ts.map +1 -0
  179. package/dist/spine/vault.js +117 -0
  180. package/dist/spine/vault.js.map +1 -0
  181. package/dist/types/index.d.ts +18 -0
  182. package/dist/types/index.d.ts.map +1 -1
  183. package/dist/utils/atomic.d.ts.map +1 -1
  184. package/dist/utils/atomic.js +38 -1
  185. package/dist/utils/atomic.js.map +1 -1
  186. package/dist/utils/lock.d.ts +13 -1
  187. package/dist/utils/lock.d.ts.map +1 -1
  188. package/dist/utils/lock.js +62 -6
  189. package/dist/utils/lock.js.map +1 -1
  190. package/dist/utils/performance.d.ts +52 -0
  191. package/dist/utils/performance.d.ts.map +1 -0
  192. package/dist/utils/performance.js +98 -0
  193. package/dist/utils/performance.js.map +1 -0
  194. package/dist/web/apps/web/.next/BUILD_ID +1 -1
  195. package/dist/web/apps/web/.next/app-build-manifest.json +216 -202
  196. package/dist/web/apps/web/.next/app-path-routes-manifest.json +47 -45
  197. package/dist/web/apps/web/.next/build-manifest.json +2 -2
  198. package/dist/web/apps/web/.next/prerender-manifest.json +31 -3
  199. package/dist/web/apps/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  200. package/dist/web/apps/web/.next/server/app/_not-found.html +1 -1
  201. package/dist/web/apps/web/.next/server/app/_not-found.rsc +2 -2
  202. package/dist/web/apps/web/.next/server/app/api/activity/commits/route.js +1 -1
  203. package/dist/web/apps/web/.next/server/app/api/activity/commits/route_client-reference-manifest.js +1 -1
  204. package/dist/web/apps/web/.next/server/app/api/activity/route.js +1 -1
  205. package/dist/web/apps/web/.next/server/app/api/activity/route_client-reference-manifest.js +1 -1
  206. package/dist/web/apps/web/.next/server/app/api/activity/timeline/route.js +1 -1
  207. package/dist/web/apps/web/.next/server/app/api/activity/timeline/route_client-reference-manifest.js +1 -1
  208. package/dist/web/apps/web/.next/server/app/api/adapters/route.js +1 -1
  209. package/dist/web/apps/web/.next/server/app/api/adapters/route_client-reference-manifest.js +1 -1
  210. package/dist/web/apps/web/.next/server/app/api/agent/route.js +1 -1
  211. package/dist/web/apps/web/.next/server/app/api/agent/route_client-reference-manifest.js +1 -1
  212. package/dist/web/apps/web/.next/server/app/api/agents/capabilities/route.js +1 -1
  213. package/dist/web/apps/web/.next/server/app/api/agents/capabilities/route_client-reference-manifest.js +1 -1
  214. package/dist/web/apps/web/.next/server/app/api/audit/list/route.js +1 -1
  215. package/dist/web/apps/web/.next/server/app/api/audit/list/route_client-reference-manifest.js +1 -1
  216. package/dist/web/apps/web/.next/server/app/api/audit/proof/route.js +1 -1
  217. package/dist/web/apps/web/.next/server/app/api/audit/proof/route_client-reference-manifest.js +1 -1
  218. package/dist/web/apps/web/.next/server/app/api/audit/verify/route.js +1 -1
  219. package/dist/web/apps/web/.next/server/app/api/audit/verify/route_client-reference-manifest.js +1 -1
  220. package/dist/web/apps/web/.next/server/app/api/backlog/import/route.js +1 -1
  221. package/dist/web/apps/web/.next/server/app/api/backlog/import/route_client-reference-manifest.js +1 -1
  222. package/dist/web/apps/web/.next/server/app/api/backlog/list/route.js +1 -1
  223. package/dist/web/apps/web/.next/server/app/api/backlog/list/route_client-reference-manifest.js +1 -1
  224. package/dist/web/apps/web/.next/server/app/api/brain/route.js +1 -1
  225. package/dist/web/apps/web/.next/server/app/api/brain/route_client-reference-manifest.js +1 -1
  226. package/dist/web/apps/web/.next/server/app/api/budget/status/route.js +1 -1
  227. package/dist/web/apps/web/.next/server/app/api/budget/status/route_client-reference-manifest.js +1 -1
  228. package/dist/web/apps/web/.next/server/app/api/channel/decision/route.js +1 -1
  229. package/dist/web/apps/web/.next/server/app/api/channel/decision/route_client-reference-manifest.js +1 -1
  230. package/dist/web/apps/web/.next/server/app/api/channel/digest/route.js +1 -1
  231. package/dist/web/apps/web/.next/server/app/api/channel/digest/route_client-reference-manifest.js +1 -1
  232. package/dist/web/apps/web/.next/server/app/api/channel/grep/route.js +1 -1
  233. package/dist/web/apps/web/.next/server/app/api/channel/grep/route_client-reference-manifest.js +1 -1
  234. package/dist/web/apps/web/.next/server/app/api/channel/send/route.js +1 -1
  235. package/dist/web/apps/web/.next/server/app/api/channel/send/route_client-reference-manifest.js +1 -1
  236. package/dist/web/apps/web/.next/server/app/api/channel/stream/route.js +1 -1
  237. package/dist/web/apps/web/.next/server/app/api/channel/stream/route_client-reference-manifest.js +1 -1
  238. package/dist/web/apps/web/.next/server/app/api/channel/tail/route.js +1 -1
  239. package/dist/web/apps/web/.next/server/app/api/channel/tail/route_client-reference-manifest.js +1 -1
  240. package/dist/web/apps/web/.next/server/app/api/cost/route.js +1 -1
  241. package/dist/web/apps/web/.next/server/app/api/cost/route_client-reference-manifest.js +1 -1
  242. package/dist/web/apps/web/.next/server/app/api/diagnostic/route.js +1 -1
  243. package/dist/web/apps/web/.next/server/app/api/diagnostic/route_client-reference-manifest.js +1 -1
  244. package/dist/web/apps/web/.next/server/app/api/doctor/route.js +1 -1
  245. package/dist/web/apps/web/.next/server/app/api/doctor/route_client-reference-manifest.js +1 -1
  246. package/dist/web/apps/web/.next/server/app/api/events/tail/route.js +1 -1
  247. package/dist/web/apps/web/.next/server/app/api/events/tail/route_client-reference-manifest.js +1 -1
  248. package/dist/web/apps/web/.next/server/app/api/federation/connect/route_client-reference-manifest.js +1 -1
  249. package/dist/web/apps/web/.next/server/app/api/federation/route_client-reference-manifest.js +1 -1
  250. package/dist/web/apps/web/.next/server/app/api/health/route.js +1 -1
  251. package/dist/web/apps/web/.next/server/app/api/health/route_client-reference-manifest.js +1 -1
  252. package/dist/web/apps/web/.next/server/app/api/healthz/route_client-reference-manifest.js +1 -1
  253. package/dist/web/apps/web/.next/server/app/api/inbox/post/route.js +1 -1
  254. package/dist/web/apps/web/.next/server/app/api/inbox/post/route_client-reference-manifest.js +1 -1
  255. package/dist/web/apps/web/.next/server/app/api/insights/recent/route.js +1 -1
  256. package/dist/web/apps/web/.next/server/app/api/insights/recent/route_client-reference-manifest.js +1 -1
  257. package/dist/web/apps/web/.next/server/app/api/insights/route.js +1 -1
  258. package/dist/web/apps/web/.next/server/app/api/insights/route_client-reference-manifest.js +1 -1
  259. package/dist/web/apps/web/.next/server/app/api/intent/ask/route.js +1 -1
  260. package/dist/web/apps/web/.next/server/app/api/intent/ask/route_client-reference-manifest.js +1 -1
  261. package/dist/web/apps/web/.next/server/app/api/lane/route.js +1 -1
  262. package/dist/web/apps/web/.next/server/app/api/lane/route_client-reference-manifest.js +1 -1
  263. package/dist/web/apps/web/.next/server/app/api/learning/drift/route.js +1 -1
  264. package/dist/web/apps/web/.next/server/app/api/learning/drift/route_client-reference-manifest.js +1 -1
  265. package/dist/web/apps/web/.next/server/app/api/learning/proposals/route.js +1 -1
  266. package/dist/web/apps/web/.next/server/app/api/learning/proposals/route_client-reference-manifest.js +1 -1
  267. package/dist/web/apps/web/.next/server/app/api/learning/self-learning/route.js +1 -1
  268. package/dist/web/apps/web/.next/server/app/api/learning/self-learning/route_client-reference-manifest.js +1 -1
  269. package/dist/web/apps/web/.next/server/app/api/maya/launch/route.js +1 -0
  270. package/dist/web/apps/web/.next/server/app/api/maya/launch/route.js.nft.json +1 -0
  271. package/dist/web/apps/web/.next/server/app/api/maya/launch/route_client-reference-manifest.js +1 -0
  272. package/dist/web/apps/web/.next/server/app/api/maya/route.js +1 -1
  273. package/dist/web/apps/web/.next/server/app/api/maya/route_client-reference-manifest.js +1 -1
  274. package/dist/web/apps/web/.next/server/app/api/mcp/audit/route.js +1 -1
  275. package/dist/web/apps/web/.next/server/app/api/mcp/audit/route_client-reference-manifest.js +1 -1
  276. package/dist/web/apps/web/.next/server/app/api/memory/entry/[id]/route_client-reference-manifest.js +1 -1
  277. package/dist/web/apps/web/.next/server/app/api/memory/route_client-reference-manifest.js +1 -1
  278. package/dist/web/apps/web/.next/server/app/api/mode/route.js +1 -1
  279. package/dist/web/apps/web/.next/server/app/api/mode/route_client-reference-manifest.js +1 -1
  280. package/dist/web/apps/web/.next/server/app/api/ops/adapters/route.js +1 -1
  281. package/dist/web/apps/web/.next/server/app/api/ops/adapters/route_client-reference-manifest.js +1 -1
  282. package/dist/web/apps/web/.next/server/app/api/ops/cost/route.js +1 -1
  283. package/dist/web/apps/web/.next/server/app/api/ops/cost/route_client-reference-manifest.js +1 -1
  284. package/dist/web/apps/web/.next/server/app/api/ops/dispatch/route.js +1 -1
  285. package/dist/web/apps/web/.next/server/app/api/ops/dispatch/route_client-reference-manifest.js +1 -1
  286. package/dist/web/apps/web/.next/server/app/api/ops/live/route.js +1 -1
  287. package/dist/web/apps/web/.next/server/app/api/ops/live/route_client-reference-manifest.js +1 -1
  288. package/dist/web/apps/web/.next/server/app/api/ops/maya/route.js +1 -1
  289. package/dist/web/apps/web/.next/server/app/api/ops/maya/route_client-reference-manifest.js +1 -1
  290. package/dist/web/apps/web/.next/server/app/api/ops/status/route.js +1 -1
  291. package/dist/web/apps/web/.next/server/app/api/ops/status/route_client-reference-manifest.js +1 -1
  292. package/dist/web/apps/web/.next/server/app/api/optimizations/route.js +1 -1
  293. package/dist/web/apps/web/.next/server/app/api/optimizations/route_client-reference-manifest.js +1 -1
  294. package/dist/web/apps/web/.next/server/app/api/ownership/route.js +1 -1
  295. package/dist/web/apps/web/.next/server/app/api/ownership/route_client-reference-manifest.js +1 -1
  296. package/dist/web/apps/web/.next/server/app/api/parallel/declared-scopes/route.js +1 -1
  297. package/dist/web/apps/web/.next/server/app/api/parallel/declared-scopes/route_client-reference-manifest.js +1 -1
  298. package/dist/web/apps/web/.next/server/app/api/parallel/plan/route.js +1 -1
  299. package/dist/web/apps/web/.next/server/app/api/parallel/plan/route_client-reference-manifest.js +1 -1
  300. package/dist/web/apps/web/.next/server/app/api/parallel/review/route.js +1 -1
  301. package/dist/web/apps/web/.next/server/app/api/parallel/review/route_client-reference-manifest.js +1 -1
  302. package/dist/web/apps/web/.next/server/app/api/projects/route_client-reference-manifest.js +1 -1
  303. package/dist/web/apps/web/.next/server/app/api/self-learning/apply/route_client-reference-manifest.js +1 -1
  304. package/dist/web/apps/web/.next/server/app/api/self-learning/rollback/route_client-reference-manifest.js +1 -1
  305. package/dist/web/apps/web/.next/server/app/api/slash-commands/route_client-reference-manifest.js +1 -1
  306. package/dist/web/apps/web/.next/server/app/api/state/route_client-reference-manifest.js +1 -1
  307. package/dist/web/apps/web/.next/server/app/api/state/sse/route_client-reference-manifest.js +1 -1
  308. package/dist/web/apps/web/.next/server/app/api/steward/recommend/route.js +1 -1
  309. package/dist/web/apps/web/.next/server/app/api/steward/recommend/route_client-reference-manifest.js +1 -1
  310. package/dist/web/apps/web/.next/server/app/api/steward/report/route.js +1 -1
  311. package/dist/web/apps/web/.next/server/app/api/steward/report/route_client-reference-manifest.js +1 -1
  312. package/dist/web/apps/web/.next/server/app/api/steward/status/route.js +1 -1
  313. package/dist/web/apps/web/.next/server/app/api/steward/status/route_client-reference-manifest.js +1 -1
  314. package/dist/web/apps/web/.next/server/app/api/task-templates/route_client-reference-manifest.js +1 -1
  315. package/dist/web/apps/web/.next/server/app/api/tasks/route.js +1 -1
  316. package/dist/web/apps/web/.next/server/app/api/tasks/route_client-reference-manifest.js +1 -1
  317. package/dist/web/apps/web/.next/server/app/api/telemetry/latency/route.js +1 -1
  318. package/dist/web/apps/web/.next/server/app/api/telemetry/latency/route_client-reference-manifest.js +1 -1
  319. package/dist/web/apps/web/.next/server/app/api/telemetry/route.js +1 -1
  320. package/dist/web/apps/web/.next/server/app/api/telemetry/route_client-reference-manifest.js +1 -1
  321. package/dist/web/apps/web/.next/server/app/api/telemetry/summary/route.js +1 -1
  322. package/dist/web/apps/web/.next/server/app/api/telemetry/summary/route_client-reference-manifest.js +1 -1
  323. package/dist/web/apps/web/.next/server/app/api/trust/history/route.js +1 -1
  324. package/dist/web/apps/web/.next/server/app/api/trust/history/route_client-reference-manifest.js +1 -1
  325. package/dist/web/apps/web/.next/server/app/api/trust/route.js +1 -1
  326. package/dist/web/apps/web/.next/server/app/api/trust/route_client-reference-manifest.js +1 -1
  327. package/dist/web/apps/web/.next/server/app/api/version/route.js +1 -0
  328. package/dist/web/apps/web/.next/server/app/api/version/route.js.nft.json +1 -0
  329. package/dist/web/apps/web/.next/server/app/api/version/route_client-reference-manifest.js +1 -0
  330. package/dist/web/apps/web/.next/server/app/api/version.body +1 -0
  331. package/dist/web/apps/web/.next/server/app/api/version.meta +1 -0
  332. package/dist/web/apps/web/.next/server/app/api/workspaces/route.js +1 -1
  333. package/dist/web/apps/web/.next/server/app/api/workspaces/route_client-reference-manifest.js +1 -1
  334. package/dist/web/apps/web/.next/server/app/mcp-audit/page_client-reference-manifest.js +1 -1
  335. package/dist/web/apps/web/.next/server/app/mcp-audit.html +1 -1
  336. package/dist/web/apps/web/.next/server/app/mcp-audit.rsc +2 -2
  337. package/dist/web/apps/web/.next/server/app/page_client-reference-manifest.js +1 -1
  338. package/dist/web/apps/web/.next/server/app/project/[id]/agents/[agentName]/page_client-reference-manifest.js +1 -1
  339. package/dist/web/apps/web/.next/server/app/project/[id]/agents/page_client-reference-manifest.js +1 -1
  340. package/dist/web/apps/web/.next/server/app/project/[id]/audit/page_client-reference-manifest.js +1 -1
  341. package/dist/web/apps/web/.next/server/app/project/[id]/backlog/page_client-reference-manifest.js +1 -1
  342. package/dist/web/apps/web/.next/server/app/project/[id]/channel-tail/page_client-reference-manifest.js +1 -1
  343. package/dist/web/apps/web/.next/server/app/project/[id]/cost/page_client-reference-manifest.js +1 -1
  344. package/dist/web/apps/web/.next/server/app/project/[id]/data/page_client-reference-manifest.js +1 -1
  345. package/dist/web/apps/web/.next/server/app/project/[id]/federation/page_client-reference-manifest.js +1 -1
  346. package/dist/web/apps/web/.next/server/app/project/[id]/flat/page_client-reference-manifest.js +1 -1
  347. package/dist/web/apps/web/.next/server/app/project/[id]/hub/page.js +1 -1
  348. package/dist/web/apps/web/.next/server/app/project/[id]/hub/page.js.nft.json +1 -1
  349. package/dist/web/apps/web/.next/server/app/project/[id]/hub/page_client-reference-manifest.js +1 -1
  350. package/dist/web/apps/web/.next/server/app/project/[id]/inbox/[msgId]/page_client-reference-manifest.js +1 -1
  351. package/dist/web/apps/web/.next/server/app/project/[id]/inbox/page_client-reference-manifest.js +1 -1
  352. package/dist/web/apps/web/.next/server/app/project/[id]/insights/page_client-reference-manifest.js +1 -1
  353. package/dist/web/apps/web/.next/server/app/project/[id]/learning/page.js +2 -2
  354. package/dist/web/apps/web/.next/server/app/project/[id]/learning/page.js.nft.json +1 -1
  355. package/dist/web/apps/web/.next/server/app/project/[id]/learning/page_client-reference-manifest.js +1 -1
  356. package/dist/web/apps/web/.next/server/app/project/[id]/memory/page_client-reference-manifest.js +1 -1
  357. package/dist/web/apps/web/.next/server/app/project/[id]/ops/page_client-reference-manifest.js +1 -1
  358. package/dist/web/apps/web/.next/server/app/project/[id]/optimization/page_client-reference-manifest.js +1 -1
  359. package/dist/web/apps/web/.next/server/app/project/[id]/page.js +1 -1
  360. package/dist/web/apps/web/.next/server/app/project/[id]/page.js.nft.json +1 -1
  361. package/dist/web/apps/web/.next/server/app/project/[id]/page_client-reference-manifest.js +1 -1
  362. package/dist/web/apps/web/.next/server/app/project/[id]/parallel/page.js +1 -1
  363. package/dist/web/apps/web/.next/server/app/project/[id]/parallel/page.js.nft.json +1 -1
  364. package/dist/web/apps/web/.next/server/app/project/[id]/parallel/page_client-reference-manifest.js +1 -1
  365. package/dist/web/apps/web/.next/server/app/project/[id]/security/page.js +1 -1
  366. package/dist/web/apps/web/.next/server/app/project/[id]/security/page.js.nft.json +1 -1
  367. package/dist/web/apps/web/.next/server/app/project/[id]/security/page_client-reference-manifest.js +1 -1
  368. package/dist/web/apps/web/.next/server/app/project/[id]/settings/adapters/page_client-reference-manifest.js +1 -1
  369. package/dist/web/apps/web/.next/server/app/project/[id]/settings/page_client-reference-manifest.js +1 -1
  370. package/dist/web/apps/web/.next/server/app/project/[id]/tasks/[taskId]/page_client-reference-manifest.js +1 -1
  371. package/dist/web/apps/web/.next/server/app/project/[id]/tasks/page_client-reference-manifest.js +1 -1
  372. package/dist/web/apps/web/.next/server/app/project/[id]/timeline/page_client-reference-manifest.js +1 -1
  373. package/dist/web/apps/web/.next/server/app/project/[id]/trust/page_client-reference-manifest.js +1 -1
  374. package/dist/web/apps/web/.next/server/app/project/[id]/workspaces/page_client-reference-manifest.js +1 -1
  375. package/dist/web/apps/web/.next/server/app-paths-manifest.json +47 -45
  376. package/dist/web/apps/web/.next/server/chunks/1604.js +2 -2
  377. package/dist/web/apps/web/.next/server/chunks/1969.js +1 -1
  378. package/dist/web/apps/web/.next/server/chunks/2291.js +1 -1
  379. package/dist/web/apps/web/.next/server/chunks/3301.js +1 -1
  380. package/dist/web/apps/web/.next/server/chunks/4001.js +1 -1
  381. package/dist/web/apps/web/.next/server/chunks/4846.js +1 -1
  382. package/dist/web/apps/web/.next/server/chunks/6781.js +1 -1
  383. package/dist/web/apps/web/.next/server/chunks/7048.js +3 -3
  384. package/dist/web/apps/web/.next/server/chunks/7140.js +1 -1
  385. package/dist/web/apps/web/.next/server/chunks/8587.js +1 -0
  386. package/dist/web/apps/web/.next/server/chunks/9914.js +1 -1
  387. package/dist/web/apps/web/.next/server/pages/404.html +1 -1
  388. package/dist/web/apps/web/.next/server/pages/500.html +1 -1
  389. package/dist/web/apps/web/.next/server/pages-manifest.json +1 -1
  390. package/dist/web/apps/web/.next/server/server-reference-manifest.json +1 -1
  391. package/dist/web/apps/web/.next/static/chunks/4110-562fc3c4da32c08a.js +1 -0
  392. package/dist/web/apps/web/.next/static/chunks/{6571-4926c18afdccf9da.js → 6571-19643f070a60b4e4.js} +1 -1
  393. package/dist/web/apps/web/.next/static/chunks/app/_not-found/page-127a32291f0136fa.js +1 -0
  394. package/dist/web/apps/web/.next/static/chunks/app/api/activity/commits/route-127a32291f0136fa.js +1 -0
  395. package/dist/web/apps/web/.next/static/chunks/app/api/activity/route-127a32291f0136fa.js +1 -0
  396. package/dist/web/apps/web/.next/static/chunks/app/api/activity/timeline/route-127a32291f0136fa.js +1 -0
  397. package/dist/web/apps/web/.next/static/chunks/app/api/adapters/route-127a32291f0136fa.js +1 -0
  398. package/dist/web/apps/web/.next/static/chunks/app/api/agent/route-127a32291f0136fa.js +1 -0
  399. package/dist/web/apps/web/.next/static/chunks/app/api/agents/capabilities/route-127a32291f0136fa.js +1 -0
  400. package/dist/web/apps/web/.next/static/chunks/app/api/audit/list/route-127a32291f0136fa.js +1 -0
  401. package/dist/web/apps/web/.next/static/chunks/app/api/audit/proof/route-127a32291f0136fa.js +1 -0
  402. package/dist/web/apps/web/.next/static/chunks/app/api/audit/verify/route-127a32291f0136fa.js +1 -0
  403. package/dist/web/apps/web/.next/static/chunks/app/api/backlog/import/route-127a32291f0136fa.js +1 -0
  404. package/dist/web/apps/web/.next/static/chunks/app/api/backlog/list/route-127a32291f0136fa.js +1 -0
  405. package/dist/web/apps/web/.next/static/chunks/app/api/brain/route-127a32291f0136fa.js +1 -0
  406. package/dist/web/apps/web/.next/static/chunks/app/api/budget/status/route-127a32291f0136fa.js +1 -0
  407. package/dist/web/apps/web/.next/static/chunks/app/api/channel/decision/route-127a32291f0136fa.js +1 -0
  408. package/dist/web/apps/web/.next/static/chunks/app/api/channel/digest/route-127a32291f0136fa.js +1 -0
  409. package/dist/web/apps/web/.next/static/chunks/app/api/channel/grep/route-127a32291f0136fa.js +1 -0
  410. package/dist/web/apps/web/.next/static/chunks/app/api/channel/send/route-127a32291f0136fa.js +1 -0
  411. package/dist/web/apps/web/.next/static/chunks/app/api/channel/stream/route-127a32291f0136fa.js +1 -0
  412. package/dist/web/apps/web/.next/static/chunks/app/api/channel/tail/route-127a32291f0136fa.js +1 -0
  413. package/dist/web/apps/web/.next/static/chunks/app/api/cost/route-127a32291f0136fa.js +1 -0
  414. package/dist/web/apps/web/.next/static/chunks/app/api/diagnostic/route-127a32291f0136fa.js +1 -0
  415. package/dist/web/apps/web/.next/static/chunks/app/api/doctor/route-127a32291f0136fa.js +1 -0
  416. package/dist/web/apps/web/.next/static/chunks/app/api/events/tail/route-127a32291f0136fa.js +1 -0
  417. package/dist/web/apps/web/.next/static/chunks/app/api/federation/connect/route-127a32291f0136fa.js +1 -0
  418. package/dist/web/apps/web/.next/static/chunks/app/api/federation/route-127a32291f0136fa.js +1 -0
  419. package/dist/web/apps/web/.next/static/chunks/app/api/health/route-127a32291f0136fa.js +1 -0
  420. package/dist/web/apps/web/.next/static/chunks/app/api/healthz/route-127a32291f0136fa.js +1 -0
  421. package/dist/web/apps/web/.next/static/chunks/app/api/inbox/post/route-127a32291f0136fa.js +1 -0
  422. package/dist/web/apps/web/.next/static/chunks/app/api/insights/recent/route-127a32291f0136fa.js +1 -0
  423. package/dist/web/apps/web/.next/static/chunks/app/api/insights/route-127a32291f0136fa.js +1 -0
  424. package/dist/web/apps/web/.next/static/chunks/app/api/intent/ask/route-127a32291f0136fa.js +1 -0
  425. package/dist/web/apps/web/.next/static/chunks/app/api/lane/route-127a32291f0136fa.js +1 -0
  426. package/dist/web/apps/web/.next/static/chunks/app/api/learning/drift/route-127a32291f0136fa.js +1 -0
  427. package/dist/web/apps/web/.next/static/chunks/app/api/learning/proposals/route-127a32291f0136fa.js +1 -0
  428. package/dist/web/apps/web/.next/static/chunks/app/api/learning/self-learning/route-127a32291f0136fa.js +1 -0
  429. package/dist/web/apps/web/.next/static/chunks/app/api/maya/launch/route-127a32291f0136fa.js +1 -0
  430. package/dist/web/apps/web/.next/static/chunks/app/api/maya/route-127a32291f0136fa.js +1 -0
  431. package/dist/web/apps/web/.next/static/chunks/app/api/mcp/audit/route-127a32291f0136fa.js +1 -0
  432. package/dist/web/apps/web/.next/static/chunks/app/api/memory/entry/[id]/route-127a32291f0136fa.js +1 -0
  433. package/dist/web/apps/web/.next/static/chunks/app/api/memory/route-127a32291f0136fa.js +1 -0
  434. package/dist/web/apps/web/.next/static/chunks/app/api/mode/route-127a32291f0136fa.js +1 -0
  435. package/dist/web/apps/web/.next/static/chunks/app/api/ops/adapters/route-127a32291f0136fa.js +1 -0
  436. package/dist/web/apps/web/.next/static/chunks/app/api/ops/cost/route-127a32291f0136fa.js +1 -0
  437. package/dist/web/apps/web/.next/static/chunks/app/api/ops/dispatch/route-127a32291f0136fa.js +1 -0
  438. package/dist/web/apps/web/.next/static/chunks/app/api/ops/live/route-127a32291f0136fa.js +1 -0
  439. package/dist/web/apps/web/.next/static/chunks/app/api/ops/maya/route-127a32291f0136fa.js +1 -0
  440. package/dist/web/apps/web/.next/static/chunks/app/api/ops/status/route-127a32291f0136fa.js +1 -0
  441. package/dist/web/apps/web/.next/static/chunks/app/api/optimizations/route-127a32291f0136fa.js +1 -0
  442. package/dist/web/apps/web/.next/static/chunks/app/api/ownership/route-127a32291f0136fa.js +1 -0
  443. package/dist/web/apps/web/.next/static/chunks/app/api/parallel/declared-scopes/route-127a32291f0136fa.js +1 -0
  444. package/dist/web/apps/web/.next/static/chunks/app/api/parallel/plan/route-127a32291f0136fa.js +1 -0
  445. package/dist/web/apps/web/.next/static/chunks/app/api/parallel/review/route-127a32291f0136fa.js +1 -0
  446. package/dist/web/apps/web/.next/static/chunks/app/api/projects/route-127a32291f0136fa.js +1 -0
  447. package/dist/web/apps/web/.next/static/chunks/app/api/self-learning/apply/route-127a32291f0136fa.js +1 -0
  448. package/dist/web/apps/web/.next/static/chunks/app/api/self-learning/rollback/route-127a32291f0136fa.js +1 -0
  449. package/dist/web/apps/web/.next/static/chunks/app/api/slash-commands/route-127a32291f0136fa.js +1 -0
  450. package/dist/web/apps/web/.next/static/chunks/app/api/state/route-127a32291f0136fa.js +1 -0
  451. package/dist/web/apps/web/.next/static/chunks/app/api/state/sse/route-127a32291f0136fa.js +1 -0
  452. package/dist/web/apps/web/.next/static/chunks/app/api/steward/recommend/route-127a32291f0136fa.js +1 -0
  453. package/dist/web/apps/web/.next/static/chunks/app/api/steward/report/route-127a32291f0136fa.js +1 -0
  454. package/dist/web/apps/web/.next/static/chunks/app/api/steward/status/route-127a32291f0136fa.js +1 -0
  455. package/dist/web/apps/web/.next/static/chunks/app/api/task-templates/route-127a32291f0136fa.js +1 -0
  456. package/dist/web/apps/web/.next/static/chunks/app/api/tasks/route-127a32291f0136fa.js +1 -0
  457. package/dist/web/apps/web/.next/static/chunks/app/api/telemetry/latency/route-127a32291f0136fa.js +1 -0
  458. package/dist/web/apps/web/.next/static/chunks/app/api/telemetry/route-127a32291f0136fa.js +1 -0
  459. package/dist/web/apps/web/.next/static/chunks/app/api/telemetry/summary/route-127a32291f0136fa.js +1 -0
  460. package/dist/web/apps/web/.next/static/chunks/app/api/trust/history/route-127a32291f0136fa.js +1 -0
  461. package/dist/web/apps/web/.next/static/chunks/app/api/trust/route-127a32291f0136fa.js +1 -0
  462. package/dist/web/apps/web/.next/static/chunks/app/api/version/route-127a32291f0136fa.js +1 -0
  463. package/dist/web/apps/web/.next/static/chunks/app/api/workspaces/route-127a32291f0136fa.js +1 -0
  464. package/dist/web/apps/web/.next/static/chunks/app/project/[id]/hub/{page-cfcb91f03020a4c0.js → page-19ead41663db75bc.js} +1 -1
  465. package/dist/web/apps/web/.next/static/chunks/app/project/[id]/learning/{page-62446fd6b6427f7f.js → page-3345dcdf86a1260a.js} +1 -1
  466. package/dist/web/apps/web/.next/static/chunks/app/project/[id]/{page-3334a5559615858c.js → page-cf8c6caf731954fe.js} +1 -1
  467. package/dist/web/apps/web/.next/static/chunks/app/project/[id]/parallel/{page-6c0c654095e6e731.js → page-9555f587b9912a33.js} +1 -1
  468. package/dist/web/apps/web/.next/static/chunks/app/project/[id]/security/{page-917276f4102a843c.js → page-ce2f01ff8a0e4fd6.js} +1 -1
  469. package/dist/web/apps/web/.next/static/css/24bf3450befb1949.css +3 -0
  470. package/dist/web/apps/web/.next/static/u1mTHFQSBMqUVp0WvYyDm/_buildManifest.js +1 -0
  471. package/dist/web/apps/web/package.json +1 -1
  472. package/dist/web/package.json +12 -4
  473. package/dist/web/src/commands/inbox.ts +31 -10
  474. package/package.json +12 -4
  475. package/dist/web/apps/web/.next/server/chunks/3580.js +0 -1
  476. package/dist/web/apps/web/.next/static/chunks/3026-6bc23be91c90ed9f.js +0 -1
  477. package/dist/web/apps/web/.next/static/chunks/app/_not-found/page-a70bccc302b6ea3b.js +0 -1
  478. package/dist/web/apps/web/.next/static/chunks/app/api/activity/commits/route-a70bccc302b6ea3b.js +0 -1
  479. package/dist/web/apps/web/.next/static/chunks/app/api/activity/route-a70bccc302b6ea3b.js +0 -1
  480. package/dist/web/apps/web/.next/static/chunks/app/api/activity/timeline/route-a70bccc302b6ea3b.js +0 -1
  481. package/dist/web/apps/web/.next/static/chunks/app/api/adapters/route-a70bccc302b6ea3b.js +0 -1
  482. package/dist/web/apps/web/.next/static/chunks/app/api/agent/route-a70bccc302b6ea3b.js +0 -1
  483. package/dist/web/apps/web/.next/static/chunks/app/api/agents/capabilities/route-a70bccc302b6ea3b.js +0 -1
  484. package/dist/web/apps/web/.next/static/chunks/app/api/audit/list/route-a70bccc302b6ea3b.js +0 -1
  485. package/dist/web/apps/web/.next/static/chunks/app/api/audit/proof/route-a70bccc302b6ea3b.js +0 -1
  486. package/dist/web/apps/web/.next/static/chunks/app/api/audit/verify/route-a70bccc302b6ea3b.js +0 -1
  487. package/dist/web/apps/web/.next/static/chunks/app/api/backlog/import/route-a70bccc302b6ea3b.js +0 -1
  488. package/dist/web/apps/web/.next/static/chunks/app/api/backlog/list/route-a70bccc302b6ea3b.js +0 -1
  489. package/dist/web/apps/web/.next/static/chunks/app/api/brain/route-a70bccc302b6ea3b.js +0 -1
  490. package/dist/web/apps/web/.next/static/chunks/app/api/budget/status/route-a70bccc302b6ea3b.js +0 -1
  491. package/dist/web/apps/web/.next/static/chunks/app/api/channel/decision/route-a70bccc302b6ea3b.js +0 -1
  492. package/dist/web/apps/web/.next/static/chunks/app/api/channel/digest/route-a70bccc302b6ea3b.js +0 -1
  493. package/dist/web/apps/web/.next/static/chunks/app/api/channel/grep/route-a70bccc302b6ea3b.js +0 -1
  494. package/dist/web/apps/web/.next/static/chunks/app/api/channel/send/route-a70bccc302b6ea3b.js +0 -1
  495. package/dist/web/apps/web/.next/static/chunks/app/api/channel/stream/route-a70bccc302b6ea3b.js +0 -1
  496. package/dist/web/apps/web/.next/static/chunks/app/api/channel/tail/route-a70bccc302b6ea3b.js +0 -1
  497. package/dist/web/apps/web/.next/static/chunks/app/api/cost/route-a70bccc302b6ea3b.js +0 -1
  498. package/dist/web/apps/web/.next/static/chunks/app/api/diagnostic/route-a70bccc302b6ea3b.js +0 -1
  499. package/dist/web/apps/web/.next/static/chunks/app/api/doctor/route-a70bccc302b6ea3b.js +0 -1
  500. package/dist/web/apps/web/.next/static/chunks/app/api/events/tail/route-a70bccc302b6ea3b.js +0 -1
  501. package/dist/web/apps/web/.next/static/chunks/app/api/federation/connect/route-a70bccc302b6ea3b.js +0 -1
  502. package/dist/web/apps/web/.next/static/chunks/app/api/federation/route-a70bccc302b6ea3b.js +0 -1
  503. package/dist/web/apps/web/.next/static/chunks/app/api/health/route-a70bccc302b6ea3b.js +0 -1
  504. package/dist/web/apps/web/.next/static/chunks/app/api/healthz/route-a70bccc302b6ea3b.js +0 -1
  505. package/dist/web/apps/web/.next/static/chunks/app/api/inbox/post/route-a70bccc302b6ea3b.js +0 -1
  506. package/dist/web/apps/web/.next/static/chunks/app/api/insights/recent/route-a70bccc302b6ea3b.js +0 -1
  507. package/dist/web/apps/web/.next/static/chunks/app/api/insights/route-a70bccc302b6ea3b.js +0 -1
  508. package/dist/web/apps/web/.next/static/chunks/app/api/intent/ask/route-a70bccc302b6ea3b.js +0 -1
  509. package/dist/web/apps/web/.next/static/chunks/app/api/lane/route-a70bccc302b6ea3b.js +0 -1
  510. package/dist/web/apps/web/.next/static/chunks/app/api/learning/drift/route-a70bccc302b6ea3b.js +0 -1
  511. package/dist/web/apps/web/.next/static/chunks/app/api/learning/proposals/route-a70bccc302b6ea3b.js +0 -1
  512. package/dist/web/apps/web/.next/static/chunks/app/api/learning/self-learning/route-a70bccc302b6ea3b.js +0 -1
  513. package/dist/web/apps/web/.next/static/chunks/app/api/maya/route-a70bccc302b6ea3b.js +0 -1
  514. package/dist/web/apps/web/.next/static/chunks/app/api/mcp/audit/route-a70bccc302b6ea3b.js +0 -1
  515. package/dist/web/apps/web/.next/static/chunks/app/api/memory/entry/[id]/route-a70bccc302b6ea3b.js +0 -1
  516. package/dist/web/apps/web/.next/static/chunks/app/api/memory/route-a70bccc302b6ea3b.js +0 -1
  517. package/dist/web/apps/web/.next/static/chunks/app/api/mode/route-a70bccc302b6ea3b.js +0 -1
  518. package/dist/web/apps/web/.next/static/chunks/app/api/ops/adapters/route-a70bccc302b6ea3b.js +0 -1
  519. package/dist/web/apps/web/.next/static/chunks/app/api/ops/cost/route-a70bccc302b6ea3b.js +0 -1
  520. package/dist/web/apps/web/.next/static/chunks/app/api/ops/dispatch/route-a70bccc302b6ea3b.js +0 -1
  521. package/dist/web/apps/web/.next/static/chunks/app/api/ops/live/route-a70bccc302b6ea3b.js +0 -1
  522. package/dist/web/apps/web/.next/static/chunks/app/api/ops/maya/route-a70bccc302b6ea3b.js +0 -1
  523. package/dist/web/apps/web/.next/static/chunks/app/api/ops/status/route-a70bccc302b6ea3b.js +0 -1
  524. package/dist/web/apps/web/.next/static/chunks/app/api/optimizations/route-a70bccc302b6ea3b.js +0 -1
  525. package/dist/web/apps/web/.next/static/chunks/app/api/ownership/route-a70bccc302b6ea3b.js +0 -1
  526. package/dist/web/apps/web/.next/static/chunks/app/api/parallel/declared-scopes/route-a70bccc302b6ea3b.js +0 -1
  527. package/dist/web/apps/web/.next/static/chunks/app/api/parallel/plan/route-a70bccc302b6ea3b.js +0 -1
  528. package/dist/web/apps/web/.next/static/chunks/app/api/parallel/review/route-a70bccc302b6ea3b.js +0 -1
  529. package/dist/web/apps/web/.next/static/chunks/app/api/projects/route-a70bccc302b6ea3b.js +0 -1
  530. package/dist/web/apps/web/.next/static/chunks/app/api/self-learning/apply/route-a70bccc302b6ea3b.js +0 -1
  531. package/dist/web/apps/web/.next/static/chunks/app/api/self-learning/rollback/route-a70bccc302b6ea3b.js +0 -1
  532. package/dist/web/apps/web/.next/static/chunks/app/api/slash-commands/route-a70bccc302b6ea3b.js +0 -1
  533. package/dist/web/apps/web/.next/static/chunks/app/api/state/route-a70bccc302b6ea3b.js +0 -1
  534. package/dist/web/apps/web/.next/static/chunks/app/api/state/sse/route-a70bccc302b6ea3b.js +0 -1
  535. package/dist/web/apps/web/.next/static/chunks/app/api/steward/recommend/route-a70bccc302b6ea3b.js +0 -1
  536. package/dist/web/apps/web/.next/static/chunks/app/api/steward/report/route-a70bccc302b6ea3b.js +0 -1
  537. package/dist/web/apps/web/.next/static/chunks/app/api/steward/status/route-a70bccc302b6ea3b.js +0 -1
  538. package/dist/web/apps/web/.next/static/chunks/app/api/task-templates/route-a70bccc302b6ea3b.js +0 -1
  539. package/dist/web/apps/web/.next/static/chunks/app/api/tasks/route-a70bccc302b6ea3b.js +0 -1
  540. package/dist/web/apps/web/.next/static/chunks/app/api/telemetry/latency/route-a70bccc302b6ea3b.js +0 -1
  541. package/dist/web/apps/web/.next/static/chunks/app/api/telemetry/route-a70bccc302b6ea3b.js +0 -1
  542. package/dist/web/apps/web/.next/static/chunks/app/api/telemetry/summary/route-a70bccc302b6ea3b.js +0 -1
  543. package/dist/web/apps/web/.next/static/chunks/app/api/trust/history/route-a70bccc302b6ea3b.js +0 -1
  544. package/dist/web/apps/web/.next/static/chunks/app/api/trust/route-a70bccc302b6ea3b.js +0 -1
  545. package/dist/web/apps/web/.next/static/chunks/app/api/workspaces/route-a70bccc302b6ea3b.js +0 -1
  546. package/dist/web/apps/web/.next/static/css/1ff71ef41c19ef56.css +0 -3
  547. package/dist/web/apps/web/.next/static/sTi0uHhimWwuhMoRG-wR5/_buildManifest.js +0 -1
  548. /package/dist/web/apps/web/.next/static/{sTi0uHhimWwuhMoRG-wR5 → u1mTHFQSBMqUVp0WvYyDm}/_ssgManifest.js +0 -0
package/README.md CHANGED
@@ -14,6 +14,9 @@
14
14
  | **Approval routing without writing a workflow engine** | 3 operational modes (MANUAL / COPILOT / AUTOPILOT) with per-criticality overrides | `cordn8 mode get` |
15
15
  | **Release gate that catches agent regressions before merge** | Maya — 22 journeys + 10 gates, auto-runs against your repo | `cordn8 maya` |
16
16
  | **Mix Claude, GPT, Hermes, Ollama, Groq on the same task** | Universal Adapter Surface — same dispatch, any agent | `cordn8 install --list` |
17
+ | **Dispatch by describing the goal, not memorizing flags** | Intent Engine — natural-language `do --ai` / `ask` with risk + friction scoring | `cordn8 ask "who's idle?"` |
18
+ | **Ground agent work in trusted sources + locked decisions** | Context Spine — Source Vault, Decision Ledger, Mission Brief, Evidence-Lite gating | `cordn8 sources list` |
19
+ | **Prove a deliverable is launch-ready, not just that it built** | Maya Launch-Readiness — pluggable evidence sources → PASS/WARN/FAIL + auto-tasks | `cordn8 maya launch-check` |
17
20
  | **Quantified ROI** — see what coordination is actually saving you | Per-agent dispatch volume, approvals routed, stale entries triaged | `cordn8 stats` |
18
21
  | **You can walk away with everything** | Plain markdown + JSON + ndjson export with SHA-256 manifest | `cordn8 export-all` |
19
22
 
@@ -104,15 +107,16 @@ The CLI surfaces ~240 commands; the groups below cover most day-to-day work. Run
104
107
  | Group | What it does | Examples |
105
108
  | --- | --- | --- |
106
109
  | **Lifecycle** | Bootstrap, watch, doctor, deploy | `init`, `watch`, `doctor`, `ship`, `preview` |
107
- | **Dispatch** | Send work, approve, deny, inspect tasks | `do`, `send`, `dispatch`, `approve`, `deny`, `task show` |
108
- | **Channel** | Inspect the append-only coordination log | `channel tail`, `channel grep`, `channel digest`, `channel restore` |
110
+ | **Dispatch** | Send work, approve, deny, inspect tasks | `do`, `do --ai`, `ask`, `send`, `dispatch`, `approve`, `deny`, `task show` |
111
+ | **Channel** | Inspect + broadcast on the append-only log | `channel tail`, `channel grep`, `channel digest`, `channel broadcast`, `channel restore` |
112
+ | **Context Spine** | Ground work in trusted sources + decisions | `sources add\|list`, `decisions add\|lock`, `brief mission` |
109
113
  | **Agents** | Install, configure, score, inspect | `install`, `agent show`, `agent capabilities`, `lane`, `ownership` |
110
114
  | **Adapters** | Manage provider integrations | `adapter list`, `adapters`, `install <provider>` |
111
115
  | **Modes** | Switch autonomy level | `mode get`, `mode set MANUAL\|COPILOT\|AUTOPILOT`, `mode optimizations` |
112
116
  | **MCP** | Manage Model Context Protocol servers | `mcp enable`, `mcp disable`, `mcp status` |
113
117
  | **Cost & Budget** | Track spend, set caps | `cost`, `budget set`, `budget status` |
114
118
  | **Memory & Insights** | Operational intelligence graph | `memory show`, `insights export`, `insights-config` |
115
- | **Maya & QC** | Release gates and continuous validation | `maya`, `maya --fix-plan`, `qc`, `doctor --explain` |
119
+ | **Maya & QC** | Release gates + launch-readiness evidence | `maya`, `maya launch-check`, `maya --fix-plan`, `qc`, `doctor --explain` |
116
120
  | **Steward** | Artifact lifecycle (score, transition, archive) | `steward run` |
117
121
  | **Diagnostics** | Triage and support | `why <msg_id>`, `error <code>`, `export <bundle>`, `friction "..."` |
118
122
 
@@ -134,10 +138,13 @@ Current built-in and documented paths include:
134
138
 
135
139
  - **Hermes** — local CLI integration
136
140
  - **NVIDIA NIM** — cloud API integration and a low-friction first real agent
137
- - **Anthropic** — Claude via the Messages API (preview)
141
+ - **Anthropic** — Claude via the Messages API
138
142
  - **OpenAI** — chat-completions adapter
143
+ - **Groq** — fast hosted inference (OpenAI-compatible)
144
+ - **Ollama** — fully local models, no API key
145
+ - **OpenRouter** — single key, many hosted models
139
146
  - **Antigravity** — IDE-assisted workflow using Cordn8 skills and inbox routing
140
- - **Mock/local stub** — offline development, CI, and smoke-test paths
147
+ - **Mock / local stub** — offline development, CI, and smoke-test paths
141
148
  - **Custom adapters** — adapter contract, plugin guidance, and conformance testing
142
149
 
143
150
  See [Adapter Docs](docs/adapters/README.md) and [Write Your Own Adapter](docs/adapters/write-your-own.md).
@@ -436,6 +436,8 @@ const MESSAGE_KEYS = new Set([
436
436
  'TASK_PARENT', 'TASK_QC_STATUS', 'TASK_FILES',
437
437
  // V1.10 HO-K Project Intent & Drift
438
438
  'PROJECT_INTENT_SHA', 'INTENT_DRIFT',
439
+ // Context Spine attachment (post-V1.14)
440
+ 'MISSION_BRIEF_ID', 'CITED_DECISIONS', 'CITED_SOURCES',
439
441
  ]);
440
442
  function parseSingleMessage(text) {
441
443
  if (!text.startsWith('MSG_ID:')) {
@@ -609,6 +611,26 @@ function parseSingleMessage(text) {
609
611
  case 'INTENT_DRIFT':
610
612
  msg.intent_drift = val;
611
613
  break;
614
+ // Context Spine attachment (post-V1.14)
615
+ case 'MISSION_BRIEF_ID':
616
+ msg.mission_brief_id = val;
617
+ break;
618
+ case 'CITED_DECISIONS':
619
+ try {
620
+ msg.cited_decisions = JSON.parse(val);
621
+ }
622
+ catch (e) {
623
+ warnings.push(`Invalid JSON in CITED_DECISIONS`);
624
+ } // eslint-disable-line @typescript-eslint/no-unused-vars
625
+ break;
626
+ case 'CITED_SOURCES':
627
+ try {
628
+ msg.cited_sources = JSON.parse(val);
629
+ }
630
+ catch (e) {
631
+ warnings.push(`Invalid JSON in CITED_SOURCES`);
632
+ } // eslint-disable-line @typescript-eslint/no-unused-vars
633
+ break;
612
634
  default:
613
635
  warnings.push(`Stray line with unrecognized key '${currentKey}'`);
614
636
  break;
@@ -1 +1 @@
1
- {"version":3,"file":"reader.js","sourceRoot":"","sources":["../../src/channel/reader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reader.js","sourceRoot":"","sources":["../../src/channel/reader.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,37 @@
1
+ export interface AutoResolveOptions {
2
+ project: string;
3
+ /** Apply writes. False = dry-run; report what *would* be resolved. */
4
+ apply?: boolean;
5
+ /** Minimum age in minutes before a BLOCKED is eligible. Default 30. */
6
+ minAgeMinutes?: number;
7
+ /** Look back this many days in git for matching commits. Default 14. */
8
+ lookbackDays?: number;
9
+ /** Cap the number of resolves per tick (safety throttle). Default 25. */
10
+ maxPerTick?: number;
11
+ }
12
+ export interface AutoResolveReport {
13
+ /** task_refs we evaluated this tick. */
14
+ evaluated: string[];
15
+ /** task_refs that had matching commits and would be / were resolved. */
16
+ matched: Array<{
17
+ task_ref: string;
18
+ msg_ids: string[];
19
+ commits: string[];
20
+ }>;
21
+ /** What we actually wrote (apply mode only). */
22
+ resolved: Array<{
23
+ task_ref: string;
24
+ msg_ids: string[];
25
+ commits: string[];
26
+ }>;
27
+ /** Skipped task_refs + why. */
28
+ skipped: Array<{
29
+ task_ref: string;
30
+ reason: string;
31
+ }>;
32
+ }
33
+ export declare function runAutoResolveOnce(opts: AutoResolveOptions): Promise<AutoResolveReport>;
34
+ /** Convenience: lazy-imports so the watcher hot path doesn't drag this
35
+ * module in until the timer first fires. */
36
+ export declare function runAutoResolveSafe(opts: AutoResolveOptions): Promise<void>;
37
+ //# sourceMappingURL=watcher-auto-resolve.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"watcher-auto-resolve.d.ts","sourceRoot":"","sources":["../../src/channel/watcher-auto-resolve.ts"],"names":[],"mappings":"AAmCA,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,sEAAsE;IACtE,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,uEAAuE;IACvE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,wEAAwE;IACxE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,yEAAyE;IACzE,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,iBAAiB;IAChC,wCAAwC;IACxC,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,wEAAwE;IACxE,OAAO,EAAE,KAAK,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,EAAE,CAAC;QAAC,OAAO,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,CAAC;IAC3E,gDAAgD;IAChD,QAAQ,EAAE,KAAK,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,EAAE,CAAC;QAAC,OAAO,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,CAAC;IAC5E,+BAA+B;IAC/B,OAAO,EAAE,KAAK,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACtD;AAuFD,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,kBAAkB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAwF7F;AAED;6CAC6C;AAC7C,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CAYhF"}
@@ -0,0 +1,212 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.runAutoResolveOnce = runAutoResolveOnce;
4
+ exports.runAutoResolveSafe = runAutoResolveSafe;
5
+ /**
6
+ * Watcher auto-resolve (Task #37 — Round 5 followup).
7
+ *
8
+ * The watcher's manual cousin `cordn8 channel triage --shipped <prefix>
9
+ * --commits <refs> --apply` exists since Round 5 — but it only runs when
10
+ * the operator types it. This module scans the channel on the watcher's
11
+ * tick, asks git "have any commits since the BLOCKED message landed that
12
+ * reference its task_ref?", and if yes, calls the same triage code path
13
+ * with `apply: true` so the BLOCKED gets RESOLVED automatically.
14
+ *
15
+ * Safety rules (the why-it's-conservative bit — match the manual triage
16
+ * contract, since this is the auto version of the same tool):
17
+ *
18
+ * 1. Only acts on STATUS=BLOCKED messages older than --min-age-minutes
19
+ * (default 30). Stops the watcher from racing a fresh BLOCKED that
20
+ * might still be live.
21
+ * 2. Requires AT LEAST ONE commit mentioning the task_ref in subject
22
+ * or body since the BLOCKED's timestamp. The triage tool requires
23
+ * --commits proof; we feed it the SHAs we found as that proof.
24
+ * 3. Idempotent: skips any task_ref that already has a TRIAGE-SHIPPED
25
+ * follow-up. The existing triage code does this check, but we also
26
+ * short-circuit early so we don't shell out to git for nothing.
27
+ * 4. Uses the existing safe channel writer + spine envelope fields, so
28
+ * auto-resolves are indistinguishable from manual ones in audit.
29
+ * 5. Read-only by default. The caller (watcher) must pass `apply: true`
30
+ * for writes — matches the rest of the triage tooling's posture.
31
+ */
32
+ const child_process_1 = require("child_process");
33
+ const reader_1 = require("./reader");
34
+ const config_1 = require("../storage/config");
35
+ const channel_triage_1 = require("../commands/channel-triage");
36
+ const logger_1 = require("../utils/logger");
37
+ const SAFE_TASK_REF = /^[A-Za-z0-9._\-/]+$/;
38
+ const DEFAULTS = { minAgeMinutes: 30, lookbackDays: 14, maxPerTick: 25 };
39
+ /**
40
+ * task_refs that are emitted by Cordn8's own system loops and will
41
+ * NEVER have a matching commit (they're not work; they're noise the
42
+ * orchestrator generates itself). Skipping them avoids a `git log`
43
+ * shell + scan every tick for each one. Use `cordn8 channel triage
44
+ * --stale --days N --apply` to clean them up on a wider cadence.
45
+ */
46
+ const SYSTEM_TASK_REFS = new Set([
47
+ 'V1.10-CONFUSED-WATCHDOG-BACKGROUND',
48
+ ]);
49
+ /**
50
+ * True if any later message has audit_cleared_for matching one of these
51
+ * msg_ids — under ANY of the four canonical TRIAGE-* task_refs.
52
+ *
53
+ * The original implementation only checked task_ref === 'TRIAGE-SHIPPED',
54
+ * which caused a real false-negative: BLOCKEDs previously cleared by
55
+ * --stale or --pending-stale (very common, since those run on a wider
56
+ * cadence) looked unresolved to the watcher, so it kept re-trying them
57
+ * every 10 min. The inner runChannelTriage --shipped path then correctly
58
+ * skipped them via its own `alreadyTriaged` gate — which uses ALL four
59
+ * labels — so nothing was double-resolved, just wasted scan work.
60
+ *
61
+ * Matches the canonical idempotency check at
62
+ * src/commands/channel-triage.ts (search: `alreadyTriaged.add(cleared)`).
63
+ */
64
+ const TRIAGE_LABELS = new Set([
65
+ 'TRIAGE-SHIPPED',
66
+ 'TRIAGE-STALE',
67
+ 'TRIAGE-CORRUPTED',
68
+ 'TRIAGE-PENDING-STALE',
69
+ ]);
70
+ function hasTriageResolution(messages, msgIds) {
71
+ const idSet = new Set(msgIds);
72
+ for (const m of messages) {
73
+ if (!m.task_ref || !TRIAGE_LABELS.has(m.task_ref))
74
+ continue;
75
+ const md = m;
76
+ const cleared = md.audit_cleared_for ?? md.approval_metadata?.audit_cleared_for;
77
+ if (cleared && idSet.has(cleared))
78
+ return true;
79
+ }
80
+ return false;
81
+ }
82
+ /**
83
+ * Find git commits in the last `lookbackDays` whose subject or body
84
+ * mentions the task_ref. Returns short SHAs (cap 5). Returns [] on any
85
+ * failure (so a non-git or shallow project never breaks the watcher).
86
+ *
87
+ * task_ref is validated against SAFE_TASK_REF before being passed to
88
+ * git, so it can't inject arguments. execFile (not exec) means no shell.
89
+ */
90
+ function commitsMentioningTaskRef(projectRoot, taskRef, lookbackDays) {
91
+ if (!SAFE_TASK_REF.test(taskRef))
92
+ return [];
93
+ try {
94
+ // --grep over both subject and body via -i with task_ref literal.
95
+ // --extended-regexp lets a future taskRef containing dots match exactly.
96
+ const out = (0, child_process_1.execFileSync)('git', [
97
+ '-C',
98
+ projectRoot,
99
+ 'log',
100
+ `--since=${lookbackDays}.days.ago`,
101
+ '--all',
102
+ '-i',
103
+ '-E',
104
+ `--grep=${taskRef.replace(/[.+?^${}()|[\]\\]/g, '\\$&')}`,
105
+ '--pretty=format:%h',
106
+ '-n',
107
+ '5',
108
+ ], { stdio: ['ignore', 'pipe', 'ignore'], timeout: 15_000 }).toString().trim();
109
+ return out ? out.split('\n').map((s) => s.trim()).filter(Boolean) : [];
110
+ }
111
+ catch {
112
+ return [];
113
+ }
114
+ }
115
+ async function runAutoResolveOnce(opts) {
116
+ const minAgeMinutes = opts.minAgeMinutes ?? DEFAULTS.minAgeMinutes;
117
+ const lookbackDays = opts.lookbackDays ?? DEFAULTS.lookbackDays;
118
+ const maxPerTick = opts.maxPerTick ?? DEFAULTS.maxPerTick;
119
+ const report = { evaluated: [], matched: [], resolved: [], skipped: [] };
120
+ const config = await (0, config_1.loadConfig)(opts.project);
121
+ if (!config?.storage_path) {
122
+ report.skipped.push({ task_ref: '(all)', reason: 'config or storage_path missing' });
123
+ return report;
124
+ }
125
+ const messages = await (0, reader_1.readChannel)(config.storage_path).catch(() => []);
126
+ if (messages.length === 0)
127
+ return report;
128
+ const now = Date.now();
129
+ const ageCutoffMs = now - minAgeMinutes * 60_000;
130
+ // Group BLOCKED messages by task_ref.
131
+ const groups = new Map();
132
+ for (const m of messages) {
133
+ if (m.status !== 'BLOCKED')
134
+ continue;
135
+ if (!m.task_ref)
136
+ continue;
137
+ const t = Date.parse(m.timestamp);
138
+ if (!Number.isFinite(t) || t > ageCutoffMs)
139
+ continue;
140
+ const arr = groups.get(m.task_ref) ?? [];
141
+ arr.push(m);
142
+ groups.set(m.task_ref, arr);
143
+ }
144
+ if (groups.size === 0)
145
+ return report;
146
+ let written = 0;
147
+ for (const [taskRef, blockedMsgs] of groups) {
148
+ if (written >= maxPerTick) {
149
+ report.skipped.push({ task_ref: taskRef, reason: `max-per-tick=${maxPerTick} reached` });
150
+ continue;
151
+ }
152
+ report.evaluated.push(taskRef);
153
+ if (!SAFE_TASK_REF.test(taskRef)) {
154
+ report.skipped.push({ task_ref: taskRef, reason: 'task_ref has unsafe chars; not passing to git' });
155
+ continue;
156
+ }
157
+ if (SYSTEM_TASK_REFS.has(taskRef)) {
158
+ report.skipped.push({ task_ref: taskRef, reason: 'system-emitted task_ref (never ships via commit)' });
159
+ continue;
160
+ }
161
+ if (hasTriageResolution(messages, blockedMsgs.map((m) => m.msg_id))) {
162
+ report.skipped.push({ task_ref: taskRef, reason: 'already TRIAGE-* resolved' });
163
+ continue;
164
+ }
165
+ const commits = commitsMentioningTaskRef(opts.project, taskRef, lookbackDays);
166
+ if (commits.length === 0) {
167
+ report.skipped.push({ task_ref: taskRef, reason: 'no matching commits in lookback window' });
168
+ continue;
169
+ }
170
+ const match = {
171
+ task_ref: taskRef,
172
+ msg_ids: blockedMsgs.map((m) => m.msg_id),
173
+ commits,
174
+ };
175
+ report.matched.push(match);
176
+ if (opts.apply) {
177
+ try {
178
+ await (0, channel_triage_1.runChannelTriage)({
179
+ project: opts.project,
180
+ shipped: taskRef,
181
+ commits,
182
+ apply: true,
183
+ yes: true,
184
+ });
185
+ report.resolved.push(match);
186
+ written += 1;
187
+ }
188
+ catch (err) {
189
+ report.skipped.push({
190
+ task_ref: taskRef,
191
+ reason: `triage call failed: ${err instanceof Error ? err.message : String(err)}`,
192
+ });
193
+ }
194
+ }
195
+ }
196
+ return report;
197
+ }
198
+ /** Convenience: lazy-imports so the watcher hot path doesn't drag this
199
+ * module in until the timer first fires. */
200
+ async function runAutoResolveSafe(opts) {
201
+ try {
202
+ const r = await runAutoResolveOnce(opts);
203
+ if (r.resolved.length > 0 || r.matched.length > 0) {
204
+ logger_1.logger.info(`[watcher-auto-resolve] evaluated=${r.evaluated.length} matched=${r.matched.length} resolved=${r.resolved.length} skipped=${r.skipped.length}`);
205
+ }
206
+ }
207
+ catch (err) {
208
+ // Never let an auto-resolve error kill the watcher.
209
+ logger_1.logger.warn(`[watcher-auto-resolve] tick errored: ${err instanceof Error ? err.message : String(err)}`);
210
+ }
211
+ }
212
+ //# sourceMappingURL=watcher-auto-resolve.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"watcher-auto-resolve.js","sourceRoot":"","sources":["../../src/channel/watcher-auto-resolve.ts"],"names":[],"mappings":";;AA+IA,gDAwFC;AAID,gDAYC;AAvPD;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,iDAA6C;AAE7C,qCAAuC;AACvC,8CAA+C;AAC/C,+DAA8D;AAC9D,4CAAyC;AA0BzC,MAAM,aAAa,GAAG,qBAAqB,CAAC;AAC5C,MAAM,QAAQ,GAAG,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC;AAEzE;;;;;;GAMG;AACH,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAC;IAC/B,oCAAoC;CACrC,CAAC,CAAC;AAEH;;;;;;;;;;;;;;GAcG;AACH,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC;IAC5B,gBAAgB;IAChB,cAAc;IACd,kBAAkB;IAClB,sBAAsB;CACvB,CAAC,CAAC;AACH,SAAS,mBAAmB,CAAC,QAAmB,EAAE,MAAgB;IAChE,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC;IAC9B,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;QACzB,IAAI,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC;YAAE,SAAS;QAC5D,MAAM,EAAE,GAAG,CAGV,CAAC;QACF,MAAM,OAAO,GAAG,EAAE,CAAC,iBAAiB,IAAI,EAAE,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;QAChF,IAAI,OAAO,IAAI,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC;YAAE,OAAO,IAAI,CAAC;IACjD,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,wBAAwB,CAAC,WAAmB,EAAE,OAAe,EAAE,YAAoB;IAC1F,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC;QAAE,OAAO,EAAE,CAAC;IAC5C,IAAI,CAAC;QACH,kEAAkE;QAClE,yEAAyE;QACzE,MAAM,GAAG,GAAG,IAAA,4BAAY,EACtB,KAAK,EACL;YACE,IAAI;YACJ,WAAW;YACX,KAAK;YACL,WAAW,YAAY,WAAW;YAClC,OAAO;YACP,IAAI;YACJ,IAAI;YACJ,UAAU,OAAO,CAAC,OAAO,CAAC,oBAAoB,EAAE,MAAM,CAAC,EAAE;YACzD,oBAAoB;YACpB,IAAI;YACJ,GAAG;SACJ,EACD,EAAE,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,CACzD,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;QACpB,OAAO,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACzE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAEM,KAAK,UAAU,kBAAkB,CAAC,IAAwB;IAC/D,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa,IAAI,QAAQ,CAAC,aAAa,CAAC;IACnE,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,IAAI,QAAQ,CAAC,YAAY,CAAC;IAChE,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,IAAI,QAAQ,CAAC,UAAU,CAAC;IAE1D,MAAM,MAAM,GAAsB,EAAE,SAAS,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;IAE5F,MAAM,MAAM,GAAG,MAAM,IAAA,mBAAU,EAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC9C,IAAI,CAAC,MAAM,EAAE,YAAY,EAAE,CAAC;QAC1B,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,gCAAgC,EAAE,CAAC,CAAC;QACrF,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,IAAA,oBAAW,EAAC,MAAM,CAAC,YAAY,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAe,CAAC,CAAC;IACrF,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,MAAM,CAAC;IAEzC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACvB,MAAM,WAAW,GAAG,GAAG,GAAG,aAAa,GAAG,MAAM,CAAC;IAEjD,sCAAsC;IACtC,MAAM,MAAM,GAAG,IAAI,GAAG,EAAqB,CAAC;IAC5C,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;QACzB,IAAI,CAAC,CAAC,MAAM,KAAK,SAAS;YAAE,SAAS;QACrC,IAAI,CAAC,CAAC,CAAC,QAAQ;YAAE,SAAS;QAC1B,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QAClC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,WAAW;YAAE,SAAS;QACrD,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QACzC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACZ,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;IAC9B,CAAC;IAED,IAAI,MAAM,CAAC,IAAI,KAAK,CAAC;QAAE,OAAO,MAAM,CAAC;IAErC,IAAI,OAAO,GAAG,CAAC,CAAC;IAChB,KAAK,MAAM,CAAC,OAAO,EAAE,WAAW,CAAC,IAAI,MAAM,EAAE,CAAC;QAC5C,IAAI,OAAO,IAAI,UAAU,EAAE,CAAC;YAC1B,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,gBAAgB,UAAU,UAAU,EAAE,CAAC,CAAC;YACzF,SAAS;QACX,CAAC;QACD,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAE/B,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YACjC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,+CAA+C,EAAE,CAAC,CAAC;YACpG,SAAS;QACX,CAAC;QACD,IAAI,gBAAgB,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;YAClC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,kDAAkD,EAAE,CAAC,CAAC;YACvG,SAAS;QACX,CAAC;QACD,IAAI,mBAAmB,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;YACpE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,2BAA2B,EAAE,CAAC,CAAC;YAChF,SAAS;QACX,CAAC;QAED,MAAM,OAAO,GAAG,wBAAwB,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC;QAC9E,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,wCAAwC,EAAE,CAAC,CAAC;YAC7F,SAAS;QACX,CAAC;QAED,MAAM,KAAK,GAAG;YACZ,QAAQ,EAAE,OAAO;YACjB,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;YACzC,OAAO;SACR,CAAC;QACF,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAE3B,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACf,IAAI,CAAC;gBACH,MAAM,IAAA,iCAAgB,EAAC;oBACrB,OAAO,EAAE,IAAI,CAAC,OAAO;oBACrB,OAAO,EAAE,OAAO;oBAChB,OAAO;oBACP,KAAK,EAAE,IAAI;oBACX,GAAG,EAAE,IAAI;iBACV,CAAC,CAAC;gBACH,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAC5B,OAAO,IAAI,CAAC,CAAC;YACf,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC;oBAClB,QAAQ,EAAE,OAAO;oBACjB,MAAM,EAAE,uBAAuB,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;iBAClF,CAAC,CAAC;YACL,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;6CAC6C;AACtC,KAAK,UAAU,kBAAkB,CAAC,IAAwB;IAC/D,IAAI,CAAC;QACH,MAAM,CAAC,GAAG,MAAM,kBAAkB,CAAC,IAAI,CAAC,CAAC;QACzC,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAClD,eAAM,CAAC,IAAI,CACT,oCAAoC,CAAC,CAAC,SAAS,CAAC,MAAM,YAAY,CAAC,CAAC,OAAO,CAAC,MAAM,aAAa,CAAC,CAAC,QAAQ,CAAC,MAAM,YAAY,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,CAC/I,CAAC;QACJ,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,oDAAoD;QACpD,eAAM,CAAC,IAAI,CAAC,wCAAwC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC1G,CAAC;AACH,CAAC"}
@@ -26,6 +26,7 @@ export declare class UnifiedWatcher {
26
26
  private loadState;
27
27
  private saveState;
28
28
  private confusedScanTimer;
29
+ private autoResolveTimer;
29
30
  private lastConfusedAlertTime;
30
31
  private runConfusedScan;
31
32
  start(): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"watcher.d.ts","sourceRoot":"","sources":["../../src/channel/watcher.ts"],"names":[],"mappings":"AA6CA;;;;;;;;;;;GAWG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,OAAO,GAAG,SAAS,GAAG,YAAY,GAAG,UAAU,GAAG,kBAAkB,GAAG,kBAAkB,GAAG,SAAS,CAQ/I;AAED,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAMhE;AAyED,qBAAa,cAAc;IAcb,OAAO,CAAC,WAAW;IAAU,OAAO,CAAC,WAAW;IAb5D,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,KAAK,CAMX;IACF,OAAO,CAAC,OAAO,CAAa;IAC5B,OAAO,CAAC,KAAK,CAA+B;IAC5C,OAAO,CAAC,iBAAiB,CAAa;IACtC,OAAO,CAAC,eAAe,CAAgC;gBAEnC,WAAW,EAAE,MAAM,EAAU,WAAW,EAAE,MAAM;IAK7D,oBAAoB,CAAC,MAAM,EAAE,GAAG;IAIvC,OAAO,CAAC,SAAS;IAgBjB,OAAO,CAAC,SAAS;IAajB,OAAO,CAAC,iBAAiB,CAA+B;IACxD,OAAO,CAAC,qBAAqB,CAAa;YAE5B,eAAe;IAoEhB,KAAK;IAgCL,IAAI;IA0BjB,OAAO,CAAC,iBAAiB,CAA8B;IAGhD,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC;IA2iBtC;;;;;;;;;;;OAWG;YACW,eAAe;YAoDf,2BAA2B;YA+D3B,iBAAiB;IA0E/B,OAAO,CAAC,gBAAgB;IAKxB,OAAO,CAAC,sBAAsB;IAS9B,OAAO,CAAC,wBAAwB;CAMjC;AAED,wBAAsB,UAAU,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,CA2CpF;AAED,wBAAsB,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAU1E"}
1
+ {"version":3,"file":"watcher.d.ts","sourceRoot":"","sources":["../../src/channel/watcher.ts"],"names":[],"mappings":"AA6CA;;;;;;;;;;;GAWG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,OAAO,GAAG,SAAS,GAAG,YAAY,GAAG,UAAU,GAAG,kBAAkB,GAAG,kBAAkB,GAAG,SAAS,CAQ/I;AAED,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAMhE;AAyED,qBAAa,cAAc;IAcb,OAAO,CAAC,WAAW;IAAU,OAAO,CAAC,WAAW;IAb5D,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,KAAK,CAMX;IACF,OAAO,CAAC,OAAO,CAAa;IAC5B,OAAO,CAAC,KAAK,CAA+B;IAC5C,OAAO,CAAC,iBAAiB,CAAa;IACtC,OAAO,CAAC,eAAe,CAAgC;gBAEnC,WAAW,EAAE,MAAM,EAAU,WAAW,EAAE,MAAM;IAK7D,oBAAoB,CAAC,MAAM,EAAE,GAAG;IAIvC,OAAO,CAAC,SAAS;IAgBjB,OAAO,CAAC,SAAS;IAajB,OAAO,CAAC,iBAAiB,CAA+B;IAIxD,OAAO,CAAC,gBAAgB,CAA+B;IACvD,OAAO,CAAC,qBAAqB,CAAa;YAE5B,eAAe;IAoEhB,KAAK;IAgDL,IAAI;IA8BjB,OAAO,CAAC,iBAAiB,CAA8B;IAGhD,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC;IA2iBtC;;;;;;;;;;;OAWG;YACW,eAAe;YAoDf,2BAA2B;YA+D3B,iBAAiB;IA0E/B,OAAO,CAAC,gBAAgB;IAKxB,OAAO,CAAC,sBAAsB;IAS9B,OAAO,CAAC,wBAAwB;CAMjC;AAED,wBAAsB,UAAU,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,CA2CpF;AAED,wBAAsB,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAU1E"}
@@ -220,6 +220,10 @@ class UnifiedWatcher {
220
220
  }
221
221
  // V1.12 #18: Confused watchdog background scan - runs every 5 min
222
222
  confusedScanTimer = null;
223
+ // Task #37: scans BLOCKED messages, looks for matching commits, and
224
+ // auto-resolves via the existing triage-shipped pipeline. Conservative
225
+ // cadence; the work is read-mostly per tick.
226
+ autoResolveTimer = null;
223
227
  lastConfusedAlertTime = 0;
224
228
  async runConfusedScan() {
225
229
  try {
@@ -309,6 +313,22 @@ class UnifiedWatcher {
309
313
  this.confusedScanTimer = setInterval(() => {
310
314
  this.runConfusedScan();
311
315
  }, 5 * 60 * 1000); // Every 5 minutes
316
+ // Task #37 (Round 5 followup): scan BLOCKED → auto-resolve when a
317
+ // matching commit lands. Lazy-imports + caught internally so a
318
+ // failure here never disrupts the rest of the watcher loop.
319
+ const runAutoResolve = async () => {
320
+ try {
321
+ const m = await Promise.resolve().then(() => __importStar(require('./watcher-auto-resolve')));
322
+ await m.runAutoResolveSafe({ project: this.projectRoot, apply: true });
323
+ }
324
+ catch (err) {
325
+ logger_1.logger.warn(`auto-resolve module load failed: ${err instanceof Error ? err.message : String(err)}`);
326
+ }
327
+ };
328
+ // Fire once shortly after start so a fresh `cordn8 watch` cleans
329
+ // up any obviously-shipped BLOCKEDs without waiting 10 min.
330
+ setTimeout(runAutoResolve, 30_000);
331
+ this.autoResolveTimer = setInterval(runAutoResolve, 10 * 60 * 1000); // Every 10 minutes
312
332
  }
313
333
  async stop() {
314
334
  if (this.watcher) {
@@ -323,6 +343,10 @@ class UnifiedWatcher {
323
343
  clearInterval(this.confusedScanTimer);
324
344
  this.confusedScanTimer = null;
325
345
  }
346
+ if (this.autoResolveTimer) {
347
+ clearInterval(this.autoResolveTimer);
348
+ this.autoResolveTimer = null;
349
+ }
326
350
  if (this.autoRestoreHandle) {
327
351
  try {
328
352
  await this.autoRestoreHandle.stop();