@adhdev/daemon-core 0.9.82-rc.46 → 0.9.82-rc.460

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 (439) hide show
  1. package/dist/boot/daemon-lifecycle.d.ts +9 -0
  2. package/dist/boot/process-hardening.d.ts +50 -0
  3. package/dist/build-info.d.ts +37 -0
  4. package/dist/chat/source-machine.d.ts +166 -0
  5. package/dist/chat/source-resolver.d.ts +104 -0
  6. package/dist/chat/subscription-updates.d.ts +1 -0
  7. package/dist/cli-adapter-types.d.ts +68 -2
  8. package/dist/cli-adapters/cli-script-runner.d.ts +117 -0
  9. package/dist/cli-adapters/cli-state-engine.d.ts +200 -0
  10. package/dist/cli-adapters/provider-cli-adapter.d.ts +126 -64
  11. package/dist/cli-adapters/provider-cli-parse.d.ts +5 -0
  12. package/dist/cli-adapters/provider-cli-runtime.d.ts +34 -0
  13. package/dist/cli-adapters/provider-cli-shared.d.ts +74 -0
  14. package/dist/cli-adapters/pty-write-chunking.d.ts +34 -0
  15. package/dist/cli-adapters/raw-terminal-io.d.ts +37 -0
  16. package/dist/cli-adapters/resolve-executable.d.ts +69 -0
  17. package/dist/cli-adapters/terminal-backends/ghostty-vt-backend.d.ts +6 -3
  18. package/dist/cli-adapters/terminal-backends/types.d.ts +10 -2
  19. package/dist/cli-adapters/terminal-screen.d.ts +4 -11
  20. package/dist/commands/chat-commands-debug-bundle.d.ts +14 -0
  21. package/dist/commands/chat-commands-read.d.ts +7 -0
  22. package/dist/commands/chat-commands-scope.d.ts +39 -0
  23. package/dist/commands/chat-commands-shared.d.ts +33 -0
  24. package/dist/commands/chat-commands-write.d.ts +14 -0
  25. package/dist/commands/chat-commands.d.ts +10 -23
  26. package/dist/commands/cli-manager.d.ts +25 -1
  27. package/dist/commands/handler.d.ts +125 -0
  28. package/dist/commands/high-family/index.d.ts +3 -0
  29. package/dist/commands/high-family/mesh-coordinator-launch.d.ts +2 -0
  30. package/dist/commands/high-family/mesh-events.d.ts +2 -0
  31. package/dist/commands/high-family/mesh-status.d.ts +2 -0
  32. package/dist/commands/high-family/types.d.ts +64 -0
  33. package/dist/commands/low-family/coordinator-prompt.d.ts +9 -0
  34. package/dist/commands/low-family/daemon-lifecycle.d.ts +2 -0
  35. package/dist/commands/low-family/diagnostics.d.ts +2 -0
  36. package/dist/commands/low-family/index.d.ts +3 -0
  37. package/dist/commands/low-family/mesh-ledger.d.ts +10 -0
  38. package/dist/commands/low-family/mesh-node-logs.d.ts +2 -0
  39. package/dist/commands/low-family/notification.d.ts +2 -0
  40. package/dist/commands/low-family/refine-config.d.ts +2 -0
  41. package/dist/commands/low-family/session-host.d.ts +2 -0
  42. package/dist/commands/low-family/spec-providerdev.d.ts +11 -0
  43. package/dist/commands/low-family/status-meta.d.ts +2 -0
  44. package/dist/commands/low-family/types.d.ts +33 -0
  45. package/dist/commands/med-family/cli-agent.d.ts +2 -0
  46. package/dist/commands/med-family/fast-forward.d.ts +2 -0
  47. package/dist/commands/med-family/ide.d.ts +10 -0
  48. package/dist/commands/med-family/index.d.ts +3 -0
  49. package/dist/commands/med-family/mesh-crud.d.ts +48 -0
  50. package/dist/commands/med-family/mesh-host-pairing.d.ts +2 -0
  51. package/dist/commands/med-family/mesh-queue.d.ts +2 -0
  52. package/dist/commands/med-family/mesh-restart.d.ts +2 -0
  53. package/dist/commands/med-family/types.d.ts +152 -0
  54. package/dist/commands/mesh-coordinator.d.ts +85 -1
  55. package/dist/commands/router-refine.d.ts +137 -0
  56. package/dist/commands/router-worktree-cleanup.d.ts +133 -0
  57. package/dist/commands/router.d.ts +241 -12
  58. package/dist/commands/upgrade-helper.d.ts +41 -1
  59. package/dist/config/chat-history.d.ts +9 -0
  60. package/dist/config/config.d.ts +19 -0
  61. package/dist/config/mesh-config.d.ts +129 -1
  62. package/dist/config/mesh-json-config.d.ts +199 -0
  63. package/dist/config/registry-resolver.d.ts +54 -0
  64. package/dist/config/repo-settings.d.ts +77 -0
  65. package/dist/daemon/dev-server.d.ts +0 -2
  66. package/dist/detection/ide-detector.d.ts +13 -0
  67. package/dist/detection/win32-ide-version.d.ts +37 -0
  68. package/dist/git/change-impact-config.d.ts +159 -0
  69. package/dist/git/git-commands.d.ts +12 -1
  70. package/dist/git/git-diff.d.ts +6 -0
  71. package/dist/git/git-executor.d.ts +11 -0
  72. package/dist/git/git-status.d.ts +57 -0
  73. package/dist/git/git-types.d.ts +2 -50
  74. package/dist/git/git-worktree.d.ts +71 -1
  75. package/dist/git/index.d.ts +3 -1
  76. package/dist/index.d.ts +67 -15
  77. package/dist/index.js +57943 -25340
  78. package/dist/index.js.map +1 -1
  79. package/dist/index.mjs +57611 -25174
  80. package/dist/index.mjs.map +1 -1
  81. package/dist/installer.d.ts +1 -4
  82. package/dist/ipc/local-ipc-server.d.ts +91 -0
  83. package/dist/launch.d.ts +1 -1
  84. package/dist/logging/async-batch-writer.d.ts +10 -0
  85. package/dist/logging/debug-config.d.ts +16 -0
  86. package/dist/logging/log-redactor.d.ts +24 -0
  87. package/dist/logging/log-tail-reader.d.ts +81 -0
  88. package/dist/logging/logger.d.ts +1 -1
  89. package/dist/mesh/contracts.d.ts +230 -0
  90. package/dist/mesh/coordinator-prompt.d.ts +76 -0
  91. package/dist/mesh/coordinator-registry.d.ts +59 -0
  92. package/dist/mesh/mesh-active-work.d.ts +174 -0
  93. package/dist/mesh/mesh-clone-grace.d.ts +8 -0
  94. package/dist/mesh/mesh-coordinator-config.d.ts +21 -0
  95. package/dist/mesh/mesh-delivery-policy.d.ts +131 -0
  96. package/dist/mesh/mesh-event-classify.d.ts +7 -0
  97. package/dist/mesh/mesh-event-forwarding.d.ts +41 -0
  98. package/dist/mesh/mesh-event-trace.d.ts +21 -0
  99. package/dist/mesh/mesh-events-coordinator.d.ts +4 -0
  100. package/dist/mesh/mesh-events-pending.d.ts +113 -0
  101. package/dist/mesh/mesh-events-stale.d.ts +61 -0
  102. package/dist/mesh/mesh-events-utils.d.ts +75 -0
  103. package/dist/mesh/mesh-events.d.ts +6 -49
  104. package/dist/mesh/mesh-fast-forward.d.ts +81 -0
  105. package/dist/mesh/mesh-host-ownership.d.ts +29 -0
  106. package/dist/mesh/mesh-init.d.ts +128 -0
  107. package/dist/mesh/mesh-ledger-reconciliation.d.ts +23 -4
  108. package/dist/mesh/mesh-ledger.d.ts +133 -1
  109. package/dist/mesh/mesh-magi-status.d.ts +63 -0
  110. package/dist/mesh/mesh-missions.d.ts +189 -0
  111. package/dist/mesh/mesh-node-identity.d.ts +306 -0
  112. package/dist/mesh/mesh-queue-assignment.d.ts +158 -0
  113. package/dist/mesh/mesh-reconcile-loop.d.ts +80 -0
  114. package/dist/mesh/mesh-refine-batch.d.ts +68 -0
  115. package/dist/mesh/mesh-refine-gates.d.ts +428 -0
  116. package/dist/mesh/mesh-refine-status.d.ts +62 -0
  117. package/dist/mesh/mesh-review-inbox.d.ts +90 -0
  118. package/dist/mesh/mesh-routing.d.ts +70 -0
  119. package/dist/mesh/mesh-runtime-store.d.ts +476 -0
  120. package/dist/mesh/mesh-scheduling-runtime.d.ts +78 -0
  121. package/dist/mesh/mesh-task-inflight.d.ts +46 -0
  122. package/dist/mesh/mesh-task-stats.d.ts +49 -0
  123. package/dist/mesh/mesh-unresolved-forward-outbox.d.ts +30 -0
  124. package/dist/mesh/mesh-warmup-deadline.d.ts +68 -0
  125. package/dist/mesh/mesh-work-queue.d.ts +318 -5
  126. package/dist/mesh/preview-freshness.d.ts +28 -0
  127. package/dist/mesh/refine-config.d.ts +216 -0
  128. package/dist/mesh/worktree-bootstrap-config.d.ts +219 -0
  129. package/dist/providers/acp-provider-instance.d.ts +5 -0
  130. package/dist/providers/approval-utils.d.ts +45 -0
  131. package/dist/providers/chat-message-normalization.d.ts +58 -1
  132. package/dist/providers/cli-provider-instance.d.ts +290 -3
  133. package/dist/providers/contracts.d.ts +149 -6
  134. package/dist/providers/external-sources.d.ts +71 -0
  135. package/dist/providers/manual-attendance.d.ts +79 -0
  136. package/dist/providers/native-history/antigravity-claim-registry.d.ts +28 -0
  137. package/dist/providers/native-history/antigravity-cli-transcript.d.ts +137 -0
  138. package/dist/providers/native-history/claude-cli-transcript.d.ts +70 -0
  139. package/dist/providers/native-history/codex-cli-transcript.d.ts +73 -0
  140. package/dist/providers/native-history/constants.d.ts +12 -0
  141. package/dist/providers/native-history/dispatcher.d.ts +31 -0
  142. package/dist/providers/native-history/hermes-cli-transcript.d.ts +30 -0
  143. package/dist/providers/native-history/index.d.ts +13 -0
  144. package/dist/providers/provider-instance-manager.d.ts +29 -0
  145. package/dist/providers/provider-instance.d.ts +30 -1
  146. package/dist/providers/provider-loader.d.ts +42 -5
  147. package/dist/providers/provider-trust.d.ts +31 -0
  148. package/dist/providers/read-chat-contract.d.ts +29 -0
  149. package/dist/providers/sdk/v1/builders/acp/detect-status.d.ts +68 -0
  150. package/dist/providers/sdk/v1/builders/cli/detect-status.d.ts +86 -0
  151. package/dist/providers/sdk/v1/builders/cli/parse-approval-squash.d.ts +59 -0
  152. package/dist/providers/sdk/v1/builders/cli/parse-approval.d.ts +65 -0
  153. package/dist/providers/sdk/v1/builders/cli/parse-session.d.ts +91 -0
  154. package/dist/providers/sdk/v1/builders/cli/visible-region.d.ts +42 -0
  155. package/dist/providers/sdk/v1/fixture-tooling/format.d.ts +126 -0
  156. package/dist/providers/sdk/v1/fixture-tooling/index.d.ts +8 -0
  157. package/dist/providers/sdk/v1/fixture-tooling/replay.d.ts +38 -0
  158. package/dist/providers/sdk/v1/index.d.ts +30 -0
  159. package/dist/providers/sdk/v1/sandbox/README-design.d.ts +193 -0
  160. package/dist/providers/sdk/v1/sandbox/require-whitelist.d.ts +74 -0
  161. package/dist/providers/sdk/v1/sandbox/script-runner.d.ts +98 -0
  162. package/dist/providers/sdk/v1/types/cli/index.d.ts +277 -0
  163. package/dist/providers/sdk/v1/types/common/index.d.ts +203 -0
  164. package/dist/providers/sdk/v1/validators/index.d.ts +5 -0
  165. package/dist/providers/sdk/v1/validators/manifest.d.ts +40 -0
  166. package/dist/providers/sdk/v1/validators/taint.d.ts +52 -0
  167. package/dist/providers/spec/adapter.d.ts +98 -0
  168. package/dist/providers/spec/cli-adapter.d.ts +223 -0
  169. package/dist/providers/spec/evaluator.d.ts +45 -0
  170. package/dist/providers/spec/fsm-driver.d.ts +449 -0
  171. package/dist/providers/spec/fsm-evaluator.d.ts +93 -0
  172. package/dist/providers/spec/fsm-loader.d.ts +14 -0
  173. package/dist/providers/spec/fsm-types.d.ts +202 -0
  174. package/dist/providers/spec/native-history-executor.d.ts +41 -0
  175. package/dist/providers/spec/pre-launch-trust.d.ts +16 -0
  176. package/dist/providers/spec/route.d.ts +4 -0
  177. package/dist/providers/spec/types.d.ts +222 -0
  178. package/dist/providers/status-monitor.d.ts +7 -7
  179. package/dist/providers/transcript-v2.d.ts +176 -0
  180. package/dist/providers/types/interactive-prompt.d.ts +84 -0
  181. package/dist/providers/working-dir.d.ts +17 -0
  182. package/dist/repo-mesh-types.d.ts +519 -13
  183. package/dist/runtime-defaults.d.ts +2 -0
  184. package/dist/session-host/managed-host.d.ts +64 -0
  185. package/dist/session-host/runtime-surface.d.ts +10 -16
  186. package/dist/sessions/registry.d.ts +6 -0
  187. package/dist/shared-types-extra.d.ts +2 -4
  188. package/dist/shared-types.d.ts +86 -55
  189. package/dist/status/normalize.d.ts +1 -1
  190. package/dist/status/normalize.js +1 -0
  191. package/dist/status/normalize.js.map +1 -1
  192. package/dist/status/normalize.mjs +1 -0
  193. package/dist/status/normalize.mjs.map +1 -1
  194. package/dist/status/reporter.d.ts +2 -0
  195. package/dist/status/snapshot.d.ts +26 -0
  196. package/dist/system/hash.d.ts +8 -0
  197. package/dist/system/load-better-sqlite3.d.ts +21 -0
  198. package/dist/types.d.ts +5 -0
  199. package/package.json +11 -4
  200. package/src/agent-stream/poller.ts +2 -3
  201. package/src/agent-stream/provider-adapter.ts +1 -1
  202. package/src/boot/daemon-lifecycle.ts +65 -12
  203. package/src/boot/process-hardening.ts +89 -0
  204. package/src/build-info.ts +73 -0
  205. package/src/chat/source-machine.ts +534 -0
  206. package/src/chat/source-resolver.ts +0 -0
  207. package/src/chat/subscription-updates.ts +20 -1
  208. package/src/cli-adapter-types.d.ts +3 -1
  209. package/src/cli-adapter-types.ts +68 -2
  210. package/src/cli-adapters/cli-script-runner.ts +421 -0
  211. package/src/cli-adapters/cli-state-engine.ts +1246 -0
  212. package/src/cli-adapters/provider-cli-adapter.d.ts +1 -1
  213. package/src/cli-adapters/provider-cli-adapter.ts +914 -1144
  214. package/src/cli-adapters/provider-cli-parse.d.ts +2 -0
  215. package/src/cli-adapters/provider-cli-parse.ts +19 -0
  216. package/src/cli-adapters/provider-cli-runtime.ts +56 -7
  217. package/src/cli-adapters/provider-cli-shared.d.ts +4 -0
  218. package/src/cli-adapters/provider-cli-shared.ts +121 -11
  219. package/src/cli-adapters/pty-transport.ts +2 -1
  220. package/src/cli-adapters/pty-write-chunking.ts +106 -0
  221. package/src/cli-adapters/raw-terminal-io.ts +252 -0
  222. package/src/cli-adapters/resolve-executable.ts +204 -0
  223. package/src/cli-adapters/session-host-transport.ts +2 -1
  224. package/src/cli-adapters/terminal-backends/ghostty-vt-backend.ts +63 -29
  225. package/src/cli-adapters/terminal-backends/types.ts +10 -3
  226. package/src/cli-adapters/terminal-screen.ts +16 -81
  227. package/src/commands/chat-commands-debug-bundle.ts +398 -0
  228. package/src/commands/chat-commands-read.ts +2488 -0
  229. package/src/commands/chat-commands-scope.ts +54 -0
  230. package/src/commands/chat-commands-shared.ts +114 -0
  231. package/src/commands/chat-commands-write.ts +891 -0
  232. package/src/commands/chat-commands.ts +19 -1841
  233. package/src/commands/cli-manager.ts +596 -27
  234. package/src/commands/handler.ts +845 -2
  235. package/src/commands/high-family/index.ts +28 -0
  236. package/src/commands/high-family/mesh-coordinator-launch.ts +680 -0
  237. package/src/commands/high-family/mesh-events.ts +89 -0
  238. package/src/commands/high-family/mesh-status.ts +822 -0
  239. package/src/commands/high-family/types.ts +80 -0
  240. package/src/commands/low-family/coordinator-prompt.ts +72 -0
  241. package/src/commands/low-family/daemon-lifecycle.ts +120 -0
  242. package/src/commands/low-family/diagnostics.ts +57 -0
  243. package/src/commands/low-family/index.ts +37 -0
  244. package/src/commands/low-family/mesh-ledger.ts +62 -0
  245. package/src/commands/low-family/mesh-node-logs.ts +87 -0
  246. package/src/commands/low-family/notification.ts +116 -0
  247. package/src/commands/low-family/refine-config.ts +106 -0
  248. package/src/commands/low-family/session-host.ts +274 -0
  249. package/src/commands/low-family/spec-providerdev.ts +217 -0
  250. package/src/commands/low-family/status-meta.ts +112 -0
  251. package/src/commands/low-family/types.ts +39 -0
  252. package/src/commands/med-family/cli-agent.ts +241 -0
  253. package/src/commands/med-family/fast-forward.ts +230 -0
  254. package/src/commands/med-family/ide.ts +163 -0
  255. package/src/commands/med-family/index.ts +37 -0
  256. package/src/commands/med-family/mesh-crud.ts +1287 -0
  257. package/src/commands/med-family/mesh-host-pairing.ts +234 -0
  258. package/src/commands/med-family/mesh-queue.ts +167 -0
  259. package/src/commands/med-family/mesh-restart.ts +92 -0
  260. package/src/commands/med-family/types.ts +153 -0
  261. package/src/commands/mesh-coordinator.ts +334 -124
  262. package/src/commands/router-refine.ts +1711 -0
  263. package/src/commands/router-worktree-cleanup.ts +870 -0
  264. package/src/commands/router.ts +1025 -4070
  265. package/src/commands/stream-commands.ts +8 -0
  266. package/src/commands/upgrade-helper.ts +310 -45
  267. package/src/config/chat-history.ts +493 -24
  268. package/src/config/config.ts +30 -0
  269. package/src/config/mesh-config.ts +619 -23
  270. package/src/config/mesh-json-config.ts +376 -0
  271. package/src/config/recent-activity.ts +8 -2
  272. package/src/config/registry-resolver.ts +100 -0
  273. package/src/config/repo-settings.ts +111 -0
  274. package/src/daemon/dev-auto-implement.ts +3 -2
  275. package/src/daemon/dev-cli-debug.ts +10 -1
  276. package/src/daemon/dev-server.ts +0 -541
  277. package/src/detection/cli-detector.ts +28 -9
  278. package/src/detection/ide-detector.ts +55 -16
  279. package/src/detection/win32-ide-version.ts +106 -0
  280. package/src/git/change-impact-config.ts +354 -0
  281. package/src/git/git-commands.ts +78 -15
  282. package/src/git/git-diff.ts +81 -11
  283. package/src/git/git-executor.ts +12 -0
  284. package/src/git/git-status.ts +767 -48
  285. package/src/git/git-types.ts +14 -62
  286. package/src/git/git-worktree.ts +261 -4
  287. package/src/git/index.ts +17 -0
  288. package/src/index.ts +200 -12
  289. package/src/installer.d.ts +1 -1
  290. package/src/installer.ts +8 -6
  291. package/src/ipc/local-ipc-server.ts +278 -0
  292. package/src/launch.d.ts +1 -1
  293. package/src/launch.ts +37 -28
  294. package/src/logging/async-batch-writer.ts +55 -0
  295. package/src/logging/command-log.ts +7 -5
  296. package/src/logging/debug-config.ts +25 -0
  297. package/src/logging/debug-trace.ts +7 -2
  298. package/src/logging/log-redactor.ts +100 -0
  299. package/src/logging/log-tail-reader.ts +341 -0
  300. package/src/logging/logger.ts +14 -7
  301. package/src/mesh/contracts.ts +469 -0
  302. package/src/mesh/coordinator-prompt.ts +536 -34
  303. package/src/mesh/coordinator-registry.ts +121 -0
  304. package/src/mesh/mesh-active-work.ts +656 -0
  305. package/src/mesh/mesh-clone-grace.ts +68 -0
  306. package/src/mesh/mesh-coordinator-config.ts +97 -0
  307. package/src/mesh/mesh-delivery-policy.ts +315 -0
  308. package/src/mesh/mesh-event-classify.ts +73 -0
  309. package/src/mesh/mesh-event-forwarding.ts +1932 -0
  310. package/src/mesh/mesh-event-trace.ts +67 -0
  311. package/src/mesh/mesh-events-coordinator.ts +32 -0
  312. package/src/mesh/mesh-events-pending.ts +766 -0
  313. package/src/mesh/mesh-events-stale.ts +440 -0
  314. package/src/mesh/mesh-events-utils.ts +443 -0
  315. package/src/mesh/mesh-events.ts +33 -1035
  316. package/src/mesh/mesh-fast-forward.ts +856 -0
  317. package/src/mesh/mesh-host-ownership.ts +111 -0
  318. package/src/mesh/mesh-init.ts +350 -0
  319. package/src/mesh/mesh-ledger-reconciliation.ts +12 -7
  320. package/src/mesh/mesh-ledger.ts +873 -102
  321. package/src/mesh/mesh-magi-status.ts +223 -0
  322. package/src/mesh/mesh-missions.ts +449 -0
  323. package/src/mesh/mesh-node-identity.ts +1994 -0
  324. package/src/mesh/mesh-queue-assignment.ts +2233 -0
  325. package/src/mesh/mesh-reconcile-loop.ts +2390 -0
  326. package/src/mesh/mesh-refine-batch.ts +205 -0
  327. package/src/mesh/mesh-refine-gates.ts +1686 -0
  328. package/src/mesh/mesh-refine-status.ts +231 -0
  329. package/src/mesh/mesh-review-inbox.ts +308 -0
  330. package/src/mesh/mesh-routing.ts +291 -0
  331. package/src/mesh/mesh-runtime-store.ts +2026 -0
  332. package/src/mesh/mesh-scheduling-runtime.ts +198 -0
  333. package/src/mesh/mesh-task-inflight.ts +70 -0
  334. package/src/mesh/mesh-task-stats.ts +161 -0
  335. package/src/mesh/mesh-unresolved-forward-outbox.ts +185 -0
  336. package/src/mesh/mesh-warmup-deadline.ts +152 -0
  337. package/src/mesh/mesh-work-queue.ts +1281 -141
  338. package/src/mesh/preview-freshness.ts +163 -0
  339. package/src/mesh/refine-config.ts +423 -0
  340. package/src/mesh/worktree-bootstrap-config.ts +599 -0
  341. package/src/providers/acp-provider-instance.ts +43 -10
  342. package/src/providers/approval-utils.d.ts +5 -0
  343. package/src/providers/approval-utils.ts +99 -5
  344. package/src/providers/chat-message-normalization.ts +126 -4
  345. package/src/providers/cli-provider-instance.ts +2456 -107
  346. package/src/providers/contracts.d.ts +55 -0
  347. package/src/providers/contracts.ts +160 -6
  348. package/src/providers/extension-provider-instance.ts +12 -7
  349. package/src/providers/external-sources.ts +218 -0
  350. package/src/providers/ide-provider-instance.ts +35 -12
  351. package/src/providers/manual-attendance.ts +105 -0
  352. package/src/providers/native-history/antigravity-claim-registry.ts +131 -0
  353. package/src/providers/native-history/antigravity-cli-transcript.ts +1193 -0
  354. package/src/providers/native-history/claude-cli-transcript.ts +396 -0
  355. package/src/providers/native-history/codex-cli-transcript.ts +479 -0
  356. package/src/providers/native-history/constants.ts +19 -0
  357. package/src/providers/native-history/dispatcher.ts +503 -0
  358. package/src/providers/native-history/hermes-cli-transcript.ts +260 -0
  359. package/src/providers/native-history/index.ts +30 -0
  360. package/src/providers/provider-instance-manager.ts +71 -0
  361. package/src/providers/provider-instance.ts +24 -1
  362. package/src/providers/provider-loader.ts +700 -55
  363. package/src/providers/provider-schema.ts +87 -14
  364. package/src/providers/provider-trust.ts +114 -0
  365. package/src/providers/read-chat-contract.ts +76 -16
  366. package/src/providers/sdk/README.md +49 -0
  367. package/src/providers/sdk/v1/builders/acp/detect-status.ts +144 -0
  368. package/src/providers/sdk/v1/builders/cli/detect-status.ts +313 -0
  369. package/src/providers/sdk/v1/builders/cli/parse-approval-squash.ts +158 -0
  370. package/src/providers/sdk/v1/builders/cli/parse-approval.ts +261 -0
  371. package/src/providers/sdk/v1/builders/cli/parse-session.ts +276 -0
  372. package/src/providers/sdk/v1/builders/cli/visible-region.ts +143 -0
  373. package/src/providers/sdk/v1/fixture-tooling/format.ts +130 -0
  374. package/src/providers/sdk/v1/fixture-tooling/index.ts +22 -0
  375. package/src/providers/sdk/v1/fixture-tooling/replay.ts +352 -0
  376. package/src/providers/sdk/v1/index.ts +152 -0
  377. package/src/providers/sdk/v1/sandbox/README-design.ts +195 -0
  378. package/src/providers/sdk/v1/sandbox/require-whitelist.ts +472 -0
  379. package/src/providers/sdk/v1/sandbox/script-runner.ts +150 -0
  380. package/src/providers/sdk/v1/schemas/cli/provider.schema.json +509 -0
  381. package/src/providers/sdk/v1/schemas/primitives/acp-session-protocol-v1.json +131 -0
  382. package/src/providers/sdk/v1/schemas/primitives/native-history-codex-rollout-v1.json +66 -0
  383. package/src/providers/sdk/v1/schemas/primitives/tui-approval-squash-v1.json +91 -0
  384. package/src/providers/sdk/v1/schemas/primitives/tui-assistant-block-v1.json +91 -0
  385. package/src/providers/sdk/v1/schemas/primitives/tui-cue-ordering-v1.json +47 -0
  386. package/src/providers/sdk/v1/schemas/primitives/tui-dispatch-order-v1.json +32 -0
  387. package/src/providers/sdk/v1/schemas/primitives/tui-footer-chrome-v1.json +42 -0
  388. package/src/providers/sdk/v1/schemas/primitives/tui-index-finder-v1.json +27 -0
  389. package/src/providers/sdk/v1/schemas/primitives/tui-modal-v1.json +125 -0
  390. package/src/providers/sdk/v1/schemas/primitives/tui-prompt-marker-v1.json +45 -0
  391. package/src/providers/sdk/v1/schemas/primitives/tui-session-id-extraction-v1.json +46 -0
  392. package/src/providers/sdk/v1/schemas/primitives/tui-settled-prompt-v1.json +71 -0
  393. package/src/providers/sdk/v1/schemas/primitives/tui-spinner-v1.json +83 -0
  394. package/src/providers/sdk/v1/schemas/primitives/tui-transcript-pty-v1.json +83 -0
  395. package/src/providers/sdk/v1/schemas/primitives/tui-visible-region-v1.json +57 -0
  396. package/src/providers/sdk/v1/schemas/primitives/tui-welcome-screen-v1.json +35 -0
  397. package/src/providers/sdk/v1/types/cli/index.ts +365 -0
  398. package/src/providers/sdk/v1/types/common/index.ts +229 -0
  399. package/src/providers/sdk/v1/validators/index.ts +19 -0
  400. package/src/providers/sdk/v1/validators/manifest.ts +110 -0
  401. package/src/providers/sdk/v1/validators/taint.ts +309 -0
  402. package/src/providers/spec/adapter.ts +246 -0
  403. package/src/providers/spec/cli-adapter.ts +1064 -0
  404. package/src/providers/spec/evaluator.ts +407 -0
  405. package/src/providers/spec/fsm-driver.ts +1528 -0
  406. package/src/providers/spec/fsm-evaluator.ts +290 -0
  407. package/src/providers/spec/fsm-loader.ts +128 -0
  408. package/src/providers/spec/fsm-types.ts +301 -0
  409. package/src/providers/spec/native-history-executor.ts +1174 -0
  410. package/src/providers/spec/pre-launch-trust.ts +104 -0
  411. package/src/providers/spec/route.ts +51 -0
  412. package/src/providers/spec/types.ts +262 -0
  413. package/src/providers/status-monitor.d.ts +7 -7
  414. package/src/providers/status-monitor.ts +37 -22
  415. package/src/providers/transcript-v2.ts +567 -0
  416. package/src/providers/types/interactive-prompt.ts +536 -0
  417. package/src/providers/version-archive.ts +64 -24
  418. package/src/providers/working-dir.ts +23 -0
  419. package/src/repo-mesh-types.ts +758 -14
  420. package/src/runtime-defaults.ts +39 -0
  421. package/src/session-host/managed-host.ts +218 -0
  422. package/src/session-host/runtime-surface.ts +20 -80
  423. package/src/sessions/registry.ts +6 -0
  424. package/src/shared-types-extra.ts +2 -4
  425. package/src/shared-types.d.ts +8 -0
  426. package/src/shared-types.ts +124 -55
  427. package/src/status/builders.ts +26 -6
  428. package/src/status/normalize.ts +2 -0
  429. package/src/status/reporter.ts +19 -1
  430. package/src/status/snapshot.ts +95 -26
  431. package/src/system/hash.ts +23 -0
  432. package/src/system/host-memory.ts +29 -12
  433. package/src/system/load-better-sqlite3.ts +68 -0
  434. package/src/types.ts +5 -0
  435. package/dist/cli-adapters/terminal-backends/xterm-backend.d.ts +0 -17
  436. package/dist/mesh/mesh-sync.d.ts +0 -53
  437. package/src/cli-adapters/terminal-backends/ghostty-vt-backend.d.ts +0 -16
  438. package/src/cli-adapters/terminal-backends/xterm-backend.ts +0 -97
  439. package/src/mesh/mesh-sync.ts +0 -111
@@ -0,0 +1,159 @@
1
+ /**
2
+ * "Change Impact" — config-driven classification of which git changes between the
3
+ * live daemon's build commit and the workspace HEAD actually require a daemon
4
+ * rebuild/restart (vs. a web-only redeploy, vs. nothing).
5
+ *
6
+ * The daemon-core git surface only knows the FACTS (which files / packages changed
7
+ * between buildCommit..HEAD). The POLICY — which packages are daemon-runtime, which
8
+ * are web-only, which root files are non-runtime, and what command to recommend —
9
+ * is declarative config injected from outside. This keeps git-status.ts repo-agnostic
10
+ * while preserving ADHDev's exact built-in behavior when no config is present.
11
+ *
12
+ * SECURITY: config is declarative only. JSON/YAML are parsed; arbitrary JS config
13
+ * (.js) is intentionally NOT supported, so loading a config can never execute code.
14
+ */
15
+ /** A change-impact classification bucket. */
16
+ export type ChangeImpactKind = 'daemon' | 'web' | 'none';
17
+ /**
18
+ * Recommended action for a given impact classification. `recommendedAction` is the
19
+ * stable classification key (always one of daemon|web|none, NOT config-overridable);
20
+ * config customizes only the human-facing `recommendedCommand` recipe.
21
+ */
22
+ export interface ChangeImpactTarget {
23
+ /** Human-facing command/recipe to act on the impact (e.g. deploy + restart). */
24
+ recommendedCommand: string;
25
+ }
26
+ export interface ChangeImpactConfig {
27
+ /**
28
+ * Package names (the `<name>` in `packages/<name>/`) whose change means the
29
+ * daemon runtime is stale and must be rebuilt/redeployed + restarted. When
30
+ * provided, this REPLACES the built-in daemon-runtime set.
31
+ */
32
+ daemonRuntimePackages?: string[];
33
+ /**
34
+ * Package names that are web-only — a change to one does not require a daemon
35
+ * restart, only a web redeploy. When provided, this REPLACES the built-in
36
+ * web-only set.
37
+ */
38
+ webOnlyPackages?: string[];
39
+ /**
40
+ * Glob patterns for root-level (non-package) files that demonstrably cannot
41
+ * change what the daemon runtime executes (markers, docs, license text). These
42
+ * are added on top of the built-in non-runtime root-file detection.
43
+ */
44
+ nonRuntimeRootFilePatterns?: string[];
45
+ /** Recommended action/command per impact classification. Missing keys fall back to built-in defaults. */
46
+ impactTargets?: Partial<Record<ChangeImpactKind, ChangeImpactTarget>>;
47
+ }
48
+ export interface ChangeImpactConfigLoadResult {
49
+ config?: ChangeImpactConfig;
50
+ source: string;
51
+ sourceType: 'repo_file' | 'unavailable' | 'invalid';
52
+ path?: string;
53
+ error?: string;
54
+ /**
55
+ * Stable identity of the config SOURCE, used as part of a cache key so a config
56
+ * edit invalidates any cached impact evaluation. Combines the resolved path and
57
+ * its mtime (or the path for the unavailable/invalid case).
58
+ */
59
+ sourceKey: string;
60
+ }
61
+ export declare const CHANGE_IMPACT_CONFIG_LOCATIONS: string[];
62
+ export declare const CHANGE_IMPACT_CONFIG_SCHEMA: {
63
+ readonly $schema: "https://json-schema.org/draft/2020-12/schema";
64
+ readonly title: "ADHDev Change Impact Config";
65
+ readonly type: "object";
66
+ readonly additionalProperties: false;
67
+ readonly properties: {
68
+ readonly daemonRuntimePackages: {
69
+ readonly type: "array";
70
+ readonly items: {
71
+ readonly type: "string";
72
+ readonly minLength: 1;
73
+ };
74
+ };
75
+ readonly webOnlyPackages: {
76
+ readonly type: "array";
77
+ readonly items: {
78
+ readonly type: "string";
79
+ readonly minLength: 1;
80
+ };
81
+ };
82
+ readonly nonRuntimeRootFilePatterns: {
83
+ readonly type: "array";
84
+ readonly items: {
85
+ readonly type: "string";
86
+ readonly minLength: 1;
87
+ };
88
+ };
89
+ readonly impactTargets: {
90
+ readonly type: "object";
91
+ readonly additionalProperties: false;
92
+ readonly properties: {
93
+ readonly daemon: {
94
+ readonly $ref: "#/$defs/target";
95
+ };
96
+ readonly web: {
97
+ readonly $ref: "#/$defs/target";
98
+ };
99
+ readonly none: {
100
+ readonly $ref: "#/$defs/target";
101
+ };
102
+ };
103
+ };
104
+ };
105
+ readonly $defs: {
106
+ readonly target: {
107
+ readonly type: "object";
108
+ readonly additionalProperties: false;
109
+ readonly required: readonly ["recommendedCommand"];
110
+ readonly properties: {
111
+ readonly recommendedCommand: {
112
+ readonly type: "string";
113
+ readonly minLength: 1;
114
+ };
115
+ };
116
+ };
117
+ };
118
+ };
119
+ export declare function validateChangeImpactConfig(raw: unknown, source?: string): {
120
+ valid: boolean;
121
+ errors: string[];
122
+ config?: ChangeImpactConfig;
123
+ };
124
+ /**
125
+ * Locate and load the Change Impact config for a repo root. Declarative only —
126
+ * never executes config. Returns a sourceKey suitable for cache invalidation:
127
+ * config path + mtime, or the sentinel for the missing/invalid case.
128
+ */
129
+ export declare function loadChangeImpactConfig(repoRoot: string): ChangeImpactConfigLoadResult;
130
+ /**
131
+ * Translate a config glob pattern into a RegExp matched against a forward-slash
132
+ * file path. Supports `**` (any path segments), `*` (any chars except `/`), and
133
+ * `?` (single non-slash char). No brace/character-class expansion — declarative,
134
+ * minimal, predictable. All other characters are matched literally.
135
+ */
136
+ export declare function globToRegExp(pattern: string): RegExp;
137
+ export interface ChangeImpactConfigSuggestion {
138
+ /** A non-executable, declarative config draft a human can save verbatim. */
139
+ suggestedConfig: ChangeImpactConfig;
140
+ /** Per-field human-facing rationale for the proposed classification. */
141
+ notes: string[];
142
+ /** Package directories discovered under `packages/` (and `oss/packages/`). */
143
+ discoveredPackages: {
144
+ daemon: string[];
145
+ web: string[];
146
+ unclassified: string[];
147
+ };
148
+ }
149
+ /**
150
+ * Inspect a repo's package layout and propose a reasonable, declarative Change
151
+ * Impact config draft. This is heuristic scaffold ONLY — it never executes
152
+ * anything and the draft must be reviewed/saved by a human before it takes
153
+ * effect. The heuristic mirrors ADHDev's own conventions:
154
+ * - `web-*` / `*-web` packages → web-only (web redeploy, no daemon restart)
155
+ * - everything else under packages/ → daemon-runtime (rebuild + restart)
156
+ * - docs/license/marker root files → non-runtime
157
+ * Callers are expected to prune the draft to their actual runtime topology.
158
+ */
159
+ export declare function suggestChangeImpactConfig(repoRoot: string): ChangeImpactConfigSuggestion;
@@ -23,8 +23,12 @@ export interface GitLogResult extends GitRepoIdentity {
23
23
  lastCheckedAt: number;
24
24
  }
25
25
  export interface GitCheckpointResult extends GitRepoIdentity {
26
- commit: string;
26
+ commit?: string;
27
27
  message: string;
28
+ status?: 'created' | 'skipped';
29
+ skipped?: boolean;
30
+ noop?: boolean;
31
+ reason?: 'nothing_to_commit';
28
32
  lastCheckedAt: number;
29
33
  }
30
34
  export interface GitStashPushResult extends GitRepoIdentity {
@@ -43,15 +47,19 @@ export interface GitCommandServices {
43
47
  getStatus?: (params: {
44
48
  workspace: string;
45
49
  refreshUpstream?: boolean;
50
+ includeSubmodules?: boolean;
51
+ submoduleIgnorePaths?: string[];
46
52
  }) => Promise<GitRepoStatus> | GitRepoStatus;
47
53
  getDiffSummary?: (params: {
48
54
  workspace: string;
49
55
  staged?: boolean;
56
+ base?: string;
50
57
  }) => Promise<GitDiffSummary> | GitDiffSummary;
51
58
  getDiffFile?: (params: {
52
59
  workspace: string;
53
60
  path: string;
54
61
  staged?: boolean;
62
+ base?: string;
55
63
  }) => Promise<GitFileDiff> | GitFileDiff;
56
64
  createSnapshot?: (params: {
57
65
  workspace: string;
@@ -113,6 +121,9 @@ type GitCommandFailure = {
113
121
  type GitCommandSuccess = {
114
122
  success: true;
115
123
  status: GitRepoStatus;
124
+ reporterPlatform?: string;
125
+ reporterArch?: string;
126
+ reporterMachineNickname?: string;
116
127
  } | {
117
128
  success: true;
118
129
  diffSummary: GitDiffSummary;
@@ -3,6 +3,12 @@ export interface GitDiffOptions {
3
3
  timeoutMs?: number;
4
4
  maxFiles?: number;
5
5
  maxBytes?: number;
6
+ /**
7
+ * When set, diff `<baseRef>...HEAD` (merge-base range — "what this branch
8
+ * adds on top of base") instead of the working tree. Staged/untracked
9
+ * sections do not apply in this mode.
10
+ */
11
+ baseRef?: string;
6
12
  }
7
13
  export interface GitFileDiffResult {
8
14
  workspace: string;
@@ -1,4 +1,15 @@
1
1
  import type { GitFailureReason, GitRepoIdentity } from './git-types.js';
2
+ /**
3
+ * Timeout for status-collection git commands (status/log/submodule/stash/fetch).
4
+ * The default 5s is fine for porcelain status, but on Windows the `git` subprocess
5
+ * spawn itself is pathologically slow (measured: `submodule status` ~3.5s, cold
6
+ * `log -1` ~4.2s) and overlaps with refreshUpstream fetches — a single command
7
+ * routinely exceeds 5s, which previously collapsed the whole status to all-null and
8
+ * dropped the node from the mesh graph. Give the collection path a much larger
9
+ * budget so a slow-but-healthy repo never reads as "not a git repo". Windows gets a
10
+ * larger budget than POSIX because the spawn cost is OS-specific, not repo-specific.
11
+ */
12
+ export declare const GIT_STATUS_TIMEOUT_MS: number;
2
13
  export interface GitExecutorOptions {
3
14
  timeoutMs?: number;
4
15
  maxBuffer?: number;
@@ -1,4 +1,21 @@
1
1
  import type { GitRepoStatus } from './git-types.js';
2
+ import { type DaemonBuildInfo } from '../build-info.js';
3
+ import { type ChangeImpactConfig } from './change-impact-config.js';
4
+ /**
5
+ * TTL for the happy-path result cache (C1). reconcile fires every 4s and mesh_status
6
+ * is polled; a single getGitRepoStatus on a 1-submodule repo spawns ~13-15 git
7
+ * processes (+ optional network fetch) which on Windows is ~10-15s. Within this short
8
+ * window, repeat callers that share the same option shape are served the already
9
+ * collected status instead of re-shelling. Kept well under the 4s reconcile cadence so
10
+ * a genuinely fresh probe still happens at least roughly once per reconcile tick.
11
+ */
12
+ export declare const GIT_STATUS_CACHE_TTL_MS = 1500;
13
+ /** Test seam: clear the last-known-good status cache between cases. */
14
+ export declare function __resetGitStatusCacheForTests(): void;
15
+ /** Alias matching the task's requested name. */
16
+ export declare const __resetGitStatusCache: typeof __resetGitStatusCacheForTests;
17
+ /** Test-only introspection: number of memoized Change Impact evaluations. */
18
+ export declare function __changeImpactEvalCacheSizeForTests(): number;
2
19
  export interface GitStatusOptions {
3
20
  timeoutMs?: number;
4
21
  /** When true, include submodule status in the result. Defaults to true. */
@@ -10,10 +27,50 @@ export interface GitStatusOptions {
10
27
  * Callers should opt into this only for convergence-critical surfaces.
11
28
  */
12
29
  refreshUpstream?: boolean;
30
+ /**
31
+ * When true, bypass the C1 TTL result cache: always re-collect a fresh status
32
+ * (ignoring any cached entry younger than GIT_STATUS_CACHE_TTL_MS). The freshly
33
+ * collected result still UPDATES the cache so subsequent normal callers benefit.
34
+ *
35
+ * Mutating / decision callers (mesh_fast_forward preflight + post-merge re-read,
36
+ * refine submodule alignment pre/post status) MUST set this — acting on a stale
37
+ * ahead/behind or submodule sync verdict is the primary correctness hazard of the
38
+ * cache. Read-only/observe callers (mesh_status, git-monitor, reconcile) leave it
39
+ * unset and enjoy the dedup.
40
+ */
41
+ forceFresh?: boolean;
42
+ /**
43
+ * Test/override seam for the daemon build stamp used by the stale-build
44
+ * detector. Production callers omit this so the real baked-in build commit
45
+ * (getDaemonBuildInfo) is used.
46
+ */
47
+ daemonBuildInfo?: DaemonBuildInfo;
48
+ /**
49
+ * Change Impact policy override. When provided, the daemonBuildBehind
50
+ * classifier uses this declarative config instead of auto-loading the repo's
51
+ * `.adhdev/change-impact.*` file. When omitted, getGitRepoStatus auto-loads the
52
+ * repo config (cached); when neither is present the built-in ADHDev default
53
+ * policy applies, preserving the legacy behavior exactly.
54
+ *
55
+ * Pass `null` to force the built-in default policy and skip auto-loading (used
56
+ * to assert legacy parity in tests).
57
+ */
58
+ changeImpactConfig?: ChangeImpactConfig | null;
13
59
  }
60
+ /**
61
+ * C2: minimum interval between actual `git fetch` network calls per workspace. A
62
+ * refreshUpstream caller within this window does NOT re-fetch; it serves ahead/behind
63
+ * from the locally-re-read porcelain (which is always fresh every call). So
64
+ * refreshUpstream becomes "fetch if the local remote-tracking ref is stale" rather than
65
+ * "always pay a network round trip". Only the upstream ahead/behind can age up to this
66
+ * throttle; local working-tree status never does.
67
+ */
68
+ export declare const GIT_FETCH_THROTTLE_MS = 30000;
14
69
  export declare function getGitRepoStatus(workspace: string, options?: GitStatusOptions): Promise<GitRepoStatus>;
15
70
  interface ParsedPorcelainStatus {
16
71
  branch: string | null;
72
+ /** Full HEAD object id from `# branch.oid`, or null when detached/unborn. */
73
+ headOid: string | null;
17
74
  upstream: string | null;
18
75
  ahead: number;
19
76
  behind: number;
@@ -5,56 +5,8 @@
5
5
  * transports, and web-core. Git state is daemon-owned product truth; do not
6
6
  * infer these values from agent transcripts in frontend code.
7
7
  */
8
- export type GitFailureReason = 'not_git_repo' | 'git_not_installed' | 'timeout' | 'path_outside_repo' | 'dirty_index_required' | 'conflict' | 'invalid_args' | 'nothing_to_commit' | 'git_command_failed';
9
- export interface GitRepoIdentity {
10
- workspace: string;
11
- repoRoot: string | null;
12
- isGitRepo: boolean;
13
- }
14
- export interface GitSubmoduleStatus {
15
- /** Submodule path relative to repo root */
16
- path: string;
17
- /** Current commit SHA the submodule is at */
18
- commit: string;
19
- /** Path to the submodule repo (absolute) */
20
- repoPath: string;
21
- /** Whether the submodule has uncommitted changes */
22
- dirty: boolean;
23
- /** Whether the submodule commit differs from what the parent repo expects */
24
- outOfSync: boolean;
25
- /** Last checked timestamp */
26
- lastCheckedAt: number;
27
- /** Error message if submodule status could not be read */
28
- error?: string;
29
- }
30
- export type GitUpstreamFreshness = 'fresh' | 'unchecked' | 'stale' | 'no_upstream' | 'unavailable';
31
- export interface GitRepoStatus extends GitRepoIdentity {
32
- branch: string | null;
33
- headCommit: string | null;
34
- headMessage: string | null;
35
- upstream: string | null;
36
- /** Whether ahead/behind was verified against a freshly fetched upstream ref. */
37
- upstreamStatus: GitUpstreamFreshness;
38
- /** Timestamp for the fetch that refreshed upstream refs when upstreamStatus === 'fresh'. */
39
- upstreamFetchedAt?: number;
40
- /** Error from the last refresh attempt when upstreamStatus === 'stale'. */
41
- upstreamFetchError?: string;
42
- ahead: number;
43
- behind: number;
44
- staged: number;
45
- modified: number;
46
- untracked: number;
47
- deleted: number;
48
- renamed: number;
49
- hasConflicts: boolean;
50
- conflictFiles: string[];
51
- stashCount: number;
52
- lastCheckedAt: number;
53
- /** Submodule statuses when auto-discover is enabled */
54
- submodules?: GitSubmoduleStatus[];
55
- error?: string;
56
- reason?: GitFailureReason;
57
- }
8
+ export type { GitFailureReason, GitRepoIdentity, GitSubmoduleStatus, GitUpstreamFreshness, GitRepoStatus, DaemonBuildBehind, } from '@adhdev/mesh-shared';
9
+ import type { GitRepoIdentity, GitRepoStatus, GitFailureReason, GitUpstreamFreshness } from '@adhdev/mesh-shared';
58
10
  export type GitFileChangeStatus = 'added' | 'modified' | 'deleted' | 'renamed' | 'copied' | 'untracked' | 'conflict';
59
11
  export interface GitFileChange {
60
12
  path: string;
@@ -19,11 +19,54 @@ export interface WorktreeCreateOptions {
19
19
  meshName: string;
20
20
  /** Override the auto-resolved target directory */
21
21
  targetDir?: string;
22
+ /**
23
+ * Remote to fetch+compare the base branch against before branching.
24
+ * Default: 'origin'.
25
+ */
26
+ remote?: string;
27
+ /**
28
+ * When true (default) and `baseBranch` is given, fetch the base branch from
29
+ * `remote` and, if the local base branch is strictly behind the remote
30
+ * (no divergence), branch the worktree from the remote-tracking ref instead
31
+ * of the stale local ref. The decision is always surfaced via `baseSync`.
32
+ * Set false to preserve the legacy "branch from local ref, never fetch"
33
+ * behavior.
34
+ */
35
+ syncBaseFromRemote?: boolean;
36
+ }
37
+ /**
38
+ * How the worktree's start point was resolved relative to the remote base.
39
+ * Surfaced so the coordinator can detect a stale base node before dispatching
40
+ * work onto a worktree built on a behind/diverged base.
41
+ */
42
+ export interface WorktreeBaseSync {
43
+ /** The base branch name requested (e.g. 'main'). */
44
+ branch: string;
45
+ /** The remote compared against (e.g. 'origin'). */
46
+ remote: string;
47
+ /** The actual ref/commit-ish used as the worktree branch start point. */
48
+ startRef: string;
49
+ /** Whether `git fetch <remote> <branch>` succeeded. */
50
+ fetched: boolean;
51
+ /** Local base-branch SHA before clone, if the local ref exists. */
52
+ localSha?: string;
53
+ /** Remote-tracking base-branch SHA after fetch, if it exists. */
54
+ remoteSha?: string;
55
+ /** Commits the local base ref is behind the remote (0 when up-to-date/ahead). */
56
+ behindBy: number;
57
+ /** Commits the local base ref is ahead of the remote. */
58
+ aheadBy: number;
59
+ /** What was done with the base ref. */
60
+ action: 'up_to_date' | 'local_behind_used_remote' | 'local_ahead_used_local' | 'diverged_used_local' | 'no_remote_ref_used_local' | 'no_local_ref_used_remote';
61
+ /** Human-readable warning when the base was stale/diverged. */
62
+ warning?: string;
22
63
  }
23
64
  export interface WorktreeCreateResult {
24
65
  success: true;
25
66
  worktreePath: string;
26
67
  branch: string;
68
+ /** Present when `baseBranch` was given and base sync resolution ran. */
69
+ baseSync?: WorktreeBaseSync;
27
70
  }
28
71
  export interface WorktreeEntry {
29
72
  path: string;
@@ -56,7 +99,12 @@ export declare function resolveWorktreePath(repoRoot: string, meshName: string,
56
99
  /**
57
100
  * Create a new git worktree with a fresh branch.
58
101
  *
59
- * Runs: git worktree add <targetDir> -b <branch> [baseBranch]
102
+ * Runs: git worktree add <targetDir> -b <branch> [startRef]
103
+ *
104
+ * When `baseBranch` is given and `syncBaseFromRemote` is not disabled, the
105
+ * start point is resolved against the remote first (see
106
+ * resolveWorktreeBaseStartPoint) so a stale local base does not produce a stale
107
+ * worktree. The resolution is returned as `baseSync`.
60
108
  */
61
109
  export declare function createWorktree(opts: WorktreeCreateOptions): Promise<WorktreeCreateResult>;
62
110
  /**
@@ -75,3 +123,25 @@ export declare function listWorktrees(repoRoot: string): Promise<WorktreeEntry[]
75
123
  * Parse `git worktree list --porcelain` output into structured entries.
76
124
  */
77
125
  export declare function parseWorktreeListOutput(output: string): WorktreeEntry[];
126
+ export interface BranchRefDeleteResult {
127
+ /** True if the branch ref no longer exists after this call. */
128
+ deleted: boolean;
129
+ /** Why it was (not) deleted, for surfacing in the cleanup result. */
130
+ reason: string;
131
+ /** True when a forced delete (`-D`) was needed (e.g. squash/patch-equivalent merge). */
132
+ forced?: boolean;
133
+ }
134
+ /**
135
+ * Delete a local branch ref after its worktree was removed.
136
+ *
137
+ * SAFETY: this is only meant to be called once the caller has independently
138
+ * verified that the branch is fully merged / its content is contained in the
139
+ * default ref (no work loss). It first tries the safe `git branch -d`, which
140
+ * refuses to delete a branch git itself does not consider merged. If
141
+ * `safeDeleteOnly` is false (the caller proved containment by patch-equivalence,
142
+ * which `-d` cannot see), it falls back to `git branch -D`. When the branch is
143
+ * already gone, this reports `deleted: true` idempotently.
144
+ */
145
+ export declare function deleteBranchRef(repoRoot: string, branch: string, opts?: {
146
+ safeDeleteOnly?: boolean;
147
+ }): Promise<BranchRefDeleteResult>;
@@ -3,6 +3,8 @@ export { GitCommandError, isPathInside, normalizeGitOutput, resolveGitRepository
3
3
  export type { GitCommandResult as GitExecutorCommandResult, GitExecutorOptions, RunGitOptions } from './git-executor.js';
4
4
  export { getGitRepoStatus, parsePorcelainV2Status } from './git-status.js';
5
5
  export type { GitStatusOptions } from './git-status.js';
6
+ export { CHANGE_IMPACT_CONFIG_LOCATIONS, CHANGE_IMPACT_CONFIG_SCHEMA, globToRegExp, loadChangeImpactConfig, suggestChangeImpactConfig, validateChangeImpactConfig, } from './change-impact-config.js';
7
+ export type { ChangeImpactConfig, ChangeImpactConfigLoadResult, ChangeImpactConfigSuggestion, ChangeImpactKind, ChangeImpactTarget, } from './change-impact-config.js';
6
8
  export { getGitDiffSummary, getGitFileDiff } from './git-diff.js';
7
9
  export type { GitDiffOptions, GitFileDiffResult } from './git-diff.js';
8
10
  export { createGitCompactSummary, summarizeGitStatus } from './git-summary.js';
@@ -15,4 +17,4 @@ export type { GitCommandResult, GitCommandServices, GitFileDiff, GitLogEntry, Gi
15
17
  export { TurnSnapshotTracker } from './turn-snapshot-tracker.js';
16
18
  export type { TurnCompletedCallback } from './turn-snapshot-tracker.js';
17
19
  export { createWorktree, listWorktrees, parseWorktreeListOutput, removeWorktree, resolveWorktreePath, } from './git-worktree.js';
18
- export type { WorktreeCreateOptions, WorktreeCreateResult, WorktreeEntry, WorktreeRemoveResult, } from './git-worktree.js';
20
+ export type { WorktreeBaseSync, WorktreeCreateOptions, WorktreeCreateResult, WorktreeEntry, WorktreeRemoveResult, } from './git-worktree.js';
package/dist/index.d.ts CHANGED
@@ -5,8 +5,10 @@
5
5
  */
6
6
  export type { ChatBubbleState, ChatMessage, ExtensionInfo, CommandResult as CoreCommandResult, ProviderConfig, DaemonEvent, StatusResponse, SystemInfo, DetectedIde, ProviderInfo, AgentEntry, } from './types.js';
7
7
  export type { SessionEntry, CompactSessionEntry, CompactDaemonEntry, CloudDaemonSummaryEntry, DashboardBootstrapDaemonEntry, VersionUpdateReason, CloudStatusReportPayload, DaemonStatusEventPayload, DashboardStatusEventPayload, SessionTransport, SessionKind, SessionCapability, AgentSessionStream, ReadChatCursor, ReadChatSyncResult, TransportTopic, SessionChatTailSubscriptionParams, SessionRuntimeOutputSubscriptionParams, MachineRuntimeSubscriptionParams, SessionHostDiagnosticsSubscriptionParams, SessionModalSubscriptionParams, DaemonMetadataSubscriptionParams, WorkspaceGitSubscriptionParams, SessionChatTailUpdate, MachineRuntimeUpdate, SessionHostDiagnosticsUpdate, SessionModalUpdate, DaemonMetadataUpdate, TopicUpdateEnvelope, SubscribeRequest, UnsubscribeRequest, StandaloneWsStatusPayload, AvailableProviderInfo, AcpConfigOption, AcpMode, ProviderControlSchema, StatusReportPayload, MachineInfo, SessionHostDiagnosticsSnapshot, SessionHostRecord, SessionHostWriteOwner, SessionHostAttachedClient, SessionHostLogEntry, SessionHostRequestTrace, SessionHostRuntimeTransition, DetectedIdeInfo, WorkspaceEntry, ProviderSummaryItem, ProviderSummaryMetadata, ProviderState, ProviderStatus, ProviderErrorReason, SessionActiveChatData, ActiveChatData, IdeProviderState, CliProviderState, AcpProviderState, ExtensionProviderState, MessageInputSupport, InputMediaStrategyDescriptor, InputAttachmentStrategy, InputMediaType, } from './shared-types.js';
8
- export type { RepoMesh, RepoMeshNode, RepoMeshNodeHealth, RepoMeshPolicy, RepoMeshNodePolicy, RepoMeshRelatedRepo, RepoMeshNodeCapabilities, DetectedCommand, ProjectContextSnapshot, ProjectContextSource, RepoMeshCoordinatorConfig, LocalMeshConfig, LocalMeshEntry, LocalMeshNodeEntry, RepoMeshStatus, RepoMeshNodeStatus, RepoMeshSessionStatus, RepoMeshQueueTask, RepoMeshQueueTaskStatus, RepoMeshQueueSummary, RepoMeshQueueStatus, RepoMeshLedgerEntryStatus, RepoMeshLedgerSummaryStatus, RepoMeshLedgerStatus, } from './repo-mesh-types.js';
9
- export { DEFAULT_MESH_POLICY } from './repo-mesh-types.js';
8
+ export type { InteractivePrompt, InteractiveQuestion, InteractiveOption, InteractivePromptResponse, InteractiveAnswer, } from './providers/types/interactive-prompt.js';
9
+ export { normalizeInteractivePrompt, normalizeInteractivePromptResponse, buildClaudeInteractiveToolResult, interactivePromptFromClaudeAskUserQuestion, detectClaudeAskUserQuestionPromptFromJson, } from './providers/types/interactive-prompt.js';
10
+ export type { RepoMesh, RepoMeshDaemonRole, RepoMeshHostMetadata, RepoMeshHostPairingMetadata, RepoMeshHostStatus, RepoMeshNode, RepoMeshNodeHealth, RepoMeshPolicy, RepoMeshMagiSessionCleanupMode, RepoMeshNodePolicy, RepoMeshRelatedRepo, RepoMeshNodeCapabilities, DetectedCommand, ProjectContextSnapshot, ProjectContextSource, RepoMeshCoordinatorConfig, LocalMeshConfig, LocalMeshEntry, LocalMeshNodeEntry, RepoMeshStatus, RepoMeshNodeStatus, RepoMeshPeerConnectionStatus, RepoMeshPeerConnectionState, RepoMeshPeerConnectionTransport, RepoMeshSessionStatus, RepoMeshQueueTask, RepoMeshQueueTaskStatus, RepoMeshQueueSummary, RepoMeshQueueStatus, RepoMeshLedgerEntryStatus, RepoMeshLedgerSummaryStatus, RepoMeshLedgerStatus, MeshAsyncJobLifecycle, RepoMeshSchedulingStrategy, RepoMeshSchedulingStatus, RepoMeshNodeSchedulingStatus, RepoMeshNodeProviderSchedulingStatus, } from './repo-mesh-types.js';
11
+ export { DEFAULT_MESH_POLICY, resolveDelegatedWorkerAutoApprove, resolveMagiSessionCleanupMode, magiAutoLaunchedSessionCleanupDecision, MESH_SCHEDULING_STRATEGIES, DEFAULT_MESH_SCHEDULING_STRATEGY, normalizeMeshSchedulingStrategy, resolveNodeSchedulingPriority, resolveProviderMaxParallel, mergeAndNormalizePolicy, normalizeAutoFastForwardPolicy, resolveMaxParallelTasks, MESH_MAX_PARALLEL_TASKS_MIN, MESH_MAX_PARALLEL_TASKS_MAX, MESH_CONVERGE_REFINE_TAG, MESH_CONVERGE_FAST_FORWARD_TAG, resolveAutoConvergeCodeChange, } from './repo-mesh-types.js';
10
12
  export * from './git/index.js';
11
13
  import type { RuntimeWriteOwner as _RuntimeWriteOwner } from './shared-types-extra.js';
12
14
  import type { RuntimeAttachedClient as _RuntimeAttachedClient } from './shared-types-extra.js';
@@ -20,26 +22,56 @@ export type { SessionHostEndpoint } from '@adhdev/session-host-core';
20
22
  export type SessionStatus = 'idle' | 'generating' | 'waiting_approval' | 'error' | 'stopped' | 'starting' | 'panel_hidden' | 'not_monitored' | 'disconnected';
21
23
  export type RecentSessionBucket = 'needs_attention' | 'working' | 'task_complete' | 'idle';
22
24
  export type { IDaemonCore, DaemonCoreOptions } from './daemon-core.js';
23
- export { loadConfig, saveConfig, resetConfig, isSetupComplete, markSetupComplete, updateConfig } from './config/config.js';
25
+ export { loadConfig, saveConfig, resetConfig, isSetupComplete, markSetupComplete, updateConfig, getDaemonDataDir } from './config/config.js';
24
26
  export { getWorkspaceState } from './config/workspaces.js';
25
27
  export { appendRecentActivity, getRecentActivity } from './config/recent-activity.js';
26
28
  export type { RecentActivityEntry } from './config/recent-activity.js';
27
29
  export { getSavedProviderSessions, upsertSavedProviderSession } from './config/saved-sessions.js';
28
30
  export type { SavedProviderSessionEntry } from './config/saved-sessions.js';
29
- export { listMeshes, getMesh, getMeshByRepo, createMesh, updateMesh, deleteMesh, addNode, removeNode, updateNode, normalizeRepoIdentity, } from './config/mesh-config.js';
31
+ export { listMeshes, getMesh, getMeshByRepo, createMesh, updateMesh, deleteMesh, addNode, removeNode, updateNode, normalizeRepoIdentity, listMagiPanels, getMagiPanel, upsertMagiPanel, removeMagiPanel, normalizeMagiPanel, listMagiKindPanels, getMagiKindPanel, setMagiKindPanel, removeMagiKindPanel, normalizeMagiSlots, } from './config/mesh-config.js';
30
32
  export type { CreateMeshOptions, UpdateMeshOptions, AddNodeOptions } from './config/mesh-config.js';
33
+ export type { MagiPanel, MagiPanelMember, MagiPanelMap, MagiMode, MagiTaskKind, MagiPanelDefaultKind, MagiSlot, MagiKindPanelMap, MagiClaim, MagiClaimStance, MagiAgentResponse, MagiResponseSource, MagiReplicaGitRef, MagiGitSkew, MagiSynthesizedResponse, MagiClusterCategory, MagiClusterMember, MagiClaimCluster, MagiSynthesis, } from '@adhdev/mesh-shared';
34
+ export { MAGI_RAW_ANSWER_CAP } from '@adhdev/mesh-shared';
35
+ export { expandDaemonIdForms, daemonIdsEquivalent, machineCoreFromDaemonId, canonicalDaemonId } from '@adhdev/mesh-shared';
36
+ export { normalizeMeshNodeId, meshNodeIdMatches } from '@adhdev/mesh-shared';
31
37
  export { buildCoordinatorSystemPrompt } from './mesh/coordinator-prompt.js';
38
+ export { upsertMeshMission, getMeshMissions, getMeshMission, summarizeMissionTasks, summarizeMeshMission, getActiveMeshMissionSummaries, getMeshStatusMissionSummaries, getMeshStatusMissionsCompact, listMeshMissionSummaries, buildMissionPromptSection, GOAL_PREVIEW_MAX, COMPACT_STATUS_GOAL_PREVIEW_MAX, MESH_MISSION_STATUSES } from './mesh/mesh-missions.js';
39
+ export type { MeshMissionRecord, MeshMissionStatus, MeshMissionSummary, MeshMissionSlimSummary, MeshMissionTaskAggregate, MeshStatusMissionsCompact, MeshStatusMissionsHistoryFold } from './mesh/mesh-missions.js';
40
+ export { computeMeshTaskStats, computeMeshMissionStats } from './mesh/mesh-task-stats.js';
41
+ export type { MeshTaskStats, MeshMissionStats } from './mesh/mesh-task-stats.js';
42
+ export { deriveMeshReviewInboxItems } from './mesh/mesh-review-inbox.js';
43
+ export type { MeshReviewInboxItem, MeshReviewInboxDerivation, MeshReviewInboxEvidence, MeshReviewInboxDiffSummary, MeshReviewInboxDiffFile, MeshReviewInboxReason, MeshReviewInboxConvergence } from './mesh/mesh-review-inbox.js';
32
44
  export type { CoordinatorPromptContext } from './mesh/coordinator-prompt.js';
33
- export { syncMeshes } from './mesh/mesh-sync.js';
34
- export type { MeshSyncTransport, MeshSyncResult, RemoteMeshRecord } from './mesh/mesh-sync.js';
35
- export { appendLedgerEntry, appendRemoteLedgerEntries, readLedgerEntries, readLedgerSlice, getLedgerSummary, getLedgerDir, getSessionRecoveryContext, MAX_LEDGER_SLICE_LIMIT } from './mesh/mesh-ledger.js';
36
- export type { AppendRemoteLedgerResult, MeshLedgerEntry, MeshLedgerKind, MeshLedgerSlice, MeshLedgerSummary, ReadLedgerOptions, ReadLedgerSliceOptions, SessionRecoveryContext } from './mesh/mesh-ledger.js';
45
+ export { loadMeshCoordinatorRegistry, registerMeshCoordinator, unregisterMeshCoordinator, getCoordinatorForSession, listCoordinatorsForWorkspace } from './mesh/coordinator-registry.js';
46
+ export type { CoordinatorRegistryEntry } from './mesh/coordinator-registry.js';
47
+ export { MESH_REFINE_CONFIG_LOCATIONS, MESH_REFINE_CONFIG_SCHEMA, loadMeshRefineConfig, resolveMeshRefineValidationPlan, suggestMeshRefineConfig, validateMeshRefineConfig, } from './mesh/refine-config.js';
48
+ export { MESH_WORKTREE_BOOTSTRAP_CONFIG_LOCATIONS, MESH_WORKTREE_BOOTSTRAP_CONFIG_SCHEMA, loadMeshWorktreeBootstrapConfig, runMeshWorktreeBootstrap, validateMeshWorktreeBootstrapConfig, type RepoMeshWorktreeBootstrapConfig, type WorktreeBootstrapState, } from './mesh/worktree-bootstrap-config.js';
49
+ export type { MeshRefineValidationCategory, MeshRefineValidationCommandPlan, MeshRefineValidationPlan, RepoMeshRefineConfig, RepoMeshRefineValidationCommandConfig, } from './mesh/refine-config.js';
50
+ export { loadRepoSettings } from './config/repo-settings.js';
51
+ export type { RepoSettings, LoadRepoSettingsOptions } from './config/repo-settings.js';
52
+ export { appendLedgerEntry, appendRemoteLedgerEntries, buildTaskCompletionEvidence, normalizeMeshWorkerResult, readLedgerEntries, readLedgerSlice, readLedgerSliceFromStore, getLedgerSummary, getLedgerDir, getSessionRecoveryContext, MAX_LEDGER_SLICE_LIMIT, tombstoneOperatingNote, readOperatingNotes, pruneOperatingNotes, isOperatingNoteTombstoned, OPERATING_NOTE_KIND, OPERATING_NOTE_TOMBSTONE_KIND, OPERATING_NOTE_DEDUPE_WINDOW, OPERATING_NOTE_KEEP_LATEST } from './mesh/mesh-ledger.js';
53
+ export type { AppendRemoteLedgerResult, MeshLedgerEntry, MeshLedgerKind, MeshLedgerSlice, MeshLedgerSummary, ReadLedgerOptions, ReadLedgerSliceOptions, SessionRecoveryContext, MeshTaskCompletionEvidence, MeshWorkerResultArtifact, MeshProcessArtifact, MeshValidationResultArtifact } from './mesh/mesh-ledger.js';
54
+ export { fastForwardMeshNode } from './mesh/mesh-fast-forward.js';
55
+ export type { MeshFastForwardNodeArgs, MeshFastForwardPlannedStep, MeshFastForwardResult } from './mesh/mesh-fast-forward.js';
37
56
  export { buildMeshLedgerReconciliationEvidence, buildMeshLedgerReplicaEvidence } from './mesh/mesh-ledger-reconciliation.js';
38
- export type { MeshLedgerReconciliationEvidence, MeshLedgerReplicaEvidence, MeshLedgerReplicaStatus } from './mesh/mesh-ledger-reconciliation.js';
39
- export { enqueueTask, getQueue, claimNextTask, updateTaskStatus, updateSessionTaskStatus, cancelTask, requeueTask, getMeshQueueStats } from './mesh/mesh-work-queue.js';
40
- export type { MeshWorkQueueEntry, MeshTaskStatus, MeshWorkQueueStats } from './mesh/mesh-work-queue.js';
41
- export { triggerMeshQueue, drainPendingMeshCoordinatorEvents, getPendingMeshCoordinatorEvents, clearPendingMeshCoordinatorEvents, queuePendingMeshCoordinatorEvent } from './mesh/mesh-events.js';
57
+ export type { AnyLedgerSlice, MeshLedgerReconciliationEvidence, MeshLedgerReplicaEvidence, MeshLedgerReplicaStatus } from './mesh/mesh-ledger-reconciliation.js';
58
+ export { enqueueTask, recordDirectDispatchTask, getQueue, claimNextTask, updateTaskStatus, updateSessionTaskStatus, cancelTask, requeueTask, getMeshQueueStats, getMeshQueueRevision, normalizeMeshTaskMode, validateMeshTaskModeRequest, isTaskReadonly, buildMeshNodeCapabilityTags, nodeSatisfiesRequiredTags, normalizeMeshCapabilityTags, resolveConvergeRequiredTags, insertDirectDispatch, getActiveDirectDispatches, updateDirectDispatchStatus, cleanupTerminalDirectDispatches, markStaleDirectDispatches, deleteDirectDispatchesByTaskId, recordMeshToolCall, assertNoDependencyCycle, hasPendingDependents, describeTaskDependencyState, taskDependenciesSatisfied } from './mesh/mesh-work-queue.js';
59
+ export type { MeshWorkQueueEntry, MeshTaskStatus, MeshTaskMode, MeshWorkQueueStats, MeshQueueMutationOptions, MeshTaskModeValidationResult, DirectDispatchRecord, MeshToolCallRateResult } from './mesh/mesh-work-queue.js';
60
+ export { buildCompactStaleDirectWorkSummary, buildMeshActiveWork, buildMeshActiveWorkSummary, classifyStaleDirectForPrune, pruneStaleDirectDispatches, PRUNABLE_ORPHAN_STALE_REASONS } from './mesh/mesh-active-work.js';
61
+ export type { StaleDirectPruneClassification, StaleDirectPruneResult, PruneStaleDirectDispatchesOptions } from './mesh/mesh-active-work.js';
62
+ export type { MeshActiveWorkRecord, MeshActiveWorkStatus, MeshActiveWorkSummary, MeshActiveWorkSource, MeshStaleDirectWorkSummary } from './mesh/mesh-active-work.js';
63
+ export { buildMeshAsyncRefineJobs, summarizeMeshAsyncRefineJobs, STALE_TERMINAL_REFINE_WINDOW_MS, RECENT_TERMINAL_REFINE_CAP } from './mesh/mesh-refine-status.js';
64
+ export type { MeshAsyncRefineJobStatus, MeshAsyncRefineJobSummary, MeshAsyncRefineJobsSummary } from './mesh/mesh-refine-status.js';
65
+ export { buildMeshMagiActivity, summarizeMeshMagiActivity, getMeshMagiActivityByGroup, STALE_MAGI_WINDOW_MS, RECENT_MAGI_CAP, MAGI_NEEDS_VERIFICATION_PREVIEW_CAP } from './mesh/mesh-magi-status.js';
66
+ export type { MeshMagiActivityStatus, MeshMagiActivitySummary, MeshMagiActivitySummaryFold, MeshMagiNeedsVerificationItem } from './mesh/mesh-magi-status.js';
67
+ export { buildMeshSchedulingRuntime } from './mesh/mesh-scheduling-runtime.js';
68
+ export type { MeshSchedulingRuntime, MeshNodeSchedulingRuntime, MeshNodeProviderSchedulingRuntime } from './mesh/mesh-scheduling-runtime.js';
69
+ export { buildMeshHostRequiredFailure, createDefaultMeshHostMetadata, isMeshHostOwner, normalizeMeshDaemonRole, requireMeshHostQueueOwner, resolveMeshHostStatus } from './mesh/mesh-host-ownership.js';
70
+ export { triggerMeshQueue, drainPendingMeshCoordinatorEvents, getPendingMeshCoordinatorEvents, clearPendingMeshCoordinatorEvents, queuePendingMeshCoordinatorEvent, reconcileDirectDispatchCompletionFromTranscript } from './mesh/mesh-events.js';
42
71
  export type { PendingMeshCoordinatorEvent } from './mesh/mesh-events.js';
72
+ export { resolveMeshSurfacedSessionPreview, readMeshCompletionSummary, isWeakCompletionEvidence } from './mesh/mesh-events-utils.js';
73
+ export { resolveDeliveryDecision, createSessionDelivery, updateSessionDeliveryStatus, getActiveSessionDeliveries, markSessionDeliveriesTerminal, recordCompletionConflict, getRecentCompletionConflicts } from './mesh/mesh-delivery-policy.js';
74
+ export type { MeshSessionDeliveryStatus, MeshSessionDeliveryKind, MeshDeliveryDecision, MeshDeliveryPolicyResult, SessionDeliveryRecord } from './mesh/mesh-delivery-policy.js';
43
75
  export { P2pRelayFailureError, buildP2pRelayFailurePayload, classifyP2pRelayFailure, isP2pRelayTransportFailure, } from './mesh/p2p-relay-failure.js';
44
76
  export type { P2pRelayFailureClassification, P2pRelayFailureCode, P2pRelayFailureContext, P2pRelayFailurePayload, } from './mesh/p2p-relay-failure.js';
45
77
  export { loadState, saveState, resetState } from './config/state-store.js';
@@ -60,19 +92,21 @@ export { DaemonCdpInitializer } from './cdp/initializer.js';
60
92
  export type { CdpInitializerConfig } from './cdp/initializer.js';
61
93
  export { DaemonCommandHandler } from './commands/handler.js';
62
94
  export type { CommandResult, CommandContext } from './commands/handler.js';
63
- export { DaemonCommandRouter } from './commands/router.js';
95
+ export { DaemonCommandRouter, readCachedInlineMeshActiveSessionDetails, resolveMeshNodeAttribution, buildMeshNodeDataFreshness, buildMeshNodeProbeFreshness, MESH_NODE_LIVE_TRUTH_MARKER } from './commands/router.js';
64
96
  export type { CommandRouterDeps, CommandRouterResult } from './commands/router.js';
65
97
  export { maybeRunDaemonUpgradeHelperFromEnv, spawnDetachedDaemonUpgradeHelper, resolveCurrentGlobalInstallSurface, buildPinnedGlobalInstallCommand, execNpmCommandSync, getNpmExecOptions, } from './commands/upgrade-helper.js';
66
98
  export type { DaemonUpgradeHelperPayload, CurrentGlobalInstallSurface, PinnedGlobalInstallCommand, NpmExecOptions, } from './commands/upgrade-helper.js';
67
99
  export { DaemonStatusReporter } from './status/reporter.js';
68
100
  export { buildSessionEntries, findCdpManager, hasCdpManager, isCdpConnected } from './status/builders.js';
69
- export { buildStatusSnapshot, buildMachineInfo } from './status/snapshot.js';
101
+ export { buildStatusSnapshot, buildMachineInfo, getLastDisplayMessage } from './status/snapshot.js';
102
+ export { getDaemonBuildInfo } from './build-info.js';
103
+ export type { DaemonBuildInfo } from './build-info.js';
70
104
  export { normalizeManagedStatus, isManagedStatusWorking, isManagedStatusWaiting, normalizeActiveChatData } from './status/normalize.js';
71
105
  export type { ManagedStatus } from './status/normalize.js';
72
106
  export type { StatusSnapshotOptions, StatusSnapshot } from './status/snapshot.js';
73
107
  export { LOG, installGlobalInterceptor, setLogLevel, getLogLevel, getRecentLogs, getDaemonLogDir, getCurrentDaemonLogPath, } from './logging/logger.js';
74
108
  export type { ScopedLogger, LogLevel, LogEntry } from './logging/logger.js';
75
- export { resolveDebugRuntimeConfig, setDebugRuntimeConfig, getDebugRuntimeConfig, resetDebugRuntimeConfig, shouldCollectTraceCategory, } from './logging/debug-config.js';
109
+ export { resolveDebugRuntimeConfig, setDebugRuntimeConfig, getDebugRuntimeConfig, resetDebugRuntimeConfig, shouldCollectTraceCategory, isAlwaysOnTraceCategory, ALWAYS_ON_TRACE_CATEGORIES, } from './logging/debug-config.js';
76
110
  export type { DebugRuntimeOptions, DebugRuntimeConfig } from './logging/debug-config.js';
77
111
  export { createDebugTraceStore, configureDebugTraceStore, recordDebugTrace, getRecentDebugTrace, clearDebugTrace, createInteractionId, } from './logging/debug-trace.js';
78
112
  export type { DebugTraceEvent, DebugTraceEntry, DebugTraceQuery, DebugTraceStore, DebugTraceLevel } from './logging/debug-trace.js';
@@ -111,10 +145,14 @@ export type { CliAdapter } from './cli-adapter-types.js';
111
145
  export { NodePtyTransportFactory } from './cli-adapters/pty-transport.js';
112
146
  export type { PtyRuntimeTransport, PtyTransportFactory, PtySpawnOptions } from './cli-adapters/pty-transport.js';
113
147
  export { SessionHostPtyTransportFactory } from './cli-adapters/session-host-transport.js';
148
+ export { RawTerminalAttachment, namedKeyToAnsi, namedKeysToAnsi, withRawTerminalAttachment, } from './cli-adapters/raw-terminal-io.js';
149
+ export type { NamedKey, RawTerminalAttachmentOptions, RawTerminalSessionHostClient } from './cli-adapters/raw-terminal-io.js';
114
150
  export type { HostedCliRuntimeDescriptor, CliTransportFactoryParams } from './commands/cli-manager.js';
115
151
  export { DEFAULT_SESSION_HOST_APP_NAME, DEFAULT_STANDALONE_SESSION_HOST_APP_NAME, resolveSessionHostAppName, resolveSessionHostAppNameResolution, } from './session-host/app-name.js';
116
152
  export type { SessionHostAppNameResolution } from './session-host/app-name.js';
117
153
  export { ensureSessionHostReady, listHostedCliRuntimes } from './session-host/runtime-support.js';
154
+ export { createManagedSessionHost } from './session-host/managed-host.js';
155
+ export type { ManagedSessionHost, ManagedSessionHostOptions } from './session-host/managed-host.js';
118
156
  export { getSessionHostRecoveryLabel, getSessionHostSurfaceKind, isSessionHostLiveRuntime, isSessionHostRecoverySnapshot, partitionSessionHostDiagnosticsSessions, partitionSessionHostRecords, } from './session-host/runtime-surface.js';
119
157
  export type { SessionHostSurfaceKind, SessionHostSurfaceRecordLike } from './session-host/runtime-surface.js';
120
158
  export { shouldAutoRestoreHostedSessionsOnStartup } from './session-host/startup-restore-policy.js';
@@ -122,3 +160,17 @@ export { getAIExtensions, installExtensions, launchIDE, isExtensionInstalled } f
122
160
  export type { ExtensionInfo as InstallerExtensionInfo } from './installer.js';
123
161
  export { initDaemonComponents, startDaemonDevSupport, shutdownDaemonComponents } from './boot/daemon-lifecycle.js';
124
162
  export type { DaemonInitConfig, DaemonComponents, DaemonDevSupportOptions } from './boot/daemon-lifecycle.js';
163
+ export { startLocalIpcServer, buildIpcStatusHttpResponse, type LocalIpcServerOptions, type LocalIpcServerHandle, type IpcCommandContext, type IpcCommandResult, type IpcStatusPayload, } from './ipc/local-ipc-server.js';
164
+ export { createNativeHistoryDispatcher } from './providers/native-history/index.js';
165
+ export type { ReaderId } from './providers/native-history/index.js';
166
+ export { readClaudeCliSession, readCodexCliSession, readAntigravityCliSession, readHermesCliSession, } from './providers/native-history/index.js';
167
+ export type { ControlAction, Control, NotificationRule, DelegateTrigger, } from './providers/spec/types.js';
168
+ export type { TraceEntry } from './providers/spec/evaluator.js';
169
+ export { evaluateFsm } from './providers/spec/fsm-evaluator.js';
170
+ export type { FsmClock } from './providers/spec/fsm-evaluator.js';
171
+ export { validateFsmSpec } from './providers/spec/fsm-loader.js';
172
+ export { FsmDriver } from './providers/spec/fsm-driver.js';
173
+ export type { DashboardEvent, DashboardCommand, SpecDriverOpts, ISpecDriver } from './providers/spec/fsm-driver.js';
174
+ export { TerminalAdapter } from './providers/spec/adapter.js';
175
+ export type { TerminalAdapterOpts, TerminalAdapterHandlers } from './providers/spec/adapter.js';
176
+ export { validateCliProviderManifest, formatManifestValidationIssues, type ManifestValidationIssue, type ManifestValidationResult, V1_CONTRACT_VERSION, V1_PRIMITIVE_CATALOG, V1_ALL_PRIMITIVES, } from './providers/sdk/v1/index.js';