@a1hvdy/cc-openclaw 0.10.4 → 0.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (473) hide show
  1. package/dist/src/channels/telegram/card-renderer.d.ts +63 -0
  2. package/dist/src/channels/telegram/card-renderer.js +149 -0
  3. package/dist/src/channels/telegram/card-renderer.js.map +1 -0
  4. package/dist/src/channels/telegram/event-reducer.js +3 -15
  5. package/dist/src/channels/telegram/event-reducer.js.map +1 -1
  6. package/dist/src/channels/telegram/format-helpers.d.ts +20 -0
  7. package/dist/src/channels/telegram/format-helpers.js +34 -0
  8. package/dist/src/channels/telegram/format-helpers.js.map +1 -0
  9. package/dist/src/channels/telegram/insight-formatter.d.ts +36 -0
  10. package/dist/src/channels/telegram/insight-formatter.js +36 -0
  11. package/dist/src/channels/telegram/insight-formatter.js.map +1 -0
  12. package/dist/src/channels/telegram/live-card.d.ts +7 -90
  13. package/dist/src/channels/telegram/live-card.js +25 -286
  14. package/dist/src/channels/telegram/live-card.js.map +1 -1
  15. package/dist/src/channels/telegram/logger.d.ts +10 -0
  16. package/dist/src/channels/telegram/logger.js +13 -0
  17. package/dist/src/channels/telegram/logger.js.map +1 -0
  18. package/dist/src/channels/telegram/result-preview.d.ts +12 -0
  19. package/dist/src/channels/telegram/result-preview.js +48 -0
  20. package/dist/src/channels/telegram/result-preview.js.map +1 -0
  21. package/dist/src/channels/telegram/throttle-controller.d.ts +54 -0
  22. package/dist/src/channels/telegram/throttle-controller.js +132 -0
  23. package/dist/src/channels/telegram/throttle-controller.js.map +1 -0
  24. package/dist/src/channels/telegram/tool-tracker.d.ts +1 -2
  25. package/dist/src/channels/telegram/tool-tracker.js +9 -51
  26. package/dist/src/channels/telegram/tool-tracker.js.map +1 -1
  27. package/dist/src/cli/checks/bridge-wiring.d.ts +14 -0
  28. package/dist/src/cli/checks/bridge-wiring.js +64 -0
  29. package/dist/src/cli/checks/bridge-wiring.js.map +1 -0
  30. package/dist/src/cli/checks/config-schema.d.ts +11 -0
  31. package/dist/src/cli/checks/config-schema.js +51 -0
  32. package/dist/src/cli/checks/config-schema.js.map +1 -0
  33. package/dist/src/cli/checks/critical-openclaw-json-keys.d.ts +21 -0
  34. package/dist/src/cli/checks/critical-openclaw-json-keys.js +106 -0
  35. package/dist/src/cli/checks/critical-openclaw-json-keys.js.map +1 -0
  36. package/dist/src/cli/checks/install-path.d.ts +11 -0
  37. package/dist/src/cli/checks/install-path.js +89 -0
  38. package/dist/src/cli/checks/install-path.js.map +1 -0
  39. package/dist/src/cli/checks/patch-scaffold.d.ts +17 -0
  40. package/dist/src/cli/checks/patch-scaffold.js +56 -0
  41. package/dist/src/cli/checks/patch-scaffold.js.map +1 -0
  42. package/dist/src/cli/doctor.d.ts +20 -0
  43. package/dist/src/cli/doctor.js +93 -0
  44. package/dist/src/cli/doctor.js.map +1 -0
  45. package/dist/src/cli/index.d.ts +8 -0
  46. package/dist/src/cli/index.js +39 -0
  47. package/dist/src/cli/index.js.map +1 -0
  48. package/dist/src/cli/migrate.d.ts +29 -0
  49. package/dist/src/cli/migrate.js +75 -0
  50. package/dist/src/cli/migrate.js.map +1 -0
  51. package/dist/src/command-router/cc-handler.js +35 -709
  52. package/dist/src/command-router/cc-handler.js.map +1 -1
  53. package/dist/src/command-router/launch-policy.d.ts +93 -0
  54. package/dist/src/command-router/launch-policy.js +323 -0
  55. package/dist/src/command-router/launch-policy.js.map +1 -0
  56. package/dist/src/command-router/resume-policy.d.ts +18 -0
  57. package/dist/src/command-router/resume-policy.js +236 -0
  58. package/dist/src/command-router/resume-policy.js.map +1 -0
  59. package/dist/src/command-router/turn-formatter.d.ts +19 -0
  60. package/dist/src/command-router/turn-formatter.js +144 -0
  61. package/dist/src/command-router/turn-formatter.js.map +1 -0
  62. package/dist/src/config/drift-detector.d.ts +28 -0
  63. package/dist/src/config/drift-detector.js +75 -0
  64. package/dist/src/config/drift-detector.js.map +1 -0
  65. package/dist/src/config/loader.d.ts +8 -0
  66. package/dist/src/config/loader.js +69 -0
  67. package/dist/src/config/loader.js.map +1 -0
  68. package/dist/src/config/schema.d.ts +188 -0
  69. package/dist/src/config/schema.js +98 -0
  70. package/dist/src/config/schema.js.map +1 -0
  71. package/dist/src/council/build-agent-prompt.d.ts +11 -0
  72. package/dist/src/council/build-agent-prompt.js +96 -0
  73. package/dist/src/council/build-agent-prompt.js.map +1 -0
  74. package/dist/src/council/cleanup-worktrees.d.ts +10 -0
  75. package/dist/src/council/cleanup-worktrees.js +22 -0
  76. package/dist/src/council/cleanup-worktrees.js.map +1 -0
  77. package/dist/src/council/council.js +15 -186
  78. package/dist/src/council/council.js.map +1 -1
  79. package/dist/src/council/system-prompt.d.ts +16 -0
  80. package/dist/src/council/system-prompt.js +40 -0
  81. package/dist/src/council/system-prompt.js.map +1 -0
  82. package/dist/src/council/write-worktree-claude-md.d.ts +10 -0
  83. package/dist/src/council/write-worktree-claude-md.js +41 -0
  84. package/dist/src/council/write-worktree-claude-md.js.map +1 -0
  85. package/dist/src/engines/persistent-custom-session.js +3 -8
  86. package/dist/src/engines/persistent-custom-session.js.map +1 -1
  87. package/dist/src/engines/resolve-bin.d.ts +14 -0
  88. package/dist/src/engines/resolve-bin.js +18 -0
  89. package/dist/src/engines/resolve-bin.js.map +1 -0
  90. package/dist/src/lib/config-service.js +8 -0
  91. package/dist/src/lib/config-service.js.map +1 -1
  92. package/dist/src/lib/debounce.d.ts +12 -0
  93. package/dist/src/lib/debounce.js +23 -0
  94. package/dist/src/lib/debounce.js.map +1 -0
  95. package/dist/src/lib/domain-error.d.ts +59 -0
  96. package/dist/src/lib/domain-error.js +79 -0
  97. package/dist/src/lib/domain-error.js.map +1 -0
  98. package/dist/src/lib/json-array.d.ts +10 -0
  99. package/dist/src/lib/json-array.js +23 -0
  100. package/dist/src/lib/json-array.js.map +1 -0
  101. package/dist/src/lib/safe-upstream-probes.d.ts +25 -0
  102. package/dist/src/lib/safe-upstream-probes.js +42 -0
  103. package/dist/src/lib/safe-upstream-probes.js.map +1 -0
  104. package/dist/src/lib/spawn-async.d.ts +18 -0
  105. package/dist/src/lib/spawn-async.js +47 -0
  106. package/dist/src/lib/spawn-async.js.map +1 -0
  107. package/dist/src/lib/stale-pid-files.d.ts +17 -0
  108. package/dist/src/lib/stale-pid-files.js +40 -0
  109. package/dist/src/lib/stale-pid-files.js.map +1 -0
  110. package/dist/src/lifecycle/boot.d.ts +59 -0
  111. package/dist/src/lifecycle/boot.js +132 -0
  112. package/dist/src/lifecycle/boot.js.map +1 -0
  113. package/dist/src/lifecycle/patch-manifest.d.ts +82 -0
  114. package/dist/src/lifecycle/patch-manifest.js +126 -0
  115. package/dist/src/lifecycle/patch-manifest.js.map +1 -0
  116. package/dist/src/lifecycle/phase-import-upstream.d.ts +12 -0
  117. package/dist/src/lifecycle/phase-import-upstream.js +18 -0
  118. package/dist/src/lifecycle/phase-import-upstream.js.map +1 -0
  119. package/dist/src/lifecycle/phase-install-patches.d.ts +12 -0
  120. package/dist/src/lifecycle/phase-install-patches.js +31 -0
  121. package/dist/src/lifecycle/phase-install-patches.js.map +1 -0
  122. package/dist/src/lifecycle/phase-schedule-jobs.d.ts +12 -0
  123. package/dist/src/lifecycle/phase-schedule-jobs.js +15 -0
  124. package/dist/src/lifecycle/phase-schedule-jobs.js.map +1 -0
  125. package/dist/src/lifecycle/phase-start-server.d.ts +11 -0
  126. package/dist/src/lifecycle/phase-start-server.js +11 -0
  127. package/dist/src/lifecycle/phase-start-server.js.map +1 -0
  128. package/dist/src/lifecycle/phase-validate-config.d.ts +9 -0
  129. package/dist/src/lifecycle/phase-validate-config.js +25 -0
  130. package/dist/src/lifecycle/phase-validate-config.js.map +1 -0
  131. package/dist/src/lifecycle/phase-validate-upstream.d.ts +11 -0
  132. package/dist/src/lifecycle/phase-validate-upstream.js +16 -0
  133. package/dist/src/lifecycle/phase-validate-upstream.js.map +1 -0
  134. package/dist/src/lifecycle/phase-wire-handlers.d.ts +12 -0
  135. package/dist/src/lifecycle/phase-wire-handlers.js +16 -0
  136. package/dist/src/lifecycle/phase-wire-handlers.js.map +1 -0
  137. package/dist/src/observability/event-bus.d.ts +65 -0
  138. package/dist/src/observability/event-bus.js +52 -0
  139. package/dist/src/observability/event-bus.js.map +1 -0
  140. package/dist/src/observability/get-event-bus.d.ts +25 -0
  141. package/dist/src/observability/get-event-bus.js +34 -0
  142. package/dist/src/observability/get-event-bus.js.map +1 -0
  143. package/dist/src/observability/observability-service.d.ts +19 -0
  144. package/dist/src/observability/observability-service.js +24 -0
  145. package/dist/src/observability/observability-service.js.map +1 -0
  146. package/dist/src/observability/subscribers/metrics.d.ts +11 -0
  147. package/dist/src/observability/subscribers/metrics.js +21 -0
  148. package/dist/src/observability/subscribers/metrics.js.map +1 -0
  149. package/dist/src/observability/subscribers/session-capture.d.ts +15 -0
  150. package/dist/src/observability/subscribers/session-capture.js +25 -0
  151. package/dist/src/observability/subscribers/session-capture.js.map +1 -0
  152. package/dist/src/openai-compat/bridges/allowlist.d.ts +19 -0
  153. package/dist/src/openai-compat/bridges/allowlist.js +28 -0
  154. package/dist/src/openai-compat/bridges/allowlist.js.map +1 -0
  155. package/dist/src/openai-compat/bridges/factory.d.ts +30 -0
  156. package/dist/src/openai-compat/bridges/factory.js +84 -0
  157. package/dist/src/openai-compat/bridges/factory.js.map +1 -0
  158. package/dist/src/openai-compat/bridges/media-bridge.d.ts +34 -0
  159. package/dist/src/openai-compat/bridges/media-bridge.js +20 -0
  160. package/dist/src/openai-compat/bridges/media-bridge.js.map +1 -0
  161. package/dist/src/openai-compat/bridges/openclaw-api-shim.d.ts +54 -0
  162. package/dist/src/openai-compat/bridges/openclaw-api-shim.js +45 -0
  163. package/dist/src/openai-compat/bridges/openclaw-api-shim.js.map +1 -0
  164. package/dist/src/openai-compat/bridges/openclaw-native-tools.d.ts +61 -0
  165. package/dist/src/openai-compat/bridges/openclaw-native-tools.js +171 -0
  166. package/dist/src/openai-compat/bridges/openclaw-native-tools.js.map +1 -0
  167. package/dist/src/openai-compat/bridges/openclaw-tool-registry.d.ts +26 -0
  168. package/dist/src/openai-compat/bridges/openclaw-tool-registry.js +38 -0
  169. package/dist/src/openai-compat/bridges/openclaw-tool-registry.js.map +1 -0
  170. package/dist/src/openai-compat/bridges/tts-media-bridge.d.ts +19 -0
  171. package/dist/src/openai-compat/bridges/tts-media-bridge.js +59 -0
  172. package/dist/src/openai-compat/bridges/tts-media-bridge.js.map +1 -0
  173. package/dist/src/openai-compat/openai-chunk-types.d.ts +35 -0
  174. package/dist/src/openai-compat/openai-chunk-types.js +9 -0
  175. package/dist/src/openai-compat/openai-chunk-types.js.map +1 -0
  176. package/dist/src/openai-compat/openai-compat.d.ts +2 -90
  177. package/dist/src/openai-compat/openai-compat.js +68 -68
  178. package/dist/src/openai-compat/openai-compat.js.map +1 -1
  179. package/dist/src/openai-compat/openai-types.d.ts +71 -0
  180. package/dist/src/openai-compat/openai-types.js +11 -0
  181. package/dist/src/openai-compat/openai-types.js.map +1 -0
  182. package/dist/src/openai-compat/parse-route-body.d.ts +24 -0
  183. package/dist/src/openai-compat/parse-route-body.js +45 -0
  184. package/dist/src/openai-compat/parse-route-body.js.map +1 -0
  185. package/dist/src/openai-compat/tts-rule.d.ts +20 -0
  186. package/dist/src/openai-compat/tts-rule.js +58 -0
  187. package/dist/src/openai-compat/tts-rule.js.map +1 -0
  188. package/dist/src/openai-compat/voice-recovery.js +0 -1
  189. package/dist/src/openai-compat/voice-recovery.js.map +1 -1
  190. package/dist/src/patches/cache-parity-registry.d.ts +20 -0
  191. package/dist/src/patches/cache-parity-registry.js +64 -0
  192. package/dist/src/patches/cache-parity-registry.js.map +1 -0
  193. package/dist/src/patches/claude-md-injection.d.ts +10 -0
  194. package/dist/src/patches/claude-md-injection.js +46 -0
  195. package/dist/src/patches/claude-md-injection.js.map +1 -0
  196. package/dist/src/patches/cwd-redirect.d.ts +10 -0
  197. package/dist/src/patches/cwd-redirect.js +51 -0
  198. package/dist/src/patches/cwd-redirect.js.map +1 -0
  199. package/dist/src/patches/embedded-server-route.d.ts +23 -0
  200. package/dist/src/patches/embedded-server-route.js +64 -0
  201. package/dist/src/patches/embedded-server-route.js.map +1 -0
  202. package/dist/src/patches/pricing-overrides.d.ts +10 -0
  203. package/dist/src/patches/pricing-overrides.js +55 -0
  204. package/dist/src/patches/pricing-overrides.js.map +1 -0
  205. package/dist/src/patches/resume-registry-restore.d.ts +11 -0
  206. package/dist/src/patches/resume-registry-restore.js +48 -0
  207. package/dist/src/patches/resume-registry-restore.js.map +1 -0
  208. package/dist/src/patches/session-pid-tracking.d.ts +10 -0
  209. package/dist/src/patches/session-pid-tracking.js +45 -0
  210. package/dist/src/patches/session-pid-tracking.js.map +1 -0
  211. package/dist/src/patches/sysprompt-strip.d.ts +46 -0
  212. package/dist/src/patches/sysprompt-strip.js +78 -0
  213. package/dist/src/patches/sysprompt-strip.js.map +1 -0
  214. package/dist/src/patches/sysprompt-strip.spec.d.ts +33 -0
  215. package/dist/src/patches/sysprompt-strip.spec.js +53 -0
  216. package/dist/src/patches/sysprompt-strip.spec.js.map +1 -0
  217. package/dist/src/patches/tools-restoration.d.ts +12 -0
  218. package/dist/src/patches/tools-restoration.js +43 -0
  219. package/dist/src/patches/tools-restoration.js.map +1 -0
  220. package/dist/src/persistence/migration-v0.d.ts +24 -0
  221. package/dist/src/persistence/migration-v0.js +142 -0
  222. package/dist/src/persistence/migration-v0.js.map +1 -0
  223. package/dist/src/persistence/session-registry.d.ts +57 -0
  224. package/dist/src/persistence/session-registry.js +58 -0
  225. package/dist/src/persistence/session-registry.js.map +1 -0
  226. package/dist/src/persistence/snapshot.d.ts +18 -0
  227. package/dist/src/persistence/snapshot.js +32 -0
  228. package/dist/src/persistence/snapshot.js.map +1 -0
  229. package/dist/src/persistence/wal.d.ts +17 -0
  230. package/dist/src/persistence/wal.js +32 -0
  231. package/dist/src/persistence/wal.js.map +1 -0
  232. package/dist/src/session/persisted-sessions.d.ts +26 -0
  233. package/dist/src/session/persisted-sessions.js +70 -0
  234. package/dist/src/session/persisted-sessions.js.map +1 -0
  235. package/dist/src/session/session-manager.d.ts +2 -11
  236. package/dist/src/session/session-manager.js +22 -66
  237. package/dist/src/session/session-manager.js.map +1 -1
  238. package/dist/src/session-bootstrap/boot-self-heal.d.ts +32 -0
  239. package/dist/src/session-bootstrap/boot-self-heal.js +54 -0
  240. package/dist/src/session-bootstrap/boot-self-heal.js.map +1 -0
  241. package/dist/src/session-bootstrap/cwd-patch.js +11 -87
  242. package/dist/src/session-bootstrap/cwd-patch.js.map +1 -1
  243. package/dist/src/session-bootstrap/resume-registry.d.ts +29 -0
  244. package/dist/src/session-bootstrap/resume-registry.js +58 -0
  245. package/dist/src/session-bootstrap/resume-registry.js.map +1 -0
  246. package/dist/src/session-bootstrap/session-hygiene.d.ts +23 -0
  247. package/dist/src/session-bootstrap/session-hygiene.js +41 -0
  248. package/dist/src/session-bootstrap/session-hygiene.js.map +1 -0
  249. package/dist/src/types/runtime-config.d.ts +11 -0
  250. package/dist/src/types/runtime-config.js +9 -0
  251. package/dist/src/types/runtime-config.js.map +1 -1
  252. package/dist/src/types/tool-bridge.d.ts +2 -1
  253. package/dist/src/types/tool-bridge.js +1 -0
  254. package/dist/src/types/tool-bridge.js.map +1 -1
  255. package/package.json +1 -1
  256. package/dist/scripts/bench/ab-harness.d.ts +0 -58
  257. package/dist/scripts/bench/ab-harness.d.ts.map +0 -1
  258. package/dist/scripts/bench/ab-harness.js +0 -78
  259. package/dist/scripts/bench/ab-harness.js.map +0 -1
  260. package/dist/src/channels/adapter.d.ts.map +0 -1
  261. package/dist/src/channels/telegram/completion-summary.d.ts.map +0 -1
  262. package/dist/src/channels/telegram/error-renderer.d.ts.map +0 -1
  263. package/dist/src/channels/telegram/event-reducer.d.ts.map +0 -1
  264. package/dist/src/channels/telegram/index.d.ts.map +0 -1
  265. package/dist/src/channels/telegram/injector.d.ts.map +0 -1
  266. package/dist/src/channels/telegram/live-card.d.ts.map +0 -1
  267. package/dist/src/channels/telegram/state-machine.d.ts.map +0 -1
  268. package/dist/src/channels/telegram/tool-tracker.d.ts.map +0 -1
  269. package/dist/src/command-router/cc-handler.d.ts.map +0 -1
  270. package/dist/src/command-router/index.d.ts.map +0 -1
  271. package/dist/src/constants.d.ts.map +0 -1
  272. package/dist/src/council/consensus.d.ts.map +0 -1
  273. package/dist/src/council/council.d.ts.map +0 -1
  274. package/dist/src/council/index.d.ts.map +0 -1
  275. package/dist/src/engines/base-oneshot-session.d.ts.map +0 -1
  276. package/dist/src/engines/index.d.ts.map +0 -1
  277. package/dist/src/engines/persistent-codex-session.d.ts.map +0 -1
  278. package/dist/src/engines/persistent-cursor-session.d.ts.map +0 -1
  279. package/dist/src/engines/persistent-custom-session.d.ts.map +0 -1
  280. package/dist/src/engines/persistent-gemini-session.d.ts.map +0 -1
  281. package/dist/src/engines/persistent-session.d.ts.map +0 -1
  282. package/dist/src/health/handler.d.ts.map +0 -1
  283. package/dist/src/health/index.d.ts.map +0 -1
  284. package/dist/src/index.d.ts.map +0 -1
  285. package/dist/src/lib/auto-recovery.d.ts.map +0 -1
  286. package/dist/src/lib/cache-parity.d.ts.map +0 -1
  287. package/dist/src/lib/circuit-breaker.d.ts.map +0 -1
  288. package/dist/src/lib/config.d.ts.map +0 -1
  289. package/dist/src/lib/drift-detector.d.ts.map +0 -1
  290. package/dist/src/lib/error-formatter.d.ts.map +0 -1
  291. package/dist/src/lib/heartbeat-workaround.d.ts.map +0 -1
  292. package/dist/src/lib/index.d.ts.map +0 -1
  293. package/dist/src/lib/register-guard.d.ts.map +0 -1
  294. package/dist/src/lib/route-flag.d.ts +0 -49
  295. package/dist/src/lib/route-flag.d.ts.map +0 -1
  296. package/dist/src/lib/route-flag.js +0 -52
  297. package/dist/src/lib/route-flag.js.map +0 -1
  298. package/dist/src/lib/sysprompt-strip.d.ts.map +0 -1
  299. package/dist/src/lib/telemetry.d.ts.map +0 -1
  300. package/dist/src/lib/test-mode.d.ts.map +0 -1
  301. package/dist/src/lib/vendor-paths.d.ts.map +0 -1
  302. package/dist/src/logger.d.ts.map +0 -1
  303. package/dist/src/mcp/bridge.d.ts.map +0 -1
  304. package/dist/src/mcp/index.d.ts.map +0 -1
  305. package/dist/src/models.d.ts.map +0 -1
  306. package/dist/src/openai-compat/cli-stream-parser.d.ts.map +0 -1
  307. package/dist/src/openai-compat/index.d.ts.map +0 -1
  308. package/dist/src/openai-compat/openai-compat.d.ts.map +0 -1
  309. package/dist/src/openai-compat/skill-resolver.d.ts.map +0 -1
  310. package/dist/src/openai-compat/sse-translator.d.ts.map +0 -1
  311. package/dist/src/proxy/anthropic-adapter.d.ts.map +0 -1
  312. package/dist/src/proxy/handler.d.ts.map +0 -1
  313. package/dist/src/proxy/index.d.ts.map +0 -1
  314. package/dist/src/proxy/schema-cleaner.d.ts.map +0 -1
  315. package/dist/src/proxy/thought-cache.d.ts.map +0 -1
  316. package/dist/src/session/embedded-server.d.ts.map +0 -1
  317. package/dist/src/session/inbox-manager.d.ts.map +0 -1
  318. package/dist/src/session/index.d.ts.map +0 -1
  319. package/dist/src/session/session-manager.d.ts.map +0 -1
  320. package/dist/src/session-bootstrap/cwd-patch.d.ts.map +0 -1
  321. package/dist/src/session-bootstrap/index.d.ts.map +0 -1
  322. package/dist/src/session-bootstrap/sysprompt-strip.d.ts.map +0 -1
  323. package/dist/src/session-bootstrap/think-conflict-resolver.d.ts.map +0 -1
  324. package/dist/src/types.d.ts.map +0 -1
  325. package/dist/src/validation.d.ts.map +0 -1
  326. package/dist/tests/_helpers/subprocess-mock.d.ts +0 -35
  327. package/dist/tests/_helpers/subprocess-mock.d.ts.map +0 -1
  328. package/dist/tests/_helpers/subprocess-mock.js +0 -136
  329. package/dist/tests/_helpers/subprocess-mock.js.map +0 -1
  330. package/dist/tests/auto-recovery.test.d.ts +0 -2
  331. package/dist/tests/auto-recovery.test.d.ts.map +0 -1
  332. package/dist/tests/auto-recovery.test.js +0 -185
  333. package/dist/tests/auto-recovery.test.js.map +0 -1
  334. package/dist/tests/bench-harness.test.d.ts +0 -2
  335. package/dist/tests/bench-harness.test.d.ts.map +0 -1
  336. package/dist/tests/bench-harness.test.js +0 -21
  337. package/dist/tests/bench-harness.test.js.map +0 -1
  338. package/dist/tests/cache-parity.test.d.ts +0 -2
  339. package/dist/tests/cache-parity.test.d.ts.map +0 -1
  340. package/dist/tests/cache-parity.test.js +0 -401
  341. package/dist/tests/cache-parity.test.js.map +0 -1
  342. package/dist/tests/command-router.test.d.ts +0 -2
  343. package/dist/tests/command-router.test.d.ts.map +0 -1
  344. package/dist/tests/command-router.test.js +0 -60
  345. package/dist/tests/command-router.test.js.map +0 -1
  346. package/dist/tests/council.test.d.ts +0 -2
  347. package/dist/tests/council.test.d.ts.map +0 -1
  348. package/dist/tests/council.test.js +0 -20
  349. package/dist/tests/council.test.js.map +0 -1
  350. package/dist/tests/drift-detector.test.d.ts +0 -2
  351. package/dist/tests/drift-detector.test.d.ts.map +0 -1
  352. package/dist/tests/drift-detector.test.js +0 -268
  353. package/dist/tests/drift-detector.test.js.map +0 -1
  354. package/dist/tests/eager-bootstrap-gating.test.d.ts +0 -9
  355. package/dist/tests/eager-bootstrap-gating.test.d.ts.map +0 -1
  356. package/dist/tests/eager-bootstrap-gating.test.js +0 -97
  357. package/dist/tests/eager-bootstrap-gating.test.js.map +0 -1
  358. package/dist/tests/engines.test.d.ts +0 -2
  359. package/dist/tests/engines.test.d.ts.map +0 -1
  360. package/dist/tests/engines.test.js +0 -8
  361. package/dist/tests/engines.test.js.map +0 -1
  362. package/dist/tests/error-formatter.test.d.ts +0 -2
  363. package/dist/tests/error-formatter.test.d.ts.map +0 -1
  364. package/dist/tests/error-formatter.test.js +0 -220
  365. package/dist/tests/error-formatter.test.js.map +0 -1
  366. package/dist/tests/health.test.d.ts +0 -2
  367. package/dist/tests/health.test.d.ts.map +0 -1
  368. package/dist/tests/health.test.js +0 -110
  369. package/dist/tests/health.test.js.map +0 -1
  370. package/dist/tests/heartbeat-workaround.test.d.ts +0 -2
  371. package/dist/tests/heartbeat-workaround.test.d.ts.map +0 -1
  372. package/dist/tests/heartbeat-workaround.test.js +0 -90
  373. package/dist/tests/heartbeat-workaround.test.js.map +0 -1
  374. package/dist/tests/index.test.d.ts +0 -2
  375. package/dist/tests/index.test.d.ts.map +0 -1
  376. package/dist/tests/index.test.js +0 -7
  377. package/dist/tests/index.test.js.map +0 -1
  378. package/dist/tests/lib-sysprompt-strip.test.d.ts +0 -2
  379. package/dist/tests/lib-sysprompt-strip.test.d.ts.map +0 -1
  380. package/dist/tests/lib-sysprompt-strip.test.js +0 -145
  381. package/dist/tests/lib-sysprompt-strip.test.js.map +0 -1
  382. package/dist/tests/listener-activation.test.d.ts +0 -2
  383. package/dist/tests/listener-activation.test.d.ts.map +0 -1
  384. package/dist/tests/listener-activation.test.js +0 -87
  385. package/dist/tests/listener-activation.test.js.map +0 -1
  386. package/dist/tests/mcp-bridge.test.d.ts +0 -2
  387. package/dist/tests/mcp-bridge.test.d.ts.map +0 -1
  388. package/dist/tests/mcp-bridge.test.js +0 -137
  389. package/dist/tests/mcp-bridge.test.js.map +0 -1
  390. package/dist/tests/openai-compat.test.d.ts +0 -2
  391. package/dist/tests/openai-compat.test.d.ts.map +0 -1
  392. package/dist/tests/openai-compat.test.js +0 -8
  393. package/dist/tests/openai-compat.test.js.map +0 -1
  394. package/dist/tests/proxy-heartbeat-integration.test.d.ts +0 -15
  395. package/dist/tests/proxy-heartbeat-integration.test.d.ts.map +0 -1
  396. package/dist/tests/proxy-heartbeat-integration.test.js +0 -122
  397. package/dist/tests/proxy-heartbeat-integration.test.js.map +0 -1
  398. package/dist/tests/proxy.test.d.ts +0 -2
  399. package/dist/tests/proxy.test.d.ts.map +0 -1
  400. package/dist/tests/proxy.test.js +0 -8
  401. package/dist/tests/proxy.test.js.map +0 -1
  402. package/dist/tests/register-guard-stacking.test.d.ts +0 -2
  403. package/dist/tests/register-guard-stacking.test.d.ts.map +0 -1
  404. package/dist/tests/register-guard-stacking.test.js +0 -61
  405. package/dist/tests/register-guard-stacking.test.js.map +0 -1
  406. package/dist/tests/register-guard.test.d.ts +0 -2
  407. package/dist/tests/register-guard.test.d.ts.map +0 -1
  408. package/dist/tests/register-guard.test.js +0 -129
  409. package/dist/tests/register-guard.test.js.map +0 -1
  410. package/dist/tests/route-flag-rollback.test.d.ts +0 -2
  411. package/dist/tests/route-flag-rollback.test.d.ts.map +0 -1
  412. package/dist/tests/route-flag-rollback.test.js +0 -70
  413. package/dist/tests/route-flag-rollback.test.js.map +0 -1
  414. package/dist/tests/route-flag.test.d.ts +0 -2
  415. package/dist/tests/route-flag.test.d.ts.map +0 -1
  416. package/dist/tests/route-flag.test.js +0 -101
  417. package/dist/tests/route-flag.test.js.map +0 -1
  418. package/dist/tests/session-bootstrap.test.d.ts +0 -2
  419. package/dist/tests/session-bootstrap.test.d.ts.map +0 -1
  420. package/dist/tests/session-bootstrap.test.js +0 -183
  421. package/dist/tests/session-bootstrap.test.js.map +0 -1
  422. package/dist/tests/session.test.d.ts +0 -2
  423. package/dist/tests/session.test.d.ts.map +0 -1
  424. package/dist/tests/session.test.js +0 -17
  425. package/dist/tests/session.test.js.map +0 -1
  426. package/dist/tests/state-machine.test.d.ts +0 -2
  427. package/dist/tests/state-machine.test.d.ts.map +0 -1
  428. package/dist/tests/state-machine.test.js +0 -133
  429. package/dist/tests/state-machine.test.js.map +0 -1
  430. package/dist/tests/streaming/cli-stream-parser.test.d.ts +0 -2
  431. package/dist/tests/streaming/cli-stream-parser.test.d.ts.map +0 -1
  432. package/dist/tests/streaming/cli-stream-parser.test.js +0 -233
  433. package/dist/tests/streaming/cli-stream-parser.test.js.map +0 -1
  434. package/dist/tests/streaming/feature-flag.test.d.ts +0 -14
  435. package/dist/tests/streaming/feature-flag.test.d.ts.map +0 -1
  436. package/dist/tests/streaming/feature-flag.test.js +0 -163
  437. package/dist/tests/streaming/feature-flag.test.js.map +0 -1
  438. package/dist/tests/streaming/no-tools-prompt.test.d.ts +0 -17
  439. package/dist/tests/streaming/no-tools-prompt.test.d.ts.map +0 -1
  440. package/dist/tests/streaming/no-tools-prompt.test.js +0 -229
  441. package/dist/tests/streaming/no-tools-prompt.test.js.map +0 -1
  442. package/dist/tests/streaming/skill-plus-tools.test.d.ts +0 -14
  443. package/dist/tests/streaming/skill-plus-tools.test.d.ts.map +0 -1
  444. package/dist/tests/streaming/skill-plus-tools.test.js +0 -234
  445. package/dist/tests/streaming/skill-plus-tools.test.js.map +0 -1
  446. package/dist/tests/streaming/sse-translator.test.d.ts +0 -2
  447. package/dist/tests/streaming/sse-translator.test.d.ts.map +0 -1
  448. package/dist/tests/streaming/sse-translator.test.js +0 -227
  449. package/dist/tests/streaming/sse-translator.test.js.map +0 -1
  450. package/dist/tests/streaming/tool-result-roundtrip.test.d.ts +0 -11
  451. package/dist/tests/streaming/tool-result-roundtrip.test.d.ts.map +0 -1
  452. package/dist/tests/streaming/tool-result-roundtrip.test.js +0 -215
  453. package/dist/tests/streaming/tool-result-roundtrip.test.js.map +0 -1
  454. package/dist/tests/streaming/tool-use-translation.test.d.ts +0 -10
  455. package/dist/tests/streaming/tool-use-translation.test.d.ts.map +0 -1
  456. package/dist/tests/streaming/tool-use-translation.test.js +0 -251
  457. package/dist/tests/streaming/tool-use-translation.test.js.map +0 -1
  458. package/dist/tests/telegram-bridge.test.d.ts +0 -2
  459. package/dist/tests/telegram-bridge.test.d.ts.map +0 -1
  460. package/dist/tests/telegram-bridge.test.js +0 -17
  461. package/dist/tests/telegram-bridge.test.js.map +0 -1
  462. package/dist/tests/telegram-injector.test.d.ts +0 -2
  463. package/dist/tests/telegram-injector.test.d.ts.map +0 -1
  464. package/dist/tests/telegram-injector.test.js +0 -74
  465. package/dist/tests/telegram-injector.test.js.map +0 -1
  466. package/dist/tests/telemetry.test.d.ts +0 -2
  467. package/dist/tests/telemetry.test.d.ts.map +0 -1
  468. package/dist/tests/telemetry.test.js +0 -405
  469. package/dist/tests/telemetry.test.js.map +0 -1
  470. package/dist/tests/test-mode.test.d.ts +0 -2
  471. package/dist/tests/test-mode.test.d.ts.map +0 -1
  472. package/dist/tests/test-mode.test.js +0 -39
  473. package/dist/tests/test-mode.test.js.map +0 -1
@@ -0,0 +1,63 @@
1
+ /**
2
+ * telegram/card-renderer.ts
3
+ *
4
+ * Telegram Bot API HTTP layer + stream-event bridge.
5
+ * Extracted from live-card.ts (lines 214–458) per Phase 5 decomposition.
6
+ *
7
+ * Exports: telegramApi, sendTg, editTg, bridgeEvent, StreamEvent, TranscriptEntry
8
+ */
9
+ export declare function telegramApi(method: string, params: Record<string, unknown>): Promise<{
10
+ ok: boolean;
11
+ result?: {
12
+ message_id?: number;
13
+ };
14
+ error_code?: number;
15
+ description?: string;
16
+ parameters?: {
17
+ retry_after?: number;
18
+ };
19
+ }>;
20
+ /** Send a Telegram message. Tries MarkdownV2 first, falls back to plain text. */
21
+ export declare function sendTg(chatId: string, text: string, threadId?: string, replyMarkup?: unknown, replyToMessageId?: number | null): Promise<{
22
+ ok: boolean;
23
+ result?: {
24
+ message_id?: number;
25
+ };
26
+ }>;
27
+ /** Edit a Telegram message. Tries MarkdownV2 first, falls back to plain text. */
28
+ export declare function editTg(chatId: string, messageId: number, text: string, replyMarkup?: unknown): Promise<{
29
+ ok: boolean;
30
+ }>;
31
+ export interface StreamEvent {
32
+ type: string;
33
+ id?: string;
34
+ tool_use_id?: string;
35
+ parent_tool_use_id?: string;
36
+ parentToolUseId?: string;
37
+ tool?: {
38
+ name?: string;
39
+ input?: Record<string, unknown>;
40
+ parent_tool_use_id?: string;
41
+ };
42
+ tool_name?: string;
43
+ input?: Record<string, unknown>;
44
+ content?: unknown;
45
+ output?: unknown;
46
+ is_error?: boolean;
47
+ error?: unknown;
48
+ result?: string;
49
+ }
50
+ export interface TranscriptEntry {
51
+ kind: 'tool_call' | 'tool_result' | 'assistant';
52
+ ts: string;
53
+ name?: string;
54
+ input?: Record<string, unknown>;
55
+ toolUseId?: string;
56
+ parentToolUseId?: string;
57
+ toolName?: string;
58
+ content?: unknown;
59
+ isError?: boolean;
60
+ text?: string;
61
+ delta?: boolean;
62
+ }
63
+ export declare function bridgeEvent(event: StreamEvent): TranscriptEntry | null;
@@ -0,0 +1,149 @@
1
+ /**
2
+ * telegram/card-renderer.ts
3
+ *
4
+ * Telegram Bot API HTTP layer + stream-event bridge.
5
+ * Extracted from live-card.ts (lines 214–458) per Phase 5 decomposition.
6
+ *
7
+ * Exports: telegramApi, sendTg, editTg, bridgeEvent, StreamEvent, TranscriptEntry
8
+ */
9
+ import { request as httpsRequest } from 'node:https';
10
+ import { _logger } from './logger.js';
11
+ import { BOT_TOKEN } from './live-card.js';
12
+ const PLUGIN_TAG = '[cc-openclaw/telegram/live-card]';
13
+ // ── Telegram Bot API ──────────────────────────────────────────────────────
14
+ export function telegramApi(method, params) {
15
+ return new Promise((resolve, reject) => {
16
+ const body = JSON.stringify(params);
17
+ const options = {
18
+ hostname: 'api.telegram.org',
19
+ path: `/bot${BOT_TOKEN}/${method}`,
20
+ method: 'POST',
21
+ headers: {
22
+ 'Content-Type': 'application/json',
23
+ 'Content-Length': Buffer.byteLength(body),
24
+ },
25
+ };
26
+ const req = httpsRequest(options, (res) => {
27
+ let data = '';
28
+ res.on('data', (chunk) => (data += chunk));
29
+ res.on('end', () => {
30
+ try {
31
+ resolve(JSON.parse(data));
32
+ }
33
+ catch {
34
+ resolve({ ok: false, description: 'JSON parse error' });
35
+ }
36
+ });
37
+ });
38
+ req.on('error', (err) => reject(err));
39
+ req.setTimeout(10_000, () => {
40
+ req.destroy(new Error('Telegram API timeout'));
41
+ });
42
+ req.write(body);
43
+ req.end();
44
+ });
45
+ }
46
+ /** Send a Telegram message. Tries MarkdownV2 first, falls back to plain text. */
47
+ export async function sendTg(chatId, text, threadId, replyMarkup, replyToMessageId) {
48
+ try {
49
+ const base = { chat_id: chatId, disable_web_page_preview: true };
50
+ if (threadId)
51
+ base.message_thread_id = Number(threadId);
52
+ if (replyMarkup)
53
+ base.reply_markup = replyMarkup;
54
+ if (replyToMessageId)
55
+ base.reply_to_message_id = Number(replyToMessageId);
56
+ const res = await telegramApi('sendMessage', {
57
+ ...base,
58
+ text,
59
+ parse_mode: 'MarkdownV2',
60
+ });
61
+ if (res.ok)
62
+ return res;
63
+ const plain = text.replace(/[_*[\]()~`>#+\-=|{}.!\\]/g, '');
64
+ return telegramApi('sendMessage', {
65
+ ...base,
66
+ text: plain || 'Session update',
67
+ });
68
+ }
69
+ catch {
70
+ return { ok: false };
71
+ }
72
+ }
73
+ /** Edit a Telegram message. Tries MarkdownV2 first, falls back to plain text. */
74
+ export async function editTg(chatId, messageId, text, replyMarkup) {
75
+ try {
76
+ const params = {
77
+ chat_id: chatId,
78
+ message_id: messageId,
79
+ text,
80
+ parse_mode: 'MarkdownV2',
81
+ disable_web_page_preview: true,
82
+ };
83
+ if (replyMarkup)
84
+ params.reply_markup = replyMarkup;
85
+ const res = await telegramApi('editMessageText', params);
86
+ if (!res.ok && (res.error_code === 429 || res.description?.includes('Too Many Requests'))) {
87
+ const retryAfterSec = res.parameters?.retry_after || 5;
88
+ const waitMs = Math.min(retryAfterSec * 1000, 30000);
89
+ _logger.warn(`${PLUGIN_TAG} editTg 429 — waiting ${waitMs}ms`);
90
+ await new Promise(r => setTimeout(r, waitMs));
91
+ const retry = await telegramApi('editMessageText', params);
92
+ if (retry.ok)
93
+ return retry;
94
+ }
95
+ if (res.ok)
96
+ return res;
97
+ const plain = text.replace(/[_*[\]()~`>#+\-=|{}.!\\]/g, '');
98
+ const fallback = {
99
+ chat_id: chatId,
100
+ message_id: messageId,
101
+ text: plain || 'Session update',
102
+ disable_web_page_preview: true,
103
+ };
104
+ if (replyMarkup)
105
+ fallback.reply_markup = replyMarkup;
106
+ return telegramApi('editMessageText', fallback);
107
+ }
108
+ catch {
109
+ return { ok: false };
110
+ }
111
+ }
112
+ export function bridgeEvent(event) {
113
+ const ts = new Date().toISOString();
114
+ if (event.type === 'tool_use') {
115
+ const parentToolUseId = event.parent_tool_use_id ||
116
+ event.tool?.parent_tool_use_id ||
117
+ event.parentToolUseId ||
118
+ '';
119
+ return {
120
+ kind: 'tool_call',
121
+ ts,
122
+ name: event.tool?.name || 'Unknown',
123
+ input: event.tool?.input || {},
124
+ toolUseId: event.id || event.tool_use_id || '',
125
+ parentToolUseId,
126
+ };
127
+ }
128
+ if (event.type === 'tool_result') {
129
+ return {
130
+ kind: 'tool_result',
131
+ ts,
132
+ toolUseId: event.tool_use_id || event.id || '',
133
+ toolName: event.tool_name || event.tool?.name || undefined,
134
+ content: event.content || event.output || '',
135
+ isError: Boolean(event.is_error || event.error),
136
+ parentToolUseId: event.parent_tool_use_id || event.parentToolUseId || '',
137
+ };
138
+ }
139
+ if (event.type === 'text') {
140
+ return {
141
+ kind: 'assistant',
142
+ ts,
143
+ text: event.result || '',
144
+ delta: true,
145
+ };
146
+ }
147
+ return null;
148
+ }
149
+ //# sourceMappingURL=card-renderer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"card-renderer.js","sourceRoot":"","sources":["../../../../src/channels/telegram/card-renderer.ts"],"names":[],"mappings":"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"}
@@ -47,21 +47,9 @@ if (!isTestMode()) {
47
47
  function cycleChatModel(chatId) { return chatModelPrefs.cycle(chatId); }
48
48
  function getChatModel(chatId) { return chatModelPrefs.get(chatId); }
49
49
  // ── Helpers ───────────────────────────────────────────────────────────────
50
- function _fmtReset(epoch) {
51
- if (!epoch)
52
- return '';
53
- const diff = epoch * 1000 - Date.now();
54
- if (diff <= 0)
55
- return ' (now)';
56
- const mins = Math.round(diff / 60000);
57
- if (mins < 60)
58
- return ` (resets ${mins}m)`;
59
- const hrs = Math.floor(mins / 60);
60
- return ` (resets ${hrs}h ${mins % 60}m)`;
61
- }
62
- function _pct(p) {
63
- return p == null ? ' —' : `${String(Math.round(p)).padStart(3, ' ')}%`;
64
- }
50
+ // `_fmtReset` and `_pct` extracted to `./format-helpers.ts` 2026-05-13 —
51
+ // first hot-path-adjacent decomposition; pure functions, behavior preserved.
52
+ import { fmtReset as _fmtReset, fmtPct as _pct } from './format-helpers.js';
65
53
  // ── register() ────────────────────────────────────────────────────────────
66
54
  /**
67
55
  * Register all event-reducer hooks (command dispatch, model override,
@@ -1 +1 @@
1
- {"version":3,"file":"event-reducer.js","sourceRoot":"","sources":["../../../../src/channels/telegram/event-reducer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"event-reducer.js","sourceRoot":"","sources":["../../../../src/channels/telegram/event-reducer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * Pure formatting helpers for Telegram event-reducer.
3
+ *
4
+ * Extracted from `event-reducer.ts` 2026-05-13 — first hot-path-adjacent
5
+ * decomposition step. Pure functions: no side effects, no I/O, no module
6
+ * state. Behavior preservation verified by existing test suite.
7
+ *
8
+ * Used in /quota and /sessions command renderers.
9
+ */
10
+ /**
11
+ * Format a quota-reset Unix epoch as a human-readable suffix.
12
+ * Returns `''` for missing/zero, `' (now)'` for past, `' (resets Nm)'` or
13
+ * `' (resets Nh Mm)'` for future timestamps.
14
+ */
15
+ export declare function fmtReset(epoch: number | null | undefined): string;
16
+ /**
17
+ * Format a percentage value padded to 4-char field (`' 5%'` / `' 23%'` /
18
+ * `'100%'`). Returns `' —'` for null/undefined.
19
+ */
20
+ export declare function fmtPct(p: number | null | undefined): string;
@@ -0,0 +1,34 @@
1
+ /**
2
+ * Pure formatting helpers for Telegram event-reducer.
3
+ *
4
+ * Extracted from `event-reducer.ts` 2026-05-13 — first hot-path-adjacent
5
+ * decomposition step. Pure functions: no side effects, no I/O, no module
6
+ * state. Behavior preservation verified by existing test suite.
7
+ *
8
+ * Used in /quota and /sessions command renderers.
9
+ */
10
+ /**
11
+ * Format a quota-reset Unix epoch as a human-readable suffix.
12
+ * Returns `''` for missing/zero, `' (now)'` for past, `' (resets Nm)'` or
13
+ * `' (resets Nh Mm)'` for future timestamps.
14
+ */
15
+ export function fmtReset(epoch) {
16
+ if (!epoch)
17
+ return '';
18
+ const diff = epoch * 1000 - Date.now();
19
+ if (diff <= 0)
20
+ return ' (now)';
21
+ const mins = Math.round(diff / 60000);
22
+ if (mins < 60)
23
+ return ` (resets ${mins}m)`;
24
+ const hrs = Math.floor(mins / 60);
25
+ return ` (resets ${hrs}h ${mins % 60}m)`;
26
+ }
27
+ /**
28
+ * Format a percentage value padded to 4-char field (`' 5%'` / `' 23%'` /
29
+ * `'100%'`). Returns `' —'` for null/undefined.
30
+ */
31
+ export function fmtPct(p) {
32
+ return p == null ? ' —' : `${String(Math.round(p)).padStart(3, ' ')}%`;
33
+ }
34
+ //# sourceMappingURL=format-helpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"format-helpers.js","sourceRoot":"","sources":["../../../../src/channels/telegram/format-helpers.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH;;;;GAIG;AACH,MAAM,UAAU,QAAQ,CAAC,KAAgC;IACvD,IAAI,CAAC,KAAK;QAAE,OAAO,EAAE,CAAC;IACtB,MAAM,IAAI,GAAG,KAAK,GAAG,IAAI,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACvC,IAAI,IAAI,IAAI,CAAC;QAAE,OAAO,QAAQ,CAAC;IAC/B,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,KAAK,CAAC,CAAC;IACtC,IAAI,IAAI,GAAG,EAAE;QAAE,OAAO,YAAY,IAAI,IAAI,CAAC;IAC3C,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,EAAE,CAAC,CAAC;IAClC,OAAO,YAAY,GAAG,KAAK,IAAI,GAAG,EAAE,IAAI,CAAC;AAC3C,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,MAAM,CAAC,CAA4B;IACjD,OAAO,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC;AAC3E,CAAC"}
@@ -0,0 +1,36 @@
1
+ /**
2
+ * insight-formatter — pure tip extraction from Savvy card state + TipsEngine.
3
+ *
4
+ * Extracted from tool-tracker.ts (Step 5 of Phase 5 v0.11.0 decomposition,
5
+ * PRPs/phase5-live-card-split.md).
6
+ *
7
+ * Two call sites in tool-tracker.ts duplicated the toolSummary build + getTip
8
+ * orchestration: `after_tool_call` (~L617-625) and `message_sending` (~L675-683).
9
+ * This module factors that pattern into one pure function.
10
+ *
11
+ * The TipsEngine is loaded by tool-tracker.ts (stays there — the `__require`
12
+ * indirection to the workspace path is wired up alongside the other lazy
13
+ * module loads inside register()). This file only consumes the TipsEngine
14
+ * instance via an interface, keeping it framework-agnostic and testable.
15
+ */
16
+ /** Minimal shape this module needs from a SavvyCardState — type-safe without
17
+ * importing tool-tracker's full SavvyCardState interface (avoids a cycle).
18
+ */
19
+ export interface InsightCardState {
20
+ activityLog: string[];
21
+ elapsedMs: number;
22
+ [key: string]: unknown;
23
+ }
24
+ /** Minimal shape this module needs from a TipsEngine. */
25
+ export interface TipsEngineLike {
26
+ getTip(ctx: unknown): unknown;
27
+ }
28
+ /**
29
+ * Build a tool-frequency summary from a SavvyCardState's activityLog and
30
+ * call TipsEngine.getTip. Returns whatever the engine returns (typically a
31
+ * `{ emoji, text }` shape or null; consumers pass it to `state.setTip(tip)`).
32
+ *
33
+ * Pure: no I/O, no logging, no Telegram side effects. Safe to unit-test
34
+ * with a TipsEngine double.
35
+ */
36
+ export declare function extractInsightTip(state: InsightCardState, tipsEngine: TipsEngineLike): unknown;
@@ -0,0 +1,36 @@
1
+ /**
2
+ * insight-formatter — pure tip extraction from Savvy card state + TipsEngine.
3
+ *
4
+ * Extracted from tool-tracker.ts (Step 5 of Phase 5 v0.11.0 decomposition,
5
+ * PRPs/phase5-live-card-split.md).
6
+ *
7
+ * Two call sites in tool-tracker.ts duplicated the toolSummary build + getTip
8
+ * orchestration: `after_tool_call` (~L617-625) and `message_sending` (~L675-683).
9
+ * This module factors that pattern into one pure function.
10
+ *
11
+ * The TipsEngine is loaded by tool-tracker.ts (stays there — the `__require`
12
+ * indirection to the workspace path is wired up alongside the other lazy
13
+ * module loads inside register()). This file only consumes the TipsEngine
14
+ * instance via an interface, keeping it framework-agnostic and testable.
15
+ */
16
+ /**
17
+ * Build a tool-frequency summary from a SavvyCardState's activityLog and
18
+ * call TipsEngine.getTip. Returns whatever the engine returns (typically a
19
+ * `{ emoji, text }` shape or null; consumers pass it to `state.setTip(tip)`).
20
+ *
21
+ * Pure: no I/O, no logging, no Telegram side effects. Safe to unit-test
22
+ * with a TipsEngine double.
23
+ */
24
+ export function extractInsightTip(state, tipsEngine) {
25
+ const toolSummary = {};
26
+ for (const t of state.activityLog) {
27
+ const key = t === 'exec' ? 'execute' : t;
28
+ toolSummary[key] = (toolSummary[key] || 0) + 1;
29
+ }
30
+ return tipsEngine.getTip({
31
+ ...state,
32
+ toolSummary,
33
+ elapsedSec: Math.round(state.elapsedMs / 1000),
34
+ });
35
+ }
36
+ //# sourceMappingURL=insight-formatter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"insight-formatter.js","sourceRoot":"","sources":["../../../../src/channels/telegram/insight-formatter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAgBH;;;;;;;GAOG;AACH,MAAM,UAAU,iBAAiB,CAC/B,KAAuB,EACvB,UAA0B;IAE1B,MAAM,WAAW,GAA2B,EAAE,CAAC;IAC/C,KAAK,MAAM,CAAC,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;QAClC,MAAM,GAAG,GAAG,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;QACzC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;IACjD,CAAC;IACD,OAAO,UAAU,CAAC,MAAM,CAAC;QACvB,GAAG,KAAK;QACR,WAAW;QACX,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC;KAC/C,CAAC,CAAC;AACL,CAAC"}
@@ -10,6 +10,7 @@
10
10
  *
11
11
  * Source lines: 1–930 of ux-bridge.js
12
12
  */
13
+ import { TelegramMessageQueue } from './throttle-controller.js';
13
14
  export interface PluginApi {
14
15
  on(event: string, handler: (...args: unknown[]) => unknown | Promise<unknown>): void;
15
16
  logger?: Console;
@@ -69,17 +70,7 @@ export declare const delegatedCardStore: Map<string, {
69
70
  threadId: string | undefined;
70
71
  }>;
71
72
  export declare let latestQuotaState: QuotaState | null;
72
- /**
73
- * Shared cross-handler dedup. Any handler dispatching to Telegram should
74
- * (a) mark via `markDispatchedToTelegram(chatId, payload)` and (b) check via
75
- * `wasDispatchedToTelegram(chatId, payload)` to short-circuit duplicates.
76
- *
77
- * Used to bridge the gap between cc-openclaw's patched SessionManager.send
78
- * path and the gateway's native ACP message_sending path — both can fire
79
- * for the same agent reply, producing the doubled-greeting on /new.
80
- */
81
- export declare function markDispatchedToTelegram(chatId: string, payload: unknown): void;
82
- export declare function wasDispatchedToTelegram(chatId: string, payload: unknown): boolean;
73
+ export { markDispatchedToTelegram, wasDispatchedToTelegram } from './throttle-controller.js';
83
74
  export interface QuotaState {
84
75
  sevenDay?: {
85
76
  usedPercent?: number;
@@ -140,84 +131,11 @@ interface CardState {
140
131
  startedAt?: number;
141
132
  [key: string]: unknown;
142
133
  }
143
- export declare function telegramApi(method: string, params: Record<string, unknown>): Promise<{
144
- ok: boolean;
145
- result?: {
146
- message_id?: number;
147
- };
148
- error_code?: number;
149
- description?: string;
150
- parameters?: {
151
- retry_after?: number;
152
- };
153
- }>;
154
- /** Send a Telegram message. Tries MarkdownV2 first, falls back to plain text. */
155
- export declare function sendTg(chatId: string, text: string, threadId?: string, replyMarkup?: unknown, replyToMessageId?: number | null): Promise<{
156
- ok: boolean;
157
- result?: {
158
- message_id?: number;
159
- };
160
- }>;
161
- /** Edit a Telegram message. Tries MarkdownV2 first, falls back to plain text. */
162
- export declare function editTg(chatId: string, messageId: number, text: string, replyMarkup?: unknown): Promise<{
163
- ok: boolean;
164
- }>;
165
- export declare class TelegramMessageQueue {
166
- chatId: string;
167
- threadId: string | undefined;
168
- cardMessageId: number | null;
169
- _replyToMessageId: number | null;
170
- /**
171
- * Sticky flag — set true the first time `sendMessage()` is called for this
172
- * queue instance. Lets the fast-turn fallback in `applyPatch()` detect that
173
- * a new message was already dispatched by the pipeline's `onNewMessage`
174
- * callback and avoid double-firing. Bug context: 2026-04-29 doubled-greeting
175
- * on `/new` was caused by both the pipeline AND the fallback emitting the
176
- * same model output as separate Telegram messages.
177
- */
178
- messageSent: boolean;
179
- private _cardChain;
180
- private _msgChain;
181
- constructor(chatId: string, threadId: string | undefined, existingCardMessageId: number | null, replyToMessageId?: number | null);
182
- /** Send or edit the session card. */
183
- updateCard(text: string, replyMarkup?: unknown): void;
184
- /** Send a standalone message (error alert, completion summary). */
185
- sendMessage(text: string): void;
186
- }
187
- interface StreamEvent {
188
- type: string;
189
- id?: string;
190
- tool_use_id?: string;
191
- parent_tool_use_id?: string;
192
- parentToolUseId?: string;
193
- tool?: {
194
- name?: string;
195
- input?: Record<string, unknown>;
196
- parent_tool_use_id?: string;
197
- };
198
- tool_name?: string;
199
- input?: Record<string, unknown>;
200
- content?: unknown;
201
- output?: unknown;
202
- is_error?: boolean;
203
- error?: unknown;
204
- result?: string;
205
- }
206
- interface TranscriptEntry {
207
- kind: 'tool_call' | 'tool_result' | 'assistant';
208
- ts: string;
209
- name?: string;
210
- input?: Record<string, unknown>;
211
- toolUseId?: string;
212
- parentToolUseId?: string;
213
- toolName?: string;
214
- content?: unknown;
215
- isError?: boolean;
216
- text?: string;
217
- delta?: boolean;
218
- }
219
- export declare function bridgeEvent(event: StreamEvent): TranscriptEntry | null;
220
- export declare let _logger: Console;
134
+ export { telegramApi, sendTg, editTg } from './card-renderer.js';
135
+ export { TelegramMessageQueue } from './throttle-controller.js';
136
+ export { bridgeEvent } from './card-renderer.js';
137
+ export type { StreamEvent, TranscriptEntry } from './card-renderer.js';
138
+ export { _logger, setLogger } from './logger.js';
221
139
  export declare function loadUxModule(): Record<string, unknown>;
222
140
  export declare function applyPatch(): Promise<void>;
223
141
  export declare function cleanStaleStatusFiles(): void;
@@ -226,4 +144,3 @@ export declare function cleanStaleStatusFiles(): void;
226
144
  * Idempotent — subsequent calls are no-ops.
227
145
  */
228
146
  export declare function register(api: PluginApi): void;
229
- export {};