@aitne/daemon 0.1.8 → 0.1.9

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 (2328) hide show
  1. package/dist/adapters/composite-dashboard-stream.d.ts +8 -11
  2. package/dist/adapters/composite-dashboard-stream.js +8 -11
  3. package/dist/adapters/dashboard-adapter.d.ts +6 -10
  4. package/dist/adapters/dashboard-adapter.js +6 -10
  5. package/dist/adapters/discord.d.ts +5 -6
  6. package/dist/adapters/discord.js +14 -17
  7. package/dist/adapters/docs-qa-adapter.d.ts +15 -16
  8. package/dist/adapters/docs-qa-adapter.js +14 -15
  9. package/dist/adapters/message-hub.d.ts +2 -3
  10. package/dist/adapters/message-hub.js +2 -2
  11. package/dist/adapters/notification-manager.d.ts +26 -29
  12. package/dist/adapters/notification-manager.js +63 -62
  13. package/dist/adapters/outbound-text.d.ts +3 -6
  14. package/dist/adapters/outbound-text.js +3 -6
  15. package/dist/adapters/primary-platform-resolver.d.ts +0 -1
  16. package/dist/adapters/primary-platform-resolver.js +0 -1
  17. package/dist/adapters/slack-adapter.d.ts +7 -8
  18. package/dist/adapters/slack-adapter.js +18 -29
  19. package/dist/adapters/telegram-adapter.d.ts +6 -9
  20. package/dist/adapters/telegram-adapter.js +18 -28
  21. package/dist/adapters/types.d.ts +3 -4
  22. package/dist/adapters/types.js +0 -1
  23. package/dist/adapters/whatsapp-adapter.d.ts +71 -18
  24. package/dist/adapters/whatsapp-adapter.js +225 -73
  25. package/dist/api/chat-binding-query.d.ts +0 -1
  26. package/dist/api/chat-binding-query.js +0 -1
  27. package/dist/api/chat-session-resume.d.ts +0 -1
  28. package/dist/api/chat-session-resume.js +0 -1
  29. package/dist/api/directory-picker.d.ts +0 -1
  30. package/dist/api/directory-picker.js +0 -1
  31. package/dist/api/env-writer.d.ts +0 -1
  32. package/dist/api/env-writer.js +102 -4
  33. package/dist/api/helpers/agent-errors-envelope.d.ts +116 -0
  34. package/dist/api/helpers/agent-errors-envelope.js +165 -0
  35. package/dist/api/helpers/agent-errors-registry.d.ts +2290 -0
  36. package/dist/api/helpers/agent-errors-registry.js +2197 -0
  37. package/dist/api/helpers/agent-errors-types.d.ts +193 -0
  38. package/dist/api/helpers/agent-errors-types.js +15 -0
  39. package/dist/api/helpers/agent-errors-zod.d.ts +33 -0
  40. package/dist/api/helpers/agent-errors-zod.js +138 -0
  41. package/dist/api/helpers/agent-errors.d.ts +4 -2600
  42. package/dist/api/helpers/agent-errors.js +15 -2504
  43. package/dist/api/integration-route-gate.d.ts +0 -1
  44. package/dist/api/integration-route-gate.js +0 -1
  45. package/dist/api/json-body.d.ts +3 -4
  46. package/dist/api/json-body.js +3 -4
  47. package/dist/api/routes/activity-sources.d.ts +1 -2
  48. package/dist/api/routes/activity-sources.js +0 -1
  49. package/dist/api/routes/agent-schedule-plan-match.d.ts +0 -1
  50. package/dist/api/routes/agent-schedule-plan-match.js +0 -1
  51. package/dist/api/routes/agent-schedule.d.ts +0 -1
  52. package/dist/api/routes/agent-schedule.js +59 -19
  53. package/dist/api/routes/agent.d.ts +0 -1
  54. package/dist/api/routes/agent.js +25 -2
  55. package/dist/api/routes/agents/index.d.ts +3 -0
  56. package/dist/api/routes/agents/index.js +404 -0
  57. package/dist/api/routes/agents/views.d.ts +185 -0
  58. package/dist/api/routes/agents/views.js +514 -0
  59. package/dist/api/routes/apple-calendar.d.ts +1 -2
  60. package/dist/api/routes/apple-calendar.js +1 -2
  61. package/dist/api/routes/attachments.d.ts +0 -1
  62. package/dist/api/routes/attachments.js +0 -1
  63. package/dist/api/routes/backends.d.ts +0 -1
  64. package/dist/api/routes/backends.js +44 -36
  65. package/dist/api/routes/books.d.ts +0 -1
  66. package/dist/api/routes/books.js +7 -8
  67. package/dist/api/routes/browser-automation-purchase.d.ts +31 -0
  68. package/dist/api/routes/browser-automation-purchase.js +251 -0
  69. package/dist/api/routes/browser-automation-sites.d.ts +22 -0
  70. package/dist/api/routes/browser-automation-sites.js +238 -0
  71. package/dist/api/routes/browser-history-managed.d.ts +23 -0
  72. package/dist/api/routes/browser-history-managed.js +202 -0
  73. package/dist/api/routes/browser-history.d.ts +3 -0
  74. package/dist/api/routes/browser-history.js +433 -0
  75. package/dist/api/routes/browser-task.d.ts +43 -0
  76. package/dist/api/routes/browser-task.js +617 -0
  77. package/dist/api/routes/calendar.d.ts +0 -1
  78. package/dist/api/routes/calendar.js +0 -1
  79. package/dist/api/routes/commands.d.ts +0 -1
  80. package/dist/api/routes/commands.js +10 -4
  81. package/dist/api/routes/context/frontmatter-merge.d.ts +28 -0
  82. package/dist/api/routes/context/frontmatter-merge.js +56 -0
  83. package/dist/api/routes/context/index.d.ts +12 -5
  84. package/dist/api/routes/context/index.js +1 -20
  85. package/dist/api/routes/context/locks.d.ts +0 -1
  86. package/dist/api/routes/context/locks.js +14 -14
  87. package/dist/api/routes/context/path-resolve.d.ts +12 -1
  88. package/dist/api/routes/context/path-resolve.js +23 -7
  89. package/dist/api/routes/context/permissions.d.ts +24 -1
  90. package/dist/api/routes/context/permissions.js +105 -63
  91. package/dist/api/routes/context/read.d.ts +0 -1
  92. package/dist/api/routes/context/read.js +61 -50
  93. package/dist/api/routes/context/repair.d.ts +0 -1
  94. package/dist/api/routes/context/repair.js +3 -3
  95. package/dist/api/routes/context/snapshots.d.ts +0 -1
  96. package/dist/api/routes/context/snapshots.js +44 -13
  97. package/dist/api/routes/context/write-step.d.ts +132 -0
  98. package/dist/api/routes/context/write-step.js +151 -0
  99. package/dist/api/routes/context/write.d.ts +0 -1
  100. package/dist/api/routes/context/write.js +297 -86
  101. package/dist/api/routes/dashboard/config.d.ts +0 -1
  102. package/dist/api/routes/dashboard/config.js +10 -2
  103. package/dist/api/routes/dashboard/conversations.d.ts +0 -1
  104. package/dist/api/routes/dashboard/conversations.js +0 -1
  105. package/dist/api/routes/dashboard/cost-approvals.d.ts +0 -1
  106. package/dist/api/routes/dashboard/cost-approvals.js +0 -1
  107. package/dist/api/routes/dashboard/index.d.ts +0 -1
  108. package/dist/api/routes/dashboard/index.js +0 -1
  109. package/dist/api/routes/dashboard/messaging.d.ts +0 -1
  110. package/dist/api/routes/dashboard/messaging.js +2 -4
  111. package/dist/api/routes/dashboard/notifications.d.ts +0 -1
  112. package/dist/api/routes/dashboard/notifications.js +0 -1
  113. package/dist/api/routes/dashboard/oauth-google.d.ts +0 -1
  114. package/dist/api/routes/dashboard/oauth-google.js +9 -14
  115. package/dist/api/routes/dashboard/schedule-readonly.d.ts +0 -1
  116. package/dist/api/routes/dashboard/schedule-readonly.js +11 -3
  117. package/dist/api/routes/dashboard/secrets.d.ts +0 -1
  118. package/dist/api/routes/dashboard/secrets.js +0 -1
  119. package/dist/api/routes/dashboard/snapshots.d.ts +0 -1
  120. package/dist/api/routes/dashboard/snapshots.js +0 -1
  121. package/dist/api/routes/delegated-sync.d.ts +0 -1
  122. package/dist/api/routes/delegated-sync.js +0 -1
  123. package/dist/api/routes/delegated.d.ts +0 -1
  124. package/dist/api/routes/delegated.js +0 -1
  125. package/dist/api/routes/docs.d.ts +0 -1
  126. package/dist/api/routes/docs.js +0 -1
  127. package/dist/api/routes/entities.d.ts +0 -1
  128. package/dist/api/routes/entities.js +3 -3
  129. package/dist/api/routes/fs.d.ts +0 -1
  130. package/dist/api/routes/fs.js +0 -1
  131. package/dist/api/routes/fs.logic.d.ts +0 -1
  132. package/dist/api/routes/fs.logic.js +6 -2
  133. package/dist/api/routes/git-accounts.d.ts +0 -1
  134. package/dist/api/routes/git-accounts.js +0 -1
  135. package/dist/api/routes/git-templates.d.ts +0 -1
  136. package/dist/api/routes/git-templates.js +7 -2
  137. package/dist/api/routes/git.d.ts +0 -1
  138. package/dist/api/routes/git.js +9 -4
  139. package/dist/api/routes/github.d.ts +0 -1
  140. package/dist/api/routes/github.js +20 -7
  141. package/dist/api/routes/health.d.ts +0 -1
  142. package/dist/api/routes/health.js +4 -3
  143. package/dist/api/routes/integrations/crud-patch.d.ts +0 -1
  144. package/dist/api/routes/integrations/crud-patch.js +53 -15
  145. package/dist/api/routes/integrations/crud.d.ts +0 -1
  146. package/dist/api/routes/integrations/crud.js +0 -1
  147. package/dist/api/routes/integrations/exec.d.ts +0 -1
  148. package/dist/api/routes/integrations/exec.js +8 -15
  149. package/dist/api/routes/integrations/index.d.ts +0 -1
  150. package/dist/api/routes/integrations/index.js +0 -1
  151. package/dist/api/routes/integrations/probe.d.ts +0 -1
  152. package/dist/api/routes/integrations/probe.js +0 -1
  153. package/dist/api/routes/integrations-reconcile.d.ts +0 -1
  154. package/dist/api/routes/integrations-reconcile.js +0 -1
  155. package/dist/api/routes/knowledge.d.ts +0 -1
  156. package/dist/api/routes/knowledge.js +1 -2
  157. package/dist/api/routes/mail/accounts.d.ts +0 -1
  158. package/dist/api/routes/mail/accounts.js +0 -1
  159. package/dist/api/routes/mail/app-password.d.ts +0 -1
  160. package/dist/api/routes/mail/app-password.js +0 -1
  161. package/dist/api/routes/mail/body-helpers.d.ts +0 -1
  162. package/dist/api/routes/mail/body-helpers.js +0 -1
  163. package/dist/api/routes/mail/dependencies.d.ts +0 -1
  164. package/dist/api/routes/mail/dependencies.js +0 -1
  165. package/dist/api/routes/mail/drafts.d.ts +0 -1
  166. package/dist/api/routes/mail/drafts.js +0 -1
  167. package/dist/api/routes/mail/gating.d.ts +0 -1
  168. package/dist/api/routes/mail/gating.js +0 -1
  169. package/dist/api/routes/mail/index.d.ts +0 -1
  170. package/dist/api/routes/mail/index.js +0 -1
  171. package/dist/api/routes/mail/messages.d.ts +0 -1
  172. package/dist/api/routes/mail/messages.js +0 -1
  173. package/dist/api/routes/mail/outlook-config.d.ts +0 -1
  174. package/dist/api/routes/mail/outlook-config.js +0 -1
  175. package/dist/api/routes/mail/provider-resolver.d.ts +2 -3
  176. package/dist/api/routes/mail/provider-resolver.js +0 -1
  177. package/dist/api/routes/mail/providers.d.ts +0 -1
  178. package/dist/api/routes/mail/providers.js +0 -1
  179. package/dist/api/routes/mail/search-health.d.ts +0 -1
  180. package/dist/api/routes/mail/search-health.js +0 -1
  181. package/dist/api/routes/mail/tags-folders.d.ts +0 -1
  182. package/dist/api/routes/mail/tags-folders.js +0 -1
  183. package/dist/api/routes/mail/validators.d.ts +0 -1
  184. package/dist/api/routes/mail/validators.js +0 -1
  185. package/dist/api/routes/managed-tasks.d.ts +0 -1
  186. package/dist/api/routes/managed-tasks.js +12 -9
  187. package/dist/api/routes/mcp.d.ts +0 -1
  188. package/dist/api/routes/mcp.js +0 -1
  189. package/dist/api/routes/metrics.d.ts +0 -1
  190. package/dist/api/routes/metrics.js +0 -1
  191. package/dist/api/routes/notion.d.ts +0 -1
  192. package/dist/api/routes/notion.js +5 -2
  193. package/dist/api/routes/observations.d.ts +0 -1
  194. package/dist/api/routes/observations.js +13 -15
  195. package/dist/api/routes/obsidian.d.ts +0 -1
  196. package/dist/api/routes/obsidian.js +0 -1
  197. package/dist/api/routes/profile-questions.d.ts +0 -1
  198. package/dist/api/routes/profile-questions.js +7 -2
  199. package/dist/api/routes/receipts.d.ts +0 -1
  200. package/dist/api/routes/receipts.js +0 -1
  201. package/dist/api/routes/recurring-schedules.d.ts +0 -1
  202. package/dist/api/routes/recurring-schedules.js +45 -2
  203. package/dist/api/routes/repositories.d.ts +0 -1
  204. package/dist/api/routes/repositories.js +0 -1
  205. package/dist/api/routes/schedule-model-resolver.d.ts +0 -1
  206. package/dist/api/routes/schedule-model-resolver.js +6 -3
  207. package/dist/api/routes/schedule-options.d.ts +0 -1
  208. package/dist/api/routes/schedule-options.js +0 -1
  209. package/dist/api/routes/schedule-validation.d.ts +3 -4
  210. package/dist/api/routes/schedule-validation.js +4 -5
  211. package/dist/api/routes/setup-migrate.d.ts +0 -1
  212. package/dist/api/routes/setup-migrate.js +6 -4
  213. package/dist/api/routes/setup.d.ts +0 -1
  214. package/dist/api/routes/setup.js +42 -1
  215. package/dist/api/routes/skill-curation.d.ts +0 -1
  216. package/dist/api/routes/skill-curation.js +0 -1
  217. package/dist/api/routes/skills.d.ts +2 -1
  218. package/dist/api/routes/skills.js +11 -3
  219. package/dist/api/routes/sot-bindings.d.ts +1 -2
  220. package/dist/api/routes/sot-bindings.js +0 -1
  221. package/dist/api/routes/sse.d.ts +0 -1
  222. package/dist/api/routes/sse.js +3 -4
  223. package/dist/api/routes/system.d.ts +0 -1
  224. package/dist/api/routes/system.js +0 -1
  225. package/dist/api/routes/task-flows.d.ts +0 -1
  226. package/dist/api/routes/task-flows.js +0 -1
  227. package/dist/api/routes/travel-bookings.d.ts +0 -1
  228. package/dist/api/routes/travel-bookings.js +0 -1
  229. package/dist/api/routes/triggers.d.ts +0 -1
  230. package/dist/api/routes/triggers.js +0 -1
  231. package/dist/api/routes/voice.d.ts +0 -1
  232. package/dist/api/routes/voice.js +0 -1
  233. package/dist/api/routes/wiki.d.ts +0 -1
  234. package/dist/api/routes/wiki.js +35 -9
  235. package/dist/api/server.d.ts +41 -4
  236. package/dist/api/server.js +44 -12
  237. package/dist/bootstrap/adapters.d.ts +0 -1
  238. package/dist/bootstrap/adapters.js +0 -1
  239. package/dist/bootstrap/api.d.ts +16 -2
  240. package/dist/bootstrap/api.js +61 -2
  241. package/dist/bootstrap/catchup.d.ts +0 -1
  242. package/dist/bootstrap/catchup.js +1 -2
  243. package/dist/bootstrap/db.d.ts +104 -10
  244. package/dist/bootstrap/db.js +339 -16
  245. package/dist/bootstrap/event-pipeline.d.ts +22 -1
  246. package/dist/bootstrap/event-pipeline.js +507 -8
  247. package/dist/bootstrap/managed-chromium.d.ts +26 -0
  248. package/dist/bootstrap/managed-chromium.js +66 -0
  249. package/dist/bootstrap/observers.d.ts +0 -1
  250. package/dist/bootstrap/observers.js +29 -1
  251. package/dist/bootstrap/schedule-helpers.d.ts +0 -1
  252. package/dist/bootstrap/schedule-helpers.js +4 -2
  253. package/dist/bootstrap/services.d.ts +0 -1
  254. package/dist/bootstrap/services.js +1 -11
  255. package/dist/config.d.ts +1 -2
  256. package/dist/config.js +12 -12
  257. package/dist/core/abort-utils.d.ts +0 -1
  258. package/dist/core/abort-utils.js +0 -1
  259. package/dist/core/agent-core.d.ts +14 -1
  260. package/dist/core/agent-core.js +0 -1
  261. package/dist/core/agent-execution-recorder.d.ts +78 -0
  262. package/dist/core/agent-execution-recorder.js +60 -0
  263. package/dist/core/agents/agent-execution-tracker.d.ts +91 -0
  264. package/dist/core/agents/agent-execution-tracker.js +226 -0
  265. package/dist/core/agents/agent-frontmatter.d.ts +57 -0
  266. package/dist/core/agents/agent-frontmatter.js +74 -0
  267. package/dist/core/agents/agent-id-resolver.d.ts +47 -0
  268. package/dist/core/agents/agent-id-resolver.js +61 -0
  269. package/dist/core/agents/builtin-registry.d.ts +156 -0
  270. package/dist/core/agents/builtin-registry.js +257 -0
  271. package/dist/core/agents/cron-substitute.d.ts +60 -0
  272. package/dist/core/agents/cron-substitute.js +100 -0
  273. package/dist/core/agents/definition-criteria.d.ts +14 -0
  274. package/dist/core/agents/definition-criteria.js +25 -0
  275. package/dist/core/agents/effective-definition.d.ts +47 -0
  276. package/dist/core/agents/effective-definition.js +101 -0
  277. package/dist/core/agents/firing-blocked.d.ts +28 -0
  278. package/dist/core/agents/firing-blocked.js +27 -0
  279. package/dist/core/agents/loader-boot.d.ts +26 -0
  280. package/dist/core/agents/loader-boot.js +98 -0
  281. package/dist/core/agents/loader-watcher.d.ts +23 -0
  282. package/dist/core/agents/loader-watcher.js +84 -0
  283. package/dist/core/agents/loader.d.ts +188 -0
  284. package/dist/core/agents/loader.js +754 -0
  285. package/dist/core/agents/override-merge.d.ts +57 -0
  286. package/dist/core/agents/override-merge.js +131 -0
  287. package/dist/core/agents/recurrence-convert.d.ts +92 -0
  288. package/dist/core/agents/recurrence-convert.js +207 -0
  289. package/dist/core/agents/recurring-schedule-adapter.d.ts +24 -0
  290. package/dist/core/agents/recurring-schedule-adapter.js +157 -0
  291. package/dist/core/agents/success-criteria.d.ts +60 -0
  292. package/dist/core/agents/success-criteria.js +139 -0
  293. package/dist/core/agents/validate-agent-md.d.ts +17 -0
  294. package/dist/core/agents/validate-agent-md.js +64 -0
  295. package/dist/core/alerts.d.ts +0 -1
  296. package/dist/core/alerts.js +0 -1
  297. package/dist/core/atomic-write.d.ts +0 -1
  298. package/dist/core/atomic-write.js +17 -4
  299. package/dist/core/backends/api-key-probe.d.ts +0 -1
  300. package/dist/core/backends/api-key-probe.js +0 -1
  301. package/dist/core/backends/auth-health-monitor.d.ts +0 -1
  302. package/dist/core/backends/auth-health-monitor.js +29 -2
  303. package/dist/core/backends/auth-recovery.d.ts +0 -1
  304. package/dist/core/backends/auth-recovery.js +17 -4
  305. package/dist/core/backends/auth-telemetry.d.ts +0 -1
  306. package/dist/core/backends/auth-telemetry.js +0 -1
  307. package/dist/core/backends/backend-router.d.ts +33 -2
  308. package/dist/core/backends/backend-router.js +134 -2
  309. package/dist/core/backends/claude-auth.d.ts +0 -1
  310. package/dist/core/backends/claude-auth.js +0 -1
  311. package/dist/core/backends/claude-code-core.d.ts +2 -2
  312. package/dist/core/backends/claude-code-core.js +68 -18
  313. package/dist/core/backends/claude-credentials-store.d.ts +0 -1
  314. package/dist/core/backends/claude-credentials-store.js +0 -1
  315. package/dist/core/backends/claude-delegated.d.ts +0 -1
  316. package/dist/core/backends/claude-delegated.js +14 -15
  317. package/dist/core/backends/claude-errors.d.ts +0 -1
  318. package/dist/core/backends/claude-errors.js +0 -1
  319. package/dist/core/backends/claude-probe.d.ts +0 -1
  320. package/dist/core/backends/claude-probe.js +0 -1
  321. package/dist/core/backends/claude-tool-collection.d.ts +0 -1
  322. package/dist/core/backends/claude-tool-collection.js +176 -31
  323. package/dist/core/backends/cli-quota-guards.d.ts +100 -0
  324. package/dist/core/backends/cli-quota-guards.js +95 -0
  325. package/dist/core/backends/cli-utils.d.ts +26 -2
  326. package/dist/core/backends/cli-utils.js +133 -15
  327. package/dist/core/backends/codex-core.d.ts +0 -1
  328. package/dist/core/backends/codex-core.js +71 -78
  329. package/dist/core/backends/gemini-cli-core.d.ts +0 -1
  330. package/dist/core/backends/gemini-cli-core.js +89 -92
  331. package/dist/core/backends/idle-watchdog.d.ts +0 -1
  332. package/dist/core/backends/idle-watchdog.js +0 -1
  333. package/dist/core/backends/install-methods.d.ts +0 -1
  334. package/dist/core/backends/install-methods.js +0 -1
  335. package/dist/core/backends/model-registry.d.ts +2 -3
  336. package/dist/core/backends/model-registry.js +54 -14
  337. package/dist/core/backends/native-skill-discovery-probe.d.ts +3 -6
  338. package/dist/core/backends/native-skill-discovery-probe.js +3 -6
  339. package/dist/core/backends/opencode-basic-auth-fetch.d.ts +0 -1
  340. package/dist/core/backends/opencode-basic-auth-fetch.js +0 -1
  341. package/dist/core/backends/opencode-config-builder.d.ts +29 -2
  342. package/dist/core/backends/opencode-config-builder.js +13 -1
  343. package/dist/core/backends/opencode-core.d.ts +0 -1
  344. package/dist/core/backends/opencode-core.js +8 -2
  345. package/dist/core/backends/opencode-event-mapper.d.ts +0 -1
  346. package/dist/core/backends/opencode-event-mapper.js +0 -1
  347. package/dist/core/backends/opencode-mcp.d.ts +0 -1
  348. package/dist/core/backends/opencode-mcp.js +10 -18
  349. package/dist/core/backends/opencode-server-manager.d.ts +0 -1
  350. package/dist/core/backends/opencode-server-manager.js +0 -1
  351. package/dist/core/backends/opencode-types.d.ts +0 -1
  352. package/dist/core/backends/opencode-types.js +0 -1
  353. package/dist/core/backends/plan-presets.d.ts +0 -1
  354. package/dist/core/backends/plan-presets.js +52 -6
  355. package/dist/core/backends/price-fetcher.d.ts +0 -1
  356. package/dist/core/backends/price-fetcher.js +0 -1
  357. package/dist/core/backends/process-config-cascade.d.ts +0 -1
  358. package/dist/core/backends/process-config-cascade.js +0 -1
  359. package/dist/core/backends/prompt-utils.d.ts +0 -1
  360. package/dist/core/backends/prompt-utils.js +0 -1
  361. package/dist/core/backends/proxy-model-registry.d.ts +0 -1
  362. package/dist/core/backends/proxy-model-registry.js +0 -1
  363. package/dist/core/backends/quota-reset-hints.d.ts +0 -1
  364. package/dist/core/backends/quota-reset-hints.js +0 -1
  365. package/dist/core/backends/silent-api-error-detector.d.ts +0 -1
  366. package/dist/core/backends/silent-api-error-detector.js +0 -1
  367. package/dist/core/bang-commands/commands-checks.d.ts +16 -0
  368. package/dist/core/bang-commands/commands-checks.js +58 -0
  369. package/dist/core/bang-commands/commands-close.d.ts +0 -1
  370. package/dist/core/bang-commands/commands-close.js +0 -1
  371. package/dist/core/bang-commands/commands-cost.d.ts +0 -1
  372. package/dist/core/bang-commands/commands-cost.js +0 -1
  373. package/dist/core/bang-commands/commands-help.d.ts +0 -1
  374. package/dist/core/bang-commands/commands-help.js +8 -9
  375. package/dist/core/bang-commands/commands-report.d.ts +0 -1
  376. package/dist/core/bang-commands/commands-report.js +0 -1
  377. package/dist/core/bang-commands/commands-research.d.ts +36 -0
  378. package/dist/core/bang-commands/commands-research.js +284 -0
  379. package/dist/core/bang-commands/commands-stop-start.d.ts +0 -1
  380. package/dist/core/bang-commands/commands-stop-start.js +0 -1
  381. package/dist/core/bang-commands/commands-wiki.d.ts +0 -1
  382. package/dist/core/bang-commands/commands-wiki.js +44 -16
  383. package/dist/core/bang-commands/format-utils.d.ts +2 -2
  384. package/dist/core/bang-commands/format-utils.js +2 -2
  385. package/dist/core/bang-commands/index.d.ts +2 -1
  386. package/dist/core/bang-commands/index.js +11 -1
  387. package/dist/core/bang-commands/registry.d.ts +9 -1
  388. package/dist/core/bang-commands/registry.js +14 -7
  389. package/dist/core/bang-commands/user-commands.d.ts +0 -1
  390. package/dist/core/bang-commands/user-commands.js +0 -1
  391. package/dist/core/browser-history/pre-morning-digest-job.d.ts +79 -0
  392. package/dist/core/browser-history/pre-morning-digest-job.js +89 -0
  393. package/dist/core/browser-history/research-cluster-fanout.d.ts +40 -0
  394. package/dist/core/browser-history/research-cluster-fanout.js +47 -0
  395. package/dist/core/browser-history/research-events.d.ts +37 -0
  396. package/dist/core/browser-history/research-events.js +70 -0
  397. package/dist/core/channel-timeline.d.ts +0 -1
  398. package/dist/core/channel-timeline.js +0 -1
  399. package/dist/core/character-block.d.ts +0 -1
  400. package/dist/core/character-block.js +0 -1
  401. package/dist/core/context/activity-sources.d.ts +3 -4
  402. package/dist/core/context/activity-sources.js +0 -1
  403. package/dist/core/context/activity-view-reconciler.d.ts +1 -2
  404. package/dist/core/context/activity-view-reconciler.js +10 -10
  405. package/dist/core/context/activity-view-runner.d.ts +0 -1
  406. package/dist/core/context/activity-view-runner.js +2 -2
  407. package/dist/core/context/default-schedules-reconciler.d.ts +1 -2
  408. package/dist/core/context/default-schedules-reconciler.js +1 -2
  409. package/dist/core/context/default-schedules-runner.d.ts +0 -1
  410. package/dist/core/context/default-schedules-runner.js +0 -1
  411. package/dist/core/context/domain-index-reconciler.d.ts +3 -1
  412. package/dist/core/context/domain-index-reconciler.js +11 -5
  413. package/dist/core/context/domain-index-runner.d.ts +0 -1
  414. package/dist/core/context/domain-index-runner.js +0 -1
  415. package/dist/core/context/entity-mirror.d.ts +9 -7
  416. package/dist/core/context/entity-mirror.js +21 -9
  417. package/dist/core/context/entity-source-rename.d.ts +0 -1
  418. package/dist/core/context/entity-source-rename.js +0 -1
  419. package/dist/core/context/index-reconciler.d.ts +26 -5
  420. package/dist/core/context/index-reconciler.js +110 -56
  421. package/dist/core/context/policy-index-reconciler.d.ts +6 -7
  422. package/dist/core/context/policy-index-reconciler.js +6 -7
  423. package/dist/core/context/policy-index-runner.d.ts +2 -3
  424. package/dist/core/context/policy-index-runner.js +1 -2
  425. package/dist/core/context/reconciler-runner.d.ts +0 -1
  426. package/dist/core/context/reconciler-runner.js +37 -5
  427. package/dist/core/context/reconciler-section.d.ts +30 -0
  428. package/dist/core/context/reconciler-section.js +39 -0
  429. package/dist/core/context-builder-calendar.d.ts +36 -0
  430. package/dist/core/context-builder-calendar.js +245 -0
  431. package/dist/core/context-builder-conversation.d.ts +95 -0
  432. package/dist/core/context-builder-conversation.js +444 -0
  433. package/dist/core/context-builder-format.d.ts +8 -0
  434. package/dist/core/context-builder-format.js +22 -0
  435. package/dist/core/context-builder-projects.d.ts +11 -0
  436. package/dist/core/context-builder-projects.js +102 -0
  437. package/dist/core/context-builder-yesterday.d.ts +30 -0
  438. package/dist/core/context-builder-yesterday.js +198 -0
  439. package/dist/core/context-builder.d.ts +9 -155
  440. package/dist/core/context-builder.js +98 -1002
  441. package/dist/core/context-file-serializer.d.ts +92 -0
  442. package/dist/core/context-file-serializer.js +126 -0
  443. package/dist/core/context-frontmatter-extract.d.ts +32 -0
  444. package/dist/core/context-frontmatter-extract.js +98 -0
  445. package/dist/core/context-frontmatter.d.ts +8 -1
  446. package/dist/core/context-frontmatter.js +71 -112
  447. package/dist/core/context-health.d.ts +0 -1
  448. package/dist/core/context-health.js +4 -5
  449. package/dist/core/context-paths.d.ts +128 -85
  450. package/dist/core/context-paths.js +190 -108
  451. package/dist/core/context-staleness.d.ts +0 -1
  452. package/dist/core/context-staleness.js +2 -3
  453. package/dist/core/context-validation/frontmatter.d.ts +73 -0
  454. package/dist/core/context-validation/frontmatter.js +216 -0
  455. package/dist/core/context-validation/index.d.ts +1 -1
  456. package/dist/core/context-validation/index.js +1 -1
  457. package/dist/core/context-validation/prepare-write.d.ts +1 -2
  458. package/dist/core/context-validation/prepare-write.js +18 -8
  459. package/dist/core/context-validation/routine-rulebook.d.ts +2 -3
  460. package/dist/core/context-validation/routine-rulebook.js +3 -4
  461. package/dist/core/context-validation/section.d.ts +1 -2
  462. package/dist/core/context-validation/section.js +13 -5
  463. package/dist/core/context-validation/snapshot-debounce.d.ts +3 -4
  464. package/dist/core/context-validation/snapshot-debounce.js +3 -4
  465. package/dist/core/context-validation/today.d.ts +0 -1
  466. package/dist/core/context-validation/today.js +0 -1
  467. package/dist/core/context-vault-aliases.d.ts +107 -0
  468. package/dist/core/context-vault-aliases.js +253 -0
  469. package/dist/core/custom-routine-scheduler.d.ts +5 -6
  470. package/dist/core/custom-routine-scheduler.js +3 -4
  471. package/dist/core/daemon-api-cli.d.ts +0 -1
  472. package/dist/core/daemon-api-cli.js +59 -1
  473. package/dist/core/dashboard-session-cleanup.d.ts +0 -1
  474. package/dist/core/dashboard-session-cleanup.js +0 -1
  475. package/dist/core/dashboard-session-controls.d.ts +0 -1
  476. package/dist/core/dashboard-session-controls.js +0 -1
  477. package/dist/core/delegated-connector-health.d.ts +0 -1
  478. package/dist/core/delegated-connector-health.js +0 -1
  479. package/dist/core/dispatcher-date-utils.d.ts +0 -1
  480. package/dist/core/dispatcher-date-utils.js +0 -1
  481. package/dist/core/dispatcher-error-handling.d.ts +0 -1
  482. package/dist/core/dispatcher-error-handling.js +0 -1
  483. package/dist/core/dispatcher-hourly-check.d.ts +0 -1
  484. package/dist/core/dispatcher-hourly-check.js +9 -2
  485. package/dist/core/dispatcher-message-handler.d.ts +21 -1
  486. package/dist/core/dispatcher-message-handler.js +146 -7
  487. package/dist/core/dispatcher-morning-routine.d.ts +0 -1
  488. package/dist/core/dispatcher-morning-routine.js +150 -126
  489. package/dist/core/dispatcher-prompt.d.ts +0 -1
  490. package/dist/core/dispatcher-prompt.js +4 -5
  491. package/dist/core/dispatcher-repository-helpers.d.ts +0 -1
  492. package/dist/core/dispatcher-repository-helpers.js +0 -1
  493. package/dist/core/dispatcher-result-processor.d.ts +20 -1
  494. package/dist/core/dispatcher-result-processor.js +86 -2
  495. package/dist/core/dispatcher-scheduled-browser-task.d.ts +91 -0
  496. package/dist/core/dispatcher-scheduled-browser-task.js +228 -0
  497. package/dist/core/dispatcher-scheduled-tasks.d.ts +68 -1
  498. package/dist/core/dispatcher-scheduled-tasks.js +373 -13
  499. package/dist/core/dispatcher-types.d.ts +56 -1
  500. package/dist/core/dispatcher-types.js +0 -1
  501. package/dist/core/dispatcher.d.ts +144 -4
  502. package/dist/core/dispatcher.js +345 -4
  503. package/dist/core/dm-freshness-metrics.d.ts +0 -1
  504. package/dist/core/dm-freshness-metrics.js +0 -1
  505. package/dist/core/dm-token-router.d.ts +58 -0
  506. package/dist/core/dm-token-router.js +58 -0
  507. package/dist/core/docs/citation-validator.d.ts +0 -1
  508. package/dist/core/docs/citation-validator.js +0 -1
  509. package/dist/core/docs/extract-terms.d.ts +0 -1
  510. package/dist/core/docs/extract-terms.js +0 -1
  511. package/dist/core/docs/indexer.d.ts +0 -1
  512. package/dist/core/docs/indexer.js +0 -1
  513. package/dist/core/drift-effects.d.ts +0 -1
  514. package/dist/core/drift-effects.js +6 -3
  515. package/dist/core/evening-review-verify.d.ts +1 -2
  516. package/dist/core/evening-review-verify.js +2 -3
  517. package/dist/core/event-bus.d.ts +0 -1
  518. package/dist/core/event-bus.js +0 -1
  519. package/dist/core/fetch-window-prompt-loader.d.ts +0 -1
  520. package/dist/core/fetch-window-prompt-loader.js +0 -1
  521. package/dist/core/git-project-docs.d.ts +0 -1
  522. package/dist/core/git-project-docs.js +13 -6
  523. package/dist/core/health-monitor.d.ts +2 -2
  524. package/dist/core/health-monitor.js +6 -3
  525. package/dist/core/heartbeat.d.ts +0 -1
  526. package/dist/core/heartbeat.js +0 -1
  527. package/dist/core/injection-policy.d.ts +107 -0
  528. package/dist/core/injection-policy.js +117 -0
  529. package/dist/core/integration-health.d.ts +0 -1
  530. package/dist/core/integration-health.js +1 -2
  531. package/dist/core/integration-lifecycle.d.ts +0 -1
  532. package/dist/core/integration-lifecycle.js +0 -1
  533. package/dist/core/integration-main-backend.d.ts +0 -1
  534. package/dist/core/integration-main-backend.js +11 -4
  535. package/dist/core/integration-probe.d.ts +0 -1
  536. package/dist/core/integration-probe.js +0 -1
  537. package/dist/core/management-md-write-lock.d.ts +1 -2
  538. package/dist/core/management-md-write-lock.js +1 -2
  539. package/dist/core/management-md.d.ts +24 -10
  540. package/dist/core/management-md.js +42 -24
  541. package/dist/core/management-registry.d.ts +3 -4
  542. package/dist/core/management-registry.js +5 -6
  543. package/dist/core/management-telemetry.d.ts +1 -2
  544. package/dist/core/management-telemetry.js +1 -2
  545. package/dist/core/message-recorder.d.ts +3 -4
  546. package/dist/core/message-recorder.js +3 -4
  547. package/dist/core/metrics.d.ts +0 -1
  548. package/dist/core/metrics.js +0 -1
  549. package/dist/core/migration-backup.d.ts +0 -1
  550. package/dist/core/migration-backup.js +11 -1
  551. package/dist/core/morning/agent-journal-appender.d.ts +75 -8
  552. package/dist/core/morning/agent-journal-appender.js +212 -38
  553. package/dist/core/morning/daily-journal-composer.d.ts +183 -0
  554. package/dist/core/morning/daily-journal-composer.js +421 -0
  555. package/dist/core/morning/handoff-parser.d.ts +3 -5
  556. package/dist/core/morning/handoff-parser.js +3 -5
  557. package/dist/core/morning/journal-skeleton-builder.d.ts +7 -9
  558. package/dist/core/morning/journal-skeleton-builder.js +15 -17
  559. package/dist/core/morning/orchestrator.d.ts +129 -17
  560. package/dist/core/morning/orchestrator.js +467 -64
  561. package/dist/core/morning/parent-audit-emitter.d.ts +2 -4
  562. package/dist/core/morning/parent-audit-emitter.js +2 -4
  563. package/dist/core/morning/partial-extract-streak.d.ts +76 -0
  564. package/dist/core/morning/partial-extract-streak.js +165 -0
  565. package/dist/core/morning/roadmap-skeleton-builder.d.ts +3 -4
  566. package/dist/core/morning/roadmap-skeleton-builder.js +4 -5
  567. package/dist/core/output-language-policy.d.ts +0 -1
  568. package/dist/core/output-language-policy.js +6 -7
  569. package/dist/core/overview-write-lock.d.ts +0 -1
  570. package/dist/core/overview-write-lock.js +0 -1
  571. package/dist/core/path-compat.d.ts +0 -1
  572. package/dist/core/path-compat.js +0 -1
  573. package/dist/core/path-rewrite.d.ts +1 -2
  574. package/dist/core/path-rewrite.js +0 -1
  575. package/dist/core/policy-files.d.ts +25 -16
  576. package/dist/core/policy-files.js +36 -44
  577. package/dist/core/pre-pass-freshness.d.ts +0 -1
  578. package/dist/core/pre-pass-freshness.js +0 -1
  579. package/dist/core/previous-week-digest.d.ts +0 -1
  580. package/dist/core/previous-week-digest.js +12 -13
  581. package/dist/core/profile-questions/seed.d.ts +2 -3
  582. package/dist/core/profile-questions/seed.js +4 -4
  583. package/dist/core/profile-questions/slot-filled.d.ts +0 -1
  584. package/dist/core/profile-questions/slot-filled.js +0 -1
  585. package/dist/core/prompts.d.ts +0 -1
  586. package/dist/core/prompts.js +3 -4
  587. package/dist/core/quiet-hours-sync.d.ts +0 -1
  588. package/dist/core/quiet-hours-sync.js +0 -1
  589. package/dist/core/quiet-hours.d.ts +35 -0
  590. package/dist/core/quiet-hours.js +93 -0
  591. package/dist/core/read-sensitive-token-manager.d.ts +0 -1
  592. package/dist/core/read-sensitive-token-manager.js +0 -1
  593. package/dist/core/recurrence.d.ts +0 -1
  594. package/dist/core/recurrence.js +6 -7
  595. package/dist/core/reinstall.d.ts +5 -1
  596. package/dist/core/reinstall.js +12 -2
  597. package/dist/core/release-assets.d.ts +18 -3
  598. package/dist/core/release-assets.js +25 -5
  599. package/dist/core/repository-management-docs.d.ts +0 -1
  600. package/dist/core/repository-management-docs.js +18 -7
  601. package/dist/core/retention.d.ts +49 -4
  602. package/dist/core/retention.js +218 -5
  603. package/dist/core/review-context.d.ts +10 -1
  604. package/dist/core/review-context.js +26 -9
  605. package/dist/core/roadmap-horizon.d.ts +0 -1
  606. package/dist/core/roadmap-horizon.js +0 -1
  607. package/dist/core/roadmap-ids.d.ts +4 -6
  608. package/dist/core/roadmap-ids.js +4 -6
  609. package/dist/core/roadmap-maintenance.d.ts +2 -3
  610. package/dist/core/roadmap-maintenance.js +62 -36
  611. package/dist/core/roadmap-refresh-triggers.d.ts +0 -1
  612. package/dist/core/roadmap-refresh-triggers.js +0 -1
  613. package/dist/core/roadmap-truncate.d.ts +0 -1
  614. package/dist/core/roadmap-truncate.js +0 -1
  615. package/dist/core/roadmap-validate.d.ts +0 -1
  616. package/dist/core/roadmap-validate.js +6 -6
  617. package/dist/core/roadmap-write-lock.d.ts +0 -1
  618. package/dist/core/roadmap-write-lock.js +0 -1
  619. package/dist/core/routine-acquisition-plan.d.ts +0 -1
  620. package/dist/core/routine-acquisition-plan.js +0 -1
  621. package/dist/core/routine-fetch-window-retry.d.ts +6 -8
  622. package/dist/core/routine-fetch-window-retry.js +6 -8
  623. package/dist/core/routine-fetch-window-runner.d.ts +8 -9
  624. package/dist/core/routine-fetch-window-runner.js +41 -18
  625. package/dist/core/routine-windows.d.ts +5 -11
  626. package/dist/core/routine-windows.js +18 -24
  627. package/dist/core/schedule-insert-helper.d.ts +0 -1
  628. package/dist/core/schedule-insert-helper.js +0 -1
  629. package/dist/core/schedule-maintenance.d.ts +0 -1
  630. package/dist/core/schedule-maintenance.js +0 -1
  631. package/dist/core/scheduler.d.ts +59 -1
  632. package/dist/core/scheduler.js +265 -21
  633. package/dist/core/semaphore.d.ts +0 -1
  634. package/dist/core/semaphore.js +0 -1
  635. package/dist/core/session-gate.d.ts +0 -1
  636. package/dist/core/session-gate.js +0 -1
  637. package/dist/core/session-manager.d.ts +0 -1
  638. package/dist/core/session-manager.js +0 -1
  639. package/dist/core/signal-detector.d.ts +2 -3
  640. package/dist/core/signal-detector.js +3 -4
  641. package/dist/core/skeleton.d.ts +1 -2
  642. package/dist/core/skeleton.js +8 -9
  643. package/dist/core/skill-curation/apply-proposal.d.ts +0 -1
  644. package/dist/core/skill-curation/apply-proposal.js +0 -1
  645. package/dist/core/skill-curation/auto-revert.d.ts +0 -1
  646. package/dist/core/skill-curation/auto-revert.js +4 -5
  647. package/dist/core/skill-curation/classify-diff.d.ts +0 -1
  648. package/dist/core/skill-curation/classify-diff.js +0 -0
  649. package/dist/core/skill-curation/declarations.d.ts +0 -1
  650. package/dist/core/skill-curation/declarations.js +0 -1
  651. package/dist/core/skill-curation/knowledge-map.d.ts +0 -1
  652. package/dist/core/skill-curation/knowledge-map.js +0 -1
  653. package/dist/core/skill-curation/orphan-overlay.d.ts +2 -3
  654. package/dist/core/skill-curation/orphan-overlay.js +5 -6
  655. package/dist/core/skill-curation/overlay-store.d.ts +6 -4
  656. package/dist/core/skill-curation/overlay-store.js +12 -7
  657. package/dist/core/skill-curation/render/convention-notes.d.ts +0 -1
  658. package/dist/core/skill-curation/render/convention-notes.js +0 -1
  659. package/dist/core/skill-curation/render/cross-references.d.ts +0 -1
  660. package/dist/core/skill-curation/render/cross-references.js +0 -1
  661. package/dist/core/skill-curation/render/frontmatter-schema.d.ts +0 -1
  662. package/dist/core/skill-curation/render/frontmatter-schema.js +0 -1
  663. package/dist/core/skill-curation/render/index.d.ts +0 -1
  664. package/dist/core/skill-curation/render/index.js +0 -1
  665. package/dist/core/skill-curation/render/knowledge-layout.d.ts +0 -1
  666. package/dist/core/skill-curation/render/knowledge-layout.js +0 -1
  667. package/dist/core/skill-curation/render/routing-table.d.ts +0 -1
  668. package/dist/core/skill-curation/render/routing-table.js +0 -1
  669. package/dist/core/skill-curation/render/search-recipes.d.ts +0 -1
  670. package/dist/core/skill-curation/render/search-recipes.js +0 -1
  671. package/dist/core/skill-curation/run-token.d.ts +0 -1
  672. package/dist/core/skill-curation/run-token.js +0 -1
  673. package/dist/core/skill-curation/signals.d.ts +0 -1
  674. package/dist/core/skill-curation/signals.js +0 -1
  675. package/dist/core/skill-curation/smoke-test.d.ts +0 -1
  676. package/dist/core/skill-curation/smoke-test.js +0 -1
  677. package/dist/core/skill-curation/splicer.d.ts +0 -1
  678. package/dist/core/skill-curation/splicer.js +0 -1
  679. package/dist/core/skill-curation/workdir.d.ts +0 -1
  680. package/dist/core/skill-curation/workdir.js +0 -1
  681. package/dist/core/skill-source-paths.d.ts +0 -1
  682. package/dist/core/skill-source-paths.js +0 -1
  683. package/dist/core/skills-compiler-cli-renderer.d.ts +79 -0
  684. package/dist/core/skills-compiler-cli-renderer.js +289 -0
  685. package/dist/core/skills-compiler-denied-tools.d.ts +57 -0
  686. package/dist/core/skills-compiler-denied-tools.js +204 -0
  687. package/dist/core/skills-compiler-skill-index.d.ts +117 -0
  688. package/dist/core/skills-compiler-skill-index.js +262 -0
  689. package/dist/core/skills-compiler-tree.d.ts +38 -0
  690. package/dist/core/skills-compiler-tree.js +157 -0
  691. package/dist/core/skills-compiler-types.d.ts +46 -0
  692. package/dist/core/skills-compiler-types.js +1 -0
  693. package/dist/core/skills-compiler-variants.d.ts +117 -0
  694. package/dist/core/skills-compiler-variants.js +337 -0
  695. package/dist/core/skills-compiler.d.ts +21 -319
  696. package/dist/core/skills-compiler.js +29 -1223
  697. package/dist/core/skills-manifest.d.ts +30 -2
  698. package/dist/core/skills-manifest.js +178 -22
  699. package/dist/core/system-reset.d.ts +1 -2
  700. package/dist/core/system-reset.js +1 -2
  701. package/dist/core/template-store.d.ts +2 -3
  702. package/dist/core/template-store.js +7 -4
  703. package/dist/core/template-versions.d.ts +1 -2
  704. package/dist/core/template-versions.js +1 -2
  705. package/dist/core/today-agent-plan.d.ts +0 -1
  706. package/dist/core/today-agent-plan.js +0 -1
  707. package/dist/core/today-direct-writer.d.ts +11 -2
  708. package/dist/core/today-direct-writer.js +42 -27
  709. package/dist/core/today-write-lock.d.ts +0 -1
  710. package/dist/core/today-write-lock.js +0 -1
  711. package/dist/core/trigger-dispatch.d.ts +0 -1
  712. package/dist/core/trigger-dispatch.js +0 -1
  713. package/dist/core/trigger-evaluator.d.ts +0 -1
  714. package/dist/core/trigger-evaluator.js +0 -1
  715. package/dist/core/user-skills-root.d.ts +24 -0
  716. package/dist/core/user-skills-root.js +29 -0
  717. package/dist/core/wiki/approval-queue.d.ts +0 -1
  718. package/dist/core/wiki/approval-queue.js +7 -3
  719. package/dist/core/wiki/bridge.d.ts +0 -1
  720. package/dist/core/wiki/bridge.js +0 -1
  721. package/dist/core/wiki/compile-lock.d.ts +0 -1
  722. package/dist/core/wiki/compile-lock.js +0 -1
  723. package/dist/core/wiki/compile-preview.d.ts +0 -1
  724. package/dist/core/wiki/compile-preview.js +0 -1
  725. package/dist/core/wiki/cost-estimate.d.ts +0 -1
  726. package/dist/core/wiki/cost-estimate.js +23 -3
  727. package/dist/core/wiki/dispatcher.d.ts +1 -21
  728. package/dist/core/wiki/dispatcher.js +0 -26
  729. package/dist/core/wiki/git-precompile.d.ts +0 -1
  730. package/dist/core/wiki/git-precompile.js +0 -1
  731. package/dist/core/wiki/import-migrate.d.ts +0 -1
  732. package/dist/core/wiki/import-migrate.js +0 -1
  733. package/dist/core/wiki/import-probe.d.ts +0 -1
  734. package/dist/core/wiki/import-probe.js +7 -5
  735. package/dist/core/wiki/index-cache.d.ts +0 -1
  736. package/dist/core/wiki/index-cache.js +0 -1
  737. package/dist/core/wiki/multi-url-dispatch.d.ts +0 -1
  738. package/dist/core/wiki/multi-url-dispatch.js +19 -9
  739. package/dist/core/wiki/wiki-fts.d.ts +0 -1
  740. package/dist/core/wiki/wiki-fts.js +0 -1
  741. package/dist/core/wiki/workspaces.d.ts +17 -2
  742. package/dist/core/wiki/workspaces.js +28 -17
  743. package/dist/core/wiki/write-strategy.d.ts +0 -1
  744. package/dist/core/wiki/write-strategy.js +19 -3
  745. package/dist/core/workdir.d.ts +9 -2
  746. package/dist/core/workdir.js +21 -4
  747. package/dist/db/agent-executions-store.d.ts +149 -0
  748. package/dist/db/agent-executions-store.js +209 -0
  749. package/dist/db/agents-store.d.ts +179 -0
  750. package/dist/db/agents-store.js +264 -0
  751. package/dist/db/automation-triggers.d.ts +0 -1
  752. package/dist/db/automation-triggers.js +0 -1
  753. package/dist/db/browser-automation-b4-config-store.d.ts +68 -0
  754. package/dist/db/browser-automation-b4-config-store.js +111 -0
  755. package/dist/db/browser-automation-purchase-primary-channels-store.d.ts +48 -0
  756. package/dist/db/browser-automation-purchase-primary-channels-store.js +88 -0
  757. package/dist/db/browser-automation-purchase-replies-store.d.ts +48 -0
  758. package/dist/db/browser-automation-purchase-replies-store.js +71 -0
  759. package/dist/db/browser-automation-purchase-tokens-store.d.ts +276 -0
  760. package/dist/db/browser-automation-purchase-tokens-store.js +483 -0
  761. package/dist/db/browser-automation-store.d.ts +37 -0
  762. package/dist/db/browser-automation-store.js +41 -0
  763. package/dist/db/browser-history-store.d.ts +231 -0
  764. package/dist/db/browser-history-store.js +601 -0
  765. package/dist/db/browser-task-action-log-store.d.ts +41 -0
  766. package/dist/db/browser-task-action-log-store.js +74 -0
  767. package/dist/db/browser-task-clarifications-store.d.ts +67 -0
  768. package/dist/db/browser-task-clarifications-store.js +118 -0
  769. package/dist/db/browser-task-final-confirm-tokens-store.d.ts +108 -0
  770. package/dist/db/browser-task-final-confirm-tokens-store.js +251 -0
  771. package/dist/db/browser-task-store.d.ts +114 -0
  772. package/dist/db/browser-task-store.js +250 -0
  773. package/dist/db/client.d.ts +0 -1
  774. package/dist/db/client.js +0 -1
  775. package/dist/db/entities-store.d.ts +1 -2
  776. package/dist/db/entities-store.js +0 -1
  777. package/dist/db/hourly-check-signals.d.ts +0 -1
  778. package/dist/db/hourly-check-signals.js +0 -1
  779. package/dist/db/integration-probe-store.d.ts +0 -1
  780. package/dist/db/integration-probe-store.js +0 -1
  781. package/dist/db/integrations-store.d.ts +0 -1
  782. package/dist/db/integrations-store.js +0 -1
  783. package/dist/db/managed-chromium-sites-store.d.ts +110 -0
  784. package/dist/db/managed-chromium-sites-store.js +174 -0
  785. package/dist/db/managed-chromium-state.d.ts +58 -0
  786. package/dist/db/managed-chromium-state.js +104 -0
  787. package/dist/db/managed-tasks-store.d.ts +0 -1
  788. package/dist/db/managed-tasks-store.js +0 -1
  789. package/dist/db/management-parse-failures-store.d.ts +0 -1
  790. package/dist/db/management-parse-failures-store.js +0 -1
  791. package/dist/db/migrations/context-vault-restructure.d.ts +263 -0
  792. package/dist/db/migrations/context-vault-restructure.js +1384 -0
  793. package/dist/db/migrations.d.ts +111 -0
  794. package/dist/db/migrations.js +476 -0
  795. package/dist/db/observations.d.ts +0 -1
  796. package/dist/db/observations.js +12 -3
  797. package/dist/db/recurring-schedules.d.ts +12 -2
  798. package/dist/db/recurring-schedules.js +91 -15
  799. package/dist/db/repositories-store.d.ts +0 -1
  800. package/dist/db/repositories-store.js +4 -2
  801. package/dist/db/runtime-state.d.ts +32 -2
  802. package/dist/db/runtime-state.js +33 -2
  803. package/dist/db/schema.d.ts +0 -1
  804. package/dist/db/schema.js +776 -13
  805. package/dist/db/sot-bindings-store.d.ts +0 -1
  806. package/dist/db/sot-bindings-store.js +0 -1
  807. package/dist/db/voice-transcripts-store.d.ts +0 -1
  808. package/dist/db/voice-transcripts-store.js +0 -1
  809. package/dist/db/wiki-store.d.ts +0 -1
  810. package/dist/db/wiki-store.js +0 -1
  811. package/dist/index.d.ts +0 -1
  812. package/dist/index.js +119 -61
  813. package/dist/init.d.ts +0 -1
  814. package/dist/init.js +0 -2
  815. package/dist/log-buffer.d.ts +0 -1
  816. package/dist/log-buffer.js +0 -2
  817. package/dist/logging.d.ts +0 -1
  818. package/dist/logging.js +0 -2
  819. package/dist/management-rules.d.ts +0 -1
  820. package/dist/management-rules.js +0 -1
  821. package/dist/messaging/browser-task-mcp-notifier.d.ts +77 -0
  822. package/dist/messaging/browser-task-mcp-notifier.js +164 -0
  823. package/dist/messaging/browser-task-screenshot-attachment.d.ts +62 -0
  824. package/dist/messaging/browser-task-screenshot-attachment.js +115 -0
  825. package/dist/messaging/constants.d.ts +0 -1
  826. package/dist/messaging/constants.js +0 -1
  827. package/dist/messaging/final-confirm-system-message-sender.d.ts +53 -0
  828. package/dist/messaging/final-confirm-system-message-sender.js +165 -0
  829. package/dist/messaging/magic-phrase.d.ts +0 -1
  830. package/dist/messaging/magic-phrase.js +7 -3
  831. package/dist/messaging/owner-channels.d.ts +16 -1
  832. package/dist/messaging/owner-channels.js +21 -1
  833. package/dist/messaging/purchase-system-message-sender.d.ts +54 -0
  834. package/dist/messaging/purchase-system-message-sender.js +213 -0
  835. package/dist/messaging/setup-welcome-dm.d.ts +0 -1
  836. package/dist/messaging/setup-welcome-dm.js +0 -1
  837. package/dist/messaging/url-extract.d.ts +0 -1
  838. package/dist/messaging/url-extract.js +5 -1
  839. package/dist/observers/browser-history-poller.d.ts +113 -0
  840. package/dist/observers/browser-history-poller.js +404 -0
  841. package/dist/observers/calendar-poller.d.ts +0 -1
  842. package/dist/observers/calendar-poller.js +0 -1
  843. package/dist/observers/context-index-reconciler-observer.d.ts +0 -1
  844. package/dist/observers/context-index-reconciler-observer.js +0 -1
  845. package/dist/observers/delegated-probe-observer.d.ts +0 -1
  846. package/dist/observers/delegated-probe-observer.js +0 -1
  847. package/dist/observers/delegated-sync-worker.d.ts +8 -10
  848. package/dist/observers/delegated-sync-worker.js +10 -11
  849. package/dist/observers/entity-mirror-observer.d.ts +0 -1
  850. package/dist/observers/entity-mirror-observer.js +0 -1
  851. package/dist/observers/git-delegated-cron.d.ts +0 -1
  852. package/dist/observers/git-delegated-cron.js +0 -1
  853. package/dist/observers/git-event-classifier.d.ts +0 -1
  854. package/dist/observers/git-event-classifier.js +0 -1
  855. package/dist/observers/git-watcher.d.ts +0 -1
  856. package/dist/observers/git-watcher.js +7 -2
  857. package/dist/observers/github-poller-classifier.d.ts +0 -1
  858. package/dist/observers/github-poller-classifier.js +0 -1
  859. package/dist/observers/github-poller.d.ts +3 -1
  860. package/dist/observers/github-poller.js +28 -3
  861. package/dist/observers/imminent-event-scheduler.d.ts +0 -1
  862. package/dist/observers/imminent-event-scheduler.js +1 -2
  863. package/dist/observers/mail-poller.d.ts +0 -1
  864. package/dist/observers/mail-poller.js +45 -18
  865. package/dist/observers/mail-reconciliation.d.ts +1 -2
  866. package/dist/observers/mail-reconciliation.js +1 -2
  867. package/dist/observers/manager.d.ts +7 -8
  868. package/dist/observers/manager.js +7 -8
  869. package/dist/observers/notion-poller.d.ts +0 -1
  870. package/dist/observers/notion-poller.js +2 -3
  871. package/dist/observers/observation-summarizer/index.d.ts +0 -1
  872. package/dist/observers/observation-summarizer/index.js +0 -1
  873. package/dist/observers/observation-summarizer/pre-filter.d.ts +0 -1
  874. package/dist/observers/observation-summarizer/pre-filter.js +0 -1
  875. package/dist/observers/observation-summarizer/response-parser.d.ts +0 -1
  876. package/dist/observers/observation-summarizer/response-parser.js +7 -7
  877. package/dist/observers/observation-summarizer/summarizer-client.d.ts +0 -1
  878. package/dist/observers/observation-summarizer/summarizer-client.js +0 -1
  879. package/dist/observers/observation-summarizer/summarizer-prompts.d.ts +0 -1
  880. package/dist/observers/observation-summarizer/summarizer-prompts.js +0 -1
  881. package/dist/observers/observation-summarizer/worker.d.ts +2 -1
  882. package/dist/observers/observation-summarizer/worker.js +25 -1
  883. package/dist/observers/obsidian-watcher.d.ts +0 -1
  884. package/dist/observers/obsidian-watcher.js +0 -1
  885. package/dist/observers/poll-guard.d.ts +0 -1
  886. package/dist/observers/poll-guard.js +0 -1
  887. package/dist/observers/primary-vault-watcher.d.ts +0 -1
  888. package/dist/observers/primary-vault-watcher.js +0 -1
  889. package/dist/observers/repository-management-cron.d.ts +0 -1
  890. package/dist/observers/repository-management-cron.js +0 -1
  891. package/dist/observers/skill-curation-walker.d.ts +0 -1
  892. package/dist/observers/skill-curation-walker.js +0 -1
  893. package/dist/safety/absolute-block-audit.d.ts +0 -1
  894. package/dist/safety/absolute-block-audit.js +0 -1
  895. package/dist/safety/agent-write-tracker.d.ts +0 -1
  896. package/dist/safety/agent-write-tracker.js +0 -1
  897. package/dist/safety/always-disallowed.d.ts +59 -3
  898. package/dist/safety/always-disallowed.js +390 -13
  899. package/dist/safety/audit.d.ts +17 -6
  900. package/dist/safety/audit.js +137 -15
  901. package/dist/safety/integration-write-tracker.d.ts +0 -1
  902. package/dist/safety/integration-write-tracker.js +0 -1
  903. package/dist/safety/outbound-purchase-guard.d.ts +60 -0
  904. package/dist/safety/outbound-purchase-guard.js +82 -0
  905. package/dist/safety/risk-classifier.d.ts +4 -5
  906. package/dist/safety/risk-classifier.js +237 -79
  907. package/dist/safety/subprocess-block-scanner.d.ts +0 -1
  908. package/dist/safety/subprocess-block-scanner.js +0 -1
  909. package/dist/scheduler/hourly-check-gate.d.ts +0 -1
  910. package/dist/scheduler/hourly-check-gate.js +0 -1
  911. package/dist/secrets/backend-api-key-env.d.ts +0 -1
  912. package/dist/secrets/backend-api-key-env.js +0 -1
  913. package/dist/secrets/codex-home-materializer.d.ts +0 -1
  914. package/dist/secrets/codex-home-materializer.js +0 -1
  915. package/dist/secrets/encrypted-blob-store.d.ts +0 -1
  916. package/dist/secrets/encrypted-blob-store.js +0 -1
  917. package/dist/secrets/platform-secret-store.d.ts +0 -1
  918. package/dist/secrets/platform-secret-store.js +0 -1
  919. package/dist/secrets/redaction.d.ts +0 -1
  920. package/dist/secrets/redaction.js +0 -1
  921. package/dist/secrets/secret-broker.d.ts +0 -2
  922. package/dist/secrets/secret-broker.js +0 -4
  923. package/dist/secrets/secret-names.d.ts +1 -2
  924. package/dist/secrets/secret-names.js +0 -2
  925. package/dist/secrets/secret-store.d.ts +0 -1
  926. package/dist/secrets/secret-store.js +0 -1
  927. package/dist/secrets/types.d.ts +0 -1
  928. package/dist/secrets/types.js +0 -1
  929. package/dist/services/apple-calendar/caldav-client.d.ts +0 -1
  930. package/dist/services/apple-calendar/caldav-client.js +0 -1
  931. package/dist/services/apple-calendar/caldav-codec.d.ts +0 -1
  932. package/dist/services/apple-calendar/caldav-codec.js +0 -1
  933. package/dist/services/apple-calendar/index.d.ts +0 -1
  934. package/dist/services/apple-calendar/index.js +0 -1
  935. package/dist/services/apple-calendar/service.d.ts +0 -1
  936. package/dist/services/apple-calendar/service.js +0 -1
  937. package/dist/services/apple-calendar/types.d.ts +0 -1
  938. package/dist/services/apple-calendar/types.js +0 -1
  939. package/dist/services/attachments/hardlink.d.ts +0 -1
  940. package/dist/services/attachments/hardlink.js +0 -1
  941. package/dist/services/attachments/sanitize.d.ts +0 -1
  942. package/dist/services/attachments/sanitize.js +0 -1
  943. package/dist/services/attachments/store.d.ts +0 -1
  944. package/dist/services/attachments/store.js +1 -3
  945. package/dist/services/browser-history/automation/browser-task-tools/dom-snapshot-output.d.ts +48 -0
  946. package/dist/services/browser-history/automation/browser-task-tools/dom-snapshot-output.js +98 -0
  947. package/dist/services/browser-history/automation/browser-task-tools/extract-cap.d.ts +76 -0
  948. package/dist/services/browser-history/automation/browser-task-tools/extract-cap.js +79 -0
  949. package/dist/services/browser-history/automation/browser-task-tools/extract-output.d.ts +66 -0
  950. package/dist/services/browser-history/automation/browser-task-tools/extract-output.js +69 -0
  951. package/dist/services/browser-history/automation/browser-task-tools/final-confirm-gate.d.ts +129 -0
  952. package/dist/services/browser-history/automation/browser-task-tools/final-confirm-gate.js +150 -0
  953. package/dist/services/browser-history/automation/browser-task-tools/loop-guard.d.ts +95 -0
  954. package/dist/services/browser-history/automation/browser-task-tools/loop-guard.js +123 -0
  955. package/dist/services/browser-history/automation/browser-task-tools/navigate-guard.d.ts +54 -0
  956. package/dist/services/browser-history/automation/browser-task-tools/navigate-guard.js +62 -0
  957. package/dist/services/browser-history/automation/browser-task-tools/schemas.d.ts +201 -0
  958. package/dist/services/browser-history/automation/browser-task-tools/schemas.js +248 -0
  959. package/dist/services/browser-history/automation/browser-task-tools/screenshot-output.d.ts +76 -0
  960. package/dist/services/browser-history/automation/browser-task-tools/screenshot-output.js +101 -0
  961. package/dist/services/browser-history/automation/browser-task-tools/server.d.ts +240 -0
  962. package/dist/services/browser-history/automation/browser-task-tools/server.js +1016 -0
  963. package/dist/services/browser-history/automation/cdp-network-interception.d.ts +74 -0
  964. package/dist/services/browser-history/automation/cdp-network-interception.js +106 -0
  965. package/dist/services/browser-history/automation/egress-denylist.d.ts +167 -0
  966. package/dist/services/browser-history/automation/egress-denylist.js +452 -0
  967. package/dist/services/browser-history/automation/external-content.d.ts +72 -0
  968. package/dist/services/browser-history/automation/external-content.js +0 -0
  969. package/dist/services/browser-history/automation/final-confirm-handler.d.ts +178 -0
  970. package/dist/services/browser-history/automation/final-confirm-handler.js +462 -0
  971. package/dist/services/browser-history/automation/lite-final-confirm-tokens.d.ts +100 -0
  972. package/dist/services/browser-history/automation/lite-final-confirm-tokens.js +126 -0
  973. package/dist/services/browser-history/automation/payment-path-blocker.d.ts +62 -0
  974. package/dist/services/browser-history/automation/payment-path-blocker.js +113 -0
  975. package/dist/services/browser-history/automation/purchase-handler.d.ts +344 -0
  976. package/dist/services/browser-history/automation/purchase-handler.js +666 -0
  977. package/dist/services/browser-history/automation/purchase-tokens.d.ts +265 -0
  978. package/dist/services/browser-history/automation/purchase-tokens.js +271 -0
  979. package/dist/services/browser-history/automation/site-registry.d.ts +176 -0
  980. package/dist/services/browser-history/automation/site-registry.js +290 -0
  981. package/dist/services/browser-history/automation/trace-store-paths.d.ts +80 -0
  982. package/dist/services/browser-history/automation/trace-store-paths.js +119 -0
  983. package/dist/services/browser-history/automation/trace-store.d.ts +29 -0
  984. package/dist/services/browser-history/automation/trace-store.js +63 -0
  985. package/dist/services/browser-history/cleanup-interests-reflection.d.ts +39 -0
  986. package/dist/services/browser-history/cleanup-interests-reflection.js +204 -0
  987. package/dist/services/browser-history/detectors/atlas.d.ts +2 -0
  988. package/dist/services/browser-history/detectors/atlas.js +4 -0
  989. package/dist/services/browser-history/detectors/chrome.d.ts +2 -0
  990. package/dist/services/browser-history/detectors/chrome.js +4 -0
  991. package/dist/services/browser-history/detectors/chromium.d.ts +2 -0
  992. package/dist/services/browser-history/detectors/chromium.js +193 -0
  993. package/dist/services/browser-history/detectors/comet.d.ts +2 -0
  994. package/dist/services/browser-history/detectors/comet.js +4 -0
  995. package/dist/services/browser-history/detectors/registry.d.ts +15 -0
  996. package/dist/services/browser-history/detectors/registry.js +82 -0
  997. package/dist/services/browser-history/history-mtime.d.ts +8 -0
  998. package/dist/services/browser-history/history-mtime.js +31 -0
  999. package/dist/services/browser-history/interests-reflection-lock.d.ts +26 -0
  1000. package/dist/services/browser-history/interests-reflection-lock.js +84 -0
  1001. package/dist/services/browser-history/lifecycle/chromium-install.d.ts +78 -0
  1002. package/dist/services/browser-history/lifecycle/chromium-install.js +206 -0
  1003. package/dist/services/browser-history/lifecycle/chromium-launcher.d.ts +77 -0
  1004. package/dist/services/browser-history/lifecycle/chromium-launcher.js +288 -0
  1005. package/dist/services/browser-history/lifecycle/failure-escalation.d.ts +3 -0
  1006. package/dist/services/browser-history/lifecycle/failure-escalation.js +54 -0
  1007. package/dist/services/browser-history/lifecycle/health-check.d.ts +8 -0
  1008. package/dist/services/browser-history/lifecycle/health-check.js +17 -0
  1009. package/dist/services/browser-history/lifecycle/platform.d.ts +99 -0
  1010. package/dist/services/browser-history/lifecycle/platform.js +597 -0
  1011. package/dist/services/browser-history/lifecycle/supervisor.d.ts +24 -0
  1012. package/dist/services/browser-history/lifecycle/supervisor.js +334 -0
  1013. package/dist/services/browser-history/managed-chromium/cdp-connect.d.ts +110 -0
  1014. package/dist/services/browser-history/managed-chromium/cdp-connect.js +171 -0
  1015. package/dist/services/browser-history/managed-chromium/instance-a-config.d.ts +116 -0
  1016. package/dist/services/browser-history/managed-chromium/instance-a-config.js +164 -0
  1017. package/dist/services/browser-history/managed-chromium/instance-a-launcher.d.ts +82 -0
  1018. package/dist/services/browser-history/managed-chromium/instance-a-launcher.js +200 -0
  1019. package/dist/services/browser-history/managed-chromium/managed-chromium-supervisor.d.ts +69 -0
  1020. package/dist/services/browser-history/managed-chromium/managed-chromium-supervisor.js +334 -0
  1021. package/dist/services/browser-history/managed-chromium/reauth-detector.d.ts +60 -0
  1022. package/dist/services/browser-history/managed-chromium/reauth-detector.js +179 -0
  1023. package/dist/services/browser-history/managed-chromium/sandbox-install.d.ts +69 -0
  1024. package/dist/services/browser-history/managed-chromium/sandbox-install.js +123 -0
  1025. package/dist/services/browser-history/managed-chromium/sandbox-launcher.d.ts +117 -0
  1026. package/dist/services/browser-history/managed-chromium/sandbox-launcher.js +244 -0
  1027. package/dist/services/browser-history/managed-chromium/setup-bootstrap.d.ts +149 -0
  1028. package/dist/services/browser-history/managed-chromium/setup-bootstrap.js +404 -0
  1029. package/dist/services/browser-history/managed-chromium/site-bootstrap.d.ts +133 -0
  1030. package/dist/services/browser-history/managed-chromium/site-bootstrap.js +360 -0
  1031. package/dist/services/browser-history/managed-chromium/supervisor-config.d.ts +75 -0
  1032. package/dist/services/browser-history/managed-chromium/supervisor-config.js +146 -0
  1033. package/dist/services/browser-history/managed-chromium/types.d.ts +199 -0
  1034. package/dist/services/browser-history/managed-chromium/types.js +116 -0
  1035. package/dist/services/browser-history/pipeline/amazon-extractor.d.ts +11 -0
  1036. package/dist/services/browser-history/pipeline/amazon-extractor.js +33 -0
  1037. package/dist/services/browser-history/pipeline/classifier.d.ts +7 -0
  1038. package/dist/services/browser-history/pipeline/classifier.js +208 -0
  1039. package/dist/services/browser-history/pipeline/cluster-extractor.d.ts +76 -0
  1040. package/dist/services/browser-history/pipeline/cluster-extractor.js +271 -0
  1041. package/dist/services/browser-history/pipeline/interests-block.d.ts +99 -0
  1042. package/dist/services/browser-history/pipeline/interests-block.js +333 -0
  1043. package/dist/services/browser-history/pipeline/meaningful-filter.d.ts +47 -0
  1044. package/dist/services/browser-history/pipeline/meaningful-filter.js +228 -0
  1045. package/dist/services/browser-history/pipeline/offer-rate-limit.d.ts +75 -0
  1046. package/dist/services/browser-history/pipeline/offer-rate-limit.js +188 -0
  1047. package/dist/services/browser-history/pipeline/offer-triggers.d.ts +150 -0
  1048. package/dist/services/browser-history/pipeline/offer-triggers.js +164 -0
  1049. package/dist/services/browser-history/pipeline/pre-morning-digest.d.ts +118 -0
  1050. package/dist/services/browser-history/pipeline/pre-morning-digest.js +399 -0
  1051. package/dist/services/browser-history/pipeline/project-matcher.d.ts +26 -0
  1052. package/dist/services/browser-history/pipeline/project-matcher.js +314 -0
  1053. package/dist/services/browser-history/pipeline/redactor.d.ts +15 -0
  1054. package/dist/services/browser-history/pipeline/redactor.js +119 -0
  1055. package/dist/services/browser-history/pipeline/reload-detector.d.ts +6 -0
  1056. package/dist/services/browser-history/pipeline/reload-detector.js +16 -0
  1057. package/dist/services/browser-history/pipeline/sensitive-hosts.d.ts +2 -0
  1058. package/dist/services/browser-history/pipeline/sensitive-hosts.js +173 -0
  1059. package/dist/services/browser-history/pipeline/summarizer.d.ts +52 -0
  1060. package/dist/services/browser-history/pipeline/summarizer.js +97 -0
  1061. package/dist/services/browser-history/pipeline/weekly-interests-summary.d.ts +139 -0
  1062. package/dist/services/browser-history/pipeline/weekly-interests-summary.js +227 -0
  1063. package/dist/services/browser-history/readers/chromium-reader.d.ts +30 -0
  1064. package/dist/services/browser-history/readers/chromium-reader.js +139 -0
  1065. package/dist/services/browser-history/readers/snapshot.d.ts +19 -0
  1066. package/dist/services/browser-history/readers/snapshot.js +67 -0
  1067. package/dist/services/browser-history/refresh-interests-reflection.d.ts +125 -0
  1068. package/dist/services/browser-history/refresh-interests-reflection.js +424 -0
  1069. package/dist/services/browser-history/types.d.ts +60 -0
  1070. package/dist/services/browser-history/types.js +1 -0
  1071. package/dist/services/browser-task/browser-task-allowlist.d.ts +107 -0
  1072. package/dist/services/browser-task/browser-task-allowlist.js +247 -0
  1073. package/dist/services/browser-task/browser-task-deadline-scanner.d.ts +76 -0
  1074. package/dist/services/browser-task/browser-task-deadline-scanner.js +68 -0
  1075. package/dist/services/browser-task/browser-task-driver.d.ts +188 -0
  1076. package/dist/services/browser-task/browser-task-driver.js +714 -0
  1077. package/dist/services/browser-task/browser-task-runner.d.ts +166 -0
  1078. package/dist/services/browser-task/browser-task-runner.js +781 -0
  1079. package/dist/services/browser-task/browser-task-slots.d.ts +212 -0
  1080. package/dist/services/browser-task/browser-task-slots.js +404 -0
  1081. package/dist/services/browser-task/browser-task-transition-events.d.ts +76 -0
  1082. package/dist/services/browser-task/browser-task-transition-events.js +80 -0
  1083. package/dist/services/calendar/outlook/graph-calendar-client.d.ts +0 -1
  1084. package/dist/services/calendar/outlook/graph-calendar-client.js +0 -1
  1085. package/dist/services/calendar.d.ts +0 -1
  1086. package/dist/services/calendar.js +21 -16
  1087. package/dist/services/delegated-backend-invoker.d.ts +0 -1
  1088. package/dist/services/delegated-backend-invoker.js +0 -1
  1089. package/dist/services/delegated-invoker-audit.d.ts +0 -1
  1090. package/dist/services/delegated-invoker-audit.js +3 -4
  1091. package/dist/services/delegated-invoker-cache-hits.d.ts +0 -1
  1092. package/dist/services/delegated-invoker-cache-hits.js +0 -1
  1093. package/dist/services/delegated-invoker-janitors.d.ts +0 -1
  1094. package/dist/services/delegated-invoker-janitors.js +0 -1
  1095. package/dist/services/delegated-invoker-utils.d.ts +0 -1
  1096. package/dist/services/delegated-invoker-utils.js +0 -1
  1097. package/dist/services/delegated-proxy-config.d.ts +0 -1
  1098. package/dist/services/delegated-proxy-config.js +0 -1
  1099. package/dist/services/delegated-task-result-cache.d.ts +0 -1
  1100. package/dist/services/delegated-task-result-cache.js +0 -0
  1101. package/dist/services/delegated-task-runtime.d.ts +0 -1
  1102. package/dist/services/delegated-task-runtime.js +0 -1
  1103. package/dist/services/delegated-task-session-pool.d.ts +0 -1
  1104. package/dist/services/delegated-task-session-pool.js +0 -1
  1105. package/dist/services/delegated-tool-runtime.d.ts +0 -1
  1106. package/dist/services/delegated-tool-runtime.js +0 -1
  1107. package/dist/services/fts5.d.ts +0 -1
  1108. package/dist/services/fts5.js +0 -1
  1109. package/dist/services/git-account-registry.d.ts +0 -1
  1110. package/dist/services/git-account-registry.js +0 -1
  1111. package/dist/services/github.d.ts +9 -40
  1112. package/dist/services/github.js +9 -107
  1113. package/dist/services/gmail-classifier.d.ts +0 -1
  1114. package/dist/services/gmail-classifier.js +0 -1
  1115. package/dist/services/gmail.d.ts +0 -1
  1116. package/dist/services/gmail.js +31 -52
  1117. package/dist/services/google-auth.d.ts +0 -1
  1118. package/dist/services/google-auth.js +0 -1
  1119. package/dist/services/integrations/extract-write-item-id.d.ts +0 -1
  1120. package/dist/services/integrations/extract-write-item-id.js +6 -1
  1121. package/dist/services/integrations/reconcile.d.ts +0 -1
  1122. package/dist/services/integrations/reconcile.js +0 -1
  1123. package/dist/services/integrations/snapshot-partitions.d.ts +0 -1
  1124. package/dist/services/integrations/snapshot-partitions.js +8 -1
  1125. package/dist/services/journal/render.d.ts +0 -1
  1126. package/dist/services/journal/render.js +0 -1
  1127. package/dist/services/journal/writer.d.ts +0 -1
  1128. package/dist/services/journal/writer.js +0 -1
  1129. package/dist/services/mail/account-registry.d.ts +0 -1
  1130. package/dist/services/mail/account-registry.js +7 -3
  1131. package/dist/services/mail/gmail/auth-failure-classifier.d.ts +0 -1
  1132. package/dist/services/mail/gmail/auth-failure-classifier.js +0 -1
  1133. package/dist/services/mail/gmail/gmail-provider.d.ts +0 -1
  1134. package/dist/services/mail/gmail/gmail-provider.js +0 -1
  1135. package/dist/services/mail/gmail/legacy-row.d.ts +0 -1
  1136. package/dist/services/mail/gmail/legacy-row.js +0 -1
  1137. package/dist/services/mail/gmail/poll-cursor.d.ts +0 -1
  1138. package/dist/services/mail/gmail/poll-cursor.js +0 -1
  1139. package/dist/services/mail/html-to-plaintext.d.ts +0 -1
  1140. package/dist/services/mail/html-to-plaintext.js +0 -1
  1141. package/dist/services/mail/imap/app-password.d.ts +0 -1
  1142. package/dist/services/mail/imap/app-password.js +0 -1
  1143. package/dist/services/mail/imap/auth-failure-classifier.d.ts +0 -1
  1144. package/dist/services/mail/imap/auth-failure-classifier.js +0 -1
  1145. package/dist/services/mail/imap/capabilities.d.ts +0 -1
  1146. package/dist/services/mail/imap/capabilities.js +0 -1
  1147. package/dist/services/mail/imap/client.d.ts +0 -1
  1148. package/dist/services/mail/imap/client.js +0 -1
  1149. package/dist/services/mail/imap/cursor.d.ts +0 -1
  1150. package/dist/services/mail/imap/cursor.js +0 -1
  1151. package/dist/services/mail/imap/folder-resolver.d.ts +0 -1
  1152. package/dist/services/mail/imap/folder-resolver.js +0 -1
  1153. package/dist/services/mail/imap/icloud-provider.d.ts +0 -1
  1154. package/dist/services/mail/imap/icloud-provider.js +0 -1
  1155. package/dist/services/mail/imap/imap-provider-base.d.ts +0 -1
  1156. package/dist/services/mail/imap/imap-provider-base.js +12 -7
  1157. package/dist/services/mail/imap/query-translator.d.ts +0 -1
  1158. package/dist/services/mail/imap/query-translator.js +0 -1
  1159. package/dist/services/mail/imap/reconcile-planner.d.ts +0 -1
  1160. package/dist/services/mail/imap/reconcile-planner.js +0 -1
  1161. package/dist/services/mail/imap/reply-mime.d.ts +0 -1
  1162. package/dist/services/mail/imap/reply-mime.js +0 -1
  1163. package/dist/services/mail/imap/yahoo-provider.d.ts +0 -1
  1164. package/dist/services/mail/imap/yahoo-provider.js +0 -1
  1165. package/dist/services/mail/mail-search.d.ts +0 -1
  1166. package/dist/services/mail/mail-search.js +0 -1
  1167. package/dist/services/mail/outlook/auth-failure-classifier.d.ts +0 -1
  1168. package/dist/services/mail/outlook/auth-failure-classifier.js +0 -1
  1169. package/dist/services/mail/outlook/client-config.d.ts +0 -1
  1170. package/dist/services/mail/outlook/client-config.js +0 -1
  1171. package/dist/services/mail/outlook/delta-cursor.d.ts +0 -1
  1172. package/dist/services/mail/outlook/delta-cursor.js +0 -1
  1173. package/dist/services/mail/outlook/graph-client.d.ts +0 -1
  1174. package/dist/services/mail/outlook/graph-client.js +0 -1
  1175. package/dist/services/mail/outlook/msal-app-factory.d.ts +0 -1
  1176. package/dist/services/mail/outlook/msal-app-factory.js +0 -1
  1177. package/dist/services/mail/outlook/msal-cache-plugin.d.ts +0 -1
  1178. package/dist/services/mail/outlook/msal-cache-plugin.js +0 -1
  1179. package/dist/services/mail/outlook/oauth-device-code.d.ts +0 -1
  1180. package/dist/services/mail/outlook/oauth-device-code.js +0 -1
  1181. package/dist/services/mail/outlook/oauth-loopback.d.ts +0 -1
  1182. package/dist/services/mail/outlook/oauth-loopback.js +0 -1
  1183. package/dist/services/mail/outlook/outlook-provider.d.ts +0 -1
  1184. package/dist/services/mail/outlook/outlook-provider.js +0 -1
  1185. package/dist/services/mail/outlook/query-translator.d.ts +0 -1
  1186. package/dist/services/mail/outlook/query-translator.js +0 -1
  1187. package/dist/services/mail/provider.d.ts +0 -1
  1188. package/dist/services/mail/provider.js +0 -1
  1189. package/dist/services/mail/query-utils.d.ts +0 -1
  1190. package/dist/services/mail/query-utils.js +0 -1
  1191. package/dist/services/mail-classifier.d.ts +0 -1
  1192. package/dist/services/mail-classifier.js +0 -1
  1193. package/dist/services/mail-ingestion.d.ts +0 -1
  1194. package/dist/services/mail-ingestion.js +0 -1
  1195. package/dist/services/mcp/auto-probe.d.ts +0 -1
  1196. package/dist/services/mcp/auto-probe.js +0 -1
  1197. package/dist/services/mcp/generators/claude.d.ts +0 -1
  1198. package/dist/services/mcp/generators/claude.js +0 -1
  1199. package/dist/services/mcp/generators/codex.d.ts +0 -1
  1200. package/dist/services/mcp/generators/codex.js +0 -1
  1201. package/dist/services/mcp/generators/gemini.d.ts +0 -1
  1202. package/dist/services/mcp/generators/gemini.js +0 -1
  1203. package/dist/services/mcp/generators/index.d.ts +0 -1
  1204. package/dist/services/mcp/generators/index.js +0 -1
  1205. package/dist/services/mcp/generators/types.d.ts +0 -1
  1206. package/dist/services/mcp/generators/types.js +0 -1
  1207. package/dist/services/mcp/probe.d.ts +0 -1
  1208. package/dist/services/mcp/probe.js +7 -1
  1209. package/dist/services/mcp/registry.d.ts +0 -1
  1210. package/dist/services/mcp/registry.js +0 -1
  1211. package/dist/services/mcp/risk.d.ts +1 -2
  1212. package/dist/services/mcp/risk.js +1 -2
  1213. package/dist/services/mcp/sdk-observations-server.d.ts +0 -1
  1214. package/dist/services/mcp/sdk-observations-server.js +0 -1
  1215. package/dist/services/mcp/session-materializer.d.ts +2 -3
  1216. package/dist/services/mcp/session-materializer.js +2 -3
  1217. package/dist/services/mcp/tool-audit.d.ts +0 -1
  1218. package/dist/services/mcp/tool-audit.js +0 -1
  1219. package/dist/services/mcp/types.d.ts +0 -1
  1220. package/dist/services/mcp/types.js +0 -1
  1221. package/dist/services/notion.d.ts +1 -4
  1222. package/dist/services/notion.js +1 -4
  1223. package/dist/services/observations-batch.d.ts +8 -10
  1224. package/dist/services/observations-batch.js +8 -10
  1225. package/dist/services/obsidian.d.ts +0 -1
  1226. package/dist/services/obsidian.js +0 -1
  1227. package/dist/services/service-registry.d.ts +0 -3
  1228. package/dist/services/service-registry.js +0 -2
  1229. package/dist/services/voice/transcriber-impl.d.ts +0 -1
  1230. package/dist/services/voice/transcriber-impl.js +21 -20
  1231. package/dist/services/voice/transcriber.d.ts +2 -5
  1232. package/dist/services/voice/transcriber.js +16 -14
  1233. package/dist/settings/runtime-settings.d.ts +44 -3
  1234. package/dist/settings/runtime-settings.js +124 -5
  1235. package/dist/settings/settings-store.d.ts +0 -1
  1236. package/dist/settings/settings-store.js +44 -2
  1237. package/native/win-appcontainer/README.md +66 -0
  1238. package/native/win-appcontainer/binding.gyp +33 -0
  1239. package/native/win-appcontainer/loader.js +29 -0
  1240. package/native/win-appcontainer/package.json +18 -0
  1241. package/native/win-appcontainer/src/win_appcontainer.cc +67 -0
  1242. package/package.json +7 -3
  1243. package/dist/adapters/composite-dashboard-stream.d.ts.map +0 -1
  1244. package/dist/adapters/composite-dashboard-stream.js.map +0 -1
  1245. package/dist/adapters/dashboard-adapter.d.ts.map +0 -1
  1246. package/dist/adapters/dashboard-adapter.js.map +0 -1
  1247. package/dist/adapters/discord.d.ts.map +0 -1
  1248. package/dist/adapters/discord.js.map +0 -1
  1249. package/dist/adapters/docs-qa-adapter.d.ts.map +0 -1
  1250. package/dist/adapters/docs-qa-adapter.js.map +0 -1
  1251. package/dist/adapters/message-hub.d.ts.map +0 -1
  1252. package/dist/adapters/message-hub.js.map +0 -1
  1253. package/dist/adapters/notification-manager.d.ts.map +0 -1
  1254. package/dist/adapters/notification-manager.js.map +0 -1
  1255. package/dist/adapters/outbound-text.d.ts.map +0 -1
  1256. package/dist/adapters/outbound-text.js.map +0 -1
  1257. package/dist/adapters/primary-platform-resolver.d.ts.map +0 -1
  1258. package/dist/adapters/primary-platform-resolver.js.map +0 -1
  1259. package/dist/adapters/slack-adapter.d.ts.map +0 -1
  1260. package/dist/adapters/slack-adapter.js.map +0 -1
  1261. package/dist/adapters/telegram-adapter.d.ts.map +0 -1
  1262. package/dist/adapters/telegram-adapter.js.map +0 -1
  1263. package/dist/adapters/types.d.ts.map +0 -1
  1264. package/dist/adapters/types.js.map +0 -1
  1265. package/dist/adapters/whatsapp-adapter.d.ts.map +0 -1
  1266. package/dist/adapters/whatsapp-adapter.js.map +0 -1
  1267. package/dist/api/chat-binding-query.d.ts.map +0 -1
  1268. package/dist/api/chat-binding-query.js.map +0 -1
  1269. package/dist/api/chat-session-resume.d.ts.map +0 -1
  1270. package/dist/api/chat-session-resume.js.map +0 -1
  1271. package/dist/api/directory-picker.d.ts.map +0 -1
  1272. package/dist/api/directory-picker.js.map +0 -1
  1273. package/dist/api/env-writer.d.ts.map +0 -1
  1274. package/dist/api/env-writer.js.map +0 -1
  1275. package/dist/api/helpers/agent-errors.d.ts.map +0 -1
  1276. package/dist/api/helpers/agent-errors.js.map +0 -1
  1277. package/dist/api/integration-route-gate.d.ts.map +0 -1
  1278. package/dist/api/integration-route-gate.js.map +0 -1
  1279. package/dist/api/json-body.d.ts.map +0 -1
  1280. package/dist/api/json-body.js.map +0 -1
  1281. package/dist/api/routes/activity-sources.d.ts.map +0 -1
  1282. package/dist/api/routes/activity-sources.js.map +0 -1
  1283. package/dist/api/routes/agent-schedule-plan-match.d.ts.map +0 -1
  1284. package/dist/api/routes/agent-schedule-plan-match.js.map +0 -1
  1285. package/dist/api/routes/agent-schedule.d.ts.map +0 -1
  1286. package/dist/api/routes/agent-schedule.js.map +0 -1
  1287. package/dist/api/routes/agent.d.ts.map +0 -1
  1288. package/dist/api/routes/agent.js.map +0 -1
  1289. package/dist/api/routes/apple-calendar.d.ts.map +0 -1
  1290. package/dist/api/routes/apple-calendar.js.map +0 -1
  1291. package/dist/api/routes/attachments.d.ts.map +0 -1
  1292. package/dist/api/routes/attachments.js.map +0 -1
  1293. package/dist/api/routes/backends.d.ts.map +0 -1
  1294. package/dist/api/routes/backends.js.map +0 -1
  1295. package/dist/api/routes/books.d.ts.map +0 -1
  1296. package/dist/api/routes/books.js.map +0 -1
  1297. package/dist/api/routes/calendar.d.ts.map +0 -1
  1298. package/dist/api/routes/calendar.js.map +0 -1
  1299. package/dist/api/routes/commands.d.ts.map +0 -1
  1300. package/dist/api/routes/commands.js.map +0 -1
  1301. package/dist/api/routes/context/index.d.ts.map +0 -1
  1302. package/dist/api/routes/context/index.js.map +0 -1
  1303. package/dist/api/routes/context/locks.d.ts.map +0 -1
  1304. package/dist/api/routes/context/locks.js.map +0 -1
  1305. package/dist/api/routes/context/path-resolve.d.ts.map +0 -1
  1306. package/dist/api/routes/context/path-resolve.js.map +0 -1
  1307. package/dist/api/routes/context/permissions.d.ts.map +0 -1
  1308. package/dist/api/routes/context/permissions.js.map +0 -1
  1309. package/dist/api/routes/context/read.d.ts.map +0 -1
  1310. package/dist/api/routes/context/read.js.map +0 -1
  1311. package/dist/api/routes/context/repair.d.ts.map +0 -1
  1312. package/dist/api/routes/context/repair.js.map +0 -1
  1313. package/dist/api/routes/context/snapshots.d.ts.map +0 -1
  1314. package/dist/api/routes/context/snapshots.js.map +0 -1
  1315. package/dist/api/routes/context/write.d.ts.map +0 -1
  1316. package/dist/api/routes/context/write.js.map +0 -1
  1317. package/dist/api/routes/context.d.ts +0 -16
  1318. package/dist/api/routes/context.d.ts.map +0 -1
  1319. package/dist/api/routes/context.js +0 -1645
  1320. package/dist/api/routes/context.js.map +0 -1
  1321. package/dist/api/routes/dashboard/config.d.ts.map +0 -1
  1322. package/dist/api/routes/dashboard/config.js.map +0 -1
  1323. package/dist/api/routes/dashboard/conversations.d.ts.map +0 -1
  1324. package/dist/api/routes/dashboard/conversations.js.map +0 -1
  1325. package/dist/api/routes/dashboard/cost-approvals.d.ts.map +0 -1
  1326. package/dist/api/routes/dashboard/cost-approvals.js.map +0 -1
  1327. package/dist/api/routes/dashboard/index.d.ts.map +0 -1
  1328. package/dist/api/routes/dashboard/index.js.map +0 -1
  1329. package/dist/api/routes/dashboard/messaging.d.ts.map +0 -1
  1330. package/dist/api/routes/dashboard/messaging.js.map +0 -1
  1331. package/dist/api/routes/dashboard/notifications.d.ts.map +0 -1
  1332. package/dist/api/routes/dashboard/notifications.js.map +0 -1
  1333. package/dist/api/routes/dashboard/oauth-google.d.ts.map +0 -1
  1334. package/dist/api/routes/dashboard/oauth-google.js.map +0 -1
  1335. package/dist/api/routes/dashboard/schedule-readonly.d.ts.map +0 -1
  1336. package/dist/api/routes/dashboard/schedule-readonly.js.map +0 -1
  1337. package/dist/api/routes/dashboard/secrets.d.ts.map +0 -1
  1338. package/dist/api/routes/dashboard/secrets.js.map +0 -1
  1339. package/dist/api/routes/dashboard/snapshots.d.ts.map +0 -1
  1340. package/dist/api/routes/dashboard/snapshots.js.map +0 -1
  1341. package/dist/api/routes/dashboard.d.ts +0 -29
  1342. package/dist/api/routes/dashboard.d.ts.map +0 -1
  1343. package/dist/api/routes/dashboard.js +0 -2168
  1344. package/dist/api/routes/dashboard.js.map +0 -1
  1345. package/dist/api/routes/delegated-sync.d.ts.map +0 -1
  1346. package/dist/api/routes/delegated-sync.js.map +0 -1
  1347. package/dist/api/routes/delegated.d.ts.map +0 -1
  1348. package/dist/api/routes/delegated.js.map +0 -1
  1349. package/dist/api/routes/docs.d.ts.map +0 -1
  1350. package/dist/api/routes/docs.js.map +0 -1
  1351. package/dist/api/routes/entities.d.ts.map +0 -1
  1352. package/dist/api/routes/entities.js.map +0 -1
  1353. package/dist/api/routes/fs.d.ts.map +0 -1
  1354. package/dist/api/routes/fs.js.map +0 -1
  1355. package/dist/api/routes/fs.logic.d.ts.map +0 -1
  1356. package/dist/api/routes/fs.logic.js.map +0 -1
  1357. package/dist/api/routes/git-accounts.d.ts.map +0 -1
  1358. package/dist/api/routes/git-accounts.js.map +0 -1
  1359. package/dist/api/routes/git-templates.d.ts.map +0 -1
  1360. package/dist/api/routes/git-templates.js.map +0 -1
  1361. package/dist/api/routes/git.d.ts.map +0 -1
  1362. package/dist/api/routes/git.js.map +0 -1
  1363. package/dist/api/routes/github.d.ts.map +0 -1
  1364. package/dist/api/routes/github.js.map +0 -1
  1365. package/dist/api/routes/health.d.ts.map +0 -1
  1366. package/dist/api/routes/health.js.map +0 -1
  1367. package/dist/api/routes/integrations/crud-patch.d.ts.map +0 -1
  1368. package/dist/api/routes/integrations/crud-patch.js.map +0 -1
  1369. package/dist/api/routes/integrations/crud.d.ts.map +0 -1
  1370. package/dist/api/routes/integrations/crud.js.map +0 -1
  1371. package/dist/api/routes/integrations/exec.d.ts.map +0 -1
  1372. package/dist/api/routes/integrations/exec.js.map +0 -1
  1373. package/dist/api/routes/integrations/index.d.ts.map +0 -1
  1374. package/dist/api/routes/integrations/index.js.map +0 -1
  1375. package/dist/api/routes/integrations/integrations/crud.d.ts +0 -16
  1376. package/dist/api/routes/integrations/integrations/crud.d.ts.map +0 -1
  1377. package/dist/api/routes/integrations/integrations/crud.js +0 -158
  1378. package/dist/api/routes/integrations/integrations/crud.js.map +0 -1
  1379. package/dist/api/routes/integrations/integrations/index.d.ts +0 -55
  1380. package/dist/api/routes/integrations/integrations/index.d.ts.map +0 -1
  1381. package/dist/api/routes/integrations/integrations/index.js +0 -65
  1382. package/dist/api/routes/integrations/integrations/index.js.map +0 -1
  1383. package/dist/api/routes/integrations/integrations/invoke.d.ts +0 -38
  1384. package/dist/api/routes/integrations/integrations/invoke.d.ts.map +0 -1
  1385. package/dist/api/routes/integrations/integrations/invoke.js +0 -320
  1386. package/dist/api/routes/integrations/integrations/invoke.js.map +0 -1
  1387. package/dist/api/routes/integrations/integrations/probe.d.ts +0 -21
  1388. package/dist/api/routes/integrations/integrations/probe.d.ts.map +0 -1
  1389. package/dist/api/routes/integrations/integrations/probe.js +0 -247
  1390. package/dist/api/routes/integrations/integrations/probe.js.map +0 -1
  1391. package/dist/api/routes/integrations/invoke.d.ts +0 -38
  1392. package/dist/api/routes/integrations/invoke.d.ts.map +0 -1
  1393. package/dist/api/routes/integrations/invoke.js +0 -320
  1394. package/dist/api/routes/integrations/invoke.js.map +0 -1
  1395. package/dist/api/routes/integrations/probe.d.ts.map +0 -1
  1396. package/dist/api/routes/integrations/probe.js.map +0 -1
  1397. package/dist/api/routes/integrations-reconcile.d.ts.map +0 -1
  1398. package/dist/api/routes/integrations-reconcile.js.map +0 -1
  1399. package/dist/api/routes/integrations.d.ts +0 -48
  1400. package/dist/api/routes/integrations.d.ts.map +0 -1
  1401. package/dist/api/routes/integrations.js +0 -1624
  1402. package/dist/api/routes/integrations.js.map +0 -1
  1403. package/dist/api/routes/knowledge.d.ts.map +0 -1
  1404. package/dist/api/routes/knowledge.js.map +0 -1
  1405. package/dist/api/routes/mail/_pa_wip_mail/app-password.d.ts +0 -4
  1406. package/dist/api/routes/mail/_pa_wip_mail/app-password.d.ts.map +0 -1
  1407. package/dist/api/routes/mail/_pa_wip_mail/app-password.js +0 -192
  1408. package/dist/api/routes/mail/_pa_wip_mail/app-password.js.map +0 -1
  1409. package/dist/api/routes/mail/_pa_wip_mail/body-helpers.d.ts +0 -55
  1410. package/dist/api/routes/mail/_pa_wip_mail/body-helpers.d.ts.map +0 -1
  1411. package/dist/api/routes/mail/_pa_wip_mail/body-helpers.js +0 -91
  1412. package/dist/api/routes/mail/_pa_wip_mail/body-helpers.js.map +0 -1
  1413. package/dist/api/routes/mail/_pa_wip_mail/dependencies.d.ts +0 -36
  1414. package/dist/api/routes/mail/_pa_wip_mail/dependencies.d.ts.map +0 -1
  1415. package/dist/api/routes/mail/_pa_wip_mail/dependencies.js +0 -2
  1416. package/dist/api/routes/mail/_pa_wip_mail/dependencies.js.map +0 -1
  1417. package/dist/api/routes/mail/_pa_wip_mail/gating.d.ts +0 -45
  1418. package/dist/api/routes/mail/_pa_wip_mail/gating.d.ts.map +0 -1
  1419. package/dist/api/routes/mail/_pa_wip_mail/gating.js +0 -98
  1420. package/dist/api/routes/mail/_pa_wip_mail/gating.js.map +0 -1
  1421. package/dist/api/routes/mail/_pa_wip_mail/mail/accounts.d.ts +0 -4
  1422. package/dist/api/routes/mail/_pa_wip_mail/mail/accounts.d.ts.map +0 -1
  1423. package/dist/api/routes/mail/_pa_wip_mail/mail/accounts.js +0 -289
  1424. package/dist/api/routes/mail/_pa_wip_mail/mail/accounts.js.map +0 -1
  1425. package/dist/api/routes/mail/_pa_wip_mail/mail/app-password.d.ts +0 -4
  1426. package/dist/api/routes/mail/_pa_wip_mail/mail/app-password.d.ts.map +0 -1
  1427. package/dist/api/routes/mail/_pa_wip_mail/mail/app-password.js +0 -192
  1428. package/dist/api/routes/mail/_pa_wip_mail/mail/app-password.js.map +0 -1
  1429. package/dist/api/routes/mail/_pa_wip_mail/mail/body-helpers.d.ts +0 -55
  1430. package/dist/api/routes/mail/_pa_wip_mail/mail/body-helpers.d.ts.map +0 -1
  1431. package/dist/api/routes/mail/_pa_wip_mail/mail/body-helpers.js +0 -91
  1432. package/dist/api/routes/mail/_pa_wip_mail/mail/body-helpers.js.map +0 -1
  1433. package/dist/api/routes/mail/_pa_wip_mail/mail/dependencies.d.ts +0 -36
  1434. package/dist/api/routes/mail/_pa_wip_mail/mail/dependencies.d.ts.map +0 -1
  1435. package/dist/api/routes/mail/_pa_wip_mail/mail/dependencies.js +0 -2
  1436. package/dist/api/routes/mail/_pa_wip_mail/mail/dependencies.js.map +0 -1
  1437. package/dist/api/routes/mail/_pa_wip_mail/mail/drafts.d.ts +0 -5
  1438. package/dist/api/routes/mail/_pa_wip_mail/mail/drafts.d.ts.map +0 -1
  1439. package/dist/api/routes/mail/_pa_wip_mail/mail/drafts.js +0 -139
  1440. package/dist/api/routes/mail/_pa_wip_mail/mail/drafts.js.map +0 -1
  1441. package/dist/api/routes/mail/_pa_wip_mail/mail/gating.d.ts +0 -45
  1442. package/dist/api/routes/mail/_pa_wip_mail/mail/gating.d.ts.map +0 -1
  1443. package/dist/api/routes/mail/_pa_wip_mail/mail/gating.js +0 -98
  1444. package/dist/api/routes/mail/_pa_wip_mail/mail/gating.js.map +0 -1
  1445. package/dist/api/routes/mail/_pa_wip_mail/mail/index.d.ts +0 -18
  1446. package/dist/api/routes/mail/_pa_wip_mail/mail/index.d.ts.map +0 -1
  1447. package/dist/api/routes/mail/_pa_wip_mail/mail/index.js +0 -40
  1448. package/dist/api/routes/mail/_pa_wip_mail/mail/index.js.map +0 -1
  1449. package/dist/api/routes/mail/_pa_wip_mail/mail/messages.d.ts +0 -15
  1450. package/dist/api/routes/mail/_pa_wip_mail/mail/messages.d.ts.map +0 -1
  1451. package/dist/api/routes/mail/_pa_wip_mail/mail/messages.js +0 -239
  1452. package/dist/api/routes/mail/_pa_wip_mail/mail/messages.js.map +0 -1
  1453. package/dist/api/routes/mail/_pa_wip_mail/mail/outlook-config.d.ts +0 -4
  1454. package/dist/api/routes/mail/_pa_wip_mail/mail/outlook-config.d.ts.map +0 -1
  1455. package/dist/api/routes/mail/_pa_wip_mail/mail/outlook-config.js +0 -73
  1456. package/dist/api/routes/mail/_pa_wip_mail/mail/outlook-config.js.map +0 -1
  1457. package/dist/api/routes/mail/_pa_wip_mail/mail/provider-resolver.d.ts +0 -64
  1458. package/dist/api/routes/mail/_pa_wip_mail/mail/provider-resolver.d.ts.map +0 -1
  1459. package/dist/api/routes/mail/_pa_wip_mail/mail/provider-resolver.js +0 -286
  1460. package/dist/api/routes/mail/_pa_wip_mail/mail/provider-resolver.js.map +0 -1
  1461. package/dist/api/routes/mail/_pa_wip_mail/mail/providers.d.ts +0 -4
  1462. package/dist/api/routes/mail/_pa_wip_mail/mail/providers.d.ts.map +0 -1
  1463. package/dist/api/routes/mail/_pa_wip_mail/mail/providers.js +0 -73
  1464. package/dist/api/routes/mail/_pa_wip_mail/mail/providers.js.map +0 -1
  1465. package/dist/api/routes/mail/_pa_wip_mail/mail/tags-folders.d.ts +0 -5
  1466. package/dist/api/routes/mail/_pa_wip_mail/mail/tags-folders.d.ts.map +0 -1
  1467. package/dist/api/routes/mail/_pa_wip_mail/mail/tags-folders.js +0 -35
  1468. package/dist/api/routes/mail/_pa_wip_mail/mail/tags-folders.js.map +0 -1
  1469. package/dist/api/routes/mail/_pa_wip_mail/mail/validators.d.ts +0 -23
  1470. package/dist/api/routes/mail/_pa_wip_mail/mail/validators.d.ts.map +0 -1
  1471. package/dist/api/routes/mail/_pa_wip_mail/mail/validators.js +0 -131
  1472. package/dist/api/routes/mail/_pa_wip_mail/mail/validators.js.map +0 -1
  1473. package/dist/api/routes/mail/_pa_wip_mail/provider-resolver.d.ts +0 -64
  1474. package/dist/api/routes/mail/_pa_wip_mail/provider-resolver.d.ts.map +0 -1
  1475. package/dist/api/routes/mail/_pa_wip_mail/provider-resolver.js +0 -286
  1476. package/dist/api/routes/mail/_pa_wip_mail/provider-resolver.js.map +0 -1
  1477. package/dist/api/routes/mail/_pa_wip_mail/search-health.d.ts +0 -4
  1478. package/dist/api/routes/mail/_pa_wip_mail/search-health.d.ts.map +0 -1
  1479. package/dist/api/routes/mail/_pa_wip_mail/search-health.js +0 -131
  1480. package/dist/api/routes/mail/_pa_wip_mail/search-health.js.map +0 -1
  1481. package/dist/api/routes/mail/_pa_wip_mail/validators.d.ts +0 -23
  1482. package/dist/api/routes/mail/_pa_wip_mail/validators.d.ts.map +0 -1
  1483. package/dist/api/routes/mail/_pa_wip_mail/validators.js +0 -131
  1484. package/dist/api/routes/mail/_pa_wip_mail/validators.js.map +0 -1
  1485. package/dist/api/routes/mail/accounts.d.ts.map +0 -1
  1486. package/dist/api/routes/mail/accounts.js.map +0 -1
  1487. package/dist/api/routes/mail/app-password.d.ts.map +0 -1
  1488. package/dist/api/routes/mail/app-password.js.map +0 -1
  1489. package/dist/api/routes/mail/body-helpers.d.ts.map +0 -1
  1490. package/dist/api/routes/mail/body-helpers.js.map +0 -1
  1491. package/dist/api/routes/mail/dependencies.d.ts.map +0 -1
  1492. package/dist/api/routes/mail/dependencies.js.map +0 -1
  1493. package/dist/api/routes/mail/drafts.d.ts.map +0 -1
  1494. package/dist/api/routes/mail/drafts.js.map +0 -1
  1495. package/dist/api/routes/mail/gating.d.ts.map +0 -1
  1496. package/dist/api/routes/mail/gating.js.map +0 -1
  1497. package/dist/api/routes/mail/index.d.ts.map +0 -1
  1498. package/dist/api/routes/mail/index.js.map +0 -1
  1499. package/dist/api/routes/mail/messages.d.ts.map +0 -1
  1500. package/dist/api/routes/mail/messages.js.map +0 -1
  1501. package/dist/api/routes/mail/outlook-config.d.ts.map +0 -1
  1502. package/dist/api/routes/mail/outlook-config.js.map +0 -1
  1503. package/dist/api/routes/mail/provider-resolver.d.ts.map +0 -1
  1504. package/dist/api/routes/mail/provider-resolver.js.map +0 -1
  1505. package/dist/api/routes/mail/providers.d.ts.map +0 -1
  1506. package/dist/api/routes/mail/providers.js.map +0 -1
  1507. package/dist/api/routes/mail/search-health.d.ts.map +0 -1
  1508. package/dist/api/routes/mail/search-health.js.map +0 -1
  1509. package/dist/api/routes/mail/tags-folders.d.ts.map +0 -1
  1510. package/dist/api/routes/mail/tags-folders.js.map +0 -1
  1511. package/dist/api/routes/mail/validators.d.ts.map +0 -1
  1512. package/dist/api/routes/mail/validators.js.map +0 -1
  1513. package/dist/api/routes/mail.d.ts +0 -39
  1514. package/dist/api/routes/mail.d.ts.map +0 -1
  1515. package/dist/api/routes/mail.js +0 -1664
  1516. package/dist/api/routes/mail.js.map +0 -1
  1517. package/dist/api/routes/managed-tasks.d.ts.map +0 -1
  1518. package/dist/api/routes/managed-tasks.js.map +0 -1
  1519. package/dist/api/routes/mcp.d.ts.map +0 -1
  1520. package/dist/api/routes/mcp.js.map +0 -1
  1521. package/dist/api/routes/metrics.d.ts.map +0 -1
  1522. package/dist/api/routes/metrics.js.map +0 -1
  1523. package/dist/api/routes/notion.d.ts.map +0 -1
  1524. package/dist/api/routes/notion.js.map +0 -1
  1525. package/dist/api/routes/observations.d.ts.map +0 -1
  1526. package/dist/api/routes/observations.js.map +0 -1
  1527. package/dist/api/routes/obsidian.d.ts.map +0 -1
  1528. package/dist/api/routes/obsidian.js.map +0 -1
  1529. package/dist/api/routes/profile-questions.d.ts.map +0 -1
  1530. package/dist/api/routes/profile-questions.js.map +0 -1
  1531. package/dist/api/routes/receipts.d.ts.map +0 -1
  1532. package/dist/api/routes/receipts.js.map +0 -1
  1533. package/dist/api/routes/recurring-schedules.d.ts.map +0 -1
  1534. package/dist/api/routes/recurring-schedules.js.map +0 -1
  1535. package/dist/api/routes/repositories.d.ts.map +0 -1
  1536. package/dist/api/routes/repositories.js.map +0 -1
  1537. package/dist/api/routes/schedule-model-resolver.d.ts.map +0 -1
  1538. package/dist/api/routes/schedule-model-resolver.js.map +0 -1
  1539. package/dist/api/routes/schedule-options.d.ts.map +0 -1
  1540. package/dist/api/routes/schedule-options.js.map +0 -1
  1541. package/dist/api/routes/schedule-validation.d.ts.map +0 -1
  1542. package/dist/api/routes/schedule-validation.js.map +0 -1
  1543. package/dist/api/routes/setup-migrate.d.ts.map +0 -1
  1544. package/dist/api/routes/setup-migrate.js.map +0 -1
  1545. package/dist/api/routes/setup.d.ts.map +0 -1
  1546. package/dist/api/routes/setup.js.map +0 -1
  1547. package/dist/api/routes/skill-curation.d.ts.map +0 -1
  1548. package/dist/api/routes/skill-curation.js.map +0 -1
  1549. package/dist/api/routes/skills.d.ts.map +0 -1
  1550. package/dist/api/routes/skills.js.map +0 -1
  1551. package/dist/api/routes/sot-bindings.d.ts.map +0 -1
  1552. package/dist/api/routes/sot-bindings.js.map +0 -1
  1553. package/dist/api/routes/sse.d.ts.map +0 -1
  1554. package/dist/api/routes/sse.js.map +0 -1
  1555. package/dist/api/routes/system.d.ts.map +0 -1
  1556. package/dist/api/routes/system.js.map +0 -1
  1557. package/dist/api/routes/task-flows.d.ts.map +0 -1
  1558. package/dist/api/routes/task-flows.js.map +0 -1
  1559. package/dist/api/routes/travel-bookings.d.ts.map +0 -1
  1560. package/dist/api/routes/travel-bookings.js.map +0 -1
  1561. package/dist/api/routes/travel-time.d.ts +0 -8
  1562. package/dist/api/routes/travel-time.d.ts.map +0 -1
  1563. package/dist/api/routes/travel-time.js +0 -127
  1564. package/dist/api/routes/travel-time.js.map +0 -1
  1565. package/dist/api/routes/triggers.d.ts.map +0 -1
  1566. package/dist/api/routes/triggers.js.map +0 -1
  1567. package/dist/api/routes/voice.d.ts.map +0 -1
  1568. package/dist/api/routes/voice.js.map +0 -1
  1569. package/dist/api/routes/wiki.d.ts.map +0 -1
  1570. package/dist/api/routes/wiki.js.map +0 -1
  1571. package/dist/api/server.d.ts.map +0 -1
  1572. package/dist/api/server.js.map +0 -1
  1573. package/dist/bootstrap/adapters.d.ts.map +0 -1
  1574. package/dist/bootstrap/adapters.js.map +0 -1
  1575. package/dist/bootstrap/api.d.ts.map +0 -1
  1576. package/dist/bootstrap/api.js.map +0 -1
  1577. package/dist/bootstrap/catchup.d.ts.map +0 -1
  1578. package/dist/bootstrap/catchup.js.map +0 -1
  1579. package/dist/bootstrap/db.d.ts.map +0 -1
  1580. package/dist/bootstrap/db.js.map +0 -1
  1581. package/dist/bootstrap/event-pipeline.d.ts.map +0 -1
  1582. package/dist/bootstrap/event-pipeline.js.map +0 -1
  1583. package/dist/bootstrap/observers.d.ts.map +0 -1
  1584. package/dist/bootstrap/observers.js.map +0 -1
  1585. package/dist/bootstrap/schedule-helpers.d.ts.map +0 -1
  1586. package/dist/bootstrap/schedule-helpers.js.map +0 -1
  1587. package/dist/bootstrap/services.d.ts.map +0 -1
  1588. package/dist/bootstrap/services.js.map +0 -1
  1589. package/dist/config.d.ts.map +0 -1
  1590. package/dist/config.js.map +0 -1
  1591. package/dist/core/abort-utils.d.ts.map +0 -1
  1592. package/dist/core/abort-utils.js.map +0 -1
  1593. package/dist/core/agent-core.d.ts.map +0 -1
  1594. package/dist/core/agent-core.js.map +0 -1
  1595. package/dist/core/alerts.d.ts.map +0 -1
  1596. package/dist/core/alerts.js.map +0 -1
  1597. package/dist/core/atomic-write.d.ts.map +0 -1
  1598. package/dist/core/atomic-write.js.map +0 -1
  1599. package/dist/core/backends/api-key-probe.d.ts.map +0 -1
  1600. package/dist/core/backends/api-key-probe.js.map +0 -1
  1601. package/dist/core/backends/auth-health-monitor.d.ts.map +0 -1
  1602. package/dist/core/backends/auth-health-monitor.js.map +0 -1
  1603. package/dist/core/backends/auth-recovery.d.ts.map +0 -1
  1604. package/dist/core/backends/auth-recovery.js.map +0 -1
  1605. package/dist/core/backends/auth-telemetry.d.ts.map +0 -1
  1606. package/dist/core/backends/auth-telemetry.js.map +0 -1
  1607. package/dist/core/backends/backend-router.d.ts.map +0 -1
  1608. package/dist/core/backends/backend-router.js.map +0 -1
  1609. package/dist/core/backends/claude-auth.d.ts.map +0 -1
  1610. package/dist/core/backends/claude-auth.js.map +0 -1
  1611. package/dist/core/backends/claude-code-core.d.ts.map +0 -1
  1612. package/dist/core/backends/claude-code-core.js.map +0 -1
  1613. package/dist/core/backends/claude-credentials-store.d.ts.map +0 -1
  1614. package/dist/core/backends/claude-credentials-store.js.map +0 -1
  1615. package/dist/core/backends/claude-delegated.d.ts.map +0 -1
  1616. package/dist/core/backends/claude-delegated.js.map +0 -1
  1617. package/dist/core/backends/claude-errors.d.ts.map +0 -1
  1618. package/dist/core/backends/claude-errors.js.map +0 -1
  1619. package/dist/core/backends/claude-probe.d.ts.map +0 -1
  1620. package/dist/core/backends/claude-probe.js.map +0 -1
  1621. package/dist/core/backends/claude-tool-collection.d.ts.map +0 -1
  1622. package/dist/core/backends/claude-tool-collection.js.map +0 -1
  1623. package/dist/core/backends/cli-utils.d.ts.map +0 -1
  1624. package/dist/core/backends/cli-utils.js.map +0 -1
  1625. package/dist/core/backends/codex-core.d.ts.map +0 -1
  1626. package/dist/core/backends/codex-core.js.map +0 -1
  1627. package/dist/core/backends/gemini-cli-core.d.ts.map +0 -1
  1628. package/dist/core/backends/gemini-cli-core.js.map +0 -1
  1629. package/dist/core/backends/idle-watchdog.d.ts.map +0 -1
  1630. package/dist/core/backends/idle-watchdog.js.map +0 -1
  1631. package/dist/core/backends/install-methods.d.ts.map +0 -1
  1632. package/dist/core/backends/install-methods.js.map +0 -1
  1633. package/dist/core/backends/model-registry.d.ts.map +0 -1
  1634. package/dist/core/backends/model-registry.js.map +0 -1
  1635. package/dist/core/backends/native-skill-discovery-probe.d.ts.map +0 -1
  1636. package/dist/core/backends/native-skill-discovery-probe.js.map +0 -1
  1637. package/dist/core/backends/opencode-basic-auth-fetch.d.ts.map +0 -1
  1638. package/dist/core/backends/opencode-basic-auth-fetch.js.map +0 -1
  1639. package/dist/core/backends/opencode-config-builder.d.ts.map +0 -1
  1640. package/dist/core/backends/opencode-config-builder.js.map +0 -1
  1641. package/dist/core/backends/opencode-core.d.ts.map +0 -1
  1642. package/dist/core/backends/opencode-core.js.map +0 -1
  1643. package/dist/core/backends/opencode-event-mapper.d.ts.map +0 -1
  1644. package/dist/core/backends/opencode-event-mapper.js.map +0 -1
  1645. package/dist/core/backends/opencode-mcp.d.ts.map +0 -1
  1646. package/dist/core/backends/opencode-mcp.js.map +0 -1
  1647. package/dist/core/backends/opencode-server-manager.d.ts.map +0 -1
  1648. package/dist/core/backends/opencode-server-manager.js.map +0 -1
  1649. package/dist/core/backends/opencode-types.d.ts.map +0 -1
  1650. package/dist/core/backends/opencode-types.js.map +0 -1
  1651. package/dist/core/backends/plan-presets.d.ts.map +0 -1
  1652. package/dist/core/backends/plan-presets.js.map +0 -1
  1653. package/dist/core/backends/price-fetcher.d.ts.map +0 -1
  1654. package/dist/core/backends/price-fetcher.js.map +0 -1
  1655. package/dist/core/backends/process-config-cascade.d.ts.map +0 -1
  1656. package/dist/core/backends/process-config-cascade.js.map +0 -1
  1657. package/dist/core/backends/prompt-utils.d.ts.map +0 -1
  1658. package/dist/core/backends/prompt-utils.js.map +0 -1
  1659. package/dist/core/backends/proxy-model-registry.d.ts.map +0 -1
  1660. package/dist/core/backends/proxy-model-registry.js.map +0 -1
  1661. package/dist/core/backends/quota-reset-hints.d.ts.map +0 -1
  1662. package/dist/core/backends/quota-reset-hints.js.map +0 -1
  1663. package/dist/core/backends/silent-api-error-detector.d.ts.map +0 -1
  1664. package/dist/core/backends/silent-api-error-detector.js.map +0 -1
  1665. package/dist/core/bang-commands/commands-close.d.ts.map +0 -1
  1666. package/dist/core/bang-commands/commands-close.js.map +0 -1
  1667. package/dist/core/bang-commands/commands-cost.d.ts.map +0 -1
  1668. package/dist/core/bang-commands/commands-cost.js.map +0 -1
  1669. package/dist/core/bang-commands/commands-help.d.ts.map +0 -1
  1670. package/dist/core/bang-commands/commands-help.js.map +0 -1
  1671. package/dist/core/bang-commands/commands-report.d.ts.map +0 -1
  1672. package/dist/core/bang-commands/commands-report.js.map +0 -1
  1673. package/dist/core/bang-commands/commands-stop-start.d.ts.map +0 -1
  1674. package/dist/core/bang-commands/commands-stop-start.js.map +0 -1
  1675. package/dist/core/bang-commands/commands-wiki.d.ts.map +0 -1
  1676. package/dist/core/bang-commands/commands-wiki.js.map +0 -1
  1677. package/dist/core/bang-commands/format-utils.d.ts.map +0 -1
  1678. package/dist/core/bang-commands/format-utils.js.map +0 -1
  1679. package/dist/core/bang-commands/index.d.ts.map +0 -1
  1680. package/dist/core/bang-commands/index.js.map +0 -1
  1681. package/dist/core/bang-commands/registry.d.ts.map +0 -1
  1682. package/dist/core/bang-commands/registry.js.map +0 -1
  1683. package/dist/core/bang-commands/user-commands.d.ts.map +0 -1
  1684. package/dist/core/bang-commands/user-commands.js.map +0 -1
  1685. package/dist/core/channel-timeline.d.ts.map +0 -1
  1686. package/dist/core/channel-timeline.js.map +0 -1
  1687. package/dist/core/character-block.d.ts.map +0 -1
  1688. package/dist/core/character-block.js.map +0 -1
  1689. package/dist/core/context/activity-sources.d.ts.map +0 -1
  1690. package/dist/core/context/activity-sources.js.map +0 -1
  1691. package/dist/core/context/activity-view-reconciler.d.ts.map +0 -1
  1692. package/dist/core/context/activity-view-reconciler.js.map +0 -1
  1693. package/dist/core/context/activity-view-runner.d.ts.map +0 -1
  1694. package/dist/core/context/activity-view-runner.js.map +0 -1
  1695. package/dist/core/context/default-schedules-reconciler.d.ts.map +0 -1
  1696. package/dist/core/context/default-schedules-reconciler.js.map +0 -1
  1697. package/dist/core/context/default-schedules-runner.d.ts.map +0 -1
  1698. package/dist/core/context/default-schedules-runner.js.map +0 -1
  1699. package/dist/core/context/domain-index-reconciler.d.ts.map +0 -1
  1700. package/dist/core/context/domain-index-reconciler.js.map +0 -1
  1701. package/dist/core/context/domain-index-runner.d.ts.map +0 -1
  1702. package/dist/core/context/domain-index-runner.js.map +0 -1
  1703. package/dist/core/context/entity-mirror.d.ts.map +0 -1
  1704. package/dist/core/context/entity-mirror.js.map +0 -1
  1705. package/dist/core/context/entity-source-rename.d.ts.map +0 -1
  1706. package/dist/core/context/entity-source-rename.js.map +0 -1
  1707. package/dist/core/context/index-reconciler.d.ts.map +0 -1
  1708. package/dist/core/context/index-reconciler.js.map +0 -1
  1709. package/dist/core/context/policy-index-reconciler.d.ts.map +0 -1
  1710. package/dist/core/context/policy-index-reconciler.js.map +0 -1
  1711. package/dist/core/context/policy-index-runner.d.ts.map +0 -1
  1712. package/dist/core/context/policy-index-runner.js.map +0 -1
  1713. package/dist/core/context/reconciler-runner.d.ts.map +0 -1
  1714. package/dist/core/context/reconciler-runner.js.map +0 -1
  1715. package/dist/core/context-builder.d.ts.map +0 -1
  1716. package/dist/core/context-builder.js.map +0 -1
  1717. package/dist/core/context-frontmatter-backfill.d.ts +0 -33
  1718. package/dist/core/context-frontmatter-backfill.d.ts.map +0 -1
  1719. package/dist/core/context-frontmatter-backfill.js +0 -111
  1720. package/dist/core/context-frontmatter-backfill.js.map +0 -1
  1721. package/dist/core/context-frontmatter.d.ts.map +0 -1
  1722. package/dist/core/context-frontmatter.js.map +0 -1
  1723. package/dist/core/context-health.d.ts.map +0 -1
  1724. package/dist/core/context-health.js.map +0 -1
  1725. package/dist/core/context-paths.d.ts.map +0 -1
  1726. package/dist/core/context-paths.js.map +0 -1
  1727. package/dist/core/context-staleness.d.ts.map +0 -1
  1728. package/dist/core/context-staleness.js.map +0 -1
  1729. package/dist/core/context-validation/_pa_wip_context_validation/index.d.ts +0 -19
  1730. package/dist/core/context-validation/_pa_wip_context_validation/index.d.ts.map +0 -1
  1731. package/dist/core/context-validation/_pa_wip_context_validation/index.js +0 -19
  1732. package/dist/core/context-validation/_pa_wip_context_validation/index.js.map +0 -1
  1733. package/dist/core/context-validation/_pa_wip_context_validation/prepare-write.d.ts +0 -94
  1734. package/dist/core/context-validation/_pa_wip_context_validation/prepare-write.d.ts.map +0 -1
  1735. package/dist/core/context-validation/_pa_wip_context_validation/prepare-write.js +0 -130
  1736. package/dist/core/context-validation/_pa_wip_context_validation/prepare-write.js.map +0 -1
  1737. package/dist/core/context-validation/_pa_wip_context_validation/routine-rulebook.d.ts +0 -60
  1738. package/dist/core/context-validation/_pa_wip_context_validation/routine-rulebook.d.ts.map +0 -1
  1739. package/dist/core/context-validation/_pa_wip_context_validation/routine-rulebook.js +0 -156
  1740. package/dist/core/context-validation/_pa_wip_context_validation/routine-rulebook.js.map +0 -1
  1741. package/dist/core/context-validation/_pa_wip_context_validation/section.d.ts +0 -41
  1742. package/dist/core/context-validation/_pa_wip_context_validation/section.d.ts.map +0 -1
  1743. package/dist/core/context-validation/_pa_wip_context_validation/section.js +0 -82
  1744. package/dist/core/context-validation/_pa_wip_context_validation/section.js.map +0 -1
  1745. package/dist/core/context-validation/_pa_wip_context_validation/snapshot-debounce.d.ts +0 -52
  1746. package/dist/core/context-validation/_pa_wip_context_validation/snapshot-debounce.d.ts.map +0 -1
  1747. package/dist/core/context-validation/_pa_wip_context_validation/snapshot-debounce.js +0 -110
  1748. package/dist/core/context-validation/_pa_wip_context_validation/snapshot-debounce.js.map +0 -1
  1749. package/dist/core/context-validation/_pa_wip_context_validation/today.d.ts +0 -85
  1750. package/dist/core/context-validation/_pa_wip_context_validation/today.d.ts.map +0 -1
  1751. package/dist/core/context-validation/_pa_wip_context_validation/today.js +0 -162
  1752. package/dist/core/context-validation/_pa_wip_context_validation/today.js.map +0 -1
  1753. package/dist/core/context-validation/index.d.ts.map +0 -1
  1754. package/dist/core/context-validation/index.js.map +0 -1
  1755. package/dist/core/context-validation/prepare-write.d.ts.map +0 -1
  1756. package/dist/core/context-validation/prepare-write.js.map +0 -1
  1757. package/dist/core/context-validation/routine-rulebook.d.ts.map +0 -1
  1758. package/dist/core/context-validation/routine-rulebook.js.map +0 -1
  1759. package/dist/core/context-validation/section.d.ts.map +0 -1
  1760. package/dist/core/context-validation/section.js.map +0 -1
  1761. package/dist/core/context-validation/snapshot-debounce.d.ts.map +0 -1
  1762. package/dist/core/context-validation/snapshot-debounce.js.map +0 -1
  1763. package/dist/core/context-validation/today.d.ts.map +0 -1
  1764. package/dist/core/context-validation/today.js.map +0 -1
  1765. package/dist/core/custom-routine-scheduler.d.ts.map +0 -1
  1766. package/dist/core/custom-routine-scheduler.js.map +0 -1
  1767. package/dist/core/daemon-api-cli.d.ts.map +0 -1
  1768. package/dist/core/daemon-api-cli.js.map +0 -1
  1769. package/dist/core/dashboard-session-cleanup.d.ts.map +0 -1
  1770. package/dist/core/dashboard-session-cleanup.js.map +0 -1
  1771. package/dist/core/dashboard-session-controls.d.ts.map +0 -1
  1772. package/dist/core/dashboard-session-controls.js.map +0 -1
  1773. package/dist/core/delegated-connector-health.d.ts.map +0 -1
  1774. package/dist/core/delegated-connector-health.js.map +0 -1
  1775. package/dist/core/dispatcher-date-utils.d.ts.map +0 -1
  1776. package/dist/core/dispatcher-date-utils.js.map +0 -1
  1777. package/dist/core/dispatcher-error-handling.d.ts.map +0 -1
  1778. package/dist/core/dispatcher-error-handling.js.map +0 -1
  1779. package/dist/core/dispatcher-hourly-check.d.ts.map +0 -1
  1780. package/dist/core/dispatcher-hourly-check.js.map +0 -1
  1781. package/dist/core/dispatcher-message-handler.d.ts.map +0 -1
  1782. package/dist/core/dispatcher-message-handler.js.map +0 -1
  1783. package/dist/core/dispatcher-morning-routine.d.ts.map +0 -1
  1784. package/dist/core/dispatcher-morning-routine.js.map +0 -1
  1785. package/dist/core/dispatcher-prompt.d.ts.map +0 -1
  1786. package/dist/core/dispatcher-prompt.js.map +0 -1
  1787. package/dist/core/dispatcher-repository-helpers.d.ts.map +0 -1
  1788. package/dist/core/dispatcher-repository-helpers.js.map +0 -1
  1789. package/dist/core/dispatcher-result-processor.d.ts.map +0 -1
  1790. package/dist/core/dispatcher-result-processor.js.map +0 -1
  1791. package/dist/core/dispatcher-scheduled-tasks.d.ts.map +0 -1
  1792. package/dist/core/dispatcher-scheduled-tasks.js.map +0 -1
  1793. package/dist/core/dispatcher-types.d.ts.map +0 -1
  1794. package/dist/core/dispatcher-types.js.map +0 -1
  1795. package/dist/core/dispatcher.d.ts.map +0 -1
  1796. package/dist/core/dispatcher.js.map +0 -1
  1797. package/dist/core/dm-freshness-metrics.d.ts.map +0 -1
  1798. package/dist/core/dm-freshness-metrics.js.map +0 -1
  1799. package/dist/core/docs/citation-validator.d.ts.map +0 -1
  1800. package/dist/core/docs/citation-validator.js.map +0 -1
  1801. package/dist/core/docs/extract-terms.d.ts.map +0 -1
  1802. package/dist/core/docs/extract-terms.js.map +0 -1
  1803. package/dist/core/docs/indexer.d.ts.map +0 -1
  1804. package/dist/core/docs/indexer.js.map +0 -1
  1805. package/dist/core/drift-effects.d.ts.map +0 -1
  1806. package/dist/core/drift-effects.js.map +0 -1
  1807. package/dist/core/evening-review-verify.d.ts.map +0 -1
  1808. package/dist/core/evening-review-verify.js.map +0 -1
  1809. package/dist/core/event-bus.d.ts.map +0 -1
  1810. package/dist/core/event-bus.js.map +0 -1
  1811. package/dist/core/fetch-window-prompt-loader.d.ts.map +0 -1
  1812. package/dist/core/fetch-window-prompt-loader.js.map +0 -1
  1813. package/dist/core/git-project-docs.d.ts.map +0 -1
  1814. package/dist/core/git-project-docs.js.map +0 -1
  1815. package/dist/core/health-monitor.d.ts.map +0 -1
  1816. package/dist/core/health-monitor.js.map +0 -1
  1817. package/dist/core/heartbeat.d.ts.map +0 -1
  1818. package/dist/core/heartbeat.js.map +0 -1
  1819. package/dist/core/integration-health.d.ts.map +0 -1
  1820. package/dist/core/integration-health.js.map +0 -1
  1821. package/dist/core/integration-lifecycle.d.ts.map +0 -1
  1822. package/dist/core/integration-lifecycle.js.map +0 -1
  1823. package/dist/core/integration-main-backend.d.ts.map +0 -1
  1824. package/dist/core/integration-main-backend.js.map +0 -1
  1825. package/dist/core/integration-probe.d.ts.map +0 -1
  1826. package/dist/core/integration-probe.js.map +0 -1
  1827. package/dist/core/management-md-write-lock.d.ts.map +0 -1
  1828. package/dist/core/management-md-write-lock.js.map +0 -1
  1829. package/dist/core/management-md.d.ts.map +0 -1
  1830. package/dist/core/management-md.js.map +0 -1
  1831. package/dist/core/management-registry.d.ts.map +0 -1
  1832. package/dist/core/management-registry.js.map +0 -1
  1833. package/dist/core/management-telemetry.d.ts.map +0 -1
  1834. package/dist/core/management-telemetry.js.map +0 -1
  1835. package/dist/core/message-recorder.d.ts.map +0 -1
  1836. package/dist/core/message-recorder.js.map +0 -1
  1837. package/dist/core/metrics.d.ts.map +0 -1
  1838. package/dist/core/metrics.js.map +0 -1
  1839. package/dist/core/migration-backup.d.ts.map +0 -1
  1840. package/dist/core/migration-backup.js.map +0 -1
  1841. package/dist/core/morning/agent-journal-appender.d.ts.map +0 -1
  1842. package/dist/core/morning/agent-journal-appender.js.map +0 -1
  1843. package/dist/core/morning/handoff-parser.d.ts.map +0 -1
  1844. package/dist/core/morning/handoff-parser.js.map +0 -1
  1845. package/dist/core/morning/journal-skeleton-builder.d.ts.map +0 -1
  1846. package/dist/core/morning/journal-skeleton-builder.js.map +0 -1
  1847. package/dist/core/morning/orchestrator.d.ts.map +0 -1
  1848. package/dist/core/morning/orchestrator.js.map +0 -1
  1849. package/dist/core/morning/parent-audit-emitter.d.ts.map +0 -1
  1850. package/dist/core/morning/parent-audit-emitter.js.map +0 -1
  1851. package/dist/core/morning/roadmap-skeleton-builder.d.ts.map +0 -1
  1852. package/dist/core/morning/roadmap-skeleton-builder.js.map +0 -1
  1853. package/dist/core/output-language-policy.d.ts.map +0 -1
  1854. package/dist/core/output-language-policy.js.map +0 -1
  1855. package/dist/core/overview-write-lock.d.ts.map +0 -1
  1856. package/dist/core/overview-write-lock.js.map +0 -1
  1857. package/dist/core/path-compat.d.ts.map +0 -1
  1858. package/dist/core/path-compat.js.map +0 -1
  1859. package/dist/core/path-rewrite.d.ts.map +0 -1
  1860. package/dist/core/path-rewrite.js.map +0 -1
  1861. package/dist/core/policy-files.d.ts.map +0 -1
  1862. package/dist/core/policy-files.js.map +0 -1
  1863. package/dist/core/pre-pass-freshness.d.ts.map +0 -1
  1864. package/dist/core/pre-pass-freshness.js.map +0 -1
  1865. package/dist/core/previous-week-digest.d.ts.map +0 -1
  1866. package/dist/core/previous-week-digest.js.map +0 -1
  1867. package/dist/core/profile-questions/seed.d.ts.map +0 -1
  1868. package/dist/core/profile-questions/seed.js.map +0 -1
  1869. package/dist/core/profile-questions/slot-filled.d.ts.map +0 -1
  1870. package/dist/core/profile-questions/slot-filled.js.map +0 -1
  1871. package/dist/core/prompts.d.ts.map +0 -1
  1872. package/dist/core/prompts.js.map +0 -1
  1873. package/dist/core/quiet-hours-sync.d.ts.map +0 -1
  1874. package/dist/core/quiet-hours-sync.js.map +0 -1
  1875. package/dist/core/read-sensitive-token-manager.d.ts.map +0 -1
  1876. package/dist/core/read-sensitive-token-manager.js.map +0 -1
  1877. package/dist/core/recurrence.d.ts.map +0 -1
  1878. package/dist/core/recurrence.js.map +0 -1
  1879. package/dist/core/reinstall.d.ts.map +0 -1
  1880. package/dist/core/reinstall.js.map +0 -1
  1881. package/dist/core/release-assets.d.ts.map +0 -1
  1882. package/dist/core/release-assets.js.map +0 -1
  1883. package/dist/core/repository-management-docs.d.ts.map +0 -1
  1884. package/dist/core/repository-management-docs.js.map +0 -1
  1885. package/dist/core/retention.d.ts.map +0 -1
  1886. package/dist/core/retention.js.map +0 -1
  1887. package/dist/core/review-context.d.ts.map +0 -1
  1888. package/dist/core/review-context.js.map +0 -1
  1889. package/dist/core/roadmap-horizon.d.ts.map +0 -1
  1890. package/dist/core/roadmap-horizon.js.map +0 -1
  1891. package/dist/core/roadmap-ids.d.ts.map +0 -1
  1892. package/dist/core/roadmap-ids.js.map +0 -1
  1893. package/dist/core/roadmap-maintenance.d.ts.map +0 -1
  1894. package/dist/core/roadmap-maintenance.js.map +0 -1
  1895. package/dist/core/roadmap-refresh-triggers.d.ts.map +0 -1
  1896. package/dist/core/roadmap-refresh-triggers.js.map +0 -1
  1897. package/dist/core/roadmap-truncate.d.ts.map +0 -1
  1898. package/dist/core/roadmap-truncate.js.map +0 -1
  1899. package/dist/core/roadmap-validate.d.ts.map +0 -1
  1900. package/dist/core/roadmap-validate.js.map +0 -1
  1901. package/dist/core/roadmap-write-lock.d.ts.map +0 -1
  1902. package/dist/core/roadmap-write-lock.js.map +0 -1
  1903. package/dist/core/routine-acquisition-plan.d.ts.map +0 -1
  1904. package/dist/core/routine-acquisition-plan.js.map +0 -1
  1905. package/dist/core/routine-fetch-window-retry.d.ts.map +0 -1
  1906. package/dist/core/routine-fetch-window-retry.js.map +0 -1
  1907. package/dist/core/routine-fetch-window-runner.d.ts.map +0 -1
  1908. package/dist/core/routine-fetch-window-runner.js.map +0 -1
  1909. package/dist/core/routine-windows.d.ts.map +0 -1
  1910. package/dist/core/routine-windows.js.map +0 -1
  1911. package/dist/core/schedule-insert-helper.d.ts.map +0 -1
  1912. package/dist/core/schedule-insert-helper.js.map +0 -1
  1913. package/dist/core/schedule-maintenance.d.ts.map +0 -1
  1914. package/dist/core/schedule-maintenance.js.map +0 -1
  1915. package/dist/core/scheduler.d.ts.map +0 -1
  1916. package/dist/core/scheduler.js.map +0 -1
  1917. package/dist/core/semaphore.d.ts.map +0 -1
  1918. package/dist/core/semaphore.js.map +0 -1
  1919. package/dist/core/session-gate.d.ts.map +0 -1
  1920. package/dist/core/session-gate.js.map +0 -1
  1921. package/dist/core/session-manager.d.ts.map +0 -1
  1922. package/dist/core/session-manager.js.map +0 -1
  1923. package/dist/core/signal-detector.d.ts.map +0 -1
  1924. package/dist/core/signal-detector.js.map +0 -1
  1925. package/dist/core/skeleton.d.ts.map +0 -1
  1926. package/dist/core/skeleton.js.map +0 -1
  1927. package/dist/core/skill-curation/apply-proposal.d.ts.map +0 -1
  1928. package/dist/core/skill-curation/apply-proposal.js.map +0 -1
  1929. package/dist/core/skill-curation/auto-revert.d.ts.map +0 -1
  1930. package/dist/core/skill-curation/auto-revert.js.map +0 -1
  1931. package/dist/core/skill-curation/classify-diff.d.ts.map +0 -1
  1932. package/dist/core/skill-curation/classify-diff.js.map +0 -1
  1933. package/dist/core/skill-curation/declarations.d.ts.map +0 -1
  1934. package/dist/core/skill-curation/declarations.js.map +0 -1
  1935. package/dist/core/skill-curation/knowledge-map.d.ts.map +0 -1
  1936. package/dist/core/skill-curation/knowledge-map.js.map +0 -1
  1937. package/dist/core/skill-curation/orphan-overlay.d.ts.map +0 -1
  1938. package/dist/core/skill-curation/orphan-overlay.js.map +0 -1
  1939. package/dist/core/skill-curation/overlay-store.d.ts.map +0 -1
  1940. package/dist/core/skill-curation/overlay-store.js.map +0 -1
  1941. package/dist/core/skill-curation/render/convention-notes.d.ts.map +0 -1
  1942. package/dist/core/skill-curation/render/convention-notes.js.map +0 -1
  1943. package/dist/core/skill-curation/render/cross-references.d.ts.map +0 -1
  1944. package/dist/core/skill-curation/render/cross-references.js.map +0 -1
  1945. package/dist/core/skill-curation/render/frontmatter-schema.d.ts.map +0 -1
  1946. package/dist/core/skill-curation/render/frontmatter-schema.js.map +0 -1
  1947. package/dist/core/skill-curation/render/index.d.ts.map +0 -1
  1948. package/dist/core/skill-curation/render/index.js.map +0 -1
  1949. package/dist/core/skill-curation/render/knowledge-layout.d.ts.map +0 -1
  1950. package/dist/core/skill-curation/render/knowledge-layout.js.map +0 -1
  1951. package/dist/core/skill-curation/render/routing-table.d.ts.map +0 -1
  1952. package/dist/core/skill-curation/render/routing-table.js.map +0 -1
  1953. package/dist/core/skill-curation/render/search-recipes.d.ts.map +0 -1
  1954. package/dist/core/skill-curation/render/search-recipes.js.map +0 -1
  1955. package/dist/core/skill-curation/run-token.d.ts.map +0 -1
  1956. package/dist/core/skill-curation/run-token.js.map +0 -1
  1957. package/dist/core/skill-curation/signals.d.ts.map +0 -1
  1958. package/dist/core/skill-curation/signals.js.map +0 -1
  1959. package/dist/core/skill-curation/smoke-test.d.ts.map +0 -1
  1960. package/dist/core/skill-curation/smoke-test.js.map +0 -1
  1961. package/dist/core/skill-curation/splicer.d.ts.map +0 -1
  1962. package/dist/core/skill-curation/splicer.js.map +0 -1
  1963. package/dist/core/skill-curation/workdir.d.ts.map +0 -1
  1964. package/dist/core/skill-curation/workdir.js.map +0 -1
  1965. package/dist/core/skill-source-paths.d.ts.map +0 -1
  1966. package/dist/core/skill-source-paths.js.map +0 -1
  1967. package/dist/core/skills-compiler.d.ts.map +0 -1
  1968. package/dist/core/skills-compiler.js.map +0 -1
  1969. package/dist/core/skills-manifest.d.ts.map +0 -1
  1970. package/dist/core/skills-manifest.js.map +0 -1
  1971. package/dist/core/system-reset.d.ts.map +0 -1
  1972. package/dist/core/system-reset.js.map +0 -1
  1973. package/dist/core/template-store.d.ts.map +0 -1
  1974. package/dist/core/template-store.js.map +0 -1
  1975. package/dist/core/template-versions.d.ts.map +0 -1
  1976. package/dist/core/template-versions.js.map +0 -1
  1977. package/dist/core/today-agent-plan.d.ts.map +0 -1
  1978. package/dist/core/today-agent-plan.js.map +0 -1
  1979. package/dist/core/today-direct-writer.d.ts.map +0 -1
  1980. package/dist/core/today-direct-writer.js.map +0 -1
  1981. package/dist/core/today-write-lock.d.ts.map +0 -1
  1982. package/dist/core/today-write-lock.js.map +0 -1
  1983. package/dist/core/trigger-dispatch.d.ts.map +0 -1
  1984. package/dist/core/trigger-dispatch.js.map +0 -1
  1985. package/dist/core/trigger-evaluator.d.ts.map +0 -1
  1986. package/dist/core/trigger-evaluator.js.map +0 -1
  1987. package/dist/core/wiki/approval-queue.d.ts.map +0 -1
  1988. package/dist/core/wiki/approval-queue.js.map +0 -1
  1989. package/dist/core/wiki/bridge.d.ts.map +0 -1
  1990. package/dist/core/wiki/bridge.js.map +0 -1
  1991. package/dist/core/wiki/compile-lock.d.ts.map +0 -1
  1992. package/dist/core/wiki/compile-lock.js.map +0 -1
  1993. package/dist/core/wiki/compile-preview.d.ts.map +0 -1
  1994. package/dist/core/wiki/compile-preview.js.map +0 -1
  1995. package/dist/core/wiki/cost-estimate.d.ts.map +0 -1
  1996. package/dist/core/wiki/cost-estimate.js.map +0 -1
  1997. package/dist/core/wiki/dispatcher.d.ts.map +0 -1
  1998. package/dist/core/wiki/dispatcher.js.map +0 -1
  1999. package/dist/core/wiki/git-precompile.d.ts.map +0 -1
  2000. package/dist/core/wiki/git-precompile.js.map +0 -1
  2001. package/dist/core/wiki/import-migrate.d.ts.map +0 -1
  2002. package/dist/core/wiki/import-migrate.js.map +0 -1
  2003. package/dist/core/wiki/import-probe.d.ts.map +0 -1
  2004. package/dist/core/wiki/import-probe.js.map +0 -1
  2005. package/dist/core/wiki/index-cache.d.ts.map +0 -1
  2006. package/dist/core/wiki/index-cache.js.map +0 -1
  2007. package/dist/core/wiki/multi-url-dispatch.d.ts.map +0 -1
  2008. package/dist/core/wiki/multi-url-dispatch.js.map +0 -1
  2009. package/dist/core/wiki/wiki-fts.d.ts.map +0 -1
  2010. package/dist/core/wiki/wiki-fts.js.map +0 -1
  2011. package/dist/core/wiki/workspaces.d.ts.map +0 -1
  2012. package/dist/core/wiki/workspaces.js.map +0 -1
  2013. package/dist/core/wiki/write-strategy.d.ts.map +0 -1
  2014. package/dist/core/wiki/write-strategy.js.map +0 -1
  2015. package/dist/core/workdir.d.ts.map +0 -1
  2016. package/dist/core/workdir.js.map +0 -1
  2017. package/dist/db/automation-triggers.d.ts.map +0 -1
  2018. package/dist/db/automation-triggers.js.map +0 -1
  2019. package/dist/db/client.d.ts.map +0 -1
  2020. package/dist/db/client.js.map +0 -1
  2021. package/dist/db/entities-store.d.ts.map +0 -1
  2022. package/dist/db/entities-store.js.map +0 -1
  2023. package/dist/db/hourly-check-signals.d.ts.map +0 -1
  2024. package/dist/db/hourly-check-signals.js.map +0 -1
  2025. package/dist/db/integration-probe-store.d.ts.map +0 -1
  2026. package/dist/db/integration-probe-store.js.map +0 -1
  2027. package/dist/db/integrations-store.d.ts.map +0 -1
  2028. package/dist/db/integrations-store.js.map +0 -1
  2029. package/dist/db/managed-tasks-store.d.ts.map +0 -1
  2030. package/dist/db/managed-tasks-store.js.map +0 -1
  2031. package/dist/db/management-parse-failures-store.d.ts.map +0 -1
  2032. package/dist/db/management-parse-failures-store.js.map +0 -1
  2033. package/dist/db/observations.d.ts.map +0 -1
  2034. package/dist/db/observations.js.map +0 -1
  2035. package/dist/db/recurring-schedules.d.ts.map +0 -1
  2036. package/dist/db/recurring-schedules.js.map +0 -1
  2037. package/dist/db/repositories-store.d.ts.map +0 -1
  2038. package/dist/db/repositories-store.js.map +0 -1
  2039. package/dist/db/runtime-state.d.ts.map +0 -1
  2040. package/dist/db/runtime-state.js.map +0 -1
  2041. package/dist/db/schema.d.ts.map +0 -1
  2042. package/dist/db/schema.js.map +0 -1
  2043. package/dist/db/sot-bindings-store.d.ts.map +0 -1
  2044. package/dist/db/sot-bindings-store.js.map +0 -1
  2045. package/dist/db/voice-transcripts-store.d.ts.map +0 -1
  2046. package/dist/db/voice-transcripts-store.js.map +0 -1
  2047. package/dist/db/wiki-store.d.ts.map +0 -1
  2048. package/dist/db/wiki-store.js.map +0 -1
  2049. package/dist/index.d.ts.map +0 -1
  2050. package/dist/index.js.map +0 -1
  2051. package/dist/init.d.ts.map +0 -1
  2052. package/dist/init.js.map +0 -1
  2053. package/dist/log-buffer.d.ts.map +0 -1
  2054. package/dist/log-buffer.js.map +0 -1
  2055. package/dist/logging.d.ts.map +0 -1
  2056. package/dist/logging.js.map +0 -1
  2057. package/dist/management-rules.d.ts.map +0 -1
  2058. package/dist/management-rules.js.map +0 -1
  2059. package/dist/messaging/constants.d.ts.map +0 -1
  2060. package/dist/messaging/constants.js.map +0 -1
  2061. package/dist/messaging/magic-phrase.d.ts.map +0 -1
  2062. package/dist/messaging/magic-phrase.js.map +0 -1
  2063. package/dist/messaging/owner-channels.d.ts.map +0 -1
  2064. package/dist/messaging/owner-channels.js.map +0 -1
  2065. package/dist/messaging/setup-welcome-dm.d.ts.map +0 -1
  2066. package/dist/messaging/setup-welcome-dm.js.map +0 -1
  2067. package/dist/messaging/url-extract.d.ts.map +0 -1
  2068. package/dist/messaging/url-extract.js.map +0 -1
  2069. package/dist/observers/calendar-poller.d.ts.map +0 -1
  2070. package/dist/observers/calendar-poller.js.map +0 -1
  2071. package/dist/observers/context-index-reconciler-observer.d.ts.map +0 -1
  2072. package/dist/observers/context-index-reconciler-observer.js.map +0 -1
  2073. package/dist/observers/delegated-probe-observer.d.ts.map +0 -1
  2074. package/dist/observers/delegated-probe-observer.js.map +0 -1
  2075. package/dist/observers/delegated-sync-worker.d.ts.map +0 -1
  2076. package/dist/observers/delegated-sync-worker.js.map +0 -1
  2077. package/dist/observers/entity-mirror-observer.d.ts.map +0 -1
  2078. package/dist/observers/entity-mirror-observer.js.map +0 -1
  2079. package/dist/observers/git-delegated-cron.d.ts.map +0 -1
  2080. package/dist/observers/git-delegated-cron.js.map +0 -1
  2081. package/dist/observers/git-event-classifier.d.ts.map +0 -1
  2082. package/dist/observers/git-event-classifier.js.map +0 -1
  2083. package/dist/observers/git-watcher.d.ts.map +0 -1
  2084. package/dist/observers/git-watcher.js.map +0 -1
  2085. package/dist/observers/github-poller-classifier.d.ts.map +0 -1
  2086. package/dist/observers/github-poller-classifier.js.map +0 -1
  2087. package/dist/observers/github-poller.d.ts.map +0 -1
  2088. package/dist/observers/github-poller.js.map +0 -1
  2089. package/dist/observers/imminent-event-scheduler.d.ts.map +0 -1
  2090. package/dist/observers/imminent-event-scheduler.js.map +0 -1
  2091. package/dist/observers/mail-poller.d.ts.map +0 -1
  2092. package/dist/observers/mail-poller.js.map +0 -1
  2093. package/dist/observers/mail-reconciliation.d.ts.map +0 -1
  2094. package/dist/observers/mail-reconciliation.js.map +0 -1
  2095. package/dist/observers/manager.d.ts.map +0 -1
  2096. package/dist/observers/manager.js.map +0 -1
  2097. package/dist/observers/notion-poller.d.ts.map +0 -1
  2098. package/dist/observers/notion-poller.js.map +0 -1
  2099. package/dist/observers/observation-summarizer/index.d.ts.map +0 -1
  2100. package/dist/observers/observation-summarizer/index.js.map +0 -1
  2101. package/dist/observers/observation-summarizer/pre-filter.d.ts.map +0 -1
  2102. package/dist/observers/observation-summarizer/pre-filter.js.map +0 -1
  2103. package/dist/observers/observation-summarizer/response-parser.d.ts.map +0 -1
  2104. package/dist/observers/observation-summarizer/response-parser.js.map +0 -1
  2105. package/dist/observers/observation-summarizer/summarizer-client.d.ts.map +0 -1
  2106. package/dist/observers/observation-summarizer/summarizer-client.js.map +0 -1
  2107. package/dist/observers/observation-summarizer/summarizer-prompts.d.ts.map +0 -1
  2108. package/dist/observers/observation-summarizer/summarizer-prompts.js.map +0 -1
  2109. package/dist/observers/observation-summarizer/worker.d.ts.map +0 -1
  2110. package/dist/observers/observation-summarizer/worker.js.map +0 -1
  2111. package/dist/observers/obsidian-watcher.d.ts.map +0 -1
  2112. package/dist/observers/obsidian-watcher.js.map +0 -1
  2113. package/dist/observers/poll-guard.d.ts.map +0 -1
  2114. package/dist/observers/poll-guard.js.map +0 -1
  2115. package/dist/observers/primary-vault-watcher.d.ts.map +0 -1
  2116. package/dist/observers/primary-vault-watcher.js.map +0 -1
  2117. package/dist/observers/repository-management-cron.d.ts.map +0 -1
  2118. package/dist/observers/repository-management-cron.js.map +0 -1
  2119. package/dist/observers/skill-curation-walker.d.ts.map +0 -1
  2120. package/dist/observers/skill-curation-walker.js.map +0 -1
  2121. package/dist/safety/absolute-block-audit.d.ts.map +0 -1
  2122. package/dist/safety/absolute-block-audit.js.map +0 -1
  2123. package/dist/safety/agent-write-tracker.d.ts.map +0 -1
  2124. package/dist/safety/agent-write-tracker.js.map +0 -1
  2125. package/dist/safety/always-disallowed.d.ts.map +0 -1
  2126. package/dist/safety/always-disallowed.js.map +0 -1
  2127. package/dist/safety/audit.d.ts.map +0 -1
  2128. package/dist/safety/audit.js.map +0 -1
  2129. package/dist/safety/integration-write-tracker.d.ts.map +0 -1
  2130. package/dist/safety/integration-write-tracker.js.map +0 -1
  2131. package/dist/safety/risk-classifier.d.ts.map +0 -1
  2132. package/dist/safety/risk-classifier.js.map +0 -1
  2133. package/dist/safety/subprocess-block-scanner.d.ts.map +0 -1
  2134. package/dist/safety/subprocess-block-scanner.js.map +0 -1
  2135. package/dist/scheduler/hourly-check-gate.d.ts.map +0 -1
  2136. package/dist/scheduler/hourly-check-gate.js.map +0 -1
  2137. package/dist/secrets/backend-api-key-env.d.ts.map +0 -1
  2138. package/dist/secrets/backend-api-key-env.js.map +0 -1
  2139. package/dist/secrets/codex-home-materializer.d.ts.map +0 -1
  2140. package/dist/secrets/codex-home-materializer.js.map +0 -1
  2141. package/dist/secrets/encrypted-blob-store.d.ts.map +0 -1
  2142. package/dist/secrets/encrypted-blob-store.js.map +0 -1
  2143. package/dist/secrets/platform-secret-store.d.ts.map +0 -1
  2144. package/dist/secrets/platform-secret-store.js.map +0 -1
  2145. package/dist/secrets/redaction.d.ts.map +0 -1
  2146. package/dist/secrets/redaction.js.map +0 -1
  2147. package/dist/secrets/secret-broker.d.ts.map +0 -1
  2148. package/dist/secrets/secret-broker.js.map +0 -1
  2149. package/dist/secrets/secret-names.d.ts.map +0 -1
  2150. package/dist/secrets/secret-names.js.map +0 -1
  2151. package/dist/secrets/secret-store.d.ts.map +0 -1
  2152. package/dist/secrets/secret-store.js.map +0 -1
  2153. package/dist/secrets/types.d.ts.map +0 -1
  2154. package/dist/secrets/types.js.map +0 -1
  2155. package/dist/services/apple-calendar/caldav-client.d.ts.map +0 -1
  2156. package/dist/services/apple-calendar/caldav-client.js.map +0 -1
  2157. package/dist/services/apple-calendar/caldav-codec.d.ts.map +0 -1
  2158. package/dist/services/apple-calendar/caldav-codec.js.map +0 -1
  2159. package/dist/services/apple-calendar/index.d.ts.map +0 -1
  2160. package/dist/services/apple-calendar/index.js.map +0 -1
  2161. package/dist/services/apple-calendar/service.d.ts.map +0 -1
  2162. package/dist/services/apple-calendar/service.js.map +0 -1
  2163. package/dist/services/apple-calendar/types.d.ts.map +0 -1
  2164. package/dist/services/apple-calendar/types.js.map +0 -1
  2165. package/dist/services/attachments/hardlink.d.ts.map +0 -1
  2166. package/dist/services/attachments/hardlink.js.map +0 -1
  2167. package/dist/services/attachments/sanitize.d.ts.map +0 -1
  2168. package/dist/services/attachments/sanitize.js.map +0 -1
  2169. package/dist/services/attachments/store.d.ts.map +0 -1
  2170. package/dist/services/attachments/store.js.map +0 -1
  2171. package/dist/services/calendar/outlook/graph-calendar-client.d.ts.map +0 -1
  2172. package/dist/services/calendar/outlook/graph-calendar-client.js.map +0 -1
  2173. package/dist/services/calendar.d.ts.map +0 -1
  2174. package/dist/services/calendar.js.map +0 -1
  2175. package/dist/services/delegated-backend-invoker.d.ts.map +0 -1
  2176. package/dist/services/delegated-backend-invoker.js.map +0 -1
  2177. package/dist/services/delegated-invoker-audit.d.ts.map +0 -1
  2178. package/dist/services/delegated-invoker-audit.js.map +0 -1
  2179. package/dist/services/delegated-invoker-cache-hits.d.ts.map +0 -1
  2180. package/dist/services/delegated-invoker-cache-hits.js.map +0 -1
  2181. package/dist/services/delegated-invoker-janitors.d.ts.map +0 -1
  2182. package/dist/services/delegated-invoker-janitors.js.map +0 -1
  2183. package/dist/services/delegated-invoker-utils.d.ts.map +0 -1
  2184. package/dist/services/delegated-invoker-utils.js.map +0 -1
  2185. package/dist/services/delegated-proxy-config.d.ts.map +0 -1
  2186. package/dist/services/delegated-proxy-config.js.map +0 -1
  2187. package/dist/services/delegated-task-result-cache.d.ts.map +0 -1
  2188. package/dist/services/delegated-task-result-cache.js.map +0 -1
  2189. package/dist/services/delegated-task-runtime.d.ts.map +0 -1
  2190. package/dist/services/delegated-task-runtime.js.map +0 -1
  2191. package/dist/services/delegated-task-session-pool.d.ts.map +0 -1
  2192. package/dist/services/delegated-task-session-pool.js.map +0 -1
  2193. package/dist/services/delegated-tool-runtime.d.ts.map +0 -1
  2194. package/dist/services/delegated-tool-runtime.js.map +0 -1
  2195. package/dist/services/fts5.d.ts.map +0 -1
  2196. package/dist/services/fts5.js.map +0 -1
  2197. package/dist/services/git-account-registry.d.ts.map +0 -1
  2198. package/dist/services/git-account-registry.js.map +0 -1
  2199. package/dist/services/github.d.ts.map +0 -1
  2200. package/dist/services/github.js.map +0 -1
  2201. package/dist/services/gmail-classifier.d.ts.map +0 -1
  2202. package/dist/services/gmail-classifier.js.map +0 -1
  2203. package/dist/services/gmail.d.ts.map +0 -1
  2204. package/dist/services/gmail.js.map +0 -1
  2205. package/dist/services/google-auth.d.ts.map +0 -1
  2206. package/dist/services/google-auth.js.map +0 -1
  2207. package/dist/services/google-maps.d.ts +0 -35
  2208. package/dist/services/google-maps.d.ts.map +0 -1
  2209. package/dist/services/google-maps.js +0 -82
  2210. package/dist/services/google-maps.js.map +0 -1
  2211. package/dist/services/integrations/extract-write-item-id.d.ts.map +0 -1
  2212. package/dist/services/integrations/extract-write-item-id.js.map +0 -1
  2213. package/dist/services/integrations/reconcile.d.ts.map +0 -1
  2214. package/dist/services/integrations/reconcile.js.map +0 -1
  2215. package/dist/services/integrations/snapshot-partitions.d.ts.map +0 -1
  2216. package/dist/services/integrations/snapshot-partitions.js.map +0 -1
  2217. package/dist/services/journal/render.d.ts.map +0 -1
  2218. package/dist/services/journal/render.js.map +0 -1
  2219. package/dist/services/journal/writer.d.ts.map +0 -1
  2220. package/dist/services/journal/writer.js.map +0 -1
  2221. package/dist/services/mail/account-registry.d.ts.map +0 -1
  2222. package/dist/services/mail/account-registry.js.map +0 -1
  2223. package/dist/services/mail/gmail/auth-failure-classifier.d.ts.map +0 -1
  2224. package/dist/services/mail/gmail/auth-failure-classifier.js.map +0 -1
  2225. package/dist/services/mail/gmail/gmail-provider.d.ts.map +0 -1
  2226. package/dist/services/mail/gmail/gmail-provider.js.map +0 -1
  2227. package/dist/services/mail/gmail/legacy-row.d.ts.map +0 -1
  2228. package/dist/services/mail/gmail/legacy-row.js.map +0 -1
  2229. package/dist/services/mail/gmail/poll-cursor.d.ts.map +0 -1
  2230. package/dist/services/mail/gmail/poll-cursor.js.map +0 -1
  2231. package/dist/services/mail/html-to-plaintext.d.ts.map +0 -1
  2232. package/dist/services/mail/html-to-plaintext.js.map +0 -1
  2233. package/dist/services/mail/imap/app-password.d.ts.map +0 -1
  2234. package/dist/services/mail/imap/app-password.js.map +0 -1
  2235. package/dist/services/mail/imap/auth-failure-classifier.d.ts.map +0 -1
  2236. package/dist/services/mail/imap/auth-failure-classifier.js.map +0 -1
  2237. package/dist/services/mail/imap/capabilities.d.ts.map +0 -1
  2238. package/dist/services/mail/imap/capabilities.js.map +0 -1
  2239. package/dist/services/mail/imap/client.d.ts.map +0 -1
  2240. package/dist/services/mail/imap/client.js.map +0 -1
  2241. package/dist/services/mail/imap/cursor.d.ts.map +0 -1
  2242. package/dist/services/mail/imap/cursor.js.map +0 -1
  2243. package/dist/services/mail/imap/folder-resolver.d.ts.map +0 -1
  2244. package/dist/services/mail/imap/folder-resolver.js.map +0 -1
  2245. package/dist/services/mail/imap/icloud-provider.d.ts.map +0 -1
  2246. package/dist/services/mail/imap/icloud-provider.js.map +0 -1
  2247. package/dist/services/mail/imap/imap-provider-base.d.ts.map +0 -1
  2248. package/dist/services/mail/imap/imap-provider-base.js.map +0 -1
  2249. package/dist/services/mail/imap/query-translator.d.ts.map +0 -1
  2250. package/dist/services/mail/imap/query-translator.js.map +0 -1
  2251. package/dist/services/mail/imap/reconcile-planner.d.ts.map +0 -1
  2252. package/dist/services/mail/imap/reconcile-planner.js.map +0 -1
  2253. package/dist/services/mail/imap/reply-mime.d.ts.map +0 -1
  2254. package/dist/services/mail/imap/reply-mime.js.map +0 -1
  2255. package/dist/services/mail/imap/yahoo-provider.d.ts.map +0 -1
  2256. package/dist/services/mail/imap/yahoo-provider.js.map +0 -1
  2257. package/dist/services/mail/mail-search.d.ts.map +0 -1
  2258. package/dist/services/mail/mail-search.js.map +0 -1
  2259. package/dist/services/mail/outlook/auth-failure-classifier.d.ts.map +0 -1
  2260. package/dist/services/mail/outlook/auth-failure-classifier.js.map +0 -1
  2261. package/dist/services/mail/outlook/client-config.d.ts.map +0 -1
  2262. package/dist/services/mail/outlook/client-config.js.map +0 -1
  2263. package/dist/services/mail/outlook/delta-cursor.d.ts.map +0 -1
  2264. package/dist/services/mail/outlook/delta-cursor.js.map +0 -1
  2265. package/dist/services/mail/outlook/graph-client.d.ts.map +0 -1
  2266. package/dist/services/mail/outlook/graph-client.js.map +0 -1
  2267. package/dist/services/mail/outlook/msal-app-factory.d.ts.map +0 -1
  2268. package/dist/services/mail/outlook/msal-app-factory.js.map +0 -1
  2269. package/dist/services/mail/outlook/msal-cache-plugin.d.ts.map +0 -1
  2270. package/dist/services/mail/outlook/msal-cache-plugin.js.map +0 -1
  2271. package/dist/services/mail/outlook/oauth-device-code.d.ts.map +0 -1
  2272. package/dist/services/mail/outlook/oauth-device-code.js.map +0 -1
  2273. package/dist/services/mail/outlook/oauth-loopback.d.ts.map +0 -1
  2274. package/dist/services/mail/outlook/oauth-loopback.js.map +0 -1
  2275. package/dist/services/mail/outlook/outlook-provider.d.ts.map +0 -1
  2276. package/dist/services/mail/outlook/outlook-provider.js.map +0 -1
  2277. package/dist/services/mail/outlook/query-translator.d.ts.map +0 -1
  2278. package/dist/services/mail/outlook/query-translator.js.map +0 -1
  2279. package/dist/services/mail/provider.d.ts.map +0 -1
  2280. package/dist/services/mail/provider.js.map +0 -1
  2281. package/dist/services/mail/query-utils.d.ts.map +0 -1
  2282. package/dist/services/mail/query-utils.js.map +0 -1
  2283. package/dist/services/mail-classifier.d.ts.map +0 -1
  2284. package/dist/services/mail-classifier.js.map +0 -1
  2285. package/dist/services/mail-ingestion.d.ts.map +0 -1
  2286. package/dist/services/mail-ingestion.js.map +0 -1
  2287. package/dist/services/mcp/auto-probe.d.ts.map +0 -1
  2288. package/dist/services/mcp/auto-probe.js.map +0 -1
  2289. package/dist/services/mcp/generators/claude.d.ts.map +0 -1
  2290. package/dist/services/mcp/generators/claude.js.map +0 -1
  2291. package/dist/services/mcp/generators/codex.d.ts.map +0 -1
  2292. package/dist/services/mcp/generators/codex.js.map +0 -1
  2293. package/dist/services/mcp/generators/gemini.d.ts.map +0 -1
  2294. package/dist/services/mcp/generators/gemini.js.map +0 -1
  2295. package/dist/services/mcp/generators/index.d.ts.map +0 -1
  2296. package/dist/services/mcp/generators/index.js.map +0 -1
  2297. package/dist/services/mcp/generators/types.d.ts.map +0 -1
  2298. package/dist/services/mcp/generators/types.js.map +0 -1
  2299. package/dist/services/mcp/probe.d.ts.map +0 -1
  2300. package/dist/services/mcp/probe.js.map +0 -1
  2301. package/dist/services/mcp/registry.d.ts.map +0 -1
  2302. package/dist/services/mcp/registry.js.map +0 -1
  2303. package/dist/services/mcp/risk.d.ts.map +0 -1
  2304. package/dist/services/mcp/risk.js.map +0 -1
  2305. package/dist/services/mcp/sdk-observations-server.d.ts.map +0 -1
  2306. package/dist/services/mcp/sdk-observations-server.js.map +0 -1
  2307. package/dist/services/mcp/session-materializer.d.ts.map +0 -1
  2308. package/dist/services/mcp/session-materializer.js.map +0 -1
  2309. package/dist/services/mcp/tool-audit.d.ts.map +0 -1
  2310. package/dist/services/mcp/tool-audit.js.map +0 -1
  2311. package/dist/services/mcp/types.d.ts.map +0 -1
  2312. package/dist/services/mcp/types.js.map +0 -1
  2313. package/dist/services/notion.d.ts.map +0 -1
  2314. package/dist/services/notion.js.map +0 -1
  2315. package/dist/services/observations-batch.d.ts.map +0 -1
  2316. package/dist/services/observations-batch.js.map +0 -1
  2317. package/dist/services/obsidian.d.ts.map +0 -1
  2318. package/dist/services/obsidian.js.map +0 -1
  2319. package/dist/services/service-registry.d.ts.map +0 -1
  2320. package/dist/services/service-registry.js.map +0 -1
  2321. package/dist/services/voice/transcriber-impl.d.ts.map +0 -1
  2322. package/dist/services/voice/transcriber-impl.js.map +0 -1
  2323. package/dist/services/voice/transcriber.d.ts.map +0 -1
  2324. package/dist/services/voice/transcriber.js.map +0 -1
  2325. package/dist/settings/runtime-settings.d.ts.map +0 -1
  2326. package/dist/settings/runtime-settings.js.map +0 -1
  2327. package/dist/settings/settings-store.d.ts.map +0 -1
  2328. package/dist/settings/settings-store.js.map +0 -1
@@ -1,1624 +0,0 @@
1
- import { Hono } from "hono";
2
- import { BACKEND_IDS, DELEGATED_TASK_HARD_CAPS, INTEGRATION_DESCRIPTORS, INTEGRATION_KEYS, filterDeniedToolsForBackend, integrationPatchSchema, isIntegrationKey, recommendedStarterDeniedTools, supportedNativeBackends, validateDeniedTools, } from "@aitne/shared";
3
- // `matchToolPattern` and `mapErrorClassToHttpStatus` were used by the
4
- // dormant `/invoke` route reservation block-commented at lines ~708-896.
5
- // They are removed from the import list because eslint flags them as
6
- // unused; re-add when un-commenting that block.
7
- import { checkOutputSchema } from "../../services/delegated-task-runtime.js";
8
- import { readIntegrations, updateIntegrationState, } from "../../db/integrations-store.js";
9
- import { writeManagementMd } from "../../core/management-md.js";
10
- import { missingDelegatedVariants, missingNativeVariants, } from "../../core/skills-compiler.js";
11
- import { acquireIntegrationFlipLock, releaseIntegrationFlipLock, } from "../../core/integration-lifecycle.js";
12
- import { readMainBackend } from "../../core/integration-main-backend.js";
13
- import { evaluateProbe, getConnector, makeUserManagedProbeResult, } from "../../core/integration-probe.js";
14
- import { LiveProbeUnsupportedError } from "../../core/agent-core.js";
15
- import { deleteProbesForIntegration, readProbe, writeProbe, } from "../../db/integration-probe-store.js";
16
- import { knownProxyModels, listProxyModelOptions, proxyModelIsKnown, resolveCanonicalDelegatedModel, } from "../../core/backends/proxy-model-registry.js";
17
- import { readJsonBody } from "../json-body.js";
18
- import { createLogger } from "../../logging.js";
19
- import { composeIssue, respondWithAgentError } from "../helpers/agent-errors.js";
20
- import { extractWriteItemIds } from "../../services/integrations/extract-write-item-id.js";
21
- import { markIntegrationWrite } from "../../safety/integration-write-tracker.js";
22
- import { createSettingsStore } from "../../settings/settings-store.js";
23
- const logger = createLogger("integrations-api");
24
- /**
25
- * Integration Delegation Framework — `/api/integrations` routes.
26
- *
27
- * Surface:
28
- * - `GET /api/integrations` — list every registered integration with its
29
- * descriptor metadata and current state.
30
- * - `PATCH /api/integrations/:key` — change a single integration's mode.
31
- * Runs the full lifecycle: validate → flip-lock acquire → §14.7 probe →
32
- * DB update → `integrations.md` re-render → running-session
33
- * re-materialisation → audit row → flip-lock release.
34
- * - `POST /api/integrations/:key/probe` — descriptor + cached + live
35
- * probe paths (`docs/design/14-integration-delegation.md` §14.7).
36
- * - `POST /api/integrations/:key/exec` — cross-backend delegated proxy
37
- * (DELEGATED-MODE-V2-DESIGN.md §11 / `docs/design/14-integration-delegation.md` §14.4.5).
38
- * - Observer gating, the route-410 middleware (`integration-route-gate.ts`),
39
- * skill / task-flow variant selection, and the connector probe are all
40
- * production paths — not "later phases" as earlier versions of this
41
- * docstring suggested.
42
- *
43
- * Mode model. `IntegrationMode = "direct" | "delegated" | "native" | "disabled"`.
44
- * - `direct` — daemon poller + `/api/<integration>/*` daemon routes.
45
- * - `delegated` — `delegated-sync-worker` cadences + `/exec` proxy.
46
- * - `native` — main backend reaches the integration via its own native
47
- * MCP / connector; daemon does no polling. Per-tick data acquisition
48
- * for routines (morning / evening / hourly / weekly / monthly) runs in a
49
- * separate pre-pass session on the `routine.fetch_window` ProcessKey
50
- * and POSTs observations to `/api/observations`. See
51
- * [`ROUTINE_DATA_ACQUISITION_DESIGN.md`](../../../../ROUTINE_DATA_ACQUISITION_DESIGN.md)
52
- * for the per-routine × per-integration acquisition contract — earlier
53
- * versions of the codebase relied on the agent encountering 410 at
54
- * runtime to discover that an integration was unreachable via daemon
55
- * routes; that wart is replaced by the partials-based plan rendered
56
- * into every routine session's prompt.
57
- * - `disabled` — silence. Routes 410 with `X-Integration-Mode: disabled`.
58
- *
59
- * User-managed connectors (`descriptor.userManagedConnector === true`,
60
- * today `outlook_mail` / `outlook_calendar`) skip the descriptor-driven
61
- * variant gates: there is no daemon-shipped `SKILL.<mode>.<backend>.md`
62
- * for them, and routine-side acquisition flows through the per-integration
63
- * partial (RDAD §6.8) rather than a variant fan-out.
64
- *
65
- * Risk tier: Approve (dashboard-only mutation, registered in
66
- * `risk-classifier.ts`).
67
- */
68
- export function createIntegrationRoutes(deps) {
69
- const app = new Hono();
70
- const { db, config } = deps;
71
- app.get("/integrations", (c) => {
72
- const state = readIntegrations(db);
73
- const integrations = INTEGRATION_KEYS.map((key) => {
74
- const descriptor = INTEGRATION_DESCRIPTORS[key];
75
- return {
76
- key: descriptor.key,
77
- displayName: descriptor.displayName,
78
- supportedModes: descriptor.supportedModes,
79
- directSetup: descriptor.directSetup ?? null,
80
- backendConnectors: descriptor.backendConnectors,
81
- skillsTouched: descriptor.skillsTouched,
82
- taskFlowsTouched: descriptor.taskFlowsTouched,
83
- observersTouched: descriptor.observersTouched,
84
- apiRoutesTouched: descriptor.apiRoutesTouched,
85
- userManagedConnector: descriptor.userManagedConnector ?? false,
86
- state: state[key],
87
- };
88
- });
89
- return c.json({ integrations });
90
- });
91
- // DELEGATED-PROXY-API-DESIGN.md §7 — last N delegated-proxy invocations for
92
- // an integration. Drives the IntegrationCard's "Recent calls" collapsible
93
- // table so the user can spot slow / failing connectors without leaving the
94
- // /connections page. Daemon-side filter (rather than dashboard reading the
95
- // generic cost table and post-filtering) because:
96
- // - integrationKey lives inside `detail` JSON; SQLite-side JSON1 extract
97
- // keeps the response payload small and skips the parent-event noise.
98
- // - cost.ts dashboards already aggregate; a per-integration debug view
99
- // belongs alongside the integration's other state for cohesion.
100
- //
101
- // Limit defaults to 50 (the design's stated cap), bounded at 200 so a
102
- // typo-driven `?limit=99999` cannot DoS the response.
103
- app.get("/integrations/:key/recent-proxy-calls", (c) => {
104
- const key = c.req.param("key");
105
- if (!isIntegrationKey(key)) {
106
- return respondWithAgentError(c, 404, [
107
- composeIssue("integrations.unknown_integration", {
108
- field: "key",
109
- received: key,
110
- }),
111
- ], { legacyFields: { key } });
112
- }
113
- const rawLimit = c.req.query("limit");
114
- let limit = 50;
115
- if (rawLimit !== undefined) {
116
- const parsed = Number.parseInt(rawLimit, 10);
117
- if (!Number.isFinite(parsed) || parsed < 1) {
118
- return respondWithAgentError(c, 400, [
119
- composeIssue("integrations.invalid_limit", {
120
- field: "limit",
121
- received: rawLimit,
122
- }),
123
- ], {
124
- legacyFields: {
125
- message: "limit must be a positive integer (default 50, max 200)",
126
- },
127
- });
128
- }
129
- limit = Math.min(parsed, 200);
130
- }
131
- const rows = db
132
- .prepare(`SELECT id, started_at, completed_at, model_used, backend,
133
- cost_usd, tokens_input, tokens_output, duration_ms,
134
- num_turns, result, error, detail
135
- FROM agent_actions
136
- WHERE action_type = 'delegated_proxy.invoke'
137
- AND json_extract(detail, '$.integrationKey') = ?
138
- ORDER BY id DESC
139
- LIMIT ?`)
140
- .all(key, limit);
141
- const calls = rows.map((row) => {
142
- /* c8 ignore next -- sql WHERE json_extract filters out rows with null detail */
143
- const detail = row.detail ? safeParseJson(row.detail) : null;
144
- return {
145
- id: row.id,
146
- startedAt: row.started_at,
147
- completedAt: row.completed_at,
148
- modelId: row.model_used,
149
- backend: row.backend,
150
- costUsd: row.cost_usd,
151
- tokensInput: row.tokens_input,
152
- tokensOutput: row.tokens_output,
153
- durationMs: row.duration_ms,
154
- numTurns: row.num_turns,
155
- result: row.result,
156
- // detail.errorClass is the structured DelegatedErrorClass when the
157
- // call failed inside the proxy pipeline (auth_error, no_tool_call,
158
- // etc.). detail.toolName is always present. We surface both so the
159
- // table can render a human label without re-parsing on the client.
160
- errorClass: detail?.errorClass ?? null,
161
- toolName: detail?.toolName ?? null,
162
- errorMessage: row.error,
163
- };
164
- });
165
- return c.json({
166
- key,
167
- limit,
168
- calls,
169
- });
170
- });
171
- // DELEGATED-PROXY-API-DESIGN.md §6.1 / §7 — list known proxy-model options
172
- // for a backend (registered + custom-pinned). Drives the dashboard model
173
- // dropdown so the daemon stays the source of truth for the registered
174
- // model surface; clients don't need to keep their own registry mirror.
175
- app.get("/integrations/proxy-models/:backend", (c) => {
176
- const backend = c.req.param("backend");
177
- if (!BACKEND_IDS.includes(backend)) {
178
- return c.json({
179
- error: "invalid_backend",
180
- message: `Unknown backend '${backend}'.`,
181
- supportedBackends: BACKEND_IDS,
182
- }, 400);
183
- }
184
- const backendId = backend;
185
- const options = listProxyModelOptions(backendId);
186
- const canonical = resolveCanonicalDelegatedModel(backendId, db);
187
- return c.json({
188
- backend: backendId,
189
- canonical,
190
- options,
191
- });
192
- });
193
- app.patch("/integrations/:key", async (c) => {
194
- const key = c.req.param("key");
195
- if (!isIntegrationKey(key)) {
196
- return respondWithAgentError(c, 404, [
197
- composeIssue("integrations.unknown_integration", {
198
- field: "key",
199
- received: key,
200
- }),
201
- ], { legacyFields: { key } });
202
- }
203
- const parsedBody = await readJsonBody(c);
204
- if (!parsedBody.ok)
205
- return parsedBody.response;
206
- const parsed = integrationPatchSchema.safeParse(parsedBody.body);
207
- if (!parsed.success) {
208
- return c.json({
209
- error: "validation_error",
210
- issues: parsed.error.issues.map((i) => ({
211
- path: i.path,
212
- message: i.message,
213
- })),
214
- }, 400);
215
- }
216
- const descriptor = INTEGRATION_DESCRIPTORS[key];
217
- if (!descriptor.supportedModes.includes(parsed.data.mode)) {
218
- return c.json({
219
- error: "unsupported_mode",
220
- key,
221
- mode: parsed.data.mode,
222
- supportedModes: descriptor.supportedModes,
223
- }, 400);
224
- }
225
- const previous = readIntegrations(db)[key];
226
- // Compute the side-effect-relevant flags up-front:
227
- // - modeChanged: probe-cache eviction + lifecycle observer flip + variants
228
- // gate all key off this. A pure deniedTools edit must NOT trigger any of
229
- // them — those are mode-change concerns.
230
- // - effectiveBackend: which backend the post-PATCH state will run against
231
- // in `delegated` mode. Used for both the missing-variants gate and the
232
- // deniedTools validator. If the user omits delegatedBackend on a
233
- // delegated→delegated edit (e.g. just toggling tool permissions), we
234
- // keep the previous backend.
235
- // - effectiveNativeBackend: same shape for `native` mode
236
- // (INTEGRATION_NATIVE_MODE_DESIGN.md §11.2). Validated against the
237
- // current main backend below.
238
- const modeChanged = parsed.data.mode !== previous.mode
239
- || (parsed.data.delegatedBackend ?? null) !==
240
- (previous.delegatedBackend ?? null)
241
- || (parsed.data.nativeBackend ?? null) !==
242
- (previous.nativeBackend ?? null);
243
- const effectiveBackend = parsed.data.mode === "delegated"
244
- ? (parsed.data.delegatedBackend ?? previous.delegatedBackend ?? null)
245
- : null;
246
- const effectiveNativeBackend = parsed.data.mode === "native"
247
- ? (parsed.data.nativeBackend ?? previous.nativeBackend ?? null)
248
- : null;
249
- // INTEGRATION_NATIVE_MODE_DESIGN.md §11.2 — `native` mode validation.
250
- // Runs BEFORE the delegated-mode validation block because native and
251
- // delegated are mutually exclusive: a single PATCH cannot ask for both.
252
- // The schema's `superRefine` already rejects co-occurring fields, but
253
- // the explicit branch here surfaces a clearer error and runs the live
254
- // probe + variant-file gate.
255
- if (parsed.data.mode === "native") {
256
- if (!effectiveNativeBackend) {
257
- return c.json({
258
- error: "validation_error",
259
- issues: [
260
- {
261
- path: ["nativeBackend"],
262
- message: "nativeBackend is required when mode is 'native'",
263
- },
264
- ],
265
- }, 400);
266
- }
267
- const supported = supportedNativeBackends(key);
268
- if (!supported.includes(effectiveNativeBackend)) {
269
- // Descriptor-driven integrations only — user-managed descriptors
270
- // pass automatically because `supportedNativeBackends` returns
271
- // every registered backend for them (INTEGRATION_NATIVE_MODE_DESIGN.md
272
- // §5.3 2026-05 amendment).
273
- return c.json({
274
- error: "backend_not_supported_native",
275
- key,
276
- backend: effectiveNativeBackend,
277
- supportedNativeBackends: supported,
278
- message: `Backend '${effectiveNativeBackend}' has no native connector for '${key}'. Native mode for this integration is offered only on backends that ship a registry connector.`,
279
- }, 400);
280
- }
281
- // §3.3 invariant: native binds to the main backend. The setup wizard
282
- // will hide the Native option entirely when the main backend doesn't
283
- // appear in `supportedNativeBackends(key)`; this check is the API-
284
- // layer defense against an out-of-band PATCH (CLI / curl).
285
- const mainBackend = readMainBackend(db);
286
- if (mainBackend !== null && effectiveNativeBackend !== mainBackend) {
287
- return c.json({
288
- error: "native_backend_mismatches_main",
289
- key,
290
- nativeBackend: effectiveNativeBackend,
291
- mainBackend,
292
- message: `Native mode binds to the main backend (${mainBackend}); refusing to set nativeBackend='${effectiveNativeBackend}'. Switch the main backend first (PUT /api/backends/main) or pick a different mode.`,
293
- }, 400);
294
- }
295
- // §7.4 / §8.5 missing-variant gate. Only re-runs when this is an
296
- // actual mode/binding change (a pure annotation PATCH on an already-
297
- // native row leaves the variant set unchanged).
298
- //
299
- // User-managed connector integrations (e.g. Outlook) skip the
300
- // descriptor-driven variant check — there is no daemon-shipped
301
- // `SKILL.native.<backend>.md` for them. The user's MCP / skill
302
- // harness on their backend is the authority, mirroring the
303
- // delegated-mode path above. §5.3 (2026-05 amendment).
304
- if (modeChanged && !descriptor.userManagedConnector) {
305
- const missing = missingNativeVariants(config.workspaceDir, key, effectiveNativeBackend);
306
- if (missing.skills.length > 0 || missing.taskFlows.length > 0) {
307
- return c.json({
308
- error: "missing_variants",
309
- key,
310
- backend: effectiveNativeBackend,
311
- mode: "native",
312
- missingSkills: missing.skills,
313
- missingTaskFlows: missing.taskFlows,
314
- message: `Cannot enter native mode for '${key}' on backend '${effectiveNativeBackend}' — ${missing.skills.length + missing.taskFlows.length} variant file(s) missing. Phase B1 stubs every supported native variant; rebuild the package if your tree is stale.`,
315
- }, 400);
316
- }
317
- }
318
- }
319
- if (parsed.data.mode === "delegated") {
320
- if (!effectiveBackend) {
321
- return c.json({
322
- error: "validation_error",
323
- issues: [{
324
- path: ["delegatedBackend"],
325
- message: "delegatedBackend is required when mode is 'delegated'",
326
- }],
327
- }, 400);
328
- }
329
- // User-managed connector integrations (e.g. Outlook) skip the
330
- // descriptor-driven connector check and the variant gate: the user
331
- // installs an Outlook / Microsoft Graph MCP on their selected
332
- // backend (Claude Code Connector / Codex MCP / Gemini extension)
333
- // and the daemon trusts that wiring. Capability probing is the
334
- // user's responsibility on the backend side.
335
- if (!descriptor.userManagedConnector) {
336
- if (!descriptor.backendConnectors[effectiveBackend]) {
337
- return c.json({
338
- error: "backend_not_supported",
339
- key,
340
- backend: effectiveBackend,
341
- availableBackends: Object.keys(descriptor.backendConnectors),
342
- }, 400);
343
- }
344
- // §4.7 "Missing-variant policy" — only re-run the gate when the user
345
- // is actually changing mode or backend. A pure deniedTools edit on an
346
- // already-delegated integration leaves the variant set unchanged, so
347
- // re-walking the file system would be wasted work AND would surface a
348
- // stale-during-author error if a variant was momentarily missing.
349
- //
350
- // DELEGATED-MODE-V2-DESIGN.md §11 (Phase 3) re-activated the
351
- // legacy variant gate for every delegated integration. gmail and
352
- // google_calendar now ship `SKILL.delegated.<sessionBackend>.md`
353
- // (cross-backend) and resolve to `null` for same-backend, so
354
- // missing variants are a real configuration error.
355
- if (modeChanged) {
356
- const missing = missingDelegatedVariants(config.workspaceDir, key, effectiveBackend);
357
- if (missing.skills.length > 0 || missing.taskFlows.length > 0) {
358
- return c.json({
359
- error: "missing_variants",
360
- key,
361
- backend: effectiveBackend,
362
- missingSkills: missing.skills,
363
- missingTaskFlows: missing.taskFlows,
364
- message: `Cannot enter delegated mode for '${key}' on backend '${effectiveBackend}' — ${missing.skills.length + missing.taskFlows.length} variant file(s) missing. Author the listed files or narrow the registry's skillsTouched / taskFlowsTouched before retrying.`,
365
- }, 400);
366
- }
367
- }
368
- }
369
- }
370
- // DELEGATED-PROXY-API-DESIGN.md §6.1 — `delegatedModel` validation.
371
- // The schema rejects empty strings already; here we additionally
372
- // reject values that don't appear in the registered model list for
373
- // the effective backend (or in user-pinned `process_backend_config`
374
- // rows for the same backend, per §4.2's "trust custom pins" rule).
375
- // The value is *allowed* on any mode so the user can pre-stage a pin
376
- // before flipping to delegated; validation only runs when we have a
377
- // backend to validate against.
378
- if (parsed.data.delegatedModel !== undefined
379
- && parsed.data.delegatedModel !== null
380
- && effectiveBackend) {
381
- const candidate = parsed.data.delegatedModel;
382
- if (!proxyModelIsKnown(db, effectiveBackend, candidate)) {
383
- return c.json({
384
- error: "unknown_model",
385
- key,
386
- backend: effectiveBackend,
387
- model: candidate,
388
- knownModels: knownProxyModels(db, effectiveBackend),
389
- message: `Model '${candidate}' is not registered for backend '${effectiveBackend}'. Pick one of the known models or pass null to use the canonical light-tier default.`,
390
- }, 400);
391
- }
392
- }
393
- // §7.7 — `deniedTools` validation. We accept the field on any mode so
394
- // the user can pre-stage a deny list before flipping to delegated, but
395
- // validation only runs against the effective backend when one exists.
396
- // For non-delegated modes, deniedTools persists as-is (no live backend
397
- // to validate against — the value is inert until delegated).
398
- //
399
- // DELEGATED-MODE-V2-DESIGN.md §4.5.4 — first-time delegated setup
400
- // pre-populates `deniedTools` with the recommended starter list when
401
- // the caller didn't supply one (PATCH omits the field). This keeps the
402
- // CLAUDE.md "destructive ops require user confirmation" invariant
403
- // intact on a fresh install. The user opts out explicitly by passing
404
- // `deniedTools: []` (empty array, distinct from undefined).
405
- //
406
- // The starter floor fires in two distinct shapes — both arrive at an
407
- // effectively-empty deny set after the PATCH and would otherwise leave
408
- // the agent unconstrained:
409
- //
410
- // (a) Entering delegated mode for the first time on this integration
411
- // (previous mode was direct/disabled) AND no curated list was
412
- // already pre-staged — re-entry from disabled with prior denies
413
- // kept means the user already curated, don't overwrite.
414
- //
415
- // (b) Backend swap (delegated → delegated, different `delegatedBackend`)
416
- // where every entry in `previous.deniedTools` is namespace-stale on
417
- // the new backend. The user's curation referenced tools the new
418
- // connector doesn't expose (e.g. Claude's `label_message` carried
419
- // into a Codex session), so the materializer's stale-drop pass
420
- // would empty the disallowedTools array silently — closing the
421
- // same §4.5.4 floor the design wrote (a) to defend. The original
422
- // design framed §4.5.4 as "first delegated setup only" and missed
423
- // this case; surfaced during the 2026-04-26 implementation review.
424
- //
425
- // The wizard UI for the opt-out / "use recommended" / "I'll edit"
426
- // branches is Phase 4 polish (see §Phase 4.2). For now the API default
427
- // closes the safety floor; the dashboard editor card surfaces the
428
- // populated list for editing.
429
- const enteringDelegated = parsed.data.mode === "delegated" && previous.mode !== "delegated";
430
- const omittedDeniedTools = parsed.data.deniedTools === undefined;
431
- const previousDeniedToolsEmpty = (previous.deniedTools ?? []).length === 0;
432
- const swappingDelegatedBackend = parsed.data.mode === "delegated"
433
- && previous.mode === "delegated"
434
- && effectiveBackend !== null
435
- && previous.delegatedBackend !== undefined
436
- && previous.delegatedBackend !== effectiveBackend;
437
- // For shape (b): the previous list had at least one entry (otherwise the
438
- // floor was already empty and shape (a)'s logic doesn't apply here either),
439
- // and *every* entry is stale on the new backend.
440
- const swapWipesAllDenies = swappingDelegatedBackend
441
- && (previous.deniedTools ?? []).length > 0
442
- && filterDeniedToolsForBackend(key, effectiveBackend,
443
- /* c8 ignore next -- ?? [] unreachable: length > 0 guard above ensures non-empty array */
444
- previous.deniedTools ?? []).active.length === 0;
445
- const useStarter = effectiveBackend !== null
446
- && omittedDeniedTools
447
- && ((enteringDelegated && previousDeniedToolsEmpty)
448
- || swapWipesAllDenies);
449
- const finalDeniedTools = useStarter
450
- ? recommendedStarterDeniedTools(key, effectiveBackend)
451
- : parsed.data.deniedTools !== undefined
452
- ? parsed.data.deniedTools
453
- : (previous.deniedTools ?? []);
454
- if (useStarter && finalDeniedTools.length > 0) {
455
- logger.info({
456
- key,
457
- backend: effectiveBackend,
458
- starter: finalDeniedTools,
459
- // Distinguish the two shapes so log readers can spot the
460
- // backend-swap fallback separately from first-time setup.
461
- // `enteringDelegated` covers shape (a); `swapWipesAllDenies`
462
- // covers shape (b). They are mutually exclusive by construction
463
- // (a requires `previous.mode !== "delegated"`, b requires
464
- // `previous.mode === "delegated"`).
465
- trigger: enteringDelegated ? "first_delegated" : "backend_swap_stale",
466
- previousBackend: swappingDelegatedBackend
467
- ? previous.delegatedBackend
468
- : null,
469
- }, "applied starter deniedTools floor");
470
- }
471
- if (effectiveBackend && parsed.data.deniedTools !== undefined) {
472
- const result = validateDeniedTools(key, effectiveBackend, finalDeniedTools);
473
- if (!result.ok) {
474
- if (result.error === "unknown_tool") {
475
- return c.json({
476
- error: "unknown_tool",
477
- key,
478
- backend: effectiveBackend,
479
- tool: result.tool,
480
- knownTools: result.knownTools,
481
- message: `Tool '${result.tool}' is not declared in the ${effectiveBackend} connector for '${key}'. Pick a tool from the descriptor's capability list.`,
482
- }, 400);
483
- }
484
- if (result.error === "denial_breaks_required_capability") {
485
- return c.json({
486
- error: "denial_breaks_required_capability",
487
- key,
488
- backend: effectiveBackend,
489
- capability: result.capability,
490
- remainingTools: result.remainingTools,
491
- message: `Denying these tools removes the only path for required capability '${result.capability}'. Keep at least one of: ${result.remainingTools.join(", ")}.`,
492
- }, 400);
493
- }
494
- // "no_connector" should be unreachable — we already validated
495
- // `descriptor.backendConnectors[effectiveBackend]` above. Map to a
496
- // 500 rather than a 400 because it indicates a server-side mismatch.
497
- return respondWithAgentError(c, 500, [
498
- composeIssue("integrations.internal_error", {
499
- field: "<server>",
500
- received: "<connector_mismatch>",
501
- }),
502
- ]);
503
- }
504
- }
505
- // DELEGATED-PROXY-API-DESIGN.md §4.2 — `delegatedModel` carry-over
506
- // rules:
507
- // - PATCH omits the field → preserve previous value (mode-flip
508
- // idempotent: direct ↔ delegated keeps the pin).
509
- // - PATCH passes `null` → clear the pin (canonical fallback at
510
- // call time). Surfaced by the dashboard's "Reset to default"
511
- // affordance after a backend swap.
512
- // - PATCH passes a non-empty string → validated above and stored.
513
- // Same shape for `delegatedMaxTurns` (forward-compat — no UI yet).
514
- const finalDelegatedModel = parsed.data.delegatedModel === undefined
515
- ? (previous.delegatedModel ?? null)
516
- : parsed.data.delegatedModel;
517
- const finalDelegatedMaxTurns = parsed.data.delegatedMaxTurns === undefined
518
- ? (previous.delegatedMaxTurns ?? null)
519
- : parsed.data.delegatedMaxTurns;
520
- const finalDelegatedSyncEnabled = parsed.data.delegatedSyncEnabled === undefined
521
- ? previous.delegatedSyncEnabled
522
- : parsed.data.delegatedSyncEnabled;
523
- // INTEGRATION_NATIVE_MODE_DESIGN.md §19.4 — mirror of the delegated
524
- // collapse: PATCH omits → preserve previous; PATCH passes a boolean
525
- // → store. Accepted in any mode so the operator can pre-stage the
526
- // setting before flipping `mode = "native"`.
527
- const finalNativeSyncEnabled = parsed.data.nativeSyncEnabled === undefined
528
- ? previous.nativeSyncEnabled
529
- : parsed.data.nativeSyncEnabled;
530
- const stamped = new Date().toISOString();
531
- // INTEGRATION_NATIVE_MODE_DESIGN.md §11.3.1 — flip-lock orchestration.
532
- // Only acquired when the mode or a backend binding is changing; pure
533
- // annotation edits (deniedTools / delegatedModel) on an already-correct
534
- // row don't need the lock because no observer / worker / session needs
535
- // to drain. A concurrent flip on the same key (parallel PATCH from
536
- // CLI + dashboard) is rejected with 409.
537
- let flipLockHeld = false;
538
- if (modeChanged) {
539
- const acquire = acquireIntegrationFlipLock(db, key);
540
- if (!acquire.ok) {
541
- // §11.3.1 — concurrent flip on the same key. The expected hold
542
- // window is short (probe + drain are both bounded by the 5s
543
- // tick boundary), so signal the retry interval explicitly via
544
- // `Retry-After`. Standards-compliant clients (and the dashboard's
545
- // mode-dialog) honor this; the message body keeps the hold
546
- // metadata for forensics.
547
- c.header("Retry-After", "5");
548
- return c.json({
549
- error: "integration_flip_in_progress",
550
- key,
551
- heldBy: acquire.current,
552
- retryAfterSeconds: 5,
553
- message: `A mode flip for '${key}' is already in progress (acquired ${acquire.current.acquiredAt} by pid ${acquire.current.processId}). Retry in a few seconds.`,
554
- }, 409);
555
- }
556
- flipLockHeld = true;
557
- }
558
- try {
559
- const next = updateIntegrationState(db, key, {
560
- mode: parsed.data.mode,
561
- // Only carry delegatedBackend when mode is delegated. The schema
562
- // already enforces presence in that branch (superRefine), so a
563
- // direct/disabled flip drops it cleanly. Don't fall back to the
564
- // previous value here — that breaks the delegated → direct path
565
- // (the integration would keep its old backend forever).
566
- ...(parsed.data.mode === "delegated" && parsed.data.delegatedBackend
567
- ? { delegatedBackend: parsed.data.delegatedBackend }
568
- : {}),
569
- // INTEGRATION_NATIVE_MODE_DESIGN.md §5.2 — same shape for the
570
- // nativeBackend column. Schema's `superRefine` enforces mutual
571
- // exclusion with `delegatedBackend`.
572
- ...(parsed.data.mode === "native" && effectiveNativeBackend
573
- ? { nativeBackend: effectiveNativeBackend }
574
- : {}),
575
- // Always persist the resolved delegatedModel/delegatedMaxTurns —
576
- // null clears, undefined was already collapsed above to the
577
- // previous value or null. Keeps the JSON blob shape stable
578
- // across PATCHes even when the field is inert (mode !== delegated).
579
- ...(finalDelegatedModel !== null
580
- ? { delegatedModel: finalDelegatedModel }
581
- : {}),
582
- ...(finalDelegatedMaxTurns !== null
583
- ? { delegatedMaxTurns: finalDelegatedMaxTurns }
584
- : {}),
585
- ...(finalDelegatedSyncEnabled === false
586
- ? { delegatedSyncEnabled: false }
587
- : {}),
588
- ...(finalNativeSyncEnabled === false
589
- ? { nativeSyncEnabled: false }
590
- : {}),
591
- deniedTools: finalDeniedTools,
592
- lastChangedAt: stamped,
593
- });
594
- await writeManagementMd(config.dataDir, next, {
595
- externalObsidianVaultPath: config.externalObsidianVaultPath,
596
- externalObsidianWatch: config.externalObsidianWatch,
597
- });
598
- // §4.11 probe-cache eviction is a *mode-change* concern. A pure
599
- // deniedTools edit doesn't invalidate which capabilities the
600
- // connector exposes — the live probe answer is identical, only what
601
- // the agent is allowed to invoke from the skill body changes. So
602
- // gate eviction on modeChanged.
603
- if (modeChanged) {
604
- const cleared = deleteProbesForIntegration(db, key);
605
- if (cleared > 0) {
606
- logger.info({ key, cleared }, "cleared stale probe cache after integration mode change");
607
- }
608
- }
609
- // DELEGATED-MODE-V2-DESIGN.md §4.4 #2 — a deniedTools-only edit must
610
- // also re-materialize active DM workdirs, since the per-session
611
- // `disallowedTools` array (Claude SDK), admin-policy TOML (Gemini),
612
- // and AGENTS.md prose block (Codex) are derived from `state.deniedTools`
613
- // at materialization time. A stale workdir would leak the old policy
614
- // into the next turn. We compute the policy diff up front so we can
615
- // gate the lifecycle callback on it.
616
- const policyDiff = diffDeniedTools(previous.deniedTools ?? [], next[key].deniedTools ?? []);
617
- const policyChanged = policyDiff.added.length > 0 || policyDiff.removed.length > 0;
618
- // Only `delegatedSyncEnabled` gates an observer-lifecycle
619
- // re-evaluation — the predicate
620
- // (`hasActiveDelegatedSyncIntegration`) ignores `nativeSyncEnabled`
621
- // because the worker has no role in native mode (see appendix
622
- // §"Polling, observers, and the hourly-check threshold"). The
623
- // `nativeSyncEnabled` field is retained on the state row for
624
- // schema compatibility but toggling it is inert today.
625
- const syncChanged = (previous.delegatedSyncEnabled ?? true)
626
- !== (next[key].delegatedSyncEnabled ?? true);
627
- // §4.10 lifecycle step 4 — observer flip side of the callback is
628
- // gated on `wasDirect !== isDirect` inside `applyIntegrationModeChange`,
629
- // so calling it on a deniedTools-only edit is safe: observer
630
- // start/stop is a no-op, only `rematerializeDmSessions` fires.
631
- if ((modeChanged || policyChanged || syncChanged) && deps.onIntegrationModeChange) {
632
- void Promise.resolve()
633
- .then(() => deps.onIntegrationModeChange?.(key, previous, next[key]))
634
- .catch((err) => {
635
- logger.error({ err, key }, "integration mode-change side-effects failed — DB state already updated");
636
- });
637
- }
638
- // §7.7 audit. Two distinct action types so log readers can filter:
639
- // - integration.mode_change: mode or delegatedBackend moved
640
- // - integration.policy_change: deniedTools diff (with no mode flip)
641
- // Both can fire on a single PATCH when the user changes mode AND
642
- // deniedTools simultaneously — that's intentional, the diff is at
643
- // different granularities.
644
- if (modeChanged) {
645
- recordAuditModeChange(db, key, previous, next[key]);
646
- }
647
- if (policyChanged) {
648
- recordAuditPolicyChange(db, key, policyDiff);
649
- }
650
- logger.info({
651
- key,
652
- from: previous.mode,
653
- to: next[key].mode,
654
- delegatedBackend: next[key].delegatedBackend,
655
- nativeBackend: next[key].nativeBackend,
656
- delegatedModelFrom: previous.delegatedModel ?? null,
657
- delegatedModelTo: next[key].delegatedModel ?? null,
658
- deniedToolsAdded: policyDiff.added,
659
- deniedToolsRemoved: policyDiff.removed,
660
- }, modeChanged
661
- ? "integration mode updated"
662
- : "integration policy updated (deniedTools / delegatedModel)");
663
- // Auto-enable the global task-mode flag the first time *any*
664
- // integration enters delegated mode. Rationale:
665
- // - The legacy `/integrations/:key/invoke` RPC is dead (commented
666
- // out 2026-05-01 in this same file); every delegated skill body
667
- // and task flow now talks to `/exec`.
668
- // - `/exec` is gated by `delegatedTaskModeEnabled`, originally a
669
- // Phase-1 canary that defaults `false`. With `/invoke` gone,
670
- // "delegated mode + task mode off" is a degenerate state with
671
- // no productive use — the agent calls `/exec`, gets 503,
672
- // fails. So flipping an integration to delegated *is* the
673
- // enablement signal.
674
- // - We only flip on the transition into delegated, not on every
675
- // PATCH against an already-delegated integration. A pure
676
- // deniedTools edit must not silently re-enable a flag the
677
- // operator manually toggled off; emergency-disable is the
678
- // flag's remaining role.
679
- const enteringDelegated = next[key].mode === "delegated" && previous.mode !== "delegated";
680
- if (enteringDelegated && !config.delegatedTaskModeEnabled) {
681
- try {
682
- createSettingsStore(db).set("delegatedTaskModeEnabled", true);
683
- config.delegatedTaskModeEnabled = true;
684
- logger.info({ key, backend: effectiveBackend, trigger: "first_delegated" }, "auto-enabled delegatedTaskModeEnabled — first delegated integration");
685
- /* c8 ignore start -- settings write never fails with in-memory DB; defensive for production */
686
- }
687
- catch (err) {
688
- logger.error({ err, key }, "failed to persist delegatedTaskModeEnabled auto-enable; in-memory config still updated");
689
- }
690
- /* c8 ignore stop */
691
- }
692
- return c.json({ ok: true, integration: next[key] });
693
- /* c8 ignore start -- updateIntegrationState never throws with in-memory DB; defensive for production */
694
- }
695
- catch (err) {
696
- logger.error({ err, key }, "integration mode update failed");
697
- return respondWithAgentError(c, 500, [
698
- composeIssue("integrations.internal_error", {
699
- field: "<server>",
700
- received: "<state_update_failed>",
701
- }),
702
- ]);
703
- /* c8 ignore stop */
704
- }
705
- finally {
706
- // §11.3.1 — release the flip lock regardless of success/failure so
707
- // the next PATCH for this key is unblocked.
708
- if (flipLockHeld) {
709
- releaseIntegrationFlipLock(db, key);
710
- }
711
- }
712
- });
713
- // ─────────────────────────────────────────────────────────────────────
714
- // RESERVED — POST /integrations/:key/invoke (RPC-style tool dispatch)
715
- //
716
- // Commented out 2026-05-01 as part of the /exec-only migration. The
717
- // RPC `{tool, args}` shape required the caller to know the delegated
718
- // backend's exact bare tool name (Claude `search_threads` vs Codex
719
- // `search_emails` vs Gemini `search`) and arg names (`pageSize` vs
720
- // `max_results` vs `maxResults`). That coupling broke under:
721
- // - cross-backend tool-name divergence (the alias-translation gap
722
- // that caused the 2026-05-01 wrong_tool incidents),
723
- // - any custom MCP server the user installs (registry-invisible),
724
- // - backend swaps that should be transparent to the agent.
725
- //
726
- // `POST /integrations/:key/exec` (task mode) is the canonical surface
727
- // now: the agent describes intent in natural language + outputSchema,
728
- // the daemon's delegate picks the tool. The handler body and the
729
- // supporting `resolveCanonicalBareTool` helper are preserved verbatim
730
- // for **future reactivation** — possible reactivation scenarios:
731
- // 1. A low-latency RPC fast path for cost-sensitive callers.
732
- // 2. A debug/admin endpoint for direct tool dispatch.
733
- // 3. A per-integration opt-in once full cross-backend alias
734
- // translation is in place.
735
- //
736
- // DO NOT DELETE. The internal `DelegatedBackendInvoker.invoke()` API
737
- // and each core's `runDelegatedTool()` remain wired (used by
738
- // `delegated-sync-worker` for hourly drift detection — see
739
- // `packages/daemon/src/observers/delegated-sync-worker.ts:504`).
740
- //
741
- // Original docstring (preserved for the reactivation-time author):
742
- // POST /integrations/:key/invoke — DELEGATED-MODE-V2-DESIGN.md §4.2.
743
- // Generic chokepoint for cross-backend delegated tool calls. The
744
- // agent's cross-backend skill body
745
- // (`SKILL.delegated.<sessionBackend>.md`) directs it here for any
746
- // connector tool on a delegatedBackend that differs from the DM
747
- // session backend. Body: `{tool, args}` — the daemon does NOT
748
- // enumerate or validate the tool name (no per-tool routeMap
749
- // maintenance); it forwards verbatim to `DelegatedBackendInvoker`.
750
- //
751
- // Pre-flight order (cheapest first, fail-fast):
752
- // 1. Integration must be in `delegated` mode (409 mode_mismatch).
753
- // 2. If `x-session-backend` is set and matches `state.delegatedBackend`,
754
- // the caller is misusing the endpoint — same-backend agents have
755
- // native MCP and the skill is not provisioned (§4.1.2). Surface as
756
- // 409 to make accidental misuse loud rather than spawning a useless
757
- // subprocess.
758
- // 3. `state.deniedTools` patterns enforced via `matchToolPattern`. The
759
- // stored entries are bare names (no `mcp__*` prefix), so we strip the
760
- // connector's `toolNamespace` from the body's `tool` before matching.
761
- //
762
- // Risk tier: Autonomous (no Bearer required). Cost / failure
763
- // attribution lands in `agent_actions` via the invoker
764
- // (`action_type='delegated_proxy.invoke'`).
765
- // ─────────────────────────────────────────────────────────────────────
766
- /*
767
- app.post("/integrations/:key/invoke", async (c) => {
768
- const key = c.req.param("key");
769
- if (!isIntegrationKey(key)) {
770
- return respondWithAgentError(c, 404, [
771
- composeIssue("integrations.unknown_integration", {
772
- field: "key",
773
- received: key,
774
- }),
775
- ], { legacyFields: { key } });
776
- }
777
-
778
- const parsedBody = await readJsonBody(c);
779
- if (!parsedBody.ok) return parsedBody.response;
780
-
781
- const body = parsedBody.body as { tool?: unknown; args?: unknown } | null;
782
- const toolRaw = body?.tool;
783
- if (typeof toolRaw !== "string" || toolRaw.length === 0) {
784
- return c.json(
785
- {
786
- error: "validation_error",
787
- message: "`tool` must be a non-empty string (bare tool name or fully-qualified MCP name)",
788
- },
789
- 400,
790
- );
791
- }
792
- // §4.2.1 contract — `args` is `object`. Reject arrays, scalars, and null
793
- // here so the failure surfaces at the route boundary with a precise 400
794
- // rather than as a downstream invoker / connector parse error.
795
- const argsRaw = body?.args;
796
- if (
797
- argsRaw !== undefined
798
- && (argsRaw === null
799
- || typeof argsRaw !== "object"
800
- || Array.isArray(argsRaw))
801
- ) {
802
- return c.json(
803
- {
804
- error: "validation_error",
805
- message: "`args` must be a JSON object (or omitted to send {})",
806
- },
807
- 400,
808
- );
809
- }
810
- const args = (argsRaw as Record<string, unknown> | undefined) ?? {};
811
-
812
- if (!deps.delegatedInvoker) {
813
- // Boot ordering / test wiring case — invoker not registered. Surface
814
- // explicitly so the caller knows this isn't a precondition mismatch.
815
- return c.json(
816
- {
817
- error: "unimplemented",
818
- message: "delegated invoker is not wired into this daemon instance",
819
- integration: key,
820
- backend: null,
821
- mode: "delegated",
822
- },
823
- 501,
824
- );
825
- }
826
-
827
- const state = readIntegrations(db)[key];
828
- if (!state || state.mode !== "delegated" || !state.delegatedBackend) {
829
- return c.json(
830
- {
831
- error: "mode_mismatch",
832
- message: `${key} is not in delegated mode (mode=${state?.mode ?? "missing"})`,
833
- integration: key,
834
- backend: null,
835
- mode: "delegated",
836
- },
837
- 409,
838
- );
839
- }
840
-
841
- const sessionBackendHeader = c.req.header("x-session-backend");
842
- if (
843
- sessionBackendHeader
844
- && sessionBackendHeader === state.delegatedBackend
845
- ) {
846
- return c.json(
847
- {
848
- error: "mode_mismatch",
849
- message: `session backend matches delegatedBackend (${sessionBackendHeader}) — use native MCP instead`,
850
- integration: key,
851
- backend: state.delegatedBackend,
852
- mode: "delegated",
853
- },
854
- 409,
855
- );
856
- }
857
-
858
- // Strip the connector's namespace prefix if the body included it,
859
- // then translate cross-backend aliases to the delegated connector's
860
- // canonical tool name. Translation runs BEFORE the deniedTools check
861
- // because deny entries are stored as backend-canonical names (the
862
- // skill body trains the user on that form): checking pre-translation
863
- // silently lets a denied call through if the agent used a sibling
864
- // backend's alias.
865
- const connector = INTEGRATION_DESCRIPTORS[key].backendConnectors[state.delegatedBackend];
866
- const namespace = connector?.toolNamespace ?? "";
867
- const incomingBareTool = namespace && toolRaw.startsWith(namespace)
868
- ? toolRaw.slice(namespace.length)
869
- : toolRaw;
870
- const bareTool = resolveCanonicalBareTool(connector, incomingBareTool);
871
- if (bareTool !== incomingBareTool) {
872
- logger.debug(
873
- {
874
- integration: key,
875
- backend: state.delegatedBackend,
876
- from: incomingBareTool,
877
- to: bareTool,
878
- },
879
- "delegated invoke: translated cross-backend tool alias",
880
- );
881
- }
882
-
883
- if ((state.deniedTools ?? []).some((pattern) => matchToolPattern(pattern, bareTool))) {
884
- return c.json(
885
- {
886
- error: "denied_tool",
887
- message: `tool '${bareTool}' is denied by user settings for integration '${key}'`,
888
- integration: key,
889
- backend: state.delegatedBackend,
890
- mode: "delegated",
891
- tool: bareTool,
892
- },
893
- 403,
894
- );
895
- }
896
-
897
- // The invoker forwards verbatim — connector validates the tool name and
898
- // arg shape. We always send the fully-qualified tool string so the
899
- // subprocess prompt unambiguously points at one tool.
900
- const fullyQualifiedTool = namespace ? `${namespace}${bareTool}` : bareTool;
901
-
902
- const result = await deps.delegatedInvoker.invoke({
903
- integrationKey: key,
904
- toolName: fullyQualifiedTool,
905
- toolArgs: args,
906
- parentEventId: c.req.header("x-event-id"),
907
- parentProcessKey: c.req.header("x-process-key"),
908
- });
909
-
910
- if (result.ok) {
911
- // INTEGRATION-DRIFT-DETECTION-PLAN.md §11 Phase 4 — actor attribution.
912
- // Successful writes mark the persistent `integration_writes` table so
913
- // the next reconcile diff resolves `actor='agent'` and the agent does
914
- // not re-discover its own write as a user-originated observation.
915
- // Decision tree:
916
- // 1. `bareTool` in `connector.destructiveTools` → it's a write.
917
- // 2. Walk `result.toolResult` for canonical id keys (extractor).
918
- // 3. If the response had no id (label_message / label_thread /
919
- // bulk_label_matching_emails return `{ ok: true }`), fall back
920
- // to `args.messageId` / `args.threadId` / each entry of
921
- // `args.messageIds` / `args.threadIds`.
922
- // Failure to extract any id is logged at debug and the call still
923
- // returns 2xx — losing one attribution mark causes one self-noticed
924
- // observation, never data loss.
925
- maybeMarkIntegrationWrite(deps.db, {
926
- integration: key,
927
- connector,
928
- bareTool,
929
- toolResult: result.toolResult,
930
- args,
931
- });
932
- return c.json({
933
- toolResult: result.toolResult,
934
- cost: {
935
- tokensInput: result.cost.tokensInput,
936
- tokensOutput: result.cost.tokensOutput,
937
- cacheCreationTokens: result.cost.cacheCreationTokens,
938
- cacheReadTokens: result.cost.cacheReadTokens,
939
- costUsd: result.cost.costUsd,
940
- durationMs: result.cost.durationMs,
941
- numTurns: result.cost.numTurns,
942
- },
943
- });
944
- }
945
-
946
- const status = mapErrorClassToHttpStatus(result.errorClass);
947
- return c.json(
948
- {
949
- error: result.errorClass,
950
- message: result.message,
951
- integration: key,
952
- backend: result.backendId ?? state.delegatedBackend,
953
- mode: "delegated",
954
- },
955
- status,
956
- );
957
- });
958
- */
959
- // ── end of reserved /invoke route ────────────────────────────────────
960
- // POST /integrations/:key/exec — DELEGATED-TASK-MODE-DESIGN.md §4.1.
961
- // Task-mode invocation: the calling agent describes intent in natural
962
- // language and pins an `outputSchema`; the daemon spawns the
963
- // delegatedBackend with `allowedTools` restricted to the integration's
964
- // connector and validates the final assistant JSON against the schema.
965
- //
966
- // Pre-flight order (cheapest first; matches /invoke ordering):
967
- // 1. Integration is registered (404 unknown_integration).
968
- // 2. Body is valid JSON (400 invalid_json_body).
969
- // 3. Body fields parse: task non-empty string, outputSchema present
970
- // and within 4 KB, caps within hard bounds, allowDestructive bool.
971
- // 4. Kill switch (config.delegatedTaskModeEnabled): 503 if false.
972
- // 5. Integration is delegated with non-null delegatedBackend (409).
973
- // 6. delegatedBackend ∈ {claude, gemini} — Codex returns 501.
974
- // 7. x-session-backend header (if set) ≠ delegatedBackend (409 same
975
- // defense-in-depth as /invoke — same-backend should use native MCP).
976
- // 8. Invoker wired (501).
977
- //
978
- // Risk tier: Autonomous (no Bearer required). Same rationale as /invoke —
979
- // tool-level safety lives in `state.deniedTools` + `destructiveTools`,
980
- // both enforced at the chokepoint by the invoker.
981
- app.post("/integrations/:key/exec", async (c) => {
982
- const key = c.req.param("key");
983
- if (!isIntegrationKey(key)) {
984
- return respondWithAgentError(c, 404, [
985
- composeIssue("integrations.unknown_integration", {
986
- field: "key",
987
- received: key,
988
- }),
989
- ], { legacyFields: { key } });
990
- }
991
- const parsedBody = await readJsonBody(c);
992
- if (!parsedBody.ok)
993
- return parsedBody.response;
994
- const body = parsedBody.body;
995
- // Field-level validation. Each branch maps to `validation_error` /
996
- // `schema_too_large` per §10.
997
- if (typeof body?.task !== "string" || body.task.trim().length === 0) {
998
- return c.json({
999
- error: "validation_error",
1000
- message: "`task` must be a non-empty string",
1001
- }, 400);
1002
- }
1003
- const schemaCheck = checkOutputSchema(body.outputSchema);
1004
- if (!schemaCheck.ok) {
1005
- const errorCode = schemaCheck.reason === "too_large"
1006
- ? "schema_too_large"
1007
- : "validation_error";
1008
- return c.json({
1009
- error: errorCode,
1010
- message: schemaCheck.message,
1011
- field: "outputSchema",
1012
- }, 400);
1013
- }
1014
- const outputSchema = body.outputSchema;
1015
- const config = deps.config;
1016
- if (!config.delegatedTaskModeEnabled) {
1017
- return c.json({
1018
- error: "task_mode_disabled",
1019
- // Auto-enable on `PATCH /api/integrations/:key` to delegated
1020
- // (and the matching startup heal in `index.ts`) make this
1021
- // path a deliberate operator action: the flag was either
1022
- // explicitly disabled via `PATCH /api/config` or its
1023
- // emergency-disable use case fired. Surface that fact rather
1024
- // than promising a dashboard toggle that does not exist.
1025
- message: "Task mode is currently disabled (config.delegatedTaskModeEnabled=false). Re-enable via PATCH /api/config { delegatedTaskModeEnabled: true }, or flip an integration to delegated to auto-enable.",
1026
- integration: key,
1027
- mode: "delegated",
1028
- }, 503);
1029
- }
1030
- const allowDestructive = body.allowDestructive === true;
1031
- const maxToolCalls = clampNumber(body.maxToolCalls, config.delegatedTaskDefaultMaxToolCalls, 1, DELEGATED_TASK_HARD_CAPS.maxToolCalls);
1032
- if (maxToolCalls === null) {
1033
- return c.json({
1034
- error: "validation_error",
1035
- message: `maxToolCalls must be an integer between 1 and ${DELEGATED_TASK_HARD_CAPS.maxToolCalls}`,
1036
- }, 400);
1037
- }
1038
- const maxBudgetUsd = clampNumber(body.maxBudgetUsd, config.delegatedTaskDefaultMaxBudgetUsd, 0, DELEGATED_TASK_HARD_CAPS.maxBudgetUsd, true);
1039
- if (maxBudgetUsd === null) {
1040
- return c.json({
1041
- error: "validation_error",
1042
- message: `maxBudgetUsd must be a number between 0 and ${DELEGATED_TASK_HARD_CAPS.maxBudgetUsd}`,
1043
- }, 400);
1044
- }
1045
- const timeoutMs = clampNumber(body.timeoutMs, config.delegatedTaskDefaultTimeoutMs, 1000, DELEGATED_TASK_HARD_CAPS.maxTimeoutMs);
1046
- if (timeoutMs === null) {
1047
- return c.json({
1048
- error: "validation_error",
1049
- message: `timeoutMs must be an integer between 1000 and ${DELEGATED_TASK_HARD_CAPS.maxTimeoutMs}`,
1050
- }, 400);
1051
- }
1052
- if (!deps.delegatedInvoker) {
1053
- return c.json({
1054
- error: "unimplemented",
1055
- message: "delegated invoker is not wired into this daemon instance",
1056
- integration: key,
1057
- backend: null,
1058
- mode: "delegated",
1059
- }, 501);
1060
- }
1061
- const state = readIntegrations(deps.db)[key];
1062
- if (!state || state.mode !== "delegated" || !state.delegatedBackend) {
1063
- return c.json({
1064
- error: "mode_mismatch",
1065
- message: `${key} is not in delegated mode (mode=${state?.mode ?? "missing"})`,
1066
- integration: key,
1067
- backend: null,
1068
- mode: "delegated",
1069
- }, 409);
1070
- }
1071
- // Codex task mode landed in Phase 1.5 — daemon-side stream pre-emption
1072
- // (see codex-core.ts `runDelegatedTask`) gates allowed-tools / destructive
1073
- // calls without relying on a CLI-level allowedTools surface. The 501
1074
- // short-circuit that previously fired here for `state.delegatedBackend
1075
- // === "codex"` is gone; Codex /exec requests now flow through the
1076
- // invoker like Claude and Gemini.
1077
- const sessionBackendHeader = c.req.header("x-session-backend");
1078
- if (sessionBackendHeader
1079
- && sessionBackendHeader === state.delegatedBackend) {
1080
- return c.json({
1081
- error: "mode_mismatch",
1082
- message: `session backend matches delegatedBackend (${sessionBackendHeader}) — use native MCP instead`,
1083
- integration: key,
1084
- backend: state.delegatedBackend,
1085
- mode: "delegated",
1086
- }, 409);
1087
- }
1088
- const result = await deps.delegatedInvoker.task({
1089
- integrationKey: key,
1090
- task: body.task.trim(),
1091
- outputSchema,
1092
- maxToolCalls,
1093
- maxBudgetUsd,
1094
- timeoutMs,
1095
- allowDestructive,
1096
- heavy: body.heavy === true,
1097
- // §13 Phase 3.3 — pass-through opt-in. Defense-in-depth: the
1098
- // invoker also enforces `allowDestructive === false` before
1099
- // checking the cache, so a buggy caller that sets cacheable on a
1100
- // destructive task can't poison the cache.
1101
- cacheable: body.cacheable === true,
1102
- parentEventId: c.req.header("x-event-id"),
1103
- parentProcessKey: c.req.header("x-process-key"),
1104
- });
1105
- // INTEGRATION-DRIFT-DETECTION-PLAN.md §11 Phase 4 — actor
1106
- // attribution at the /exec chokepoint. /invoke called this once per
1107
- // request because there was a single tool. /exec is a loop: walk
1108
- // the trace and mark every successful destructive step.
1109
- //
1110
- // Runs BEFORE the result.ok / error split because failed tasks
1111
- // still strand real side effects in the trace:
1112
- // - timeout / subprocess_crashed / loop_aborted / budget_exhausted:
1113
- // earlier ok steps already landed before the wall-clock /
1114
- // budget / turn cap fired.
1115
- // - schema_violation / parse_error: the model called the tool
1116
- // successfully and then mis-formatted its final JSON. The §6.2
1117
- // retry is suppressed when `writeClassToolFired` is true, so
1118
- // the side effect landed exactly once and needs marking
1119
- // exactly once.
1120
- // - policy_violation: the violating step is `status: "error"`
1121
- // (Codex aborts before pairing) but earlier ok destructive
1122
- // steps in the same task are still real.
1123
- // Skipping the loop on failure was the same shape of bug as the
1124
- // old /invoke→/exec migration miss: an agent-issued send_email
1125
- // that schema-violates on output would land in Gmail, return 502,
1126
- // and surface as "I noticed you sent…" on the next reconcile.
1127
- //
1128
- // Bare-tool resolution: trace `toolName` is the fully-qualified
1129
- // `mcp__server__tool` (or dotted `server.tool`) form the core
1130
- // observed mid-stream. Strip `connector.toolNamespace` to recover
1131
- // the bare name for the destructiveTools membership check; if the
1132
- // namespace doesn't match, the tool wasn't from this connector
1133
- // (e.g. an internal Read/Write step) and we ignore it.
1134
- //
1135
- // Each trace step carries the upstream `toolResult` (the cores
1136
- // JSON-parse the connector response when possible, fall back to
1137
- // raw string). extractWriteItemIds first walks the response
1138
- // shape (recovers id-in-response writes — send_email,
1139
- // create_event, notion-create-pages) and then falls back to
1140
- // args-side extraction (recovers id-in-args writes — delete /
1141
- // update / label / archive). Older snapshots / stub cores that
1142
- // don't populate toolResult degrade to args-only without crashing.
1143
- //
1144
- // `result.trace` is required on the success union and optional on
1145
- // the error union — guard with truthiness.
1146
- if (result.trace && result.trace.length > 0) {
1147
- const descriptor = INTEGRATION_DESCRIPTORS[key];
1148
- const connector = descriptor.backendConnectors[state.delegatedBackend];
1149
- if (connector) {
1150
- const namespace = connector.toolNamespace;
1151
- for (const step of result.trace) {
1152
- if (step.status !== "ok")
1153
- continue;
1154
- if (!step.toolName.startsWith(namespace))
1155
- continue;
1156
- const bareTool = step.toolName.slice(namespace.length);
1157
- if (!connector.destructiveTools.includes(bareTool))
1158
- continue;
1159
- maybeMarkIntegrationWrite(deps.db, {
1160
- integration: key,
1161
- connector,
1162
- bareTool,
1163
- toolResult: step.toolResult,
1164
- args: step.toolArgs,
1165
- });
1166
- }
1167
- }
1168
- }
1169
- if (result.ok) {
1170
- return c.json({
1171
- result: result.result,
1172
- needsConfirmation: result.needsConfirmation,
1173
- confirmationPlan: result.confirmationPlan,
1174
- trace: result.trace,
1175
- cost: result.cost,
1176
- });
1177
- }
1178
- const status = mapTaskErrorClassToHttpStatus(result.errorClass);
1179
- return c.json({
1180
- error: result.errorClass,
1181
- message: result.message,
1182
- ...(result.raw !== undefined ? { raw: result.raw } : {}),
1183
- ...(result.trace ? { trace: result.trace } : {}),
1184
- ...(result.cost ? { cost: result.cost } : {}),
1185
- integration: key,
1186
- backend: result.backendId ?? state.delegatedBackend,
1187
- mode: "delegated",
1188
- }, status);
1189
- });
1190
- // POST /integrations/:key/probe — evaluate or read the cached connector
1191
- // probe for a given backend. Phase 2 supports two modes:
1192
- // - Live probe: caller passes `{tools: [...]}` (the names the agent
1193
- // subprocess reported). The evaluator computes presence + persists.
1194
- // - Cached read: body omits `tools`. Returns the latest stored row, or
1195
- // a 404 marker if no probe has been taken yet. The dashboard's
1196
- // refresh button and post-Apply background refresh use the live path;
1197
- // /health and the setup wizard's initial render use the cached path.
1198
- // No live agent subprocess is launched here — keeping that out of the
1199
- // boot critical path is what saves the per-Opus probe cost called out
1200
- // in the §7 POC.
1201
- app.post("/integrations/:key/probe", async (c) => {
1202
- const key = c.req.param("key");
1203
- if (!isIntegrationKey(key)) {
1204
- return respondWithAgentError(c, 404, [
1205
- composeIssue("integrations.unknown_integration", {
1206
- field: "key",
1207
- received: key,
1208
- }),
1209
- ], { legacyFields: { key } });
1210
- }
1211
- const body = await readOptionalJsonBody(c);
1212
- if (body === null) {
1213
- return respondWithAgentError(c, 400, [
1214
- composeIssue("integrations.invalid_json_body", {
1215
- field: "body",
1216
- received: "<not_json>",
1217
- }),
1218
- ]);
1219
- }
1220
- const backend = resolveProbeBackend(body.backend, db, key);
1221
- if (!backend.ok)
1222
- return c.json(backend.error, backend.status);
1223
- const descriptorForProbe = INTEGRATION_DESCRIPTORS[key];
1224
- const isUserManaged = descriptorForProbe.userManagedConnector === true;
1225
- // Connector existence is a descriptor-driven precondition. User-
1226
- // managed integrations (Outlook today) intentionally ship with an
1227
- // empty `backendConnectors` and skip this check — the user's MCP /
1228
- // connector on the chosen backend is the source of truth, not the
1229
- // registry. Backend availability + auth still get verified for
1230
- // user-managed in the live-probe branch below.
1231
- if (!isUserManaged) {
1232
- const connector = getConnector(key, backend.value);
1233
- /* c8 ignore start -- every registered (integration, backend) pair ships with a connector today; forward-compat guard for future partial connectors */
1234
- if (!connector) {
1235
- return c.json({
1236
- error: "backend_not_supported",
1237
- key,
1238
- backend: backend.value,
1239
- availableBackends: Object.keys(descriptorForProbe.backendConnectors),
1240
- }, 400);
1241
- }
1242
- /* c8 ignore stop */
1243
- }
1244
- // §4.11 live probe — `liveProbe: true` asks the daemon to spawn the
1245
- // target backend and enumerate its MCP tool list. User-initiated only;
1246
- // never fired from boot or PATCH. The descriptor + cached read paths
1247
- // cover the other two calling conventions.
1248
- //
1249
- // For user-managed integrations the spawn + probeTools() call still
1250
- // fires (this is what enforces §4.12.2 checks #1 backend resolvable
1251
- // and #2 backend auth valid). Only the descriptor-side capability
1252
- // evaluation is replaced by `makeUserManagedProbeResult`, which
1253
- // carries the full live tool list as `presentTools` so dashboards
1254
- // can show "we found N tools on your backend."
1255
- if (body.liveProbe === true) {
1256
- const core = deps.agentBackends?.find((c) => c.backendId === backend.value);
1257
- if (!core) {
1258
- return c.json({
1259
- error: "backend_core_unavailable",
1260
- backend: backend.value,
1261
- message: `Backend '${backend.value}' is not registered in this daemon — cannot run live probe.`,
1262
- }, 503);
1263
- }
1264
- try {
1265
- const tools = await core.probeTools();
1266
- const result = isUserManaged
1267
- ? makeUserManagedProbeResult(key, backend.value, tools)
1268
- : evaluateProbe({
1269
- tools,
1270
- integration: key,
1271
- backend: backend.value,
1272
- });
1273
- writeProbe(db, result);
1274
- logger.info({
1275
- key,
1276
- backend: backend.value,
1277
- present: result.present,
1278
- missingRequired: result.missingRequired,
1279
- toolCount: result.presentTools.length,
1280
- userManaged: isUserManaged,
1281
- }, "integration live probe persisted");
1282
- return c.json({
1283
- ok: true,
1284
- cached: false,
1285
- liveProbe: true,
1286
- ...(isUserManaged ? { userManaged: true } : {}),
1287
- result,
1288
- });
1289
- }
1290
- catch (err) {
1291
- if (err instanceof LiveProbeUnsupportedError) {
1292
- return c.json({
1293
- error: "live_probe_unsupported",
1294
- backend: backend.value,
1295
- message: err.reason,
1296
- }, 501);
1297
- }
1298
- logger.error({ err, key, backend: backend.value }, "live probe failed");
1299
- return c.json({
1300
- error: "live_probe_failed",
1301
- backend: backend.value,
1302
- message: err instanceof Error ? err.message : String(err),
1303
- }, 500);
1304
- }
1305
- }
1306
- const tools = body?.tools;
1307
- if (tools === undefined) {
1308
- const cached = readProbe(db, key, backend.value);
1309
- // 200 + result:null when there's no cached row — distinguishes
1310
- // "endpoint missing" (which the unknown_integration / 404 above
1311
- // covers) from "endpoint worked but the cache is empty," so the
1312
- // dashboard callers can branch without parsing error codes.
1313
- return c.json({
1314
- ok: true,
1315
- cached: cached !== null,
1316
- ...(isUserManaged ? { userManaged: true } : {}),
1317
- result: cached,
1318
- });
1319
- }
1320
- if (!Array.isArray(tools) || tools.some((t) => typeof t !== "string")) {
1321
- return c.json({
1322
- error: "invalid_body",
1323
- message: "`tools` must be an array of MCP tool names (strings).",
1324
- }, 400);
1325
- }
1326
- try {
1327
- const result = isUserManaged
1328
- ? makeUserManagedProbeResult(key, backend.value, tools)
1329
- : evaluateProbe({
1330
- tools: tools,
1331
- integration: key,
1332
- backend: backend.value,
1333
- });
1334
- writeProbe(db, result);
1335
- logger.info({
1336
- key,
1337
- backend: backend.value,
1338
- present: result.present,
1339
- missingRequired: result.missingRequired,
1340
- toolCount: result.presentTools.length,
1341
- userManaged: isUserManaged,
1342
- }, "integration probe persisted");
1343
- return c.json({
1344
- ok: true,
1345
- cached: false,
1346
- ...(isUserManaged ? { userManaged: true } : {}),
1347
- result,
1348
- });
1349
- /* c8 ignore start -- evaluateProbe / writeProbe success path is always taken in tests; catch is defensive */
1350
- }
1351
- catch (err) {
1352
- logger.error({ err, key, backend: backend.value }, "probe evaluation failed");
1353
- return respondWithAgentError(c, 500, [
1354
- composeIssue("integrations.internal_error", {
1355
- field: "<server>",
1356
- received: "<probe_evaluation_failed>",
1357
- }),
1358
- ]);
1359
- }
1360
- /* c8 ignore stop */
1361
- });
1362
- return app;
1363
- }
1364
- /**
1365
- * Tolerant JSON body reader for POST routes that accept an empty body
1366
- * (e.g. `POST /integrations/:key/probe` with no `tools` defaults to a
1367
- * cached read). Returns `{}` for an empty body, `null` for invalid JSON,
1368
- * and the parsed value otherwise.
1369
- */
1370
- async function readOptionalJsonBody(c) {
1371
- try {
1372
- const raw = await c.req.text();
1373
- if (raw.trim() === "")
1374
- return {};
1375
- return JSON.parse(raw);
1376
- }
1377
- catch {
1378
- return null;
1379
- }
1380
- }
1381
- function resolveProbeBackend(raw, db, key) {
1382
- if (typeof raw === "string") {
1383
- if (!BACKEND_IDS.includes(raw)) {
1384
- return {
1385
- ok: false,
1386
- status: 400,
1387
- error: {
1388
- error: "invalid_backend",
1389
- message: `Unknown backend '${raw}'.`,
1390
- supportedBackends: BACKEND_IDS,
1391
- },
1392
- };
1393
- }
1394
- return { ok: true, value: raw };
1395
- }
1396
- if (raw !== undefined) {
1397
- return {
1398
- ok: false,
1399
- status: 400,
1400
- error: {
1401
- error: "invalid_backend",
1402
- message: "`backend` must be a string when provided.",
1403
- },
1404
- };
1405
- }
1406
- // Default to the integration's `delegatedBackend` when one is
1407
- // configured — this is the backend the wizard would commit against.
1408
- const state = readIntegrations(db)[key];
1409
- if (state.delegatedBackend) {
1410
- return { ok: true, value: state.delegatedBackend };
1411
- }
1412
- return {
1413
- ok: false,
1414
- status: 400,
1415
- error: {
1416
- error: "backend_required",
1417
- message: "Pass `backend` in the request body — this integration is not currently delegated, so the daemon cannot infer one.",
1418
- },
1419
- };
1420
- }
1421
- function recordAuditModeChange(db, key, previous, next) {
1422
- try {
1423
- db.prepare(`INSERT INTO agent_actions
1424
- (event_id, action_type, trigger, result, detail, started_at, completed_at)
1425
- VALUES (?, 'integration.mode_change', 'reactive', 'success', ?, datetime('now'), datetime('now'))`).run(`integration:${key}:${Date.now()}`, JSON.stringify({
1426
- key,
1427
- from: {
1428
- mode: previous.mode,
1429
- delegatedBackend: previous.delegatedBackend ?? null,
1430
- // INTEGRATION_NATIVE_MODE_DESIGN.md §11.4 — preserve the prior
1431
- // native binding in the audit row so the forensic chain survives
1432
- // the schema clearing `nativeBackend` once mode flips away.
1433
- nativeBackend: previous.nativeBackend ?? null,
1434
- },
1435
- to: {
1436
- mode: next.mode,
1437
- delegatedBackend: next.delegatedBackend ?? null,
1438
- nativeBackend: next.nativeBackend ?? null,
1439
- },
1440
- }));
1441
- /* c8 ignore start -- in-memory DB always succeeds; catch is defensive for production DB errors */
1442
- }
1443
- catch (err) {
1444
- logger.warn({ err, key }, "failed to write integration audit row");
1445
- }
1446
- /* c8 ignore stop */
1447
- }
1448
- function recordAuditPolicyChange(db, key, diff) {
1449
- try {
1450
- db.prepare(`INSERT INTO agent_actions
1451
- (event_id, action_type, trigger, result, detail, started_at, completed_at)
1452
- VALUES (?, 'integration.policy_change', 'reactive', 'success', ?, datetime('now'), datetime('now'))`).run(`integration:${key}:policy:${Date.now()}`, JSON.stringify({ key, deniedTools: diff }));
1453
- /* c8 ignore start -- in-memory DB always succeeds; catch is defensive for production DB errors */
1454
- }
1455
- catch (err) {
1456
- logger.warn({ err, key }, "failed to write integration policy audit row");
1457
- }
1458
- /* c8 ignore stop */
1459
- }
1460
- function diffDeniedTools(previous, next) {
1461
- const prevSet = new Set(previous);
1462
- const nextSet = new Set(next);
1463
- const added = next.filter((t) => !prevSet.has(t));
1464
- const removed = previous.filter((t) => !nextSet.has(t));
1465
- return { added, removed };
1466
- }
1467
- /**
1468
- * Clamp a numeric request-body field to [min, max], applying `defaultValue`
1469
- * when omitted. Returns null on invalid input (NaN / wrong type), letting
1470
- * the caller surface a validation_error. When `allowFloat` is true (used
1471
- * for USD budgets), accepts floating-point; otherwise integer-only.
1472
- */
1473
- function clampNumber(raw, defaultValue, min, max, allowFloat = false) {
1474
- if (raw === undefined || raw === null)
1475
- return defaultValue;
1476
- if (typeof raw !== "number" || !Number.isFinite(raw))
1477
- return null;
1478
- if (!allowFloat && !Number.isInteger(raw))
1479
- return null;
1480
- if (raw < min || raw > max)
1481
- return null;
1482
- return raw;
1483
- }
1484
- /**
1485
- * DELEGATED-TASK-MODE-DESIGN.md §10 — map the task-mode error class to an
1486
- * HTTP status code. Mirrors the design's table 1:1.
1487
- */
1488
- function mapTaskErrorClassToHttpStatus(errorClass) {
1489
- switch (errorClass) {
1490
- case "task_mode_disabled":
1491
- return 503;
1492
- case "task_quota_exhausted":
1493
- return 429;
1494
- case "task_mode_unsupported":
1495
- return 501;
1496
- case "delegated_proxy_busy":
1497
- return 503;
1498
- case "denied_tool":
1499
- return 403;
1500
- case "precondition":
1501
- return 409;
1502
- case "auth_error":
1503
- return 502;
1504
- case "tool_failed":
1505
- case "tool_unavailable":
1506
- case "parse_error":
1507
- case "schema_violation":
1508
- case "policy_violation":
1509
- case "post_write_format_failure":
1510
- case "loop_aborted":
1511
- case "budget_exhausted":
1512
- return 502;
1513
- case "timeout":
1514
- case "cancelled":
1515
- return 504;
1516
- case "subprocess_crashed":
1517
- default:
1518
- return 500;
1519
- }
1520
- }
1521
- function safeParseJson(s) {
1522
- try {
1523
- const parsed = JSON.parse(s);
1524
- /* c8 ignore next -- sql WHERE guarantees only object-typed detail rows reach here */
1525
- if (!parsed || typeof parsed !== "object" || Array.isArray(parsed))
1526
- return null;
1527
- return parsed;
1528
- /* c8 ignore start -- sql WHERE json_extract would reject malformed JSON rows */
1529
- }
1530
- catch {
1531
- return null;
1532
- }
1533
- /* c8 ignore stop */
1534
- }
1535
- /**
1536
- * INTEGRATION-DRIFT-DETECTION-PLAN.md §11 Phase 4 — delegated chokepoint
1537
- * actor attribution. Branches on `connector.destructiveTools` membership;
1538
- * non-destructive tools (search / read / list) are left untouched. For
1539
- * write tools we run the response-shape extractor and fall back to args-
1540
- * shape extraction (for `{ ok: true }`-only label / archive responses);
1541
- * each surfaced id is marked in the persistent `integration_writes`
1542
- * table with the per-integration default TTL.
1543
- *
1544
- * Called from two surfaces:
1545
- * - The `/exec` success path (active) — once per successful destructive
1546
- * trace step. Each trace entry carries the parsed upstream
1547
- * `toolResult`, so the response-shape extractor and the args-side
1548
- * fallback both fire normally — symmetric to the legacy /invoke path
1549
- * (id-in-response writes like send_email / create_event /
1550
- * notion-create-pages are recovered in addition to id-in-args
1551
- * deletes / updates / labels).
1552
- * - The reserved `/invoke` route (commented) — once per call with the
1553
- * full upstream `result.toolResult`. Same response-shape walk.
1554
- *
1555
- * Idempotent on extraction miss: returning early without any mark is the
1556
- * documented degradation path (causes one self-noticed observation, not
1557
- * data loss). The route handler always returns 2xx on a successful
1558
- * upstream call — this helper never throws back.
1559
- */
1560
- function maybeMarkIntegrationWrite(db, args) {
1561
- /* c8 ignore next -- /exec guards via if(connector); defensive for future /invoke reactivation */
1562
- if (!args.connector)
1563
- return;
1564
- /* c8 ignore next -- /exec pre-filters non-destructive tools; defensive for future /invoke reactivation */
1565
- if (!args.connector.destructiveTools.includes(args.bareTool))
1566
- return;
1567
- const extracted = extractWriteItemIds({
1568
- integration: args.integration,
1569
- bareTool: args.bareTool,
1570
- toolResult: args.toolResult,
1571
- args: args.args,
1572
- });
1573
- if (extracted.itemIds.length === 0) {
1574
- logger.debug({
1575
- integration: args.integration,
1576
- bareTool: args.bareTool,
1577
- reason: extracted.reason,
1578
- }, "destructive tool succeeded but no item id extracted — actor attribution will fall through to 'user' on next reconcile");
1579
- return;
1580
- }
1581
- for (const id of extracted.itemIds) {
1582
- markIntegrationWrite(db, args.integration, id);
1583
- }
1584
- logger.debug({
1585
- integration: args.integration,
1586
- bareTool: args.bareTool,
1587
- reason: extracted.reason,
1588
- itemCount: extracted.itemIds.length,
1589
- }, "marked integration_writes for destructive delegated call");
1590
- }
1591
- // ─────────────────────────────────────────────────────────────────────
1592
- // RESERVED — `resolveCanonicalBareTool`
1593
- //
1594
- // Helper for the commented-out RPC `/invoke` route. Preserved verbatim
1595
- // alongside the route handler for future reactivation.
1596
- //
1597
- // The /exec migration removed the brittle "agent supplies the bare
1598
- // tool name" coupling that this helper compensated for; future RPC
1599
- // re-introduction (admin endpoint, cost-sensitive fast path) would
1600
- // likely want a *more* complete cross-backend alias translator
1601
- // (walk every connector under the integration, not just the active
1602
- // one) — see the alias-divergence root-cause notes in the route
1603
- // handler comment above for context.
1604
- //
1605
- // DO NOT DELETE.
1606
- // ─────────────────────────────────────────────────────────────────────
1607
- /*
1608
- function resolveCanonicalBareTool(
1609
- connector: IntegrationBackendConnector | undefined,
1610
- bare: string,
1611
- ): string {
1612
- if (!connector) return bare;
1613
- const capTools = connector.capabilityTools;
1614
- for (const aliases of Object.values(capTools)) {
1615
- if (aliases.includes(bare)) return bare;
1616
- }
1617
- const aliasesForKey = capTools[bare];
1618
- if (aliasesForKey && aliasesForKey.length > 0) {
1619
- return aliasesForKey[0];
1620
- }
1621
- return bare;
1622
- }
1623
- */
1624
- //# sourceMappingURL=integrations.js.map