@aitne/daemon 0.1.7 → 0.1.8

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 (959) hide show
  1. package/dist/adapters/dashboard-adapter.d.ts +18 -2
  2. package/dist/adapters/dashboard-adapter.d.ts.map +1 -1
  3. package/dist/adapters/dashboard-adapter.js +101 -51
  4. package/dist/adapters/dashboard-adapter.js.map +1 -1
  5. package/dist/adapters/discord.d.ts +8 -0
  6. package/dist/adapters/discord.d.ts.map +1 -1
  7. package/dist/adapters/discord.js +100 -21
  8. package/dist/adapters/discord.js.map +1 -1
  9. package/dist/adapters/message-hub.d.ts.map +1 -1
  10. package/dist/adapters/message-hub.js +7 -1
  11. package/dist/adapters/message-hub.js.map +1 -1
  12. package/dist/adapters/notification-manager.d.ts +102 -2
  13. package/dist/adapters/notification-manager.d.ts.map +1 -1
  14. package/dist/adapters/notification-manager.js +228 -8
  15. package/dist/adapters/notification-manager.js.map +1 -1
  16. package/dist/adapters/outbound-text.d.ts +16 -0
  17. package/dist/adapters/outbound-text.d.ts.map +1 -1
  18. package/dist/adapters/outbound-text.js +118 -1
  19. package/dist/adapters/outbound-text.js.map +1 -1
  20. package/dist/adapters/primary-platform-resolver.d.ts +69 -0
  21. package/dist/adapters/primary-platform-resolver.d.ts.map +1 -0
  22. package/dist/adapters/primary-platform-resolver.js +55 -0
  23. package/dist/adapters/primary-platform-resolver.js.map +1 -0
  24. package/dist/adapters/slack-adapter.d.ts +28 -0
  25. package/dist/adapters/slack-adapter.d.ts.map +1 -1
  26. package/dist/adapters/slack-adapter.js +134 -35
  27. package/dist/adapters/slack-adapter.js.map +1 -1
  28. package/dist/adapters/telegram-adapter.d.ts +7 -1
  29. package/dist/adapters/telegram-adapter.d.ts.map +1 -1
  30. package/dist/adapters/telegram-adapter.js +49 -18
  31. package/dist/adapters/telegram-adapter.js.map +1 -1
  32. package/dist/adapters/whatsapp-adapter.d.ts +33 -0
  33. package/dist/adapters/whatsapp-adapter.d.ts.map +1 -1
  34. package/dist/adapters/whatsapp-adapter.js +84 -0
  35. package/dist/adapters/whatsapp-adapter.js.map +1 -1
  36. package/dist/api/directory-picker.d.ts.map +1 -1
  37. package/dist/api/directory-picker.js +14 -0
  38. package/dist/api/directory-picker.js.map +1 -1
  39. package/dist/api/env-writer.d.ts.map +1 -1
  40. package/dist/api/env-writer.js +6 -1
  41. package/dist/api/env-writer.js.map +1 -1
  42. package/dist/api/helpers/agent-errors.d.ts +2600 -0
  43. package/dist/api/helpers/agent-errors.d.ts.map +1 -0
  44. package/dist/api/helpers/agent-errors.js +2506 -0
  45. package/dist/api/helpers/agent-errors.js.map +1 -0
  46. package/dist/api/integration-route-gate.d.ts.map +1 -1
  47. package/dist/api/integration-route-gate.js +10 -3
  48. package/dist/api/integration-route-gate.js.map +1 -1
  49. package/dist/api/routes/agent-schedule-plan-match.d.ts +5 -0
  50. package/dist/api/routes/agent-schedule-plan-match.d.ts.map +1 -0
  51. package/dist/api/routes/agent-schedule-plan-match.js +101 -0
  52. package/dist/api/routes/agent-schedule-plan-match.js.map +1 -0
  53. package/dist/api/routes/agent-schedule.d.ts +4 -0
  54. package/dist/api/routes/agent-schedule.d.ts.map +1 -0
  55. package/dist/api/routes/agent-schedule.js +750 -0
  56. package/dist/api/routes/agent-schedule.js.map +1 -0
  57. package/dist/api/routes/agent.d.ts.map +1 -1
  58. package/dist/api/routes/agent.js +209 -366
  59. package/dist/api/routes/agent.js.map +1 -1
  60. package/dist/api/routes/apple-calendar.d.ts.map +1 -1
  61. package/dist/api/routes/apple-calendar.js +109 -27
  62. package/dist/api/routes/apple-calendar.js.map +1 -1
  63. package/dist/api/routes/attachments.d.ts.map +1 -1
  64. package/dist/api/routes/attachments.js +113 -21
  65. package/dist/api/routes/attachments.js.map +1 -1
  66. package/dist/api/routes/backends.d.ts.map +1 -1
  67. package/dist/api/routes/backends.js +100 -4
  68. package/dist/api/routes/backends.js.map +1 -1
  69. package/dist/api/routes/books.d.ts.map +1 -1
  70. package/dist/api/routes/books.js +58 -18
  71. package/dist/api/routes/books.js.map +1 -1
  72. package/dist/api/routes/calendar.d.ts +3 -2
  73. package/dist/api/routes/calendar.d.ts.map +1 -1
  74. package/dist/api/routes/calendar.js +330 -55
  75. package/dist/api/routes/calendar.js.map +1 -1
  76. package/dist/api/routes/commands.d.ts.map +1 -1
  77. package/dist/api/routes/commands.js +20 -1
  78. package/dist/api/routes/commands.js.map +1 -1
  79. package/dist/api/routes/context/index.d.ts +33 -0
  80. package/dist/api/routes/context/index.d.ts.map +1 -0
  81. package/dist/api/routes/context/index.js +193 -0
  82. package/dist/api/routes/context/index.js.map +1 -0
  83. package/dist/api/routes/context/locks.d.ts +4 -0
  84. package/dist/api/routes/context/locks.d.ts.map +1 -0
  85. package/dist/api/routes/context/locks.js +136 -0
  86. package/dist/api/routes/context/locks.js.map +1 -0
  87. package/dist/api/routes/context/path-resolve.d.ts +15 -0
  88. package/dist/api/routes/context/path-resolve.d.ts.map +1 -0
  89. package/dist/api/routes/context/path-resolve.js +109 -0
  90. package/dist/api/routes/context/path-resolve.js.map +1 -0
  91. package/dist/api/routes/context/permissions.d.ts +35 -0
  92. package/dist/api/routes/context/permissions.d.ts.map +1 -0
  93. package/dist/api/routes/context/permissions.js +192 -0
  94. package/dist/api/routes/context/permissions.js.map +1 -0
  95. package/dist/api/routes/context/read.d.ts +4 -0
  96. package/dist/api/routes/context/read.d.ts.map +1 -0
  97. package/dist/api/routes/context/read.js +295 -0
  98. package/dist/api/routes/context/read.js.map +1 -0
  99. package/dist/api/routes/context/repair.d.ts +4 -0
  100. package/dist/api/routes/context/repair.d.ts.map +1 -0
  101. package/dist/api/routes/context/repair.js +114 -0
  102. package/dist/api/routes/context/repair.js.map +1 -0
  103. package/dist/api/routes/context/snapshots.d.ts +4 -0
  104. package/dist/api/routes/context/snapshots.d.ts.map +1 -0
  105. package/dist/api/routes/context/snapshots.js +177 -0
  106. package/dist/api/routes/context/snapshots.js.map +1 -0
  107. package/dist/api/routes/context/write.d.ts +4 -0
  108. package/dist/api/routes/context/write.d.ts.map +1 -0
  109. package/dist/api/routes/context/write.js +570 -0
  110. package/dist/api/routes/context/write.js.map +1 -0
  111. package/dist/api/routes/context.d.ts +2 -43
  112. package/dist/api/routes/context.d.ts.map +1 -1
  113. package/dist/api/routes/context.js +415 -558
  114. package/dist/api/routes/context.js.map +1 -1
  115. package/dist/api/routes/dashboard/config.d.ts +4 -0
  116. package/dist/api/routes/dashboard/config.d.ts.map +1 -0
  117. package/dist/api/routes/dashboard/config.js +499 -0
  118. package/dist/api/routes/dashboard/config.js.map +1 -0
  119. package/dist/api/routes/dashboard/conversations.d.ts +4 -0
  120. package/dist/api/routes/dashboard/conversations.d.ts.map +1 -0
  121. package/dist/api/routes/dashboard/conversations.js +309 -0
  122. package/dist/api/routes/dashboard/conversations.js.map +1 -0
  123. package/dist/api/routes/dashboard/cost-approvals.d.ts +29 -0
  124. package/dist/api/routes/dashboard/cost-approvals.d.ts.map +1 -0
  125. package/dist/api/routes/dashboard/cost-approvals.js +259 -0
  126. package/dist/api/routes/dashboard/cost-approvals.js.map +1 -0
  127. package/dist/api/routes/dashboard/index.d.ts +27 -0
  128. package/dist/api/routes/dashboard/index.d.ts.map +1 -0
  129. package/dist/api/routes/dashboard/index.js +47 -0
  130. package/dist/api/routes/dashboard/index.js.map +1 -0
  131. package/dist/api/routes/dashboard/messaging.d.ts +4 -0
  132. package/dist/api/routes/dashboard/messaging.d.ts.map +1 -0
  133. package/dist/api/routes/dashboard/messaging.js +351 -0
  134. package/dist/api/routes/dashboard/messaging.js.map +1 -0
  135. package/dist/api/routes/dashboard/notifications.d.ts +4 -0
  136. package/dist/api/routes/dashboard/notifications.d.ts.map +1 -0
  137. package/dist/api/routes/dashboard/notifications.js +109 -0
  138. package/dist/api/routes/dashboard/notifications.js.map +1 -0
  139. package/dist/api/routes/dashboard/oauth-google.d.ts +4 -0
  140. package/dist/api/routes/dashboard/oauth-google.d.ts.map +1 -0
  141. package/dist/api/routes/dashboard/oauth-google.js +293 -0
  142. package/dist/api/routes/dashboard/oauth-google.js.map +1 -0
  143. package/dist/api/routes/dashboard/schedule-readonly.d.ts +4 -0
  144. package/dist/api/routes/dashboard/schedule-readonly.d.ts.map +1 -0
  145. package/dist/api/routes/dashboard/schedule-readonly.js +46 -0
  146. package/dist/api/routes/dashboard/schedule-readonly.js.map +1 -0
  147. package/dist/api/routes/dashboard/secrets.d.ts +24 -0
  148. package/dist/api/routes/dashboard/secrets.d.ts.map +1 -0
  149. package/dist/api/routes/dashboard/secrets.js +307 -0
  150. package/dist/api/routes/dashboard/secrets.js.map +1 -0
  151. package/dist/api/routes/dashboard/snapshots.d.ts +4 -0
  152. package/dist/api/routes/dashboard/snapshots.d.ts.map +1 -0
  153. package/dist/api/routes/dashboard/snapshots.js +33 -0
  154. package/dist/api/routes/dashboard/snapshots.js.map +1 -0
  155. package/dist/api/routes/dashboard.d.ts.map +1 -1
  156. package/dist/api/routes/dashboard.js +20 -12
  157. package/dist/api/routes/dashboard.js.map +1 -1
  158. package/dist/api/routes/delegated.d.ts +5 -4
  159. package/dist/api/routes/delegated.d.ts.map +1 -1
  160. package/dist/api/routes/delegated.js +6 -5
  161. package/dist/api/routes/delegated.js.map +1 -1
  162. package/dist/api/routes/docs.d.ts.map +1 -1
  163. package/dist/api/routes/docs.js +72 -9
  164. package/dist/api/routes/docs.js.map +1 -1
  165. package/dist/api/routes/entities.d.ts.map +1 -1
  166. package/dist/api/routes/entities.js +112 -43
  167. package/dist/api/routes/entities.js.map +1 -1
  168. package/dist/api/routes/fs.d.ts.map +1 -1
  169. package/dist/api/routes/fs.js +27 -12
  170. package/dist/api/routes/fs.js.map +1 -1
  171. package/dist/api/routes/git-templates.d.ts.map +1 -1
  172. package/dist/api/routes/git-templates.js +107 -27
  173. package/dist/api/routes/git-templates.js.map +1 -1
  174. package/dist/api/routes/git.d.ts.map +1 -1
  175. package/dist/api/routes/git.js +55 -11
  176. package/dist/api/routes/git.js.map +1 -1
  177. package/dist/api/routes/github.d.ts.map +1 -1
  178. package/dist/api/routes/github.js +110 -17
  179. package/dist/api/routes/github.js.map +1 -1
  180. package/dist/api/routes/integrations/crud-patch.d.ts +17 -0
  181. package/dist/api/routes/integrations/crud-patch.d.ts.map +1 -0
  182. package/dist/api/routes/integrations/crud-patch.js +600 -0
  183. package/dist/api/routes/integrations/crud-patch.js.map +1 -0
  184. package/dist/api/routes/integrations/crud.d.ts +16 -0
  185. package/dist/api/routes/integrations/crud.d.ts.map +1 -0
  186. package/dist/api/routes/integrations/crud.js +158 -0
  187. package/dist/api/routes/integrations/crud.js.map +1 -0
  188. package/dist/api/routes/integrations/exec.d.ts +23 -0
  189. package/dist/api/routes/integrations/exec.d.ts.map +1 -0
  190. package/dist/api/routes/integrations/exec.js +356 -0
  191. package/dist/api/routes/integrations/exec.js.map +1 -0
  192. package/dist/api/routes/integrations/index.d.ts +62 -0
  193. package/dist/api/routes/integrations/index.d.ts.map +1 -0
  194. package/dist/api/routes/integrations/index.js +70 -0
  195. package/dist/api/routes/integrations/index.js.map +1 -0
  196. package/dist/api/routes/integrations/integrations/crud.d.ts +16 -0
  197. package/dist/api/routes/integrations/integrations/crud.d.ts.map +1 -0
  198. package/dist/api/routes/integrations/integrations/crud.js +158 -0
  199. package/dist/api/routes/integrations/integrations/crud.js.map +1 -0
  200. package/dist/api/routes/integrations/integrations/index.d.ts +55 -0
  201. package/dist/api/routes/integrations/integrations/index.d.ts.map +1 -0
  202. package/dist/api/routes/integrations/integrations/index.js +65 -0
  203. package/dist/api/routes/integrations/integrations/index.js.map +1 -0
  204. package/dist/api/routes/integrations/integrations/invoke.d.ts +38 -0
  205. package/dist/api/routes/integrations/integrations/invoke.d.ts.map +1 -0
  206. package/dist/api/routes/integrations/integrations/invoke.js +320 -0
  207. package/dist/api/routes/integrations/integrations/invoke.js.map +1 -0
  208. package/dist/api/routes/integrations/integrations/probe.d.ts +21 -0
  209. package/dist/api/routes/integrations/integrations/probe.d.ts.map +1 -0
  210. package/dist/api/routes/integrations/integrations/probe.js +247 -0
  211. package/dist/api/routes/integrations/integrations/probe.js.map +1 -0
  212. package/dist/api/routes/integrations/invoke.d.ts +38 -0
  213. package/dist/api/routes/integrations/invoke.d.ts.map +1 -0
  214. package/dist/api/routes/integrations/invoke.js +320 -0
  215. package/dist/api/routes/integrations/invoke.js.map +1 -0
  216. package/dist/api/routes/integrations/probe.d.ts +21 -0
  217. package/dist/api/routes/integrations/probe.d.ts.map +1 -0
  218. package/dist/api/routes/integrations/probe.js +247 -0
  219. package/dist/api/routes/integrations/probe.js.map +1 -0
  220. package/dist/api/routes/integrations.d.ts.map +1 -1
  221. package/dist/api/routes/integrations.js +65 -13
  222. package/dist/api/routes/integrations.js.map +1 -1
  223. package/dist/api/routes/knowledge.d.ts.map +1 -1
  224. package/dist/api/routes/knowledge.js +13 -2
  225. package/dist/api/routes/knowledge.js.map +1 -1
  226. package/dist/api/routes/mail/_pa_wip_mail/app-password.d.ts +4 -0
  227. package/dist/api/routes/mail/_pa_wip_mail/app-password.d.ts.map +1 -0
  228. package/dist/api/routes/mail/_pa_wip_mail/app-password.js +192 -0
  229. package/dist/api/routes/mail/_pa_wip_mail/app-password.js.map +1 -0
  230. package/dist/api/routes/mail/_pa_wip_mail/body-helpers.d.ts +55 -0
  231. package/dist/api/routes/mail/_pa_wip_mail/body-helpers.d.ts.map +1 -0
  232. package/dist/api/routes/mail/_pa_wip_mail/body-helpers.js +91 -0
  233. package/dist/api/routes/mail/_pa_wip_mail/body-helpers.js.map +1 -0
  234. package/dist/api/routes/mail/_pa_wip_mail/dependencies.d.ts +36 -0
  235. package/dist/api/routes/mail/_pa_wip_mail/dependencies.d.ts.map +1 -0
  236. package/dist/api/routes/mail/_pa_wip_mail/dependencies.js +2 -0
  237. package/dist/api/routes/mail/_pa_wip_mail/dependencies.js.map +1 -0
  238. package/dist/api/routes/mail/_pa_wip_mail/gating.d.ts +45 -0
  239. package/dist/api/routes/mail/_pa_wip_mail/gating.d.ts.map +1 -0
  240. package/dist/api/routes/mail/_pa_wip_mail/gating.js +98 -0
  241. package/dist/api/routes/mail/_pa_wip_mail/gating.js.map +1 -0
  242. package/dist/api/routes/mail/_pa_wip_mail/mail/accounts.d.ts +4 -0
  243. package/dist/api/routes/mail/_pa_wip_mail/mail/accounts.d.ts.map +1 -0
  244. package/dist/api/routes/mail/_pa_wip_mail/mail/accounts.js +289 -0
  245. package/dist/api/routes/mail/_pa_wip_mail/mail/accounts.js.map +1 -0
  246. package/dist/api/routes/mail/_pa_wip_mail/mail/app-password.d.ts +4 -0
  247. package/dist/api/routes/mail/_pa_wip_mail/mail/app-password.d.ts.map +1 -0
  248. package/dist/api/routes/mail/_pa_wip_mail/mail/app-password.js +192 -0
  249. package/dist/api/routes/mail/_pa_wip_mail/mail/app-password.js.map +1 -0
  250. package/dist/api/routes/mail/_pa_wip_mail/mail/body-helpers.d.ts +55 -0
  251. package/dist/api/routes/mail/_pa_wip_mail/mail/body-helpers.d.ts.map +1 -0
  252. package/dist/api/routes/mail/_pa_wip_mail/mail/body-helpers.js +91 -0
  253. package/dist/api/routes/mail/_pa_wip_mail/mail/body-helpers.js.map +1 -0
  254. package/dist/api/routes/mail/_pa_wip_mail/mail/dependencies.d.ts +36 -0
  255. package/dist/api/routes/mail/_pa_wip_mail/mail/dependencies.d.ts.map +1 -0
  256. package/dist/api/routes/mail/_pa_wip_mail/mail/dependencies.js +2 -0
  257. package/dist/api/routes/mail/_pa_wip_mail/mail/dependencies.js.map +1 -0
  258. package/dist/api/routes/mail/_pa_wip_mail/mail/drafts.d.ts +5 -0
  259. package/dist/api/routes/mail/_pa_wip_mail/mail/drafts.d.ts.map +1 -0
  260. package/dist/api/routes/mail/_pa_wip_mail/mail/drafts.js +139 -0
  261. package/dist/api/routes/mail/_pa_wip_mail/mail/drafts.js.map +1 -0
  262. package/dist/api/routes/mail/_pa_wip_mail/mail/gating.d.ts +45 -0
  263. package/dist/api/routes/mail/_pa_wip_mail/mail/gating.d.ts.map +1 -0
  264. package/dist/api/routes/mail/_pa_wip_mail/mail/gating.js +98 -0
  265. package/dist/api/routes/mail/_pa_wip_mail/mail/gating.js.map +1 -0
  266. package/dist/api/routes/mail/_pa_wip_mail/mail/index.d.ts +18 -0
  267. package/dist/api/routes/mail/_pa_wip_mail/mail/index.d.ts.map +1 -0
  268. package/dist/api/routes/mail/_pa_wip_mail/mail/index.js +40 -0
  269. package/dist/api/routes/mail/_pa_wip_mail/mail/index.js.map +1 -0
  270. package/dist/api/routes/mail/_pa_wip_mail/mail/messages.d.ts +15 -0
  271. package/dist/api/routes/mail/_pa_wip_mail/mail/messages.d.ts.map +1 -0
  272. package/dist/api/routes/mail/_pa_wip_mail/mail/messages.js +239 -0
  273. package/dist/api/routes/mail/_pa_wip_mail/mail/messages.js.map +1 -0
  274. package/dist/api/routes/mail/_pa_wip_mail/mail/outlook-config.d.ts +4 -0
  275. package/dist/api/routes/mail/_pa_wip_mail/mail/outlook-config.d.ts.map +1 -0
  276. package/dist/api/routes/mail/_pa_wip_mail/mail/outlook-config.js +73 -0
  277. package/dist/api/routes/mail/_pa_wip_mail/mail/outlook-config.js.map +1 -0
  278. package/dist/api/routes/mail/_pa_wip_mail/mail/provider-resolver.d.ts +64 -0
  279. package/dist/api/routes/mail/_pa_wip_mail/mail/provider-resolver.d.ts.map +1 -0
  280. package/dist/api/routes/mail/_pa_wip_mail/mail/provider-resolver.js +286 -0
  281. package/dist/api/routes/mail/_pa_wip_mail/mail/provider-resolver.js.map +1 -0
  282. package/dist/api/routes/mail/_pa_wip_mail/mail/providers.d.ts +4 -0
  283. package/dist/api/routes/mail/_pa_wip_mail/mail/providers.d.ts.map +1 -0
  284. package/dist/api/routes/mail/_pa_wip_mail/mail/providers.js +73 -0
  285. package/dist/api/routes/mail/_pa_wip_mail/mail/providers.js.map +1 -0
  286. package/dist/api/routes/mail/_pa_wip_mail/mail/tags-folders.d.ts +5 -0
  287. package/dist/api/routes/mail/_pa_wip_mail/mail/tags-folders.d.ts.map +1 -0
  288. package/dist/api/routes/mail/_pa_wip_mail/mail/tags-folders.js +35 -0
  289. package/dist/api/routes/mail/_pa_wip_mail/mail/tags-folders.js.map +1 -0
  290. package/dist/api/routes/mail/_pa_wip_mail/mail/validators.d.ts +23 -0
  291. package/dist/api/routes/mail/_pa_wip_mail/mail/validators.d.ts.map +1 -0
  292. package/dist/api/routes/mail/_pa_wip_mail/mail/validators.js +131 -0
  293. package/dist/api/routes/mail/_pa_wip_mail/mail/validators.js.map +1 -0
  294. package/dist/api/routes/mail/_pa_wip_mail/provider-resolver.d.ts +64 -0
  295. package/dist/api/routes/mail/_pa_wip_mail/provider-resolver.d.ts.map +1 -0
  296. package/dist/api/routes/mail/_pa_wip_mail/provider-resolver.js +286 -0
  297. package/dist/api/routes/mail/_pa_wip_mail/provider-resolver.js.map +1 -0
  298. package/dist/api/routes/mail/_pa_wip_mail/search-health.d.ts +4 -0
  299. package/dist/api/routes/mail/_pa_wip_mail/search-health.d.ts.map +1 -0
  300. package/dist/api/routes/mail/_pa_wip_mail/search-health.js +131 -0
  301. package/dist/api/routes/mail/_pa_wip_mail/search-health.js.map +1 -0
  302. package/dist/api/routes/mail/_pa_wip_mail/validators.d.ts +23 -0
  303. package/dist/api/routes/mail/_pa_wip_mail/validators.d.ts.map +1 -0
  304. package/dist/api/routes/mail/_pa_wip_mail/validators.js +131 -0
  305. package/dist/api/routes/mail/_pa_wip_mail/validators.js.map +1 -0
  306. package/dist/api/routes/mail/accounts.d.ts +4 -0
  307. package/dist/api/routes/mail/accounts.d.ts.map +1 -0
  308. package/dist/api/routes/mail/accounts.js +289 -0
  309. package/dist/api/routes/mail/accounts.js.map +1 -0
  310. package/dist/api/routes/mail/app-password.d.ts +4 -0
  311. package/dist/api/routes/mail/app-password.d.ts.map +1 -0
  312. package/dist/api/routes/mail/app-password.js +192 -0
  313. package/dist/api/routes/mail/app-password.js.map +1 -0
  314. package/dist/api/routes/mail/body-helpers.d.ts +56 -0
  315. package/dist/api/routes/mail/body-helpers.d.ts.map +1 -0
  316. package/dist/api/routes/mail/body-helpers.js +91 -0
  317. package/dist/api/routes/mail/body-helpers.js.map +1 -0
  318. package/dist/api/routes/mail/dependencies.d.ts +36 -0
  319. package/dist/api/routes/mail/dependencies.d.ts.map +1 -0
  320. package/dist/api/routes/mail/dependencies.js +2 -0
  321. package/dist/api/routes/mail/dependencies.js.map +1 -0
  322. package/dist/api/routes/mail/drafts.d.ts +5 -0
  323. package/dist/api/routes/mail/drafts.d.ts.map +1 -0
  324. package/dist/api/routes/mail/drafts.js +139 -0
  325. package/dist/api/routes/mail/drafts.js.map +1 -0
  326. package/dist/api/routes/mail/gating.d.ts +45 -0
  327. package/dist/api/routes/mail/gating.d.ts.map +1 -0
  328. package/dist/api/routes/mail/gating.js +99 -0
  329. package/dist/api/routes/mail/gating.js.map +1 -0
  330. package/dist/api/routes/mail/index.d.ts +18 -0
  331. package/dist/api/routes/mail/index.d.ts.map +1 -0
  332. package/dist/api/routes/mail/index.js +40 -0
  333. package/dist/api/routes/mail/index.js.map +1 -0
  334. package/dist/api/routes/mail/messages.d.ts +15 -0
  335. package/dist/api/routes/mail/messages.d.ts.map +1 -0
  336. package/dist/api/routes/mail/messages.js +239 -0
  337. package/dist/api/routes/mail/messages.js.map +1 -0
  338. package/dist/api/routes/mail/outlook-config.d.ts +4 -0
  339. package/dist/api/routes/mail/outlook-config.d.ts.map +1 -0
  340. package/dist/api/routes/mail/outlook-config.js +73 -0
  341. package/dist/api/routes/mail/outlook-config.js.map +1 -0
  342. package/dist/api/routes/mail/provider-resolver.d.ts +64 -0
  343. package/dist/api/routes/mail/provider-resolver.d.ts.map +1 -0
  344. package/dist/api/routes/mail/provider-resolver.js +286 -0
  345. package/dist/api/routes/mail/provider-resolver.js.map +1 -0
  346. package/dist/api/routes/mail/providers.d.ts +4 -0
  347. package/dist/api/routes/mail/providers.d.ts.map +1 -0
  348. package/dist/api/routes/mail/providers.js +73 -0
  349. package/dist/api/routes/mail/providers.js.map +1 -0
  350. package/dist/api/routes/mail/search-health.d.ts +4 -0
  351. package/dist/api/routes/mail/search-health.d.ts.map +1 -0
  352. package/dist/api/routes/mail/search-health.js +131 -0
  353. package/dist/api/routes/mail/search-health.js.map +1 -0
  354. package/dist/api/routes/mail/tags-folders.d.ts +5 -0
  355. package/dist/api/routes/mail/tags-folders.d.ts.map +1 -0
  356. package/dist/api/routes/mail/tags-folders.js +35 -0
  357. package/dist/api/routes/mail/tags-folders.js.map +1 -0
  358. package/dist/api/routes/mail/validators.d.ts +23 -0
  359. package/dist/api/routes/mail/validators.d.ts.map +1 -0
  360. package/dist/api/routes/mail/validators.js +131 -0
  361. package/dist/api/routes/mail/validators.js.map +1 -0
  362. package/dist/api/routes/mail.d.ts.map +1 -1
  363. package/dist/api/routes/mail.js +259 -67
  364. package/dist/api/routes/mail.js.map +1 -1
  365. package/dist/api/routes/managed-tasks.d.ts.map +1 -1
  366. package/dist/api/routes/managed-tasks.js +142 -54
  367. package/dist/api/routes/managed-tasks.js.map +1 -1
  368. package/dist/api/routes/mcp.d.ts.map +1 -1
  369. package/dist/api/routes/mcp.js +115 -47
  370. package/dist/api/routes/mcp.js.map +1 -1
  371. package/dist/api/routes/metrics.d.ts +1 -1
  372. package/dist/api/routes/metrics.js +2 -2
  373. package/dist/api/routes/notion.d.ts.map +1 -1
  374. package/dist/api/routes/notion.js +230 -54
  375. package/dist/api/routes/notion.js.map +1 -1
  376. package/dist/api/routes/observations.d.ts.map +1 -1
  377. package/dist/api/routes/observations.js +40 -169
  378. package/dist/api/routes/observations.js.map +1 -1
  379. package/dist/api/routes/obsidian.d.ts.map +1 -1
  380. package/dist/api/routes/obsidian.js +193 -32
  381. package/dist/api/routes/obsidian.js.map +1 -1
  382. package/dist/api/routes/profile-questions.d.ts.map +1 -1
  383. package/dist/api/routes/profile-questions.js +19 -3
  384. package/dist/api/routes/profile-questions.js.map +1 -1
  385. package/dist/api/routes/receipts.d.ts.map +1 -1
  386. package/dist/api/routes/receipts.js +64 -24
  387. package/dist/api/routes/receipts.js.map +1 -1
  388. package/dist/api/routes/recurring-schedules.d.ts.map +1 -1
  389. package/dist/api/routes/recurring-schedules.js +243 -13
  390. package/dist/api/routes/recurring-schedules.js.map +1 -1
  391. package/dist/api/routes/repositories.d.ts.map +1 -1
  392. package/dist/api/routes/repositories.js +278 -104
  393. package/dist/api/routes/repositories.js.map +1 -1
  394. package/dist/api/routes/schedule-model-resolver.d.ts +153 -0
  395. package/dist/api/routes/schedule-model-resolver.d.ts.map +1 -0
  396. package/dist/api/routes/schedule-model-resolver.js +282 -0
  397. package/dist/api/routes/schedule-model-resolver.js.map +1 -0
  398. package/dist/api/routes/schedule-options.d.ts +25 -0
  399. package/dist/api/routes/schedule-options.d.ts.map +1 -0
  400. package/dist/api/routes/schedule-options.js +77 -0
  401. package/dist/api/routes/schedule-options.js.map +1 -0
  402. package/dist/api/routes/schedule-validation.d.ts +146 -0
  403. package/dist/api/routes/schedule-validation.d.ts.map +1 -0
  404. package/dist/api/routes/schedule-validation.js +153 -0
  405. package/dist/api/routes/schedule-validation.js.map +1 -0
  406. package/dist/api/routes/setup.d.ts.map +1 -1
  407. package/dist/api/routes/setup.js +100 -26
  408. package/dist/api/routes/setup.js.map +1 -1
  409. package/dist/api/routes/skills.d.ts.map +1 -1
  410. package/dist/api/routes/skills.js +81 -30
  411. package/dist/api/routes/skills.js.map +1 -1
  412. package/dist/api/routes/sot-bindings.d.ts.map +1 -1
  413. package/dist/api/routes/sot-bindings.js +46 -11
  414. package/dist/api/routes/sot-bindings.js.map +1 -1
  415. package/dist/api/routes/sse.d.ts.map +1 -1
  416. package/dist/api/routes/sse.js +6 -1
  417. package/dist/api/routes/sse.js.map +1 -1
  418. package/dist/api/routes/system.d.ts.map +1 -1
  419. package/dist/api/routes/system.js +15 -2
  420. package/dist/api/routes/system.js.map +1 -1
  421. package/dist/api/routes/travel-bookings.d.ts.map +1 -1
  422. package/dist/api/routes/travel-bookings.js +26 -9
  423. package/dist/api/routes/travel-bookings.js.map +1 -1
  424. package/dist/api/routes/travel-time.d.ts.map +1 -1
  425. package/dist/api/routes/travel-time.js +50 -10
  426. package/dist/api/routes/travel-time.js.map +1 -1
  427. package/dist/api/routes/wiki.d.ts.map +1 -1
  428. package/dist/api/routes/wiki.js +49 -8
  429. package/dist/api/routes/wiki.js.map +1 -1
  430. package/dist/api/server.d.ts +15 -3
  431. package/dist/api/server.d.ts.map +1 -1
  432. package/dist/api/server.js +32 -10
  433. package/dist/api/server.js.map +1 -1
  434. package/dist/bootstrap/adapters.d.ts.map +1 -1
  435. package/dist/bootstrap/adapters.js +7 -4
  436. package/dist/bootstrap/adapters.js.map +1 -1
  437. package/dist/bootstrap/api.d.ts +205 -0
  438. package/dist/bootstrap/api.d.ts.map +1 -0
  439. package/dist/bootstrap/api.js +443 -0
  440. package/dist/bootstrap/api.js.map +1 -0
  441. package/dist/bootstrap/db.d.ts +119 -0
  442. package/dist/bootstrap/db.d.ts.map +1 -0
  443. package/dist/bootstrap/db.js +294 -0
  444. package/dist/bootstrap/db.js.map +1 -0
  445. package/dist/bootstrap/event-pipeline.d.ts +308 -0
  446. package/dist/bootstrap/event-pipeline.d.ts.map +1 -0
  447. package/dist/bootstrap/event-pipeline.js +704 -0
  448. package/dist/bootstrap/event-pipeline.js.map +1 -0
  449. package/dist/bootstrap/observers.d.ts +148 -0
  450. package/dist/bootstrap/observers.d.ts.map +1 -0
  451. package/dist/bootstrap/observers.js +558 -0
  452. package/dist/bootstrap/observers.js.map +1 -0
  453. package/dist/bootstrap/schedule-helpers.d.ts +122 -0
  454. package/dist/bootstrap/schedule-helpers.d.ts.map +1 -1
  455. package/dist/bootstrap/schedule-helpers.js +202 -4
  456. package/dist/bootstrap/schedule-helpers.js.map +1 -1
  457. package/dist/config.d.ts.map +1 -1
  458. package/dist/config.js +20 -3
  459. package/dist/config.js.map +1 -1
  460. package/dist/core/abort-utils.d.ts +14 -0
  461. package/dist/core/abort-utils.d.ts.map +1 -0
  462. package/dist/core/abort-utils.js +36 -0
  463. package/dist/core/abort-utils.js.map +1 -0
  464. package/dist/core/agent-core.d.ts +22 -3
  465. package/dist/core/agent-core.d.ts.map +1 -1
  466. package/dist/core/agent-core.js +3 -1
  467. package/dist/core/agent-core.js.map +1 -1
  468. package/dist/core/backends/auth-health-monitor.js +2 -3
  469. package/dist/core/backends/auth-health-monitor.js.map +1 -1
  470. package/dist/core/backends/backend-router.d.ts +11 -1
  471. package/dist/core/backends/backend-router.d.ts.map +1 -1
  472. package/dist/core/backends/backend-router.js +97 -2
  473. package/dist/core/backends/backend-router.js.map +1 -1
  474. package/dist/core/backends/claude-code-core.d.ts +51 -0
  475. package/dist/core/backends/claude-code-core.d.ts.map +1 -1
  476. package/dist/core/backends/claude-code-core.js +134 -11
  477. package/dist/core/backends/claude-code-core.js.map +1 -1
  478. package/dist/core/backends/claude-tool-collection.js +1 -1
  479. package/dist/core/backends/codex-core.d.ts +13 -1
  480. package/dist/core/backends/codex-core.d.ts.map +1 -1
  481. package/dist/core/backends/codex-core.js +436 -22
  482. package/dist/core/backends/codex-core.js.map +1 -1
  483. package/dist/core/backends/gemini-cli-core.d.ts +5 -1
  484. package/dist/core/backends/gemini-cli-core.d.ts.map +1 -1
  485. package/dist/core/backends/gemini-cli-core.js +298 -15
  486. package/dist/core/backends/gemini-cli-core.js.map +1 -1
  487. package/dist/core/backends/install-methods.d.ts.map +1 -1
  488. package/dist/core/backends/install-methods.js +22 -0
  489. package/dist/core/backends/install-methods.js.map +1 -1
  490. package/dist/core/backends/model-registry.d.ts +9 -4
  491. package/dist/core/backends/model-registry.d.ts.map +1 -1
  492. package/dist/core/backends/model-registry.js +153 -23
  493. package/dist/core/backends/model-registry.js.map +1 -1
  494. package/dist/core/backends/native-skill-discovery-probe.d.ts +80 -0
  495. package/dist/core/backends/native-skill-discovery-probe.d.ts.map +1 -0
  496. package/dist/core/backends/native-skill-discovery-probe.js +175 -0
  497. package/dist/core/backends/native-skill-discovery-probe.js.map +1 -0
  498. package/dist/core/backends/opencode-basic-auth-fetch.d.ts +27 -0
  499. package/dist/core/backends/opencode-basic-auth-fetch.d.ts.map +1 -0
  500. package/dist/core/backends/opencode-basic-auth-fetch.js +40 -0
  501. package/dist/core/backends/opencode-basic-auth-fetch.js.map +1 -0
  502. package/dist/core/backends/opencode-config-builder.d.ts +86 -0
  503. package/dist/core/backends/opencode-config-builder.d.ts.map +1 -0
  504. package/dist/core/backends/opencode-config-builder.js +172 -0
  505. package/dist/core/backends/opencode-config-builder.js.map +1 -0
  506. package/dist/core/backends/opencode-core.d.ts +316 -0
  507. package/dist/core/backends/opencode-core.d.ts.map +1 -0
  508. package/dist/core/backends/opencode-core.js +1502 -0
  509. package/dist/core/backends/opencode-core.js.map +1 -0
  510. package/dist/core/backends/opencode-event-mapper.d.ts +133 -0
  511. package/dist/core/backends/opencode-event-mapper.d.ts.map +1 -0
  512. package/dist/core/backends/opencode-event-mapper.js +198 -0
  513. package/dist/core/backends/opencode-event-mapper.js.map +1 -0
  514. package/dist/core/backends/opencode-mcp.d.ts +82 -0
  515. package/dist/core/backends/opencode-mcp.d.ts.map +1 -0
  516. package/dist/core/backends/opencode-mcp.js +165 -0
  517. package/dist/core/backends/opencode-mcp.js.map +1 -0
  518. package/dist/core/backends/opencode-server-manager.d.ts +114 -0
  519. package/dist/core/backends/opencode-server-manager.d.ts.map +1 -0
  520. package/dist/core/backends/opencode-server-manager.js +222 -0
  521. package/dist/core/backends/opencode-server-manager.js.map +1 -0
  522. package/dist/core/backends/opencode-types.d.ts +46 -0
  523. package/dist/core/backends/opencode-types.d.ts.map +1 -0
  524. package/dist/core/backends/opencode-types.js +14 -0
  525. package/dist/core/backends/opencode-types.js.map +1 -0
  526. package/dist/core/backends/plan-presets.d.ts +18 -5
  527. package/dist/core/backends/plan-presets.d.ts.map +1 -1
  528. package/dist/core/backends/plan-presets.js +144 -23
  529. package/dist/core/backends/plan-presets.js.map +1 -1
  530. package/dist/core/backends/process-config-cascade.d.ts +35 -0
  531. package/dist/core/backends/process-config-cascade.d.ts.map +1 -1
  532. package/dist/core/backends/process-config-cascade.js +35 -1
  533. package/dist/core/backends/process-config-cascade.js.map +1 -1
  534. package/dist/core/backends/prompt-utils.d.ts.map +1 -1
  535. package/dist/core/backends/prompt-utils.js +0 -2
  536. package/dist/core/backends/prompt-utils.js.map +1 -1
  537. package/dist/core/backends/quota-reset-hints.d.ts +44 -0
  538. package/dist/core/backends/quota-reset-hints.d.ts.map +1 -0
  539. package/dist/core/backends/quota-reset-hints.js +117 -0
  540. package/dist/core/backends/quota-reset-hints.js.map +1 -0
  541. package/dist/core/bang-commands/commands-close.d.ts +24 -0
  542. package/dist/core/bang-commands/commands-close.d.ts.map +1 -0
  543. package/dist/core/bang-commands/commands-close.js +24 -0
  544. package/dist/core/bang-commands/commands-close.js.map +1 -0
  545. package/dist/core/bang-commands/commands-cost.d.ts.map +1 -1
  546. package/dist/core/bang-commands/commands-cost.js +13 -0
  547. package/dist/core/bang-commands/commands-cost.js.map +1 -1
  548. package/dist/core/bang-commands/commands-help.d.ts.map +1 -1
  549. package/dist/core/bang-commands/commands-help.js +44 -5
  550. package/dist/core/bang-commands/commands-help.js.map +1 -1
  551. package/dist/core/bang-commands/commands-report.d.ts.map +1 -1
  552. package/dist/core/bang-commands/commands-report.js +1 -0
  553. package/dist/core/bang-commands/commands-report.js.map +1 -1
  554. package/dist/core/bang-commands/commands-stop-start.d.ts.map +1 -1
  555. package/dist/core/bang-commands/commands-stop-start.js +2 -0
  556. package/dist/core/bang-commands/commands-stop-start.js.map +1 -1
  557. package/dist/core/bang-commands/commands-wiki.d.ts.map +1 -1
  558. package/dist/core/bang-commands/commands-wiki.js +12 -1
  559. package/dist/core/bang-commands/commands-wiki.js.map +1 -1
  560. package/dist/core/bang-commands/format-utils.d.ts +13 -1
  561. package/dist/core/bang-commands/format-utils.d.ts.map +1 -1
  562. package/dist/core/bang-commands/format-utils.js +21 -2
  563. package/dist/core/bang-commands/format-utils.js.map +1 -1
  564. package/dist/core/bang-commands/index.d.ts +1 -0
  565. package/dist/core/bang-commands/index.d.ts.map +1 -1
  566. package/dist/core/bang-commands/index.js +3 -0
  567. package/dist/core/bang-commands/index.js.map +1 -1
  568. package/dist/core/bang-commands/registry.d.ts +50 -0
  569. package/dist/core/bang-commands/registry.d.ts.map +1 -1
  570. package/dist/core/bang-commands/registry.js +164 -19
  571. package/dist/core/bang-commands/registry.js.map +1 -1
  572. package/dist/core/channel-timeline.d.ts +18 -1
  573. package/dist/core/channel-timeline.d.ts.map +1 -1
  574. package/dist/core/channel-timeline.js +44 -0
  575. package/dist/core/channel-timeline.js.map +1 -1
  576. package/dist/core/context/activity-view-runner.js +9 -1
  577. package/dist/core/context/activity-view-runner.js.map +1 -1
  578. package/dist/core/context/default-schedules-runner.js +44 -4
  579. package/dist/core/context/default-schedules-runner.js.map +1 -1
  580. package/dist/core/context/domain-index-runner.js +9 -1
  581. package/dist/core/context/domain-index-runner.js.map +1 -1
  582. package/dist/core/context/entity-source-rename.d.ts.map +1 -1
  583. package/dist/core/context/entity-source-rename.js +9 -1
  584. package/dist/core/context/entity-source-rename.js.map +1 -1
  585. package/dist/core/context/policy-index-runner.js +9 -1
  586. package/dist/core/context/policy-index-runner.js.map +1 -1
  587. package/dist/core/context/reconciler-runner.js +9 -1
  588. package/dist/core/context/reconciler-runner.js.map +1 -1
  589. package/dist/core/context-builder.d.ts +97 -2
  590. package/dist/core/context-builder.d.ts.map +1 -1
  591. package/dist/core/context-builder.js +303 -30
  592. package/dist/core/context-builder.js.map +1 -1
  593. package/dist/core/context-frontmatter.d.ts +6 -0
  594. package/dist/core/context-frontmatter.d.ts.map +1 -1
  595. package/dist/core/context-frontmatter.js +120 -8
  596. package/dist/core/context-frontmatter.js.map +1 -1
  597. package/dist/core/context-health.js +21 -9
  598. package/dist/core/context-health.js.map +1 -1
  599. package/dist/core/context-validation/_pa_wip_context_validation/index.d.ts +19 -0
  600. package/dist/core/context-validation/_pa_wip_context_validation/index.d.ts.map +1 -0
  601. package/dist/core/context-validation/_pa_wip_context_validation/index.js +19 -0
  602. package/dist/core/context-validation/_pa_wip_context_validation/index.js.map +1 -0
  603. package/dist/core/context-validation/_pa_wip_context_validation/prepare-write.d.ts +94 -0
  604. package/dist/core/context-validation/_pa_wip_context_validation/prepare-write.d.ts.map +1 -0
  605. package/dist/core/context-validation/_pa_wip_context_validation/prepare-write.js +130 -0
  606. package/dist/core/context-validation/_pa_wip_context_validation/prepare-write.js.map +1 -0
  607. package/dist/core/context-validation/_pa_wip_context_validation/routine-rulebook.d.ts +60 -0
  608. package/dist/core/context-validation/_pa_wip_context_validation/routine-rulebook.d.ts.map +1 -0
  609. package/dist/core/context-validation/_pa_wip_context_validation/routine-rulebook.js +156 -0
  610. package/dist/core/context-validation/_pa_wip_context_validation/routine-rulebook.js.map +1 -0
  611. package/dist/core/context-validation/_pa_wip_context_validation/section.d.ts +41 -0
  612. package/dist/core/context-validation/_pa_wip_context_validation/section.d.ts.map +1 -0
  613. package/dist/core/context-validation/_pa_wip_context_validation/section.js +82 -0
  614. package/dist/core/context-validation/_pa_wip_context_validation/section.js.map +1 -0
  615. package/dist/core/context-validation/_pa_wip_context_validation/snapshot-debounce.d.ts +52 -0
  616. package/dist/core/context-validation/_pa_wip_context_validation/snapshot-debounce.d.ts.map +1 -0
  617. package/dist/core/context-validation/_pa_wip_context_validation/snapshot-debounce.js +110 -0
  618. package/dist/core/context-validation/_pa_wip_context_validation/snapshot-debounce.js.map +1 -0
  619. package/dist/core/context-validation/_pa_wip_context_validation/today.d.ts +85 -0
  620. package/dist/core/context-validation/_pa_wip_context_validation/today.d.ts.map +1 -0
  621. package/dist/core/context-validation/_pa_wip_context_validation/today.js +162 -0
  622. package/dist/core/context-validation/_pa_wip_context_validation/today.js.map +1 -0
  623. package/dist/core/context-validation/index.d.ts +19 -0
  624. package/dist/core/context-validation/index.d.ts.map +1 -0
  625. package/dist/core/context-validation/index.js +19 -0
  626. package/dist/core/context-validation/index.js.map +1 -0
  627. package/dist/core/context-validation/prepare-write.d.ts +95 -0
  628. package/dist/core/context-validation/prepare-write.d.ts.map +1 -0
  629. package/dist/core/context-validation/prepare-write.js +135 -0
  630. package/dist/core/context-validation/prepare-write.js.map +1 -0
  631. package/dist/core/context-validation/routine-rulebook.d.ts +60 -0
  632. package/dist/core/context-validation/routine-rulebook.d.ts.map +1 -0
  633. package/dist/core/context-validation/routine-rulebook.js +156 -0
  634. package/dist/core/context-validation/routine-rulebook.js.map +1 -0
  635. package/dist/core/context-validation/section.d.ts +41 -0
  636. package/dist/core/context-validation/section.d.ts.map +1 -0
  637. package/dist/core/context-validation/section.js +82 -0
  638. package/dist/core/context-validation/section.js.map +1 -0
  639. package/dist/core/context-validation/snapshot-debounce.d.ts +52 -0
  640. package/dist/core/context-validation/snapshot-debounce.d.ts.map +1 -0
  641. package/dist/core/context-validation/snapshot-debounce.js +110 -0
  642. package/dist/core/context-validation/snapshot-debounce.js.map +1 -0
  643. package/dist/core/context-validation/today.d.ts +85 -0
  644. package/dist/core/context-validation/today.d.ts.map +1 -0
  645. package/dist/core/context-validation/today.js +168 -0
  646. package/dist/core/context-validation/today.js.map +1 -0
  647. package/dist/core/daemon-api-cli.d.ts +6 -5
  648. package/dist/core/daemon-api-cli.d.ts.map +1 -1
  649. package/dist/core/daemon-api-cli.js +73 -32
  650. package/dist/core/daemon-api-cli.js.map +1 -1
  651. package/dist/core/dispatcher-error-handling.d.ts +13 -0
  652. package/dist/core/dispatcher-error-handling.d.ts.map +1 -1
  653. package/dist/core/dispatcher-error-handling.js +69 -0
  654. package/dist/core/dispatcher-error-handling.js.map +1 -1
  655. package/dist/core/dispatcher-hourly-check.d.ts +73 -1
  656. package/dist/core/dispatcher-hourly-check.d.ts.map +1 -1
  657. package/dist/core/dispatcher-hourly-check.js +249 -151
  658. package/dist/core/dispatcher-hourly-check.js.map +1 -1
  659. package/dist/core/dispatcher-message-handler.d.ts +11 -1
  660. package/dist/core/dispatcher-message-handler.d.ts.map +1 -1
  661. package/dist/core/dispatcher-message-handler.js +165 -47
  662. package/dist/core/dispatcher-message-handler.js.map +1 -1
  663. package/dist/core/dispatcher-morning-routine.d.ts +38 -30
  664. package/dist/core/dispatcher-morning-routine.d.ts.map +1 -1
  665. package/dist/core/dispatcher-morning-routine.js +162 -104
  666. package/dist/core/dispatcher-morning-routine.js.map +1 -1
  667. package/dist/core/dispatcher-prompt.d.ts +4 -1
  668. package/dist/core/dispatcher-prompt.d.ts.map +1 -1
  669. package/dist/core/dispatcher-prompt.js +18 -2
  670. package/dist/core/dispatcher-prompt.js.map +1 -1
  671. package/dist/core/dispatcher-repository-helpers.d.ts.map +1 -1
  672. package/dist/core/dispatcher-repository-helpers.js +5 -1
  673. package/dist/core/dispatcher-repository-helpers.js.map +1 -1
  674. package/dist/core/dispatcher-result-processor.d.ts.map +1 -1
  675. package/dist/core/dispatcher-result-processor.js +9 -4
  676. package/dist/core/dispatcher-result-processor.js.map +1 -1
  677. package/dist/core/dispatcher-scheduled-tasks.d.ts +1 -1
  678. package/dist/core/dispatcher-scheduled-tasks.d.ts.map +1 -1
  679. package/dist/core/dispatcher-scheduled-tasks.js +79 -16
  680. package/dist/core/dispatcher-scheduled-tasks.js.map +1 -1
  681. package/dist/core/dispatcher-types.d.ts +84 -12
  682. package/dist/core/dispatcher-types.d.ts.map +1 -1
  683. package/dist/core/dispatcher-types.js.map +1 -1
  684. package/dist/core/dispatcher.d.ts +50 -1
  685. package/dist/core/dispatcher.d.ts.map +1 -1
  686. package/dist/core/dispatcher.js +143 -8
  687. package/dist/core/dispatcher.js.map +1 -1
  688. package/dist/core/dm-freshness-metrics.d.ts +6 -5
  689. package/dist/core/dm-freshness-metrics.d.ts.map +1 -1
  690. package/dist/core/dm-freshness-metrics.js +7 -6
  691. package/dist/core/dm-freshness-metrics.js.map +1 -1
  692. package/dist/core/evening-review-verify.d.ts +164 -0
  693. package/dist/core/evening-review-verify.d.ts.map +1 -0
  694. package/dist/core/evening-review-verify.js +637 -0
  695. package/dist/core/evening-review-verify.js.map +1 -0
  696. package/dist/core/fetch-window-prompt-loader.d.ts +47 -0
  697. package/dist/core/fetch-window-prompt-loader.d.ts.map +1 -0
  698. package/dist/core/fetch-window-prompt-loader.js +72 -0
  699. package/dist/core/fetch-window-prompt-loader.js.map +1 -0
  700. package/dist/core/management-md.d.ts.map +1 -1
  701. package/dist/core/management-md.js +23 -9
  702. package/dist/core/management-md.js.map +1 -1
  703. package/dist/core/management-registry.d.ts +13 -21
  704. package/dist/core/management-registry.d.ts.map +1 -1
  705. package/dist/core/management-registry.js +27 -48
  706. package/dist/core/management-registry.js.map +1 -1
  707. package/dist/core/metrics.d.ts +88 -1
  708. package/dist/core/metrics.d.ts.map +1 -1
  709. package/dist/core/metrics.js +78 -2
  710. package/dist/core/metrics.js.map +1 -1
  711. package/dist/core/morning/agent-journal-appender.d.ts +197 -0
  712. package/dist/core/morning/agent-journal-appender.d.ts.map +1 -0
  713. package/dist/core/morning/agent-journal-appender.js +458 -0
  714. package/dist/core/morning/agent-journal-appender.js.map +1 -0
  715. package/dist/core/morning/handoff-parser.d.ts +45 -0
  716. package/dist/core/morning/handoff-parser.d.ts.map +1 -0
  717. package/dist/core/morning/handoff-parser.js +117 -0
  718. package/dist/core/morning/handoff-parser.js.map +1 -0
  719. package/dist/core/morning/journal-skeleton-builder.d.ts +157 -0
  720. package/dist/core/morning/journal-skeleton-builder.d.ts.map +1 -0
  721. package/dist/core/morning/journal-skeleton-builder.js +303 -0
  722. package/dist/core/morning/journal-skeleton-builder.js.map +1 -0
  723. package/dist/core/morning/orchestrator.d.ts +312 -0
  724. package/dist/core/morning/orchestrator.d.ts.map +1 -0
  725. package/dist/core/morning/orchestrator.js +827 -0
  726. package/dist/core/morning/orchestrator.js.map +1 -0
  727. package/dist/core/morning/parent-audit-emitter.d.ts +82 -0
  728. package/dist/core/morning/parent-audit-emitter.d.ts.map +1 -0
  729. package/dist/core/morning/parent-audit-emitter.js +120 -0
  730. package/dist/core/morning/parent-audit-emitter.js.map +1 -0
  731. package/dist/core/morning/roadmap-skeleton-builder.d.ts +159 -0
  732. package/dist/core/morning/roadmap-skeleton-builder.d.ts.map +1 -0
  733. package/dist/core/morning/roadmap-skeleton-builder.js +338 -0
  734. package/dist/core/morning/roadmap-skeleton-builder.js.map +1 -0
  735. package/dist/core/output-language-policy.js +1 -1
  736. package/dist/core/output-language-policy.js.map +1 -1
  737. package/dist/core/policy-files.d.ts +19 -2
  738. package/dist/core/policy-files.d.ts.map +1 -1
  739. package/dist/core/policy-files.js +65 -7
  740. package/dist/core/policy-files.js.map +1 -1
  741. package/dist/core/pre-pass-freshness.d.ts +28 -0
  742. package/dist/core/pre-pass-freshness.d.ts.map +1 -0
  743. package/dist/core/pre-pass-freshness.js +10 -0
  744. package/dist/core/pre-pass-freshness.js.map +1 -0
  745. package/dist/core/previous-week-digest.d.ts +130 -0
  746. package/dist/core/previous-week-digest.d.ts.map +1 -0
  747. package/dist/core/previous-week-digest.js +257 -0
  748. package/dist/core/previous-week-digest.js.map +1 -0
  749. package/dist/core/prompts.js +3 -3
  750. package/dist/core/prompts.js.map +1 -1
  751. package/dist/core/quiet-hours-sync.d.ts.map +1 -1
  752. package/dist/core/quiet-hours-sync.js +7 -0
  753. package/dist/core/quiet-hours-sync.js.map +1 -1
  754. package/dist/core/recurrence.d.ts +13 -0
  755. package/dist/core/recurrence.d.ts.map +1 -1
  756. package/dist/core/recurrence.js +108 -13
  757. package/dist/core/recurrence.js.map +1 -1
  758. package/dist/core/release-assets.d.ts +21 -1
  759. package/dist/core/release-assets.d.ts.map +1 -1
  760. package/dist/core/release-assets.js +58 -3
  761. package/dist/core/release-assets.js.map +1 -1
  762. package/dist/core/repository-management-docs.d.ts.map +1 -1
  763. package/dist/core/repository-management-docs.js +14 -4
  764. package/dist/core/repository-management-docs.js.map +1 -1
  765. package/dist/core/review-context.d.ts.map +1 -1
  766. package/dist/core/review-context.js +29 -1
  767. package/dist/core/review-context.js.map +1 -1
  768. package/dist/core/roadmap-maintenance.d.ts +213 -0
  769. package/dist/core/roadmap-maintenance.d.ts.map +1 -0
  770. package/dist/core/roadmap-maintenance.js +706 -0
  771. package/dist/core/roadmap-maintenance.js.map +1 -0
  772. package/dist/core/roadmap-validate.d.ts +5 -0
  773. package/dist/core/roadmap-validate.d.ts.map +1 -1
  774. package/dist/core/roadmap-validate.js +6 -69
  775. package/dist/core/roadmap-validate.js.map +1 -1
  776. package/dist/core/routine-acquisition-plan.d.ts +43 -7
  777. package/dist/core/routine-acquisition-plan.d.ts.map +1 -1
  778. package/dist/core/routine-acquisition-plan.js +99 -8
  779. package/dist/core/routine-acquisition-plan.js.map +1 -1
  780. package/dist/core/routine-fetch-window-retry.d.ts +41 -2
  781. package/dist/core/routine-fetch-window-retry.d.ts.map +1 -1
  782. package/dist/core/routine-fetch-window-retry.js +91 -8
  783. package/dist/core/routine-fetch-window-retry.js.map +1 -1
  784. package/dist/core/routine-fetch-window-runner.d.ts +55 -21
  785. package/dist/core/routine-fetch-window-runner.d.ts.map +1 -1
  786. package/dist/core/routine-fetch-window-runner.js +258 -35
  787. package/dist/core/routine-fetch-window-runner.js.map +1 -1
  788. package/dist/core/routine-windows.d.ts +17 -13
  789. package/dist/core/routine-windows.d.ts.map +1 -1
  790. package/dist/core/routine-windows.js +78 -36
  791. package/dist/core/routine-windows.js.map +1 -1
  792. package/dist/core/scheduler.d.ts +121 -37
  793. package/dist/core/scheduler.d.ts.map +1 -1
  794. package/dist/core/scheduler.js +359 -80
  795. package/dist/core/scheduler.js.map +1 -1
  796. package/dist/core/session-manager.d.ts +25 -6
  797. package/dist/core/session-manager.d.ts.map +1 -1
  798. package/dist/core/session-manager.js +32 -15
  799. package/dist/core/session-manager.js.map +1 -1
  800. package/dist/core/skeleton.d.ts.map +1 -1
  801. package/dist/core/skeleton.js +23 -23
  802. package/dist/core/skeleton.js.map +1 -1
  803. package/dist/core/skills-compiler.d.ts +275 -25
  804. package/dist/core/skills-compiler.d.ts.map +1 -1
  805. package/dist/core/skills-compiler.js +844 -205
  806. package/dist/core/skills-compiler.js.map +1 -1
  807. package/dist/core/skills-manifest.d.ts +104 -0
  808. package/dist/core/skills-manifest.d.ts.map +1 -1
  809. package/dist/core/skills-manifest.js +350 -39
  810. package/dist/core/skills-manifest.js.map +1 -1
  811. package/dist/core/wiki/git-precompile.d.ts +9 -0
  812. package/dist/core/wiki/git-precompile.d.ts.map +1 -1
  813. package/dist/core/wiki/git-precompile.js +7 -1
  814. package/dist/core/wiki/git-precompile.js.map +1 -1
  815. package/dist/core/workdir.d.ts +30 -1
  816. package/dist/core/workdir.d.ts.map +1 -1
  817. package/dist/core/workdir.js +140 -15
  818. package/dist/core/workdir.js.map +1 -1
  819. package/dist/db/entities-store.d.ts +5 -5
  820. package/dist/db/entities-store.js +5 -5
  821. package/dist/db/hourly-check-signals.d.ts.map +1 -1
  822. package/dist/db/hourly-check-signals.js +121 -35
  823. package/dist/db/hourly-check-signals.js.map +1 -1
  824. package/dist/db/observations.d.ts +1 -1
  825. package/dist/db/observations.js +1 -1
  826. package/dist/db/observations.js.map +1 -1
  827. package/dist/db/recurring-schedules.d.ts +32 -1
  828. package/dist/db/recurring-schedules.d.ts.map +1 -1
  829. package/dist/db/recurring-schedules.js +29 -10
  830. package/dist/db/recurring-schedules.js.map +1 -1
  831. package/dist/db/repositories-store.d.ts +2 -1
  832. package/dist/db/repositories-store.d.ts.map +1 -1
  833. package/dist/db/repositories-store.js +38 -3
  834. package/dist/db/repositories-store.js.map +1 -1
  835. package/dist/db/schema.d.ts.map +1 -1
  836. package/dist/db/schema.js +157 -51
  837. package/dist/db/schema.js.map +1 -1
  838. package/dist/db/wiki-store.d.ts.map +1 -1
  839. package/dist/db/wiki-store.js +3 -0
  840. package/dist/db/wiki-store.js.map +1 -1
  841. package/dist/index.js +308 -1480
  842. package/dist/index.js.map +1 -1
  843. package/dist/messaging/magic-phrase.d.ts +16 -0
  844. package/dist/messaging/magic-phrase.d.ts.map +1 -1
  845. package/dist/messaging/magic-phrase.js +53 -0
  846. package/dist/messaging/magic-phrase.js.map +1 -1
  847. package/dist/messaging/owner-channels.d.ts +24 -0
  848. package/dist/messaging/owner-channels.d.ts.map +1 -1
  849. package/dist/messaging/owner-channels.js +38 -0
  850. package/dist/messaging/owner-channels.js.map +1 -1
  851. package/dist/observers/calendar-poller.d.ts +2 -0
  852. package/dist/observers/calendar-poller.d.ts.map +1 -1
  853. package/dist/observers/calendar-poller.js +76 -54
  854. package/dist/observers/calendar-poller.js.map +1 -1
  855. package/dist/observers/delegated-sync-worker.d.ts +62 -0
  856. package/dist/observers/delegated-sync-worker.d.ts.map +1 -1
  857. package/dist/observers/delegated-sync-worker.js +128 -1
  858. package/dist/observers/delegated-sync-worker.js.map +1 -1
  859. package/dist/observers/git-watcher.d.ts +22 -0
  860. package/dist/observers/git-watcher.d.ts.map +1 -1
  861. package/dist/observers/git-watcher.js +31 -7
  862. package/dist/observers/git-watcher.js.map +1 -1
  863. package/dist/observers/imminent-event-scheduler.d.ts +2 -0
  864. package/dist/observers/imminent-event-scheduler.d.ts.map +1 -1
  865. package/dist/observers/imminent-event-scheduler.js +29 -0
  866. package/dist/observers/imminent-event-scheduler.js.map +1 -1
  867. package/dist/observers/notion-poller.d.ts +2 -0
  868. package/dist/observers/notion-poller.d.ts.map +1 -1
  869. package/dist/observers/notion-poller.js +44 -6
  870. package/dist/observers/notion-poller.js.map +1 -1
  871. package/dist/observers/poll-guard.d.ts +63 -0
  872. package/dist/observers/poll-guard.d.ts.map +1 -0
  873. package/dist/observers/poll-guard.js +89 -0
  874. package/dist/observers/poll-guard.js.map +1 -0
  875. package/dist/safety/absolute-block-audit.d.ts +17 -0
  876. package/dist/safety/absolute-block-audit.d.ts.map +1 -1
  877. package/dist/safety/absolute-block-audit.js +28 -2
  878. package/dist/safety/absolute-block-audit.js.map +1 -1
  879. package/dist/safety/agent-write-tracker.d.ts +42 -1
  880. package/dist/safety/agent-write-tracker.d.ts.map +1 -1
  881. package/dist/safety/agent-write-tracker.js +81 -1
  882. package/dist/safety/agent-write-tracker.js.map +1 -1
  883. package/dist/safety/always-disallowed.d.ts +34 -0
  884. package/dist/safety/always-disallowed.d.ts.map +1 -1
  885. package/dist/safety/always-disallowed.js +114 -7
  886. package/dist/safety/always-disallowed.js.map +1 -1
  887. package/dist/safety/audit.d.ts +20 -0
  888. package/dist/safety/audit.d.ts.map +1 -1
  889. package/dist/safety/audit.js +126 -0
  890. package/dist/safety/audit.js.map +1 -1
  891. package/dist/safety/risk-classifier.d.ts +17 -1
  892. package/dist/safety/risk-classifier.d.ts.map +1 -1
  893. package/dist/safety/risk-classifier.js +75 -7
  894. package/dist/safety/risk-classifier.js.map +1 -1
  895. package/dist/safety/subprocess-block-scanner.d.ts +89 -0
  896. package/dist/safety/subprocess-block-scanner.d.ts.map +1 -0
  897. package/dist/safety/subprocess-block-scanner.js +177 -0
  898. package/dist/safety/subprocess-block-scanner.js.map +1 -0
  899. package/dist/scheduler/hourly-check-gate.d.ts +23 -9
  900. package/dist/scheduler/hourly-check-gate.d.ts.map +1 -1
  901. package/dist/scheduler/hourly-check-gate.js +11 -6
  902. package/dist/scheduler/hourly-check-gate.js.map +1 -1
  903. package/dist/secrets/backend-api-key-env.d.ts.map +1 -1
  904. package/dist/secrets/backend-api-key-env.js +1 -0
  905. package/dist/secrets/backend-api-key-env.js.map +1 -1
  906. package/dist/services/delegated-backend-invoker.d.ts.map +1 -1
  907. package/dist/services/delegated-backend-invoker.js +8 -1
  908. package/dist/services/delegated-backend-invoker.js.map +1 -1
  909. package/dist/services/delegated-invoker-audit.d.ts.map +1 -1
  910. package/dist/services/delegated-invoker-audit.js +5 -1
  911. package/dist/services/delegated-invoker-audit.js.map +1 -1
  912. package/dist/services/delegated-proxy-config.d.ts +3 -2
  913. package/dist/services/delegated-proxy-config.d.ts.map +1 -1
  914. package/dist/services/delegated-proxy-config.js.map +1 -1
  915. package/dist/services/integrations/extract-write-item-id.d.ts +5 -2
  916. package/dist/services/integrations/extract-write-item-id.d.ts.map +1 -1
  917. package/dist/services/integrations/extract-write-item-id.js.map +1 -1
  918. package/dist/services/mcp/generators/index.d.ts +1 -0
  919. package/dist/services/mcp/generators/index.d.ts.map +1 -1
  920. package/dist/services/mcp/generators/index.js +3 -0
  921. package/dist/services/mcp/generators/index.js.map +1 -1
  922. package/dist/services/mcp/sdk-observations-server.d.ts +60 -0
  923. package/dist/services/mcp/sdk-observations-server.d.ts.map +1 -0
  924. package/dist/services/mcp/sdk-observations-server.js +161 -0
  925. package/dist/services/mcp/sdk-observations-server.js.map +1 -0
  926. package/dist/services/mcp/session-materializer.d.ts.map +1 -1
  927. package/dist/services/mcp/session-materializer.js +13 -9
  928. package/dist/services/mcp/session-materializer.js.map +1 -1
  929. package/dist/services/mcp/types.d.ts +1 -0
  930. package/dist/services/mcp/types.d.ts.map +1 -1
  931. package/dist/services/notion.d.ts +19 -1
  932. package/dist/services/notion.d.ts.map +1 -1
  933. package/dist/services/notion.js +41 -2
  934. package/dist/services/notion.js.map +1 -1
  935. package/dist/services/observations-batch.d.ts +100 -0
  936. package/dist/services/observations-batch.d.ts.map +1 -0
  937. package/dist/services/observations-batch.js +258 -0
  938. package/dist/services/observations-batch.js.map +1 -0
  939. package/dist/services/voice/transcriber.d.ts +23 -0
  940. package/dist/services/voice/transcriber.d.ts.map +1 -1
  941. package/dist/services/voice/transcriber.js +55 -0
  942. package/dist/services/voice/transcriber.js.map +1 -1
  943. package/dist/settings/runtime-settings.d.ts +9 -6
  944. package/dist/settings/runtime-settings.d.ts.map +1 -1
  945. package/dist/settings/runtime-settings.js +50 -17
  946. package/dist/settings/runtime-settings.js.map +1 -1
  947. package/package.json +3 -2
  948. package/dist/api/delegated-proxy-helper.d.ts +0 -33
  949. package/dist/api/delegated-proxy-helper.d.ts.map +0 -1
  950. package/dist/api/delegated-proxy-helper.js +0 -54
  951. package/dist/api/delegated-proxy-helper.js.map +0 -1
  952. package/dist/core/roadmap-merge.d.ts +0 -7
  953. package/dist/core/roadmap-merge.d.ts.map +0 -1
  954. package/dist/core/roadmap-merge.js +0 -187
  955. package/dist/core/roadmap-merge.js.map +0 -1
  956. package/dist/db/test-schemas.d.ts +0 -23
  957. package/dist/db/test-schemas.d.ts.map +0 -1
  958. package/dist/db/test-schemas.js +0 -111
  959. package/dist/db/test-schemas.js.map +0 -1
@@ -0,0 +1,338 @@
1
+ /**
2
+ * `buildRoadmapSkeleton` + `gatherRoadmapSkeletonFacts` — assemble the
3
+ * `<roadmap_skeleton>` MD body that the morning-routine orchestrator
4
+ * injects into Stage A's prompt on the **first-run** (no-yesterday)
5
+ * branch.
6
+ *
7
+ * Why this exists — `docs/design/appendices/morning-routine-optimization.md`
8
+ * Phase 7 retires `routine.morning_routine_initial`'s high-tier session.
9
+ * On the first run after setup, the wizard-installed `roadmap.md`
10
+ * carries only the `_(Not yet configured)_` placeholder rows. The
11
+ * legacy initial routine spent a high-tier (Opus) cold-start session
12
+ * regenerating every section from scratch — read management rules,
13
+ * survey active projects, scan calendar, query travel bookings, then
14
+ * compose the markdown. That last step is template assembly and is
15
+ * what justified the tier upgrade. By doing the deterministic data
16
+ * gather here and emitting a pre-shaped `<roadmap_skeleton>` block,
17
+ * Stage A on medium tier can spot-edit the skeleton into
18
+ * `roadmap.md` via the same `PATCH` paths the recurring branch uses —
19
+ * collapsing the variant into a single medium-tier flow.
20
+ *
21
+ * The skeleton is **scratch data**. Stage A is the only writer of
22
+ * `roadmap.md`; the skeleton's role is to amortize the "what should I
23
+ * even put in `## Annual Goals` / `## Quarterly Focus` / `## Preparation
24
+ * Timeline`" research over a deterministic SQL+fs pass instead of a
25
+ * judgment-heavy turn. Stage A may reshape, prune, or reword every
26
+ * section before its `PUT /api/context/roadmap`. There is no
27
+ * byte-for-byte preservation contract — unlike the journal skeleton —
28
+ * because `roadmap.md` is daemon-tracked but has no per-field
29
+ * validator, and Stage A's judgement (active vs. archived projects,
30
+ * which calendar events count as preparation, which travel rows are
31
+ * still relevant) is the load-bearing reason this stays on medium tier.
32
+ *
33
+ * Gating: the orchestrator only computes the skeleton when
34
+ * `yesterday.md` is absent (the first-run signal). The recurring
35
+ * branch leaves `<roadmap_skeleton>` absent and Stage A falls back to
36
+ * the truncated `<roadmap>` block ContextBuilder injects today; this is
37
+ * exactly how the variant collapse is supposed to read.
38
+ *
39
+ * Two-layer design mirrors `journal-skeleton-builder.ts`:
40
+ * - `gatherRoadmapSkeletonFacts(db, contextDir, ...)` — runs SQLite
41
+ * aggregations against `travel_bookings`, walks `context/projects/`
42
+ * for active project frontmatter, parses `rules/management.md`
43
+ * for the operator-declared goals block, and pulls 7-day calendar
44
+ * events for the `## Quarterly Focus` synthesis hints. Pure
45
+ * read-only, idempotent.
46
+ * - `buildRoadmapSkeleton(inputs, facts)` — pure markdown composer
47
+ * that emits one section per roadmap.md heading the template
48
+ * expects.
49
+ *
50
+ * The split keeps the I/O-bound queries testable independently and
51
+ * lets the pure builder be exercised with synthesized fixtures.
52
+ */
53
+ import { existsSync, readdirSync, readFileSync } from "node:fs";
54
+ import { join } from "node:path";
55
+ /**
56
+ * Source paths consumed by `gatherRoadmapSkeletonFacts`. All paths are
57
+ * relative to the daemon's `contextDir`. Centralised here so test
58
+ * harnesses can substitute the directory without re-implementing the
59
+ * fs walk.
60
+ */
61
+ const PROJECTS_REL = "projects";
62
+ const MANAGEMENT_RULES_REL = "rules/management.md";
63
+ /**
64
+ * Run the SQLite + fs aggregations that feed the skeleton. Pure
65
+ * read-only; callers own the timezone math (`todayDateStr` is the
66
+ * filter the `start_date >= ?` predicate joins against).
67
+ *
68
+ * `contextDir` must point at the daemon's runtime context directory
69
+ * (e.g. `~/.personal-agent/context`). Missing files are silent-skipped
70
+ * — the skeleton renders explicit placeholders so the failure mode is
71
+ * "Stage A sees an empty section" rather than "Stage A sees no
72
+ * skeleton at all", which is what the variant collapse depends on.
73
+ */
74
+ export function gatherRoadmapSkeletonFacts(db, contextDir, todayDateStr) {
75
+ const activeProjects = readActiveProjects(contextDir);
76
+ const annualGoals = readAnnualGoals(contextDir);
77
+ const upcomingTravel = readUpcomingTravel(db, todayDateStr);
78
+ return { activeProjects, annualGoals, upcomingTravel };
79
+ }
80
+ /**
81
+ * Compose the `<roadmap_skeleton>` MD body. Pure — every output byte is
82
+ * a deterministic function of `inputs` + `facts`. Stage A reads this as
83
+ * scratch input and authors `roadmap.md` per the operator-visible
84
+ * template (`## Annual Goals` / `## Quarterly Focus` /
85
+ * `## Preparation Timeline` / `## Agent Action Plan`).
86
+ *
87
+ * The composer NEVER emits the `## Agent Action Plan` section — that
88
+ * is operationally tightly coupled to today's User Tasks + roadmap-
89
+ * relevant `agent_schedule` rows, both of which Stage A enumerates
90
+ * inside its own turn from the live observations table. Including a
91
+ * stale skeleton plan would invite Stage A to copy it verbatim and
92
+ * mask schedule-fan-out drift.
93
+ */
94
+ export function buildRoadmapSkeleton(inputs, facts) {
95
+ const lines = [];
96
+ const tzLabel = inputs.timezone ?? "system";
97
+ lines.push("<!-- Stage A: this is daemon-prepared scratch data.");
98
+ lines.push(" Reshape, prune, or reword before PUT /api/context/roadmap.");
99
+ lines.push(` Calendar dates are in ${tzLabel}; today is ${inputs.todayDateStr}.`);
100
+ lines.push(" No byte-for-byte preservation contract — author per the");
101
+ lines.push(" roadmap.md operator template. -->");
102
+ lines.push("");
103
+ appendAnnualGoalsSection(lines, facts.annualGoals);
104
+ appendQuarterlyFocusSection(lines, facts, inputs.calendarEvents);
105
+ appendPreparationTimelineSection(lines, facts.upcomingTravel, inputs.calendarEvents);
106
+ return lines.join("\n");
107
+ }
108
+ // ── Section emitters ───────────────────────────────────────────────────────
109
+ function appendAnnualGoalsSection(out, goals) {
110
+ out.push("## Annual Goals");
111
+ if (goals.length === 0) {
112
+ out.push("_(Not yet configured — rules/management.md has no `## Annual Goals` section. Stage A: read `<management_rules>` for intent or leave the placeholder for the operator to fill.)_");
113
+ }
114
+ else {
115
+ for (const goal of goals) {
116
+ out.push(`- ${goal}`);
117
+ }
118
+ }
119
+ out.push("");
120
+ }
121
+ function appendQuarterlyFocusSection(out, facts, calendarEvents) {
122
+ out.push("## Quarterly Focus");
123
+ if (facts.activeProjects.length === 0 && calendarEvents.length === 0) {
124
+ out.push("_(Not yet configured — no active projects under context/projects/ and no calendar events in the next 7 days.)_");
125
+ out.push("");
126
+ return;
127
+ }
128
+ if (facts.activeProjects.length > 0) {
129
+ out.push("### Active projects");
130
+ for (const project of facts.activeProjects) {
131
+ const parts = [`state: ${project.state}`];
132
+ if (project.nextMilestone)
133
+ parts.push(`next: ${project.nextMilestone}`);
134
+ if (project.due)
135
+ parts.push(`due: ${project.due}`);
136
+ out.push(`- ${project.title} (\`${project.slug}\`) — ${parts.join("; ")}`);
137
+ }
138
+ out.push("");
139
+ }
140
+ if (calendarEvents.length > 0) {
141
+ out.push("### Near-term calendar (7d)");
142
+ for (const event of calendarEvents) {
143
+ const title = event.title.trim().length === 0 ? "(untitled)" : event.title.trim();
144
+ out.push(`- ${event.date} — ${title}`);
145
+ }
146
+ out.push("");
147
+ }
148
+ }
149
+ function appendPreparationTimelineSection(out, travel, calendarEvents) {
150
+ out.push("## Preparation Timeline");
151
+ if (travel.length === 0 && calendarEvents.length === 0) {
152
+ out.push("_(Not yet configured — no upcoming travel_bookings and no calendar events in the next 7 days.)_");
153
+ out.push("");
154
+ return;
155
+ }
156
+ if (travel.length > 0) {
157
+ out.push("### Travel");
158
+ for (const row of travel) {
159
+ const dest = row.destination?.trim().length ? row.destination.trim() : "(destination tbd)";
160
+ const span = formatTravelSpan(row.startDate, row.endDate);
161
+ const statusSuffix = row.status && row.status !== "upcoming" ? ` [${row.status}]` : "";
162
+ out.push(`- ${span} — ${row.type}: ${dest}${statusSuffix}`);
163
+ }
164
+ out.push("");
165
+ }
166
+ if (calendarEvents.length > 0) {
167
+ out.push("### Calendar (7d)");
168
+ for (const event of calendarEvents) {
169
+ const title = event.title.trim().length === 0 ? "(untitled)" : event.title.trim();
170
+ out.push(`- ${event.date} — ${title}`);
171
+ }
172
+ out.push("");
173
+ }
174
+ }
175
+ function formatTravelSpan(startDate, endDate) {
176
+ if (startDate && endDate && startDate !== endDate) {
177
+ return `${startDate} → ${endDate}`;
178
+ }
179
+ if (startDate)
180
+ return startDate;
181
+ if (endDate)
182
+ return endDate;
183
+ return "(dates tbd)";
184
+ }
185
+ // ── fs / SQL readers ───────────────────────────────────────────────────────
186
+ function readActiveProjects(contextDir) {
187
+ const projectsDir = join(contextDir, PROJECTS_REL);
188
+ if (!existsSync(projectsDir))
189
+ return [];
190
+ let entries;
191
+ try {
192
+ entries = readdirSync(projectsDir);
193
+ }
194
+ catch {
195
+ return [];
196
+ }
197
+ const summaries = [];
198
+ for (const name of entries) {
199
+ if (!name.endsWith(".md"))
200
+ continue;
201
+ if (name.startsWith("_"))
202
+ continue;
203
+ const full = join(projectsDir, name);
204
+ let body;
205
+ try {
206
+ body = readFileSync(full, "utf-8");
207
+ }
208
+ catch {
209
+ continue;
210
+ }
211
+ const project = summarizeProject(name, body);
212
+ if (project === null)
213
+ continue;
214
+ if (project.state === "archived")
215
+ continue;
216
+ summaries.push(project);
217
+ }
218
+ summaries.sort((a, b) => {
219
+ const aDue = a.due ?? "9999-12-31";
220
+ const bDue = b.due ?? "9999-12-31";
221
+ if (aDue !== bDue)
222
+ return aDue.localeCompare(bDue);
223
+ return a.slug.localeCompare(b.slug);
224
+ });
225
+ return summaries;
226
+ }
227
+ function summarizeProject(filename, content) {
228
+ const slug = filename.replace(/\.md$/, "");
229
+ const { frontmatter, body } = splitFrontmatter(content);
230
+ const state = readFrontmatterScalar(frontmatter, "state") ?? "active";
231
+ const title = body.match(/^#\s+(.+)$/m)?.[1]?.trim() || slug;
232
+ return {
233
+ slug,
234
+ title,
235
+ state,
236
+ due: readFrontmatterScalar(frontmatter, "due"),
237
+ nextMilestone: readFrontmatterScalar(frontmatter, "next_milestone"),
238
+ };
239
+ }
240
+ function readAnnualGoals(contextDir) {
241
+ const path = join(contextDir, MANAGEMENT_RULES_REL);
242
+ if (!existsSync(path))
243
+ return [];
244
+ let body;
245
+ try {
246
+ body = readFileSync(path, "utf-8");
247
+ }
248
+ catch {
249
+ return [];
250
+ }
251
+ return extractAnnualGoals(body);
252
+ }
253
+ /**
254
+ * Pull bullet entries under the first `## Annual Goals` heading. Stops
255
+ * at the next `## ` heading or end-of-file. Bullets are returned with
256
+ * the `- ` / `* ` marker stripped and surrounding whitespace trimmed.
257
+ *
258
+ * Exported for unit testing only.
259
+ */
260
+ export function extractAnnualGoals(rulesBody) {
261
+ const lines = rulesBody.split(/\r?\n/);
262
+ const out = [];
263
+ let inside = false;
264
+ for (const raw of lines) {
265
+ if (/^##\s+Annual Goals\b/i.test(raw)) {
266
+ inside = true;
267
+ continue;
268
+ }
269
+ if (!inside)
270
+ continue;
271
+ if (/^##\s+/.test(raw))
272
+ break;
273
+ const bullet = raw.match(/^\s*[-*]\s+(.+?)\s*$/);
274
+ if (bullet) {
275
+ const text = bullet[1].trim();
276
+ if (text.length > 0)
277
+ out.push(text);
278
+ }
279
+ }
280
+ return out;
281
+ }
282
+ function readUpcomingTravel(db, todayDateStr) {
283
+ let rows;
284
+ try {
285
+ rows = db
286
+ .prepare(`SELECT type, destination, start_date, end_date, status
287
+ FROM travel_bookings
288
+ WHERE start_date IS NOT NULL
289
+ AND start_date >= ?
290
+ AND COALESCE(status, 'upcoming') != 'cancelled'
291
+ ORDER BY start_date ASC, id ASC
292
+ LIMIT 20`)
293
+ .all(todayDateStr);
294
+ }
295
+ catch {
296
+ // The table existed since v4.x but bench / first-launch installs may
297
+ // not have it; treat the schema gap the same way a row count of 0
298
+ // is treated — silent skip, skeleton renders the placeholder.
299
+ return [];
300
+ }
301
+ return rows.map((r) => ({
302
+ type: r.type,
303
+ destination: r.destination,
304
+ startDate: r.start_date,
305
+ endDate: r.end_date,
306
+ status: r.status,
307
+ }));
308
+ }
309
+ // ── shared frontmatter helpers ─────────────────────────────────────────────
310
+ //
311
+ // Re-implemented here (rather than imported from context-builder) so the
312
+ // morning-routine modules stay decoupled from the dispatcher's ContextBuilder
313
+ // — the only consumers of those helpers in context-builder are private to
314
+ // the file and not exported. Keeping this layer thin keeps the variant-
315
+ // collapse path self-contained.
316
+ function splitFrontmatter(content) {
317
+ if (!content.startsWith("---\n")) {
318
+ return { frontmatter: "", body: content };
319
+ }
320
+ const endIdx = content.indexOf("\n---", 4);
321
+ if (endIdx < 0) {
322
+ return { frontmatter: "", body: content };
323
+ }
324
+ return {
325
+ frontmatter: content.slice(4, endIdx),
326
+ body: content.slice(endIdx + 4).replace(/^\n+/, ""),
327
+ };
328
+ }
329
+ function readFrontmatterScalar(frontmatter, key) {
330
+ if (!frontmatter)
331
+ return null;
332
+ const escapedKey = key.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
333
+ const match = frontmatter.match(new RegExp(`^${escapedKey}:\\s*(.+)$`, "m"));
334
+ if (!match)
335
+ return null;
336
+ return match[1].trim().replace(/^['"]|['"]$/g, "");
337
+ }
338
+ //# sourceMappingURL=roadmap-skeleton-builder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"roadmap-skeleton-builder.js","sourceRoot":"","sources":["../../../src/core/morning/roadmap-skeleton-builder.ts"],"names":[],"mappings":"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"}
@@ -73,7 +73,7 @@ export function renderOutputLanguagePolicyBlock(primaryLanguage) {
73
73
  "",
74
74
  " User-customized headers win:",
75
75
  " - If the running file already uses a translated header (e.g.",
76
- ` "## アイデンティティ"), preserve it and write content under it;`,
76
+ ` "## Identidad"), preserve it and write content under it;`,
77
77
  " do not revert to the English template header",
78
78
  "",
79
79
  " Skeleton precedence:",
@@ -1 +1 @@
1
- {"version":3,"file":"output-language-policy.js","sourceRoot":"","sources":["../../src/core/output-language-policy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"output-language-policy.js","sourceRoot":"","sources":["../../src/core/output-language-policy.ts"],"names":[],"mappings":"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"}
@@ -28,7 +28,6 @@ export declare function createPromptInjectionBudget(maxBytes?: number): PromptIn
28
28
  * A "policy file" is a natural-language rulebook stored in the vault that
29
29
  * the agent should read when executing a particular ProcessKey. Examples:
30
30
  *
31
- * - `rules/management.md` — Source of Truth bindings (all flows)
32
31
  * - `rules/mcp.md` — MCP usage rules (B-003; inject when any MCP enabled)
33
32
  * - `rules/journal-format.md` — daily journal format (morning routine)
34
33
  * - `rules/redaction.md` — secret patterns (all flows)
@@ -43,6 +42,22 @@ export declare function createPromptInjectionBudget(maxBytes?: number): PromptIn
43
42
  * Phase 1 provides the module. Phase 2 wires it into `prompts.ts` at
44
43
  * task-flow assembly time. Phase 3 layers morning-routine-specific blocks
45
44
  * on top (journal-format + journal-export).
45
+ *
46
+ * Note: `rules/management.md` is NOT in this registry — `ContextBuilder`
47
+ * injects it once at the top of every session prompt as the
48
+ * `<management_rules>` block (see `context-builder.ts`). Task-flows
49
+ * (`routine.morning_routine.md`, `setup.update.md`, …) reference that
50
+ * XML tag directly, so the authoritative injection path lives there.
51
+ *
52
+ * Re-emitting it through `appendPolicyBlocks` (the pre-2026-05-15
53
+ * shape; see `docs/design/21-management-registry-and-entities.md` §0.2
54
+ * historical note) was a pure duplicate that (a) doubled the
55
+ * SoT-bindings text in every prompt, and (b) consumed a slot from the
56
+ * shared `POLICY_TOTAL_MAX_BYTES` budget that other registry files
57
+ * (mcp.md, journal-format.md, journal-export.md, …) need to fit
58
+ * under. The per-file 32 KB cap that previously guarded against a
59
+ * runaway management.md was ported to `ContextBuilder` so NFR-1b's
60
+ * safety contract is preserved.
46
61
  */
47
62
  export interface PolicyFileRef {
48
63
  /** Relative path under contextDir, e.g. `rules/management.md`. */
@@ -67,7 +82,9 @@ export declare const POLICY_FILE_REGISTRY: Record<string, PolicyFileRef[]>;
67
82
  /**
68
83
  * Pull the set of policy refs for a processKey. Process-specific entries
69
84
  * are appended to the global `*` set. Custom routines (keys starting with
70
- * `routine.custom.`) resolve to their slugged file automatically.
85
+ * `routine.custom.`) resolve to their slugged file automatically. Keys
86
+ * in `POLICY_KEY_GLOBAL_OPTOUT` skip the `*` merge entirely and see only
87
+ * their own entries.
71
88
  */
72
89
  export declare function resolvePolicyRefs(processKey: string): PolicyFileRef[];
73
90
  export interface AppendPolicyBlocksOptions {
@@ -1 +1 @@
1
- {"version":3,"file":"policy-files.d.ts","sourceRoot":"","sources":["../../src/core/policy-files.ts"],"names":[],"mappings":"AAOA;;;;;;GAMG;AACH,eAAO,MAAM,qBAAqB,QAAY,CAAC;AAE/C;;;GAGG;AACH,eAAO,MAAM,sBAAsB,QAAa,CAAC;AAEjD;;;;;GAKG;AACH,MAAM,WAAW,qBAAqB;IACpC,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,wBAAgB,2BAA2B,CACzC,QAAQ,GAAE,MAA+B,GACxC,qBAAqB,CAEvB;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,MAAM,WAAW,aAAa;IAC5B,kEAAkE;IAClE,IAAI,EAAE,MAAM,CAAC;IACb,qDAAqD;IACrD,KAAK,EAAE,MAAM,CAAC;IACd,6DAA6D;IAC7D,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,aAAa,KAAK,OAAO,CAAC;CAC5C;AAED,MAAM,WAAW,aAAa;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,+DAA+D;IAC/D,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACjC;AAED;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,EAAE,CAuEhE,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,aAAa,EAAE,CAcrE;AAED,MAAM,WAAW,yBAAyB;IACxC,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC;;;;;;OAMG;IACH,MAAM,CAAC,EAAE,qBAAqB,CAAC;IAC/B,gDAAgD;IAChD,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;CACrC;AAED,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,yBAAyB,GAC9B,WAAW,EAAE,CAsCf;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,CAUhE;AAED,wBAAgB,kBAAkB,CAChC,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,yBAAyB,GAC9B,MAAM,CAKR"}
1
+ {"version":3,"file":"policy-files.d.ts","sourceRoot":"","sources":["../../src/core/policy-files.ts"],"names":[],"mappings":"AAOA;;;;;;GAMG;AACH,eAAO,MAAM,qBAAqB,QAAY,CAAC;AAE/C;;;GAGG;AACH,eAAO,MAAM,sBAAsB,QAAa,CAAC;AAEjD;;;;;GAKG;AACH,MAAM,WAAW,qBAAqB;IACpC,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,wBAAgB,2BAA2B,CACzC,QAAQ,GAAE,MAA+B,GACxC,qBAAqB,CAEvB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AAEH,MAAM,WAAW,aAAa;IAC5B,kEAAkE;IAClE,IAAI,EAAE,MAAM,CAAC;IACb,qDAAqD;IACrD,KAAK,EAAE,MAAM,CAAC;IACd,6DAA6D;IAC7D,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,aAAa,KAAK,OAAO,CAAC;CAC5C;AAED,MAAM,WAAW,aAAa;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,+DAA+D;IAC/D,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACjC;AAED;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,EAAE,CA0GhE,CAAC;AAsBF;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,aAAa,EAAE,CAgBrE;AAED,MAAM,WAAW,yBAAyB;IACxC,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC;;;;;;OAMG;IACH,MAAM,CAAC,EAAE,qBAAqB,CAAC;IAC/B,gDAAgD;IAChD,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;CACrC;AAED,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,yBAAyB,GAC9B,WAAW,EAAE,CAsCf;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,CAUhE;AAED,wBAAgB,kBAAkB,CAChC,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,yBAAyB,GAC9B,MAAM,CAKR"}
@@ -27,10 +27,14 @@ export function createPromptInjectionBudget(maxBytes = POLICY_TOTAL_MAX_BYTES) {
27
27
  */
28
28
  export const POLICY_FILE_REGISTRY = {
29
29
  "*": [
30
- {
31
- path: CONTEXT_RELATIVE_PATHS.rules.management,
32
- label: "Source-of-truth bindings",
33
- },
30
+ // `rules/management.md` is intentionally NOT in this registry.
31
+ // ContextBuilder's `<management_rules>` block is the authoritative
32
+ // injection (task-flows reference the XML tag by name); re-adding
33
+ // a heading-form copy here would duplicate the SoT text in every
34
+ // prompt AND burn a slot of POLICY_TOTAL_MAX_BYTES that mcp.md /
35
+ // journal-format.md / journal-export.md need. The per-file 32 KB
36
+ // cap is enforced by ContextBuilder (NFR-1b). See module-level
37
+ // JSDoc + design 21 §0.2.
34
38
  {
35
39
  path: CONTEXT_RELATIVE_PATHS.rules.redaction,
36
40
  label: "Redaction patterns",
@@ -63,12 +67,43 @@ export const POLICY_FILE_REGISTRY = {
63
67
  label: "Journal export rules",
64
68
  },
65
69
  ],
66
- "routine.morning_routine_initial": [
70
+ // `routine.morning_routine_initial` retired by
71
+ // morning-routine-optimization.md Phase 7 (2026-05-16) — first-run
72
+ // branch routes through `routine.morning_routine_today` below.
73
+ // morning-routine-optimization.md Phase 5 — Stage A inherits the
74
+ // global `*` set (redaction + mcp when enabled) PLUS the user-editable
75
+ // morning checks. Journal-format / journal-export are deliberately
76
+ // NOT injected on Stage A — those are Stage B's policy blocks now.
77
+ // The Vault review context (dossiers/morning.md) is injected by the
78
+ // review-context appender keyed on processKey, not by this registry.
79
+ "routine.morning_routine_today": [
67
80
  {
68
81
  path: CONTEXT_RELATIVE_PATHS.routines.morning,
69
82
  label: "Morning routine checks",
70
83
  },
71
84
  ],
85
+ // morning-routine-optimization.md Phase 5 — Stage B opts OUT of every
86
+ // `*` default except `rules/redaction.md`. `resolvePolicyRefs` honours
87
+ // the `POLICY_KEY_GLOBAL_OPTOUT` set below by skipping the `*` merge
88
+ // entirely; Stage B re-declares the redaction ref here so it still
89
+ // flows through the same vault-write protections every other writer
90
+ // sees. `rules/mcp.md` is deliberately omitted — Stage B uses no MCP
91
+ // tools (skill bundle is `context` + `_safety` only), so injecting
92
+ // the rulebook would waste lite-tier prompt budget for no behaviour.
93
+ "routine.morning_routine_journal": [
94
+ {
95
+ path: CONTEXT_RELATIVE_PATHS.rules.redaction,
96
+ label: "Redaction patterns",
97
+ },
98
+ {
99
+ path: CONTEXT_RELATIVE_PATHS.rules.journalFormat,
100
+ label: "Daily journal format spec",
101
+ },
102
+ {
103
+ path: CONTEXT_RELATIVE_PATHS.rules.journalExport,
104
+ label: "Journal export rules",
105
+ },
106
+ ],
72
107
  "routine.evening_review": [
73
108
  {
74
109
  path: CONTEXT_RELATIVE_PATHS.routines.evening,
@@ -97,13 +132,36 @@ export const POLICY_FILE_REGISTRY = {
97
132
  },
98
133
  ],
99
134
  };
135
+ /**
136
+ * Process keys that opt OUT of the global `*` registry merge. A key in
137
+ * this set sees ONLY its own entries in `POLICY_FILE_REGISTRY[<key>]`
138
+ * — the policies it actually needs must be re-declared inline (the
139
+ * Stage B `routine.morning_routine_journal` entry above re-lists
140
+ * `rules/redaction.md` for exactly this reason).
141
+ *
142
+ * Motivation (`morning-routine-optimization.md` Phase 5): Stage B runs
143
+ * on the lite tier and ships with a `context` + `_safety` skill bundle
144
+ * only. Inheriting `rules/mcp.md` (any time any MCP server is enabled
145
+ * anywhere in the daemon) would pay prompt budget for behaviour Stage
146
+ * B cannot exhibit, defeating the cold-start-floor sizing that makes
147
+ * lite viable. Re-declaring `rules/redaction.md` inline keeps every
148
+ * vault-write surface bound by the same patterns regardless of whether
149
+ * the key opted out.
150
+ */
151
+ const POLICY_KEY_GLOBAL_OPTOUT = new Set([
152
+ "routine.morning_routine_journal",
153
+ ]);
100
154
  /**
101
155
  * Pull the set of policy refs for a processKey. Process-specific entries
102
156
  * are appended to the global `*` set. Custom routines (keys starting with
103
- * `routine.custom.`) resolve to their slugged file automatically.
157
+ * `routine.custom.`) resolve to their slugged file automatically. Keys
158
+ * in `POLICY_KEY_GLOBAL_OPTOUT` skip the `*` merge entirely and see only
159
+ * their own entries.
104
160
  */
105
161
  export function resolvePolicyRefs(processKey) {
106
- const global = POLICY_FILE_REGISTRY["*"];
162
+ const global = POLICY_KEY_GLOBAL_OPTOUT.has(processKey)
163
+ ? []
164
+ : POLICY_FILE_REGISTRY["*"];
107
165
  const specific = POLICY_FILE_REGISTRY[processKey] ?? [];
108
166
  if (processKey.startsWith("routine.custom.")) {
109
167
  const slug = processKey.slice("routine.custom.".length);
@@ -1 +1 @@
1
- {"version":3,"file":"policy-files.js","sourceRoot":"","sources":["../../src/core/policy-files.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"policy-files.js","sourceRoot":"","sources":["../../src/core/policy-files.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,28 @@
1
+ /**
2
+ * Freshness-window helpers for the hourly_check pre-pass harvester
3
+ * (HOURLY_CHECK_GATE_REDESIGN_PLAN.md §3.4).
4
+ *
5
+ * The pre-pass fetcher writes a `runtime_state` row keyed by integration
6
+ * after every successful per-integration completion. The hourly_check
7
+ * coordinator's `harvestForGate` reads the row to decide whether the
8
+ * window is fresh enough to skip pre-pass on this tick.
9
+ *
10
+ * The key prefix is intentionally shared across every routine that
11
+ * spawns `routine.fetch_window` (morning_routine, hourly_check,
12
+ * evening_review, weekly_review, today_refresh). Sharing means a
13
+ * morning_routine that just ran at 04:00 suppresses the 05:00
14
+ * hourly_check pre-pass — exactly what we want to avoid double-fetching.
15
+ *
16
+ * Module is intentionally trivial — separated so both the runner (writer)
17
+ * and the coordinator (reader) can depend on a single string-builder
18
+ * without a circular import.
19
+ */
20
+ import type { IntegrationKey } from "@aitne/shared";
21
+ /** Stable namespace prefix — also used by lint/audit tooling. */
22
+ export declare const PRE_PASS_LAST_RUN_KEY_PREFIX = "pre_pass_last_run";
23
+ /**
24
+ * Build the canonical `runtime_state` key for "when did the pre-pass
25
+ * last successfully fetch this integration's window?".
26
+ */
27
+ export declare function prePassLastRunRuntimeStateKey(integrationKey: IntegrationKey): string;
28
+ //# sourceMappingURL=pre-pass-freshness.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pre-pass-freshness.d.ts","sourceRoot":"","sources":["../../src/core/pre-pass-freshness.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AACH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAEpD,iEAAiE;AACjE,eAAO,MAAM,4BAA4B,sBAAsB,CAAC;AAEhE;;;GAGG;AACH,wBAAgB,6BAA6B,CAC3C,cAAc,EAAE,cAAc,GAC7B,MAAM,CAER"}
@@ -0,0 +1,10 @@
1
+ /** Stable namespace prefix — also used by lint/audit tooling. */
2
+ export const PRE_PASS_LAST_RUN_KEY_PREFIX = "pre_pass_last_run";
3
+ /**
4
+ * Build the canonical `runtime_state` key for "when did the pre-pass
5
+ * last successfully fetch this integration's window?".
6
+ */
7
+ export function prePassLastRunRuntimeStateKey(integrationKey) {
8
+ return `${PRE_PASS_LAST_RUN_KEY_PREFIX}:${integrationKey}`;
9
+ }
10
+ //# sourceMappingURL=pre-pass-freshness.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pre-pass-freshness.js","sourceRoot":"","sources":["../../src/core/pre-pass-freshness.ts"],"names":[],"mappings":"AAqBA,iEAAiE;AACjE,MAAM,CAAC,MAAM,4BAA4B,GAAG,mBAAmB,CAAC;AAEhE;;;GAGG;AACH,MAAM,UAAU,6BAA6B,CAC3C,cAA8B;IAE9B,OAAO,GAAG,4BAA4B,IAAI,cAAc,EAAE,CAAC;AAC7D,CAAC"}