pi-harness-runtime 0.10.43 → 1.1.1

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 (777) hide show
  1. package/harness/e2e/chatgpt-quota-scraper.ts +478 -0
  2. package/harness/e2e/glm-quota-scraper.ts +449 -0
  3. package/index.ts +2 -0
  4. package/package.json +1 -1
  5. package/packages/a2a-adapter/README.md +35 -0
  6. package/packages/a2a-adapter/package.json +21 -0
  7. package/packages/a2a-adapter/test/a2a.test.ts +151 -0
  8. package/packages/architecture-generator/package.json +21 -0
  9. package/packages/auth/README.md +60 -0
  10. package/packages/auth/package.json +22 -0
  11. package/packages/auth/test/auth.test.ts +238 -0
  12. package/packages/autonomous-refactor/package.json +21 -0
  13. package/packages/autonomous-refactor/test/refactor.test.ts +202 -0
  14. package/packages/autonomous-runtime/README.md +48 -0
  15. package/packages/autonomous-runtime/package.json +34 -0
  16. package/packages/autonomous-runtime/test/autonomous-runtime.test.ts +194 -0
  17. package/packages/autonomous-runtime/test/inbox.test.ts +80 -0
  18. package/packages/autonomous-runtime/test/types.test.ts +68 -0
  19. package/packages/cache-strategy/package.json +21 -0
  20. package/packages/cache-strategy/test/cache.test.ts +137 -0
  21. package/packages/capability-registry/package.json +41 -0
  22. package/packages/capability-registry/test/registry.test.ts +204 -0
  23. package/packages/checkpoint/README.md +206 -0
  24. package/packages/checkpoint/package.json +33 -0
  25. package/packages/checkpoint/test/engine.test.ts +265 -0
  26. package/packages/cli-plugin-sdk/README.md +48 -0
  27. package/packages/cli-plugin-sdk/package.json +24 -0
  28. package/packages/cli-plugin-sdk/test/cli.test.ts +45 -0
  29. package/packages/clipboard/package.json +12 -0
  30. package/packages/clipboard-plugin/package.json +17 -0
  31. package/packages/code-generation/README.md +302 -0
  32. package/packages/code-generation/package.json +38 -0
  33. package/packages/code-generation/test/generator.test.ts +238 -0
  34. package/packages/code-review/README.md +312 -0
  35. package/packages/code-review/package.json +38 -0
  36. package/packages/code-review/test/engine.test.ts +302 -0
  37. package/packages/codex-adapter/package.json +24 -0
  38. package/packages/codex-adapter/test/provider.test.ts +142 -0
  39. package/packages/config-capture/package.json +23 -0
  40. package/packages/context-compiler/package.json +28 -0
  41. package/packages/context-compiler/test/context-compiler.test.ts +746 -0
  42. package/packages/context-discovery/package.json +12 -0
  43. package/packages/context-manager/package.json +21 -0
  44. package/packages/context-manager/test/context.test.ts +198 -0
  45. package/packages/cookie-sanitizer/README.md +141 -0
  46. package/packages/cookie-sanitizer/package.json +27 -0
  47. package/packages/cookie-sanitizer/test/infer.test.ts +110 -0
  48. package/packages/cookie-sanitizer/test/normalize.test.ts +113 -0
  49. package/packages/cookie-sanitizer/test/parse.test.ts +204 -0
  50. package/packages/cookie-sanitizer/test/sync.test.ts +231 -0
  51. package/packages/cookie-sanitizer/test/watcher.test.ts +27 -0
  52. package/packages/cost-optimizer/package.json +41 -0
  53. package/packages/cost-optimizer/test/cost-optimizer.test.ts +438 -0
  54. package/packages/dependency-analyzer/package.json +12 -0
  55. package/packages/dependency-analyzer/test/analyzer.test.ts +48 -0
  56. package/packages/django-plugin/README.md +1 -0
  57. package/packages/django-plugin/package.json +20 -0
  58. package/packages/django-plugin/test/analyzer.test.ts +195 -0
  59. package/packages/doc-generator/package.json +21 -0
  60. package/packages/doc-generator/test/docs.test.ts +168 -0
  61. package/packages/evaluation-engine/package.json +23 -0
  62. package/packages/evaluation-engine/test/engine.test.ts +277 -0
  63. package/packages/evaluation-runner/package.json +21 -0
  64. package/packages/evaluation-runner/test/runner.test.ts +168 -0
  65. package/packages/event-bus/package.json +12 -0
  66. package/packages/event-bus/test/bus.test.ts +88 -0
  67. package/packages/event-store/package.json +12 -0
  68. package/packages/event-store/test/store.test.ts +115 -0
  69. package/packages/experience-replay/package.json +23 -0
  70. package/packages/experience-replay/test/replay.test.ts +267 -0
  71. package/packages/feedback-collector/package.json +21 -0
  72. package/packages/feedback-collector/test/collector.test.ts +142 -0
  73. package/packages/file-copy-helper/package.json +17 -0
  74. package/packages/framework-detector/README.md +283 -0
  75. package/packages/framework-detector/package.json +38 -0
  76. package/packages/framework-detector/test/detector.test.ts +75 -0
  77. package/packages/framework-plugin-sdk/README.md +399 -0
  78. package/packages/framework-plugin-sdk/package.json +39 -0
  79. package/packages/framework-plugin-sdk/test/manager.test.ts +320 -0
  80. package/packages/frappe-plugin/package.json +20 -0
  81. package/packages/frappe-plugin/test/analyzer.test.ts +250 -0
  82. package/packages/generic-web-plugin/package.json +20 -0
  83. package/packages/generic-web-plugin/test/analyzer.test.ts +134 -0
  84. package/packages/health-monitor/package.json +21 -0
  85. package/packages/health-monitor/test/health.test.ts +231 -0
  86. package/packages/intent-analyzer/package.json +12 -0
  87. package/packages/intent-analyzer/test/analyzer.test.ts +72 -0
  88. package/packages/knowledge-graph/package.json +24 -0
  89. package/packages/knowledge-retrieval/package.json +25 -0
  90. package/packages/laravel-plugin/README.md +1 -0
  91. package/packages/laravel-plugin/package.json +20 -0
  92. package/packages/laravel-plugin/test/analyzer.test.ts +220 -0
  93. package/packages/learning-engine/package.json +23 -0
  94. package/packages/learning-engine/test/engine.test.ts +331 -0
  95. package/packages/mcp-adapter/README.md +47 -0
  96. package/packages/mcp-adapter/package.json +21 -0
  97. package/packages/mcp-adapter/test/server.test.ts +91 -0
  98. package/packages/memory-engine/package.json +23 -0
  99. package/packages/memory-engine/test/engine.test.ts +456 -0
  100. package/packages/milestone-manager/package.json +21 -0
  101. package/packages/model-registry/package.json +41 -0
  102. package/packages/model-registry/test/registry.test.ts +342 -0
  103. package/packages/nextjs-plugin/README.md +1 -0
  104. package/packages/nextjs-plugin/package.json +30 -0
  105. package/packages/nextjs-plugin/test/analyzer.test.ts +149 -0
  106. package/packages/notification/adapters/email-adapter.ts +126 -0
  107. package/packages/notification/adapters/ntfy-adapter.ts +100 -0
  108. package/packages/notification/adapters/telegram-adapter.ts +107 -0
  109. package/packages/notification/adapters/webhook-adapter.ts +75 -0
  110. package/packages/notification/base-adapter.ts +75 -0
  111. package/packages/notification/index.ts +51 -0
  112. package/packages/notification/notification-center.ts +286 -0
  113. package/packages/notification/package.json +22 -0
  114. package/packages/notification/test/notification.test.ts +372 -0
  115. package/packages/notification/types.ts +89 -0
  116. package/packages/observability/README.md +241 -0
  117. package/packages/observability/package.json +34 -0
  118. package/packages/observability/test/observability.test.ts +1350 -0
  119. package/packages/okf-indexer/package.json +12 -0
  120. package/packages/performance-optimizer/package.json +23 -0
  121. package/packages/performance-optimizer/test/optimizer.test.ts +267 -0
  122. package/packages/privilege-broker/README.md +45 -0
  123. package/packages/privilege-broker/package.json +35 -0
  124. package/packages/project-analyzer/package.json +43 -0
  125. package/packages/project-analyzer/test/index.test.ts +1719 -0
  126. package/packages/project-bootstrap/package.json +24 -0
  127. package/packages/projection-engine/package.json +12 -0
  128. package/packages/prompt-compiler/package.json +28 -0
  129. package/packages/prompt-compiler/test/prompt-compiler.test.ts +813 -0
  130. package/packages/prompt-versioning/package.json +21 -0
  131. package/packages/prompt-versioning/test/versioning.test.ts +112 -0
  132. package/packages/provider-adapter-sdk/README.md +221 -0
  133. package/packages/provider-adapter-sdk/examples/custom-adapter.ts +353 -0
  134. package/packages/provider-adapter-sdk/package.json +36 -0
  135. package/packages/provider-adapter-sdk/test/sdk.test.ts +220 -0
  136. package/packages/provider-router/package.json +41 -0
  137. package/packages/provider-router/test/provider-router.test.ts +405 -0
  138. package/packages/provider-selector/package.json +21 -0
  139. package/packages/provider-selector/test/selector.test.ts +192 -0
  140. package/packages/providers/README.md +3 -0
  141. package/packages/providers/adapters.ts +362 -0
  142. package/packages/providers/deepagents-adapter.ts +458 -0
  143. package/packages/providers/glm-usage.ts +248 -0
  144. package/packages/providers/index.ts +85 -0
  145. package/packages/providers/openai-usage.ts +263 -0
  146. package/packages/providers/package.json +22 -0
  147. package/packages/providers/test/providers.test.ts +225 -0
  148. package/packages/quota-manager/README.md +3 -0
  149. package/packages/quota-manager/{dist/examples/tui-usage-integration.js → examples/tui-usage-integration.ts} +16 -17
  150. package/packages/quota-manager/index.ts +28 -0
  151. package/packages/quota-manager/package.json +22 -0
  152. package/packages/quota-manager/quota-manager.ts +339 -0
  153. package/packages/quota-manager/test/quota.test.ts +432 -0
  154. package/packages/quota-manager/tui-usage-monitor.ts +355 -0
  155. package/packages/rate-limiter/package.json +21 -0
  156. package/packages/rate-limiter/test/limiter.test.ts +128 -0
  157. package/packages/react-vite-plugin/README.md +1 -0
  158. package/packages/react-vite-plugin/package.json +20 -0
  159. package/packages/react-vite-plugin/test/analyzer.test.ts +139 -0
  160. package/packages/release-manager/package.json +21 -0
  161. package/packages/release-manager/test/release.test.ts +215 -0
  162. package/packages/requirement-compiler/package.json +25 -0
  163. package/packages/requirement-compiler/test/requirement-compiler.test.ts +743 -0
  164. package/packages/runtime/README.md +3 -0
  165. package/packages/runtime/command-executor.ts +523 -0
  166. package/packages/runtime/index.ts +50 -0
  167. package/packages/runtime/local-runtime-agent.ts +480 -0
  168. package/packages/runtime/package.json +22 -0
  169. package/packages/runtime/policy-engine.ts +813 -0
  170. package/packages/runtime/runtime-api.ts +665 -0
  171. package/packages/runtime/test/runtime.test.ts +297 -0
  172. package/packages/runtime/workspace-manager.ts +591 -0
  173. package/packages/scheduler/README.md +3 -0
  174. package/packages/scheduler/package.json +22 -0
  175. package/packages/scheduler/test/scheduler.test.ts +125 -0
  176. package/packages/scheduler-adapter/README.md +36 -0
  177. package/packages/scheduler-adapter/package.json +32 -0
  178. package/packages/session/README.md +273 -0
  179. package/packages/session/package.json +38 -0
  180. package/packages/session/test/manager.test.ts +233 -0
  181. package/packages/session-api/package.json +12 -0
  182. package/packages/session-export/package.json +12 -0
  183. package/packages/shared-context/README.md +3 -0
  184. package/packages/shared-context/package.json +22 -0
  185. package/packages/shared-context/test/shared-context.test.ts +114 -0
  186. package/packages/skill-registry/package.json +41 -0
  187. package/packages/skill-registry/test/registry.test.ts +508 -0
  188. package/packages/sprint-planner/package.json +21 -0
  189. package/packages/sprint-planner/test/planner.test.ts +187 -0
  190. package/packages/subscription-engine/package.json +12 -0
  191. package/packages/task-compiler/package.json +43 -0
  192. package/packages/task-compiler/test/task-compiler.test.ts +628 -0
  193. package/packages/tencentdb-memory/package.json +23 -0
  194. package/packages/tencentdb-sync/package.json +26 -0
  195. package/packages/test-data-generator/README.md +365 -0
  196. package/packages/test-data-generator/package.json +39 -0
  197. package/packages/test-data-generator/test/generator.test.ts +265 -0
  198. package/packages/test-generator/package.json +21 -0
  199. package/packages/test-generator/test/generator.test.ts +156 -0
  200. package/packages/todo-bd-sync/package.json +22 -0
  201. package/packages/token-estimation/package.json +22 -0
  202. package/packages/token-estimation/test/token-estimation.test.ts +207 -0
  203. package/packages/token-optimizer/package.json +21 -0
  204. package/packages/token-optimizer/test/optimizer.test.ts +141 -0
  205. package/packages/tui/README.md +3 -0
  206. package/packages/tui/package.json +22 -0
  207. package/packages/types/package.json +25 -0
  208. package/packages/workflow-events/package.json +12 -0
  209. package/packages/workspace-scanner/package.json +12 -0
  210. package/packages/workspace-scanner/test/scanner.test.ts +42 -0
  211. package/packages/worktree/README.md +3 -0
  212. package/packages/worktree/package.json +22 -0
  213. package/packages/worktree/test/worktree.test.ts +163 -0
  214. package/packages/worktree/worktree.ts +293 -0
  215. package/packages/write-review/package.json +22 -0
  216. package/packages/a2a-adapter/dist/discovery.d.ts +0 -52
  217. package/packages/a2a-adapter/dist/discovery.d.ts.map +0 -1
  218. package/packages/a2a-adapter/dist/discovery.js +0 -76
  219. package/packages/a2a-adapter/dist/discovery.js.map +0 -1
  220. package/packages/architecture-generator/dist/adr.d.ts +0 -15
  221. package/packages/architecture-generator/dist/adr.d.ts.map +0 -1
  222. package/packages/architecture-generator/dist/adr.js +0 -42
  223. package/packages/architecture-generator/dist/adr.js.map +0 -1
  224. package/packages/architecture-generator/dist/index.d.ts +0 -9
  225. package/packages/architecture-generator/dist/index.d.ts.map +0 -1
  226. package/packages/architecture-generator/dist/index.js +0 -9
  227. package/packages/architecture-generator/dist/index.js.map +0 -1
  228. package/packages/architecture-generator/dist/mermaid.d.ts +0 -30
  229. package/packages/architecture-generator/dist/mermaid.d.ts.map +0 -1
  230. package/packages/architecture-generator/dist/mermaid.js +0 -58
  231. package/packages/architecture-generator/dist/mermaid.js.map +0 -1
  232. package/packages/architecture-generator/dist/types.d.ts +0 -30
  233. package/packages/architecture-generator/dist/types.d.ts.map +0 -1
  234. package/packages/architecture-generator/dist/types.js +0 -7
  235. package/packages/architecture-generator/dist/types.js.map +0 -1
  236. package/packages/auth/dist/minimax-browser-auth.d.ts +0 -89
  237. package/packages/auth/dist/minimax-browser-auth.d.ts.map +0 -1
  238. package/packages/auth/dist/minimax-browser-auth.js +0 -890
  239. package/packages/auth/dist/minimax-browser-auth.js.map +0 -1
  240. package/packages/auth/dist/run-minimax-auth.d.ts +0 -19
  241. package/packages/auth/dist/run-minimax-auth.d.ts.map +0 -1
  242. package/packages/auth/dist/run-minimax-auth.js +0 -112
  243. package/packages/auth/dist/run-minimax-auth.js.map +0 -1
  244. package/packages/capability-registry/src/types.js +0 -10
  245. package/packages/clipboard/dist/src/clipboard.d.ts +0 -11
  246. package/packages/clipboard/dist/src/clipboard.d.ts.map +0 -1
  247. package/packages/clipboard/dist/src/clipboard.js +0 -51
  248. package/packages/clipboard/dist/src/clipboard.js.map +0 -1
  249. package/packages/clipboard/dist/src/copy-sync.d.ts +0 -27
  250. package/packages/clipboard/dist/src/copy-sync.d.ts.map +0 -1
  251. package/packages/clipboard/dist/src/copy-sync.js +0 -212
  252. package/packages/clipboard/dist/src/copy-sync.js.map +0 -1
  253. package/packages/clipboard/dist/src/gist-relay.d.ts +0 -48
  254. package/packages/clipboard/dist/src/gist-relay.d.ts.map +0 -1
  255. package/packages/clipboard/dist/src/gist-relay.js +0 -186
  256. package/packages/clipboard/dist/src/gist-relay.js.map +0 -1
  257. package/packages/clipboard/dist/src/github-login.d.ts +0 -16
  258. package/packages/clipboard/dist/src/github-login.d.ts.map +0 -1
  259. package/packages/clipboard/dist/src/github-login.js +0 -69
  260. package/packages/clipboard/dist/src/github-login.js.map +0 -1
  261. package/packages/clipboard/dist/src/index.d.ts +0 -5
  262. package/packages/clipboard/dist/src/index.d.ts.map +0 -1
  263. package/packages/clipboard/dist/src/index.js +0 -4
  264. package/packages/clipboard/dist/src/index.js.map +0 -1
  265. package/packages/clipboard/dist/src/paste-bridge.d.ts +0 -19
  266. package/packages/clipboard/dist/src/paste-bridge.d.ts.map +0 -1
  267. package/packages/clipboard/dist/src/paste-bridge.js +0 -78
  268. package/packages/clipboard/dist/src/paste-bridge.js.map +0 -1
  269. package/packages/clipboard/dist/src/types.d.ts +0 -13
  270. package/packages/clipboard/dist/src/types.d.ts.map +0 -1
  271. package/packages/clipboard/dist/src/types.js +0 -5
  272. package/packages/clipboard/dist/src/types.js.map +0 -1
  273. package/packages/clipboard-plugin/dist/index.d.ts +0 -28
  274. package/packages/clipboard-plugin/dist/index.d.ts.map +0 -1
  275. package/packages/clipboard-plugin/dist/index.js +0 -64
  276. package/packages/clipboard-plugin/dist/index.js.map +0 -1
  277. package/packages/clipboard-plugin/dist/types.d.ts +0 -30
  278. package/packages/clipboard-plugin/dist/types.d.ts.map +0 -1
  279. package/packages/clipboard-plugin/dist/types.js +0 -5
  280. package/packages/clipboard-plugin/dist/types.js.map +0 -1
  281. package/packages/context-discovery/dist/src/discover.d.ts +0 -3
  282. package/packages/context-discovery/dist/src/discover.d.ts.map +0 -1
  283. package/packages/context-discovery/dist/src/discover.js +0 -42
  284. package/packages/context-discovery/dist/src/discover.js.map +0 -1
  285. package/packages/context-discovery/dist/src/discovery.d.ts +0 -28
  286. package/packages/context-discovery/dist/src/discovery.d.ts.map +0 -1
  287. package/packages/context-discovery/dist/src/discovery.js +0 -21
  288. package/packages/context-discovery/dist/src/discovery.js.map +0 -1
  289. package/packages/context-discovery/dist/src/index.d.ts +0 -3
  290. package/packages/context-discovery/dist/src/index.d.ts.map +0 -1
  291. package/packages/context-discovery/dist/src/index.js +0 -2
  292. package/packages/context-discovery/dist/src/index.js.map +0 -1
  293. package/packages/context-discovery/dist/src/types.d.ts +0 -16
  294. package/packages/context-discovery/dist/src/types.d.ts.map +0 -1
  295. package/packages/context-discovery/dist/src/types.js +0 -2
  296. package/packages/context-discovery/dist/src/types.js.map +0 -1
  297. package/packages/dependency-analyzer/dist/analyzer.d.ts +0 -17
  298. package/packages/dependency-analyzer/dist/analyzer.d.ts.map +0 -1
  299. package/packages/dependency-analyzer/dist/analyzer.js +0 -106
  300. package/packages/dependency-analyzer/dist/analyzer.js.map +0 -1
  301. package/packages/dependency-analyzer/dist/imports.d.ts +0 -12
  302. package/packages/dependency-analyzer/dist/imports.d.ts.map +0 -1
  303. package/packages/dependency-analyzer/dist/imports.js +0 -73
  304. package/packages/dependency-analyzer/dist/imports.js.map +0 -1
  305. package/packages/dependency-analyzer/dist/index.d.ts +0 -4
  306. package/packages/dependency-analyzer/dist/index.d.ts.map +0 -1
  307. package/packages/dependency-analyzer/dist/index.js +0 -3
  308. package/packages/dependency-analyzer/dist/index.js.map +0 -1
  309. package/packages/dependency-analyzer/dist/src/analyzer.d.ts +0 -17
  310. package/packages/dependency-analyzer/dist/src/analyzer.d.ts.map +0 -1
  311. package/packages/dependency-analyzer/dist/src/analyzer.js +0 -119
  312. package/packages/dependency-analyzer/dist/src/analyzer.js.map +0 -1
  313. package/packages/dependency-analyzer/dist/src/imports.d.ts +0 -12
  314. package/packages/dependency-analyzer/dist/src/imports.d.ts.map +0 -1
  315. package/packages/dependency-analyzer/dist/src/imports.js +0 -73
  316. package/packages/dependency-analyzer/dist/src/imports.js.map +0 -1
  317. package/packages/dependency-analyzer/dist/src/index.d.ts +0 -4
  318. package/packages/dependency-analyzer/dist/src/index.d.ts.map +0 -1
  319. package/packages/dependency-analyzer/dist/src/index.js +0 -3
  320. package/packages/dependency-analyzer/dist/src/index.js.map +0 -1
  321. package/packages/dependency-analyzer/dist/src/types.d.ts +0 -28
  322. package/packages/dependency-analyzer/dist/src/types.d.ts.map +0 -1
  323. package/packages/dependency-analyzer/dist/src/types.js +0 -5
  324. package/packages/dependency-analyzer/dist/src/types.js.map +0 -1
  325. package/packages/dependency-analyzer/dist/test/analyzer.test.js +0 -37
  326. package/packages/dependency-analyzer/dist/types.d.ts +0 -28
  327. package/packages/dependency-analyzer/dist/types.d.ts.map +0 -1
  328. package/packages/dependency-analyzer/dist/types.js +0 -5
  329. package/packages/dependency-analyzer/dist/types.js.map +0 -1
  330. package/packages/event-bus/dist/src/bus.d.ts +0 -15
  331. package/packages/event-bus/dist/src/bus.d.ts.map +0 -1
  332. package/packages/event-bus/dist/src/bus.js +0 -98
  333. package/packages/event-bus/dist/src/bus.js.map +0 -1
  334. package/packages/event-bus/dist/src/herdr-bus.d.ts +0 -121
  335. package/packages/event-bus/dist/src/herdr-bus.d.ts.map +0 -1
  336. package/packages/event-bus/dist/src/herdr-bus.js +0 -324
  337. package/packages/event-bus/dist/src/herdr-bus.js.map +0 -1
  338. package/packages/event-bus/dist/src/index.d.ts +0 -6
  339. package/packages/event-bus/dist/src/index.d.ts.map +0 -1
  340. package/packages/event-bus/dist/src/index.js +0 -4
  341. package/packages/event-bus/dist/src/index.js.map +0 -1
  342. package/packages/event-bus/dist/src/types.d.ts +0 -27
  343. package/packages/event-bus/dist/src/types.d.ts.map +0 -1
  344. package/packages/event-bus/dist/src/types.js +0 -10
  345. package/packages/event-bus/dist/src/types.js.map +0 -1
  346. package/packages/event-store/dist/src/index.d.ts +0 -3
  347. package/packages/event-store/dist/src/index.d.ts.map +0 -1
  348. package/packages/event-store/dist/src/index.js +0 -2
  349. package/packages/event-store/dist/src/index.js.map +0 -1
  350. package/packages/event-store/dist/src/store.d.ts +0 -15
  351. package/packages/event-store/dist/src/store.d.ts.map +0 -1
  352. package/packages/event-store/dist/src/store.js +0 -139
  353. package/packages/event-store/dist/src/store.js.map +0 -1
  354. package/packages/event-store/dist/src/types.d.ts +0 -48
  355. package/packages/event-store/dist/src/types.d.ts.map +0 -1
  356. package/packages/event-store/dist/src/types.js +0 -5
  357. package/packages/event-store/dist/src/types.js.map +0 -1
  358. package/packages/file-copy-helper/dist/src/extension.js +0 -121
  359. package/packages/file-copy-helper/src/extension.js +0 -149
  360. package/packages/intent-analyzer/dist/analyzer.d.ts +0 -13
  361. package/packages/intent-analyzer/dist/analyzer.d.ts.map +0 -1
  362. package/packages/intent-analyzer/dist/analyzer.js +0 -72
  363. package/packages/intent-analyzer/dist/analyzer.js.map +0 -1
  364. package/packages/intent-analyzer/dist/index.d.ts +0 -3
  365. package/packages/intent-analyzer/dist/index.d.ts.map +0 -1
  366. package/packages/intent-analyzer/dist/index.js +0 -2
  367. package/packages/intent-analyzer/dist/index.js.map +0 -1
  368. package/packages/intent-analyzer/dist/src/analyzer.d.ts +0 -13
  369. package/packages/intent-analyzer/dist/src/analyzer.d.ts.map +0 -1
  370. package/packages/intent-analyzer/dist/src/analyzer.js +0 -239
  371. package/packages/intent-analyzer/dist/src/analyzer.js.map +0 -1
  372. package/packages/intent-analyzer/dist/src/index.d.ts +0 -3
  373. package/packages/intent-analyzer/dist/src/index.d.ts.map +0 -1
  374. package/packages/intent-analyzer/dist/src/index.js +0 -2
  375. package/packages/intent-analyzer/dist/src/index.js.map +0 -1
  376. package/packages/intent-analyzer/dist/src/types.d.ts +0 -26
  377. package/packages/intent-analyzer/dist/src/types.d.ts.map +0 -1
  378. package/packages/intent-analyzer/dist/src/types.js +0 -7
  379. package/packages/intent-analyzer/dist/src/types.js.map +0 -1
  380. package/packages/intent-analyzer/dist/test/analyzer.test.js +0 -56
  381. package/packages/intent-analyzer/dist/types.d.ts +0 -26
  382. package/packages/intent-analyzer/dist/types.d.ts.map +0 -1
  383. package/packages/intent-analyzer/dist/types.js +0 -7
  384. package/packages/intent-analyzer/dist/types.js.map +0 -1
  385. package/packages/knowledge-graph/dist/graph-extractor.d.ts +0 -27
  386. package/packages/knowledge-graph/dist/graph-extractor.d.ts.map +0 -1
  387. package/packages/knowledge-graph/dist/graph-extractor.js +0 -276
  388. package/packages/knowledge-graph/dist/graph-extractor.js.map +0 -1
  389. package/packages/knowledge-graph/dist/index.d.ts +0 -27
  390. package/packages/knowledge-graph/dist/index.d.ts.map +0 -1
  391. package/packages/knowledge-graph/dist/index.js +0 -27
  392. package/packages/knowledge-graph/dist/index.js.map +0 -1
  393. package/packages/knowledge-graph/dist/mcp-client.d.ts +0 -38
  394. package/packages/knowledge-graph/dist/mcp-client.d.ts.map +0 -1
  395. package/packages/knowledge-graph/dist/mcp-client.js +0 -157
  396. package/packages/knowledge-graph/dist/mcp-client.js.map +0 -1
  397. package/packages/knowledge-graph/dist/provenance-linker.d.ts +0 -19
  398. package/packages/knowledge-graph/dist/provenance-linker.d.ts.map +0 -1
  399. package/packages/knowledge-graph/dist/provenance-linker.js +0 -91
  400. package/packages/knowledge-graph/dist/provenance-linker.js.map +0 -1
  401. package/packages/knowledge-graph/dist/types.d.ts +0 -53
  402. package/packages/knowledge-graph/dist/types.d.ts.map +0 -1
  403. package/packages/knowledge-graph/dist/types.js +0 -7
  404. package/packages/knowledge-graph/dist/types.js.map +0 -1
  405. package/packages/knowledge-retrieval/dist/index.d.ts +0 -8
  406. package/packages/knowledge-retrieval/dist/index.d.ts.map +0 -1
  407. package/packages/knowledge-retrieval/dist/index.js +0 -7
  408. package/packages/knowledge-retrieval/dist/index.js.map +0 -1
  409. package/packages/knowledge-retrieval/dist/mcp-client.d.ts +0 -61
  410. package/packages/knowledge-retrieval/dist/mcp-client.d.ts.map +0 -1
  411. package/packages/knowledge-retrieval/dist/mcp-client.js +0 -132
  412. package/packages/knowledge-retrieval/dist/mcp-client.js.map +0 -1
  413. package/packages/knowledge-retrieval/dist/types.d.ts +0 -105
  414. package/packages/knowledge-retrieval/dist/types.d.ts.map +0 -1
  415. package/packages/knowledge-retrieval/dist/types.js +0 -7
  416. package/packages/knowledge-retrieval/dist/types.js.map +0 -1
  417. package/packages/milestone-manager/dist/engine.d.ts +0 -27
  418. package/packages/milestone-manager/dist/engine.d.ts.map +0 -1
  419. package/packages/milestone-manager/dist/engine.js +0 -78
  420. package/packages/milestone-manager/dist/engine.js.map +0 -1
  421. package/packages/milestone-manager/dist/index.d.ts +0 -6
  422. package/packages/milestone-manager/dist/index.d.ts.map +0 -1
  423. package/packages/milestone-manager/dist/index.js +0 -6
  424. package/packages/milestone-manager/dist/index.js.map +0 -1
  425. package/packages/milestone-manager/dist/types.d.ts +0 -25
  426. package/packages/milestone-manager/dist/types.d.ts.map +0 -1
  427. package/packages/milestone-manager/dist/types.js +0 -7
  428. package/packages/milestone-manager/dist/types.js.map +0 -1
  429. package/packages/notification/dist/adapters/email-adapter.d.ts +0 -17
  430. package/packages/notification/dist/adapters/email-adapter.d.ts.map +0 -1
  431. package/packages/notification/dist/adapters/email-adapter.js +0 -89
  432. package/packages/notification/dist/adapters/email-adapter.js.map +0 -1
  433. package/packages/notification/dist/adapters/line-adapter.d.ts +0 -17
  434. package/packages/notification/dist/adapters/line-adapter.d.ts.map +0 -1
  435. package/packages/notification/dist/adapters/line-adapter.js +0 -99
  436. package/packages/notification/dist/adapters/line-adapter.js.map +0 -1
  437. package/packages/notification/dist/adapters/ntfy-adapter.d.ts +0 -17
  438. package/packages/notification/dist/adapters/ntfy-adapter.d.ts.map +0 -1
  439. package/packages/notification/dist/adapters/ntfy-adapter.js +0 -84
  440. package/packages/notification/dist/adapters/ntfy-adapter.js.map +0 -1
  441. package/packages/notification/dist/adapters/telegram-adapter.d.ts +0 -17
  442. package/packages/notification/dist/adapters/telegram-adapter.d.ts.map +0 -1
  443. package/packages/notification/dist/adapters/telegram-adapter.js +0 -88
  444. package/packages/notification/dist/adapters/telegram-adapter.js.map +0 -1
  445. package/packages/notification/dist/adapters/webhook-adapter.d.ts +0 -15
  446. package/packages/notification/dist/adapters/webhook-adapter.d.ts.map +0 -1
  447. package/packages/notification/dist/adapters/webhook-adapter.js +0 -64
  448. package/packages/notification/dist/adapters/webhook-adapter.js.map +0 -1
  449. package/packages/notification/dist/base-adapter.d.ts +0 -36
  450. package/packages/notification/dist/base-adapter.d.ts.map +0 -1
  451. package/packages/notification/dist/base-adapter.js +0 -39
  452. package/packages/notification/dist/base-adapter.js.map +0 -1
  453. package/packages/notification/dist/index.d.ts +0 -10
  454. package/packages/notification/dist/index.d.ts.map +0 -1
  455. package/packages/notification/dist/index.js +0 -10
  456. package/packages/notification/dist/index.js.map +0 -1
  457. package/packages/notification/dist/notification-center.d.ts +0 -46
  458. package/packages/notification/dist/notification-center.d.ts.map +0 -1
  459. package/packages/notification/dist/notification-center.js +0 -232
  460. package/packages/notification/dist/notification-center.js.map +0 -1
  461. package/packages/notification/dist/types.d.ts +0 -69
  462. package/packages/notification/dist/types.d.ts.map +0 -1
  463. package/packages/notification/dist/types.js +0 -7
  464. package/packages/notification/dist/types.js.map +0 -1
  465. package/packages/okf-indexer/dist/cli.d.ts +0 -8
  466. package/packages/okf-indexer/dist/cli.d.ts.map +0 -1
  467. package/packages/okf-indexer/dist/cli.js +0 -23
  468. package/packages/okf-indexer/dist/cli.js.map +0 -1
  469. package/packages/okf-indexer/dist/indexer.d.ts +0 -55
  470. package/packages/okf-indexer/dist/indexer.d.ts.map +0 -1
  471. package/packages/okf-indexer/dist/indexer.js +0 -147
  472. package/packages/okf-indexer/dist/indexer.js.map +0 -1
  473. package/packages/project-bootstrap/dist/bootstrap.d.ts +0 -23
  474. package/packages/project-bootstrap/dist/bootstrap.d.ts.map +0 -1
  475. package/packages/project-bootstrap/dist/bootstrap.js +0 -128
  476. package/packages/project-bootstrap/dist/bootstrap.js.map +0 -1
  477. package/packages/project-bootstrap/dist/frappe.d.ts +0 -8
  478. package/packages/project-bootstrap/dist/frappe.d.ts.map +0 -1
  479. package/packages/project-bootstrap/dist/frappe.js +0 -82
  480. package/packages/project-bootstrap/dist/frappe.js.map +0 -1
  481. package/packages/project-bootstrap/dist/index.d.ts +0 -27
  482. package/packages/project-bootstrap/dist/index.d.ts.map +0 -1
  483. package/packages/project-bootstrap/dist/index.js +0 -27
  484. package/packages/project-bootstrap/dist/index.js.map +0 -1
  485. package/packages/project-bootstrap/dist/minimal.d.ts +0 -8
  486. package/packages/project-bootstrap/dist/minimal.d.ts.map +0 -1
  487. package/packages/project-bootstrap/dist/minimal.js +0 -35
  488. package/packages/project-bootstrap/dist/minimal.js.map +0 -1
  489. package/packages/project-bootstrap/dist/types.d.ts +0 -61
  490. package/packages/project-bootstrap/dist/types.d.ts.map +0 -1
  491. package/packages/project-bootstrap/dist/types.js +0 -7
  492. package/packages/project-bootstrap/dist/types.js.map +0 -1
  493. package/packages/project-bootstrap/dist/typescript.d.ts +0 -8
  494. package/packages/project-bootstrap/dist/typescript.d.ts.map +0 -1
  495. package/packages/project-bootstrap/dist/typescript.js +0 -103
  496. package/packages/project-bootstrap/dist/typescript.js.map +0 -1
  497. package/packages/projection-engine/dist/src/engine.d.ts +0 -61
  498. package/packages/projection-engine/dist/src/engine.d.ts.map +0 -1
  499. package/packages/projection-engine/dist/src/engine.js +0 -87
  500. package/packages/projection-engine/dist/src/engine.js.map +0 -1
  501. package/packages/projection-engine/dist/src/index.d.ts +0 -2
  502. package/packages/projection-engine/dist/src/index.d.ts.map +0 -1
  503. package/packages/projection-engine/dist/src/index.js +0 -2
  504. package/packages/projection-engine/dist/src/index.js.map +0 -1
  505. package/packages/projection-engine/dist/src/project.d.ts +0 -3
  506. package/packages/projection-engine/dist/src/project.d.ts.map +0 -1
  507. package/packages/projection-engine/dist/src/project.js +0 -24
  508. package/packages/projection-engine/dist/src/project.js.map +0 -1
  509. package/packages/projection-engine/dist/src/types.d.ts +0 -55
  510. package/packages/projection-engine/dist/src/types.d.ts.map +0 -1
  511. package/packages/projection-engine/dist/src/types.js +0 -5
  512. package/packages/projection-engine/dist/src/types.js.map +0 -1
  513. package/packages/providers/dist/adapters.d.ts +0 -133
  514. package/packages/providers/dist/adapters.d.ts.map +0 -1
  515. package/packages/providers/dist/adapters.js +0 -236
  516. package/packages/providers/dist/adapters.js.map +0 -1
  517. package/packages/providers/dist/deepagents-adapter.d.ts +0 -78
  518. package/packages/providers/dist/deepagents-adapter.d.ts.map +0 -1
  519. package/packages/providers/dist/deepagents-adapter.js +0 -323
  520. package/packages/providers/dist/deepagents-adapter.js.map +0 -1
  521. package/packages/providers/dist/glm-usage.d.ts +0 -102
  522. package/packages/providers/dist/glm-usage.d.ts.map +0 -1
  523. package/packages/providers/dist/glm-usage.js +0 -197
  524. package/packages/providers/dist/glm-usage.js.map +0 -1
  525. package/packages/providers/dist/index.d.ts +0 -11
  526. package/packages/providers/dist/index.d.ts.map +0 -1
  527. package/packages/providers/dist/index.js +0 -11
  528. package/packages/providers/dist/index.js.map +0 -1
  529. package/packages/providers/dist/openai-usage.d.ts +0 -103
  530. package/packages/providers/dist/openai-usage.d.ts.map +0 -1
  531. package/packages/providers/dist/openai-usage.js +0 -208
  532. package/packages/providers/dist/openai-usage.js.map +0 -1
  533. package/packages/providers/dist/provider-id.d.ts +0 -46
  534. package/packages/providers/dist/provider-id.d.ts.map +0 -1
  535. package/packages/providers/dist/provider-id.js +0 -113
  536. package/packages/providers/dist/provider-id.js.map +0 -1
  537. package/packages/providers/dist/src/adapters.d.ts +0 -133
  538. package/packages/providers/dist/src/adapters.d.ts.map +0 -1
  539. package/packages/providers/dist/src/adapters.js +0 -236
  540. package/packages/providers/dist/src/adapters.js.map +0 -1
  541. package/packages/providers/dist/src/deepagents-adapter.d.ts +0 -78
  542. package/packages/providers/dist/src/deepagents-adapter.d.ts.map +0 -1
  543. package/packages/providers/dist/src/deepagents-adapter.js +0 -323
  544. package/packages/providers/dist/src/deepagents-adapter.js.map +0 -1
  545. package/packages/providers/dist/src/glm-usage.d.ts +0 -102
  546. package/packages/providers/dist/src/glm-usage.d.ts.map +0 -1
  547. package/packages/providers/dist/src/glm-usage.js +0 -197
  548. package/packages/providers/dist/src/glm-usage.js.map +0 -1
  549. package/packages/providers/dist/src/index.d.ts +0 -11
  550. package/packages/providers/dist/src/index.d.ts.map +0 -1
  551. package/packages/providers/dist/src/index.js +0 -11
  552. package/packages/providers/dist/src/index.js.map +0 -1
  553. package/packages/providers/dist/src/openai-usage.d.ts +0 -103
  554. package/packages/providers/dist/src/openai-usage.d.ts.map +0 -1
  555. package/packages/providers/dist/src/openai-usage.js +0 -208
  556. package/packages/providers/dist/src/openai-usage.js.map +0 -1
  557. package/packages/providers/dist/src/provider-id.d.ts +0 -46
  558. package/packages/providers/dist/src/provider-id.d.ts.map +0 -1
  559. package/packages/providers/dist/src/provider-id.js +0 -113
  560. package/packages/providers/dist/src/provider-id.js.map +0 -1
  561. package/packages/quota-manager/dist/examples/tui-usage-integration.d.ts +0 -35
  562. package/packages/quota-manager/dist/examples/tui-usage-integration.d.ts.map +0 -1
  563. package/packages/quota-manager/dist/examples/tui-usage-integration.js.map +0 -1
  564. package/packages/quota-manager/dist/index.d.ts +0 -8
  565. package/packages/quota-manager/dist/index.d.ts.map +0 -1
  566. package/packages/quota-manager/dist/index.js +0 -8
  567. package/packages/quota-manager/dist/index.js.map +0 -1
  568. package/packages/quota-manager/dist/quota-manager.d.ts +0 -70
  569. package/packages/quota-manager/dist/quota-manager.d.ts.map +0 -1
  570. package/packages/quota-manager/dist/quota-manager.js +0 -260
  571. package/packages/quota-manager/dist/quota-manager.js.map +0 -1
  572. package/packages/quota-manager/dist/src/examples/tui-usage-integration.d.ts +0 -35
  573. package/packages/quota-manager/dist/src/examples/tui-usage-integration.d.ts.map +0 -1
  574. package/packages/quota-manager/dist/src/examples/tui-usage-integration.js +0 -73
  575. package/packages/quota-manager/dist/src/examples/tui-usage-integration.js.map +0 -1
  576. package/packages/quota-manager/dist/src/index.d.ts +0 -8
  577. package/packages/quota-manager/dist/src/index.d.ts.map +0 -1
  578. package/packages/quota-manager/dist/src/index.js +0 -8
  579. package/packages/quota-manager/dist/src/index.js.map +0 -1
  580. package/packages/quota-manager/dist/src/quota-manager.d.ts +0 -70
  581. package/packages/quota-manager/dist/src/quota-manager.d.ts.map +0 -1
  582. package/packages/quota-manager/dist/src/quota-manager.js +0 -260
  583. package/packages/quota-manager/dist/src/quota-manager.js.map +0 -1
  584. package/packages/quota-manager/dist/src/tui-usage-monitor.d.ts +0 -96
  585. package/packages/quota-manager/dist/src/tui-usage-monitor.d.ts.map +0 -1
  586. package/packages/quota-manager/dist/src/tui-usage-monitor.js +0 -268
  587. package/packages/quota-manager/dist/src/tui-usage-monitor.js.map +0 -1
  588. package/packages/quota-manager/dist/tui-usage-monitor.d.ts +0 -96
  589. package/packages/quota-manager/dist/tui-usage-monitor.d.ts.map +0 -1
  590. package/packages/quota-manager/dist/tui-usage-monitor.js +0 -268
  591. package/packages/quota-manager/dist/tui-usage-monitor.js.map +0 -1
  592. package/packages/runtime/dist/command-executor.d.ts +0 -129
  593. package/packages/runtime/dist/command-executor.d.ts.map +0 -1
  594. package/packages/runtime/dist/command-executor.js +0 -383
  595. package/packages/runtime/dist/command-executor.js.map +0 -1
  596. package/packages/runtime/dist/index.d.ts +0 -11
  597. package/packages/runtime/dist/index.d.ts.map +0 -1
  598. package/packages/runtime/dist/index.js +0 -11
  599. package/packages/runtime/dist/index.js.map +0 -1
  600. package/packages/runtime/dist/local-runtime-agent.d.ts +0 -111
  601. package/packages/runtime/dist/local-runtime-agent.d.ts.map +0 -1
  602. package/packages/runtime/dist/local-runtime-agent.js +0 -356
  603. package/packages/runtime/dist/local-runtime-agent.js.map +0 -1
  604. package/packages/runtime/dist/policy-engine.d.ts +0 -203
  605. package/packages/runtime/dist/policy-engine.d.ts.map +0 -1
  606. package/packages/runtime/dist/policy-engine.js +0 -592
  607. package/packages/runtime/dist/policy-engine.js.map +0 -1
  608. package/packages/runtime/dist/runtime-api.d.ts +0 -137
  609. package/packages/runtime/dist/runtime-api.d.ts.map +0 -1
  610. package/packages/runtime/dist/runtime-api.js +0 -454
  611. package/packages/runtime/dist/runtime-api.js.map +0 -1
  612. package/packages/runtime/dist/src/command-executor.d.ts +0 -129
  613. package/packages/runtime/dist/src/command-executor.d.ts.map +0 -1
  614. package/packages/runtime/dist/src/command-executor.js +0 -383
  615. package/packages/runtime/dist/src/command-executor.js.map +0 -1
  616. package/packages/runtime/dist/src/index.d.ts +0 -11
  617. package/packages/runtime/dist/src/index.d.ts.map +0 -1
  618. package/packages/runtime/dist/src/index.js +0 -11
  619. package/packages/runtime/dist/src/index.js.map +0 -1
  620. package/packages/runtime/dist/src/local-runtime-agent.d.ts +0 -111
  621. package/packages/runtime/dist/src/local-runtime-agent.d.ts.map +0 -1
  622. package/packages/runtime/dist/src/local-runtime-agent.js +0 -356
  623. package/packages/runtime/dist/src/local-runtime-agent.js.map +0 -1
  624. package/packages/runtime/dist/src/policy-engine.d.ts +0 -203
  625. package/packages/runtime/dist/src/policy-engine.d.ts.map +0 -1
  626. package/packages/runtime/dist/src/policy-engine.js +0 -592
  627. package/packages/runtime/dist/src/policy-engine.js.map +0 -1
  628. package/packages/runtime/dist/src/runtime-api.d.ts +0 -137
  629. package/packages/runtime/dist/src/runtime-api.d.ts.map +0 -1
  630. package/packages/runtime/dist/src/runtime-api.js +0 -454
  631. package/packages/runtime/dist/src/runtime-api.js.map +0 -1
  632. package/packages/runtime/dist/src/workspace-manager.d.ts +0 -162
  633. package/packages/runtime/dist/src/workspace-manager.d.ts.map +0 -1
  634. package/packages/runtime/dist/src/workspace-manager.js +0 -451
  635. package/packages/runtime/dist/src/workspace-manager.js.map +0 -1
  636. package/packages/runtime/dist/workspace-manager.d.ts +0 -162
  637. package/packages/runtime/dist/workspace-manager.d.ts.map +0 -1
  638. package/packages/runtime/dist/workspace-manager.js +0 -451
  639. package/packages/runtime/dist/workspace-manager.js.map +0 -1
  640. package/packages/session-api/dist/src/api.d.ts +0 -83
  641. package/packages/session-api/dist/src/api.d.ts.map +0 -1
  642. package/packages/session-api/dist/src/api.js +0 -49
  643. package/packages/session-api/dist/src/api.js.map +0 -1
  644. package/packages/session-api/dist/src/index.d.ts +0 -2
  645. package/packages/session-api/dist/src/index.d.ts.map +0 -1
  646. package/packages/session-api/dist/src/index.js +0 -2
  647. package/packages/session-api/dist/src/index.js.map +0 -1
  648. package/packages/session-api/dist/src/types.d.ts +0 -22
  649. package/packages/session-api/dist/src/types.d.ts.map +0 -1
  650. package/packages/session-api/dist/src/types.js +0 -5
  651. package/packages/session-api/dist/src/types.js.map +0 -1
  652. package/packages/session-export/dist/src/exporter.d.ts +0 -28
  653. package/packages/session-export/dist/src/exporter.d.ts.map +0 -1
  654. package/packages/session-export/dist/src/exporter.js +0 -42
  655. package/packages/session-export/dist/src/exporter.js.map +0 -1
  656. package/packages/session-export/dist/src/index.d.ts +0 -2
  657. package/packages/session-export/dist/src/index.d.ts.map +0 -1
  658. package/packages/session-export/dist/src/index.js +0 -2
  659. package/packages/session-export/dist/src/index.js.map +0 -1
  660. package/packages/session-export/dist/src/types.d.ts +0 -20
  661. package/packages/session-export/dist/src/types.d.ts.map +0 -1
  662. package/packages/session-export/dist/src/types.js +0 -5
  663. package/packages/session-export/dist/src/types.js.map +0 -1
  664. package/packages/subscription-engine/dist/src/engine.d.ts +0 -13
  665. package/packages/subscription-engine/dist/src/engine.d.ts.map +0 -1
  666. package/packages/subscription-engine/dist/src/engine.js +0 -40
  667. package/packages/subscription-engine/dist/src/engine.js.map +0 -1
  668. package/packages/subscription-engine/dist/src/index.d.ts +0 -2
  669. package/packages/subscription-engine/dist/src/index.d.ts.map +0 -1
  670. package/packages/subscription-engine/dist/src/index.js +0 -2
  671. package/packages/subscription-engine/dist/src/index.js.map +0 -1
  672. package/packages/subscription-engine/dist/src/subscriptions.d.ts +0 -19
  673. package/packages/subscription-engine/dist/src/subscriptions.d.ts.map +0 -1
  674. package/packages/subscription-engine/dist/src/subscriptions.js +0 -39
  675. package/packages/subscription-engine/dist/src/subscriptions.js.map +0 -1
  676. package/packages/subscription-engine/dist/src/types.d.ts +0 -24
  677. package/packages/subscription-engine/dist/src/types.d.ts.map +0 -1
  678. package/packages/subscription-engine/dist/src/types.js +0 -5
  679. package/packages/subscription-engine/dist/src/types.js.map +0 -1
  680. package/packages/tencentdb-sync/dist/cli.d.ts +0 -7
  681. package/packages/tencentdb-sync/dist/cli.d.ts.map +0 -1
  682. package/packages/tencentdb-sync/dist/cli.js +0 -311
  683. package/packages/tencentdb-sync/dist/cli.js.map +0 -1
  684. package/packages/tencentdb-sync/dist/client.d.ts +0 -141
  685. package/packages/tencentdb-sync/dist/client.d.ts.map +0 -1
  686. package/packages/tencentdb-sync/dist/client.js +0 -166
  687. package/packages/tencentdb-sync/dist/client.js.map +0 -1
  688. package/packages/tencentdb-sync/dist/config.d.ts +0 -32
  689. package/packages/tencentdb-sync/dist/config.d.ts.map +0 -1
  690. package/packages/tencentdb-sync/dist/config.js +0 -102
  691. package/packages/tencentdb-sync/dist/config.js.map +0 -1
  692. package/packages/tencentdb-sync/dist/index.d.ts +0 -9
  693. package/packages/tencentdb-sync/dist/index.d.ts.map +0 -1
  694. package/packages/tencentdb-sync/dist/index.js +0 -8
  695. package/packages/tencentdb-sync/dist/index.js.map +0 -1
  696. package/packages/todo-bd-sync/dist/src/detector.js +0 -108
  697. package/packages/todo-bd-sync/dist/src/extension.js +0 -9
  698. package/packages/types/dist/ai-providers.d.ts +0 -36
  699. package/packages/types/dist/ai-providers.d.ts.map +0 -1
  700. package/packages/types/dist/ai-providers.js +0 -66
  701. package/packages/types/dist/ai-providers.js.map +0 -1
  702. package/packages/types/src/agent-worker-types.js +0 -41
  703. package/packages/types/src/ai-providers.js +0 -66
  704. package/packages/types/src/runtime-types.js +0 -3
  705. package/packages/workflow-events/dist/src/events.d.ts +0 -38
  706. package/packages/workflow-events/dist/src/events.d.ts.map +0 -1
  707. package/packages/workflow-events/dist/src/events.js +0 -55
  708. package/packages/workflow-events/dist/src/events.js.map +0 -1
  709. package/packages/workflow-events/dist/src/index.d.ts +0 -2
  710. package/packages/workflow-events/dist/src/index.d.ts.map +0 -1
  711. package/packages/workflow-events/dist/src/index.js +0 -2
  712. package/packages/workflow-events/dist/src/index.js.map +0 -1
  713. package/packages/workflow-events/dist/src/pipeline.d.ts +0 -21
  714. package/packages/workflow-events/dist/src/pipeline.d.ts.map +0 -1
  715. package/packages/workflow-events/dist/src/pipeline.js +0 -36
  716. package/packages/workflow-events/dist/src/pipeline.js.map +0 -1
  717. package/packages/workflow-events/dist/src/types.d.ts +0 -110
  718. package/packages/workflow-events/dist/src/types.d.ts.map +0 -1
  719. package/packages/workflow-events/dist/src/types.js +0 -5
  720. package/packages/workflow-events/dist/src/types.js.map +0 -1
  721. package/packages/workspace-scanner/dist/detect.d.ts +0 -3
  722. package/packages/workspace-scanner/dist/detect.d.ts.map +0 -1
  723. package/packages/workspace-scanner/dist/detect.js +0 -58
  724. package/packages/workspace-scanner/dist/detect.js.map +0 -1
  725. package/packages/workspace-scanner/dist/git.d.ts +0 -7
  726. package/packages/workspace-scanner/dist/git.d.ts.map +0 -1
  727. package/packages/workspace-scanner/dist/git.js +0 -75
  728. package/packages/workspace-scanner/dist/git.js.map +0 -1
  729. package/packages/workspace-scanner/dist/index.d.ts +0 -5
  730. package/packages/workspace-scanner/dist/index.d.ts.map +0 -1
  731. package/packages/workspace-scanner/dist/index.js +0 -4
  732. package/packages/workspace-scanner/dist/index.js.map +0 -1
  733. package/packages/workspace-scanner/dist/scanner.d.ts +0 -11
  734. package/packages/workspace-scanner/dist/scanner.d.ts.map +0 -1
  735. package/packages/workspace-scanner/dist/scanner.js +0 -46
  736. package/packages/workspace-scanner/dist/scanner.js.map +0 -1
  737. package/packages/workspace-scanner/dist/src/detect.d.ts +0 -3
  738. package/packages/workspace-scanner/dist/src/detect.d.ts.map +0 -1
  739. package/packages/workspace-scanner/dist/src/detect.js +0 -60
  740. package/packages/workspace-scanner/dist/src/detect.js.map +0 -1
  741. package/packages/workspace-scanner/dist/src/git.d.ts +0 -7
  742. package/packages/workspace-scanner/dist/src/git.d.ts.map +0 -1
  743. package/packages/workspace-scanner/dist/src/git.js +0 -75
  744. package/packages/workspace-scanner/dist/src/git.js.map +0 -1
  745. package/packages/workspace-scanner/dist/src/index.d.ts +0 -5
  746. package/packages/workspace-scanner/dist/src/index.d.ts.map +0 -1
  747. package/packages/workspace-scanner/dist/src/index.js +0 -4
  748. package/packages/workspace-scanner/dist/src/index.js.map +0 -1
  749. package/packages/workspace-scanner/dist/src/scanner.d.ts +0 -11
  750. package/packages/workspace-scanner/dist/src/scanner.d.ts.map +0 -1
  751. package/packages/workspace-scanner/dist/src/scanner.js +0 -59
  752. package/packages/workspace-scanner/dist/src/scanner.js.map +0 -1
  753. package/packages/workspace-scanner/dist/src/types.d.ts +0 -35
  754. package/packages/workspace-scanner/dist/src/types.d.ts.map +0 -1
  755. package/packages/workspace-scanner/dist/src/types.js +0 -5
  756. package/packages/workspace-scanner/dist/src/types.js.map +0 -1
  757. package/packages/workspace-scanner/dist/test/scanner.test.js +0 -34
  758. package/packages/workspace-scanner/dist/types.d.ts +0 -35
  759. package/packages/workspace-scanner/dist/types.d.ts.map +0 -1
  760. package/packages/workspace-scanner/dist/types.js +0 -5
  761. package/packages/workspace-scanner/dist/types.js.map +0 -1
  762. package/packages/worktree/dist/index.d.ts +0 -7
  763. package/packages/worktree/dist/index.d.ts.map +0 -1
  764. package/packages/worktree/dist/index.js +0 -7
  765. package/packages/worktree/dist/index.js.map +0 -1
  766. package/packages/worktree/dist/src/index.d.ts +0 -7
  767. package/packages/worktree/dist/src/index.d.ts.map +0 -1
  768. package/packages/worktree/dist/src/index.js +0 -7
  769. package/packages/worktree/dist/src/index.js.map +0 -1
  770. package/packages/worktree/dist/src/worktree.d.ts +0 -88
  771. package/packages/worktree/dist/src/worktree.d.ts.map +0 -1
  772. package/packages/worktree/dist/src/worktree.js +0 -239
  773. package/packages/worktree/dist/src/worktree.js.map +0 -1
  774. package/packages/worktree/dist/worktree.d.ts +0 -88
  775. package/packages/worktree/dist/worktree.d.ts.map +0 -1
  776. package/packages/worktree/dist/worktree.js +0 -239
  777. package/packages/worktree/dist/worktree.js.map +0 -1
@@ -0,0 +1,100 @@
1
+ /**
2
+ * Ntfy Adapter — RFC-0022
3
+ *
4
+ * Sends notifications via ntfy.sh (or self-hosted ntfy server).
5
+ */
6
+
7
+ import type {
8
+ NotificationPayload,
9
+ NotificationResult,
10
+ NtfyConfig,
11
+ } from "../types.js";
12
+ import { BaseChannelAdapter } from "../base-adapter.js";
13
+
14
+ export class NtfyAdapter extends BaseChannelAdapter {
15
+ readonly id = "ntfy";
16
+ readonly type = "ntfy";
17
+
18
+ constructor(config: NtfyConfig) {
19
+ super({ id: "ntfy", type: "ntfy", enabled: true, config });
20
+ }
21
+
22
+ async initialize(): Promise<boolean> {
23
+ // Ntfy doesn't require initialization; it's fire-and-forget
24
+ return true;
25
+ }
26
+
27
+ async send(payload: NotificationPayload): Promise<NotificationResult> {
28
+ try {
29
+ const cfg = this.config.config as NtfyConfig;
30
+ const message = this.formatMessage(payload);
31
+ const headers: Record<string, string> = {
32
+ "Content-Type": "text/plain",
33
+ Title: payload.title,
34
+ Tags: this.getTags(payload.event),
35
+ };
36
+
37
+ // Add auth if configured
38
+ if (cfg.authToken) {
39
+ headers["Authorization"] = `Bearer ${cfg.authToken}`;
40
+ }
41
+
42
+ const response = await fetch(`${cfg.server}/${cfg.topic}`, {
43
+ method: "POST",
44
+ headers,
45
+ body: message,
46
+ });
47
+
48
+ if (!response.ok) {
49
+ const error = await response.text();
50
+ return {
51
+ success: false,
52
+ channel: this.id,
53
+ error: `Ntfy error: ${error}`,
54
+ };
55
+ }
56
+
57
+ return { success: true, channel: this.id };
58
+ } catch (error) {
59
+ return {
60
+ success: false,
61
+ channel: this.id,
62
+ error: String(error),
63
+ };
64
+ }
65
+ }
66
+
67
+ private formatMessage(payload: NotificationPayload): string {
68
+ const lines = [payload.message];
69
+
70
+ if (payload.details?.taskTitle) {
71
+ lines.push(`\nTask: ${payload.details.taskTitle}`);
72
+ }
73
+ if (payload.details?.jobId) {
74
+ lines.push(`Job: ${payload.details.jobId}`);
75
+ }
76
+ if (payload.details?.error) {
77
+ lines.push(`\nError: ${payload.details.error}`);
78
+ }
79
+
80
+ return lines.join("");
81
+ }
82
+
83
+ private getTags(event: NotificationPayload["event"]): string {
84
+ const map: Record<string, string> = {
85
+ JobStarted: "rocket",
86
+ TaskCompleted: "white_check_mark",
87
+ TaskFailed: "x",
88
+ QuotaPaused: "pause_button",
89
+ ResumeScheduled: "play_button",
90
+ ContextCompacted: "package",
91
+ OutputLimitContinued: "repeat",
92
+ E2EFailed: "test_tube",
93
+ HumanReviewNeeded: "bust_in_silhouette",
94
+ ReadyForClient: "tada",
95
+ JobCancelled: "no_entry",
96
+ Error: "warning",
97
+ };
98
+ return map[event] ?? "bell";
99
+ }
100
+ }
@@ -0,0 +1,107 @@
1
+ /**
2
+ * Telegram Adapter — RFC-0022
3
+ *
4
+ * Sends notifications via Telegram Bot API.
5
+ */
6
+
7
+ import type {
8
+ NotificationPayload,
9
+ NotificationResult,
10
+ TelegramConfig,
11
+ } from "../types.js";
12
+ import { BaseChannelAdapter } from "../base-adapter.js";
13
+
14
+ export class TelegramAdapter extends BaseChannelAdapter {
15
+ readonly id = "telegram";
16
+ readonly type = "telegram";
17
+
18
+ constructor(config: TelegramConfig) {
19
+ super({ id: "telegram", type: "telegram", enabled: true, config });
20
+ }
21
+
22
+ async initialize(): Promise<boolean> {
23
+ try {
24
+ const cfg = this.config.config as TelegramConfig;
25
+ // Verify bot token by calling getMe
26
+ const response = await fetch(
27
+ `https://api.telegram.org/bot${cfg.botToken}/getMe`,
28
+ );
29
+ return response.ok;
30
+ } catch {
31
+ return false;
32
+ }
33
+ }
34
+
35
+ async send(payload: NotificationPayload): Promise<NotificationResult> {
36
+ try {
37
+ const cfg = this.config.config as TelegramConfig;
38
+ const message = this.formatMessage(payload);
39
+
40
+ const response = await fetch(
41
+ `https://api.telegram.org/bot${cfg.botToken}/sendMessage`,
42
+ {
43
+ method: "POST",
44
+ headers: { "Content-Type": "application/json" },
45
+ body: JSON.stringify({
46
+ chat_id: cfg.chatId,
47
+ text: message,
48
+ parse_mode: cfg.parseMode ?? "MarkdownV2",
49
+ }),
50
+ },
51
+ );
52
+
53
+ if (!response.ok) {
54
+ const error = await response.text();
55
+ return {
56
+ success: false,
57
+ channel: this.id,
58
+ error: `Telegram API error: ${error}`,
59
+ };
60
+ }
61
+
62
+ return { success: true, channel: this.id };
63
+ } catch (error) {
64
+ return {
65
+ success: false,
66
+ channel: this.id,
67
+ error: String(error),
68
+ };
69
+ }
70
+ }
71
+
72
+ private formatMessage(payload: NotificationPayload): string {
73
+ const emoji = this.getEmoji(payload.event);
74
+ const title = `${emoji} ${payload.title}`;
75
+ const lines = [title, "", payload.message];
76
+
77
+ if (payload.details?.taskTitle) {
78
+ lines.push("", `Task: ${payload.details.taskTitle}`);
79
+ }
80
+ if (payload.details?.jobId) {
81
+ lines.push(`Job: ${payload.details.jobId}`);
82
+ }
83
+ if (payload.details?.error) {
84
+ lines.push("", `Error: ${payload.details.error}`);
85
+ }
86
+
87
+ return lines.filter(Boolean).join("\n");
88
+ }
89
+
90
+ private getEmoji(event: NotificationPayload["event"]): string {
91
+ const map: Record<string, string> = {
92
+ JobStarted: "🚀",
93
+ TaskCompleted: "✅",
94
+ TaskFailed: "❌",
95
+ QuotaPaused: "⏸️",
96
+ ResumeScheduled: "▶️",
97
+ ContextCompacted: "📦",
98
+ OutputLimitContinued: "🔄",
99
+ E2EFailed: "🧪",
100
+ HumanReviewNeeded: "👤",
101
+ ReadyForClient: "🎉",
102
+ JobCancelled: "🚫",
103
+ Error: "⚠️",
104
+ };
105
+ return map[event] ?? "📢";
106
+ }
107
+ }
@@ -0,0 +1,75 @@
1
+ /**
2
+ * Webhook Adapter — RFC-0022
3
+ *
4
+ * Sends notifications to a generic webhook endpoint.
5
+ */
6
+
7
+ import type {
8
+ NotificationPayload,
9
+ NotificationResult,
10
+ WebhookConfig,
11
+ } from "../types.js";
12
+ import { BaseChannelAdapter } from "../base-adapter.js";
13
+
14
+ export class WebhookAdapter extends BaseChannelAdapter {
15
+ readonly id = "webhook";
16
+ readonly type = "webhook";
17
+
18
+ constructor(config: WebhookConfig) {
19
+ super({ id: "webhook", type: "webhook", enabled: true, config });
20
+ }
21
+
22
+ async initialize(): Promise<boolean> {
23
+ try {
24
+ const cfg = this.config.config as WebhookConfig;
25
+ return Boolean(cfg.url && cfg.url.startsWith("http"));
26
+ } catch {
27
+ return false;
28
+ }
29
+ }
30
+
31
+ async send(payload: NotificationPayload): Promise<NotificationResult> {
32
+ try {
33
+ const cfg = this.config.config as WebhookConfig;
34
+ const headers: Record<string, string> = {
35
+ "Content-Type": "application/json",
36
+ ...(cfg.headers ?? {}),
37
+ };
38
+
39
+ // Add auth token if configured
40
+ if (cfg.authToken) {
41
+ headers["Authorization"] = `Bearer ${cfg.authToken}`;
42
+ }
43
+
44
+ const response = await fetch(cfg.url, {
45
+ method: cfg.method ?? "POST",
46
+ headers,
47
+ body: JSON.stringify({
48
+ event: payload.event,
49
+ jobId: payload.jobId,
50
+ timestamp: payload.timestamp,
51
+ title: payload.title,
52
+ message: payload.message,
53
+ details: payload.details,
54
+ }),
55
+ });
56
+
57
+ if (!response.ok) {
58
+ const error = await response.text();
59
+ return {
60
+ success: false,
61
+ channel: this.id,
62
+ error: `Webhook error ${response.status}: ${error}`,
63
+ };
64
+ }
65
+
66
+ return { success: true, channel: this.id };
67
+ } catch (error) {
68
+ return {
69
+ success: false,
70
+ channel: this.id,
71
+ error: String(error),
72
+ };
73
+ }
74
+ }
75
+ }
@@ -0,0 +1,75 @@
1
+ /**
2
+ * Notification Base Adapter — RFC-0022
3
+ *
4
+ * Abstract base class for all notification channel adapters.
5
+ */
6
+
7
+ import type {
8
+ NotificationPayload,
9
+ NotificationChannelConfig,
10
+ NotificationResult,
11
+ } from "./types.js";
12
+
13
+ export interface ChannelAdapter {
14
+ readonly id: string;
15
+ readonly type: string;
16
+
17
+ /**
18
+ * Initialize the adapter (e.g., verify credentials)
19
+ */
20
+ initialize(): Promise<boolean>;
21
+
22
+ /**
23
+ * Send a notification
24
+ */
25
+ send(payload: NotificationPayload): Promise<NotificationResult>;
26
+
27
+ /**
28
+ * Check if the adapter is properly configured
29
+ */
30
+ isConfigured(): boolean;
31
+ }
32
+
33
+ export abstract class BaseChannelAdapter implements ChannelAdapter {
34
+ abstract readonly id: string;
35
+ abstract readonly type: string;
36
+
37
+ constructor(protected config: NotificationChannelConfig) {}
38
+
39
+ abstract initialize(): Promise<boolean>;
40
+ abstract send(payload: NotificationPayload): Promise<NotificationResult>;
41
+
42
+ isConfigured(): boolean {
43
+ return this.config.enabled;
44
+ }
45
+
46
+ /**
47
+ * Redact sensitive data from payload before sending
48
+ */
49
+ protected redact(
50
+ payload: NotificationPayload,
51
+ patterns: RegExp[],
52
+ ): NotificationPayload {
53
+ if (patterns.length === 0) return payload;
54
+
55
+ const redacted: string[] = [];
56
+ const details = payload.details ? { ...payload.details } : {};
57
+
58
+ for (const [key, value] of Object.entries(details)) {
59
+ const valStr = String(value);
60
+ for (const pattern of patterns) {
61
+ if (pattern.test(valStr)) {
62
+ redacted.push(key);
63
+ (details as Record<string, unknown>)[key] = "[REDACTED]";
64
+ break;
65
+ }
66
+ }
67
+ }
68
+
69
+ return {
70
+ ...payload,
71
+ details,
72
+ redacted: redacted.length > 0 ? redacted : undefined,
73
+ };
74
+ }
75
+ }
@@ -0,0 +1,51 @@
1
+ /**
2
+ * Notification Center — RFC-0022
3
+ *
4
+ * Mobile notification system for harness runtime events.
5
+ *
6
+ * @example
7
+ * ```typescript
8
+ * import { NotificationCenter } from "./notification/index.js";
9
+ *
10
+ * const center = new NotificationCenter({
11
+ * channels: [
12
+ * {
13
+ * id: "my-telegram",
14
+ * type: "telegram",
15
+ * enabled: true,
16
+ * config: {
17
+ * botToken: process.env.TELEGRAM_BOT_TOKEN,
18
+ * chatId: "YOUR_CHAT_ID",
19
+ * },
20
+ * },
21
+ * ],
22
+ * });
23
+ *
24
+ * await center.initialize();
25
+ *
26
+ * await center.notify("JobStarted", {
27
+ * jobId: "job-123",
28
+ * requirement: "Build a REST API",
29
+ * });
30
+ * ```
31
+ */
32
+
33
+ export { NotificationCenter } from "./notification-center.js";
34
+ export { TelegramAdapter } from "./adapters/telegram-adapter.js";
35
+ export { NtfyAdapter } from "./adapters/ntfy-adapter.js";
36
+ export { EmailAdapter } from "./adapters/email-adapter.js";
37
+ export { WebhookAdapter } from "./adapters/webhook-adapter.js";
38
+
39
+ export type {
40
+ NotificationEvent,
41
+ NotificationPayload,
42
+ NotificationConfig,
43
+ NotificationChannelConfig,
44
+ NotificationChannelType,
45
+ NotificationResult,
46
+ NotificationContext,
47
+ TelegramConfig,
48
+ NtfyConfig,
49
+ EmailConfig,
50
+ WebhookConfig,
51
+ } from "./types.js";
@@ -0,0 +1,286 @@
1
+ /**
2
+ * Notification Center — RFC-0022
3
+ *
4
+ * Main orchestration class for sending notifications across multiple channels.
5
+ *
6
+ * Security Rules (RFC-0022):
7
+ * - Do not send raw cookies, passwords, provider tokens
8
+ * - Redact sensitive data before sending
9
+ * - Notification failure does not crash runtime
10
+ */
11
+
12
+ import type {
13
+ NotificationEvent,
14
+ NotificationPayload,
15
+ NotificationConfig,
16
+ NotificationChannelConfig,
17
+ NotificationResult,
18
+ NotificationContext,
19
+ } from "./types.js";
20
+ import type { ChannelAdapter } from "./base-adapter.js";
21
+ import { TelegramAdapter } from "./adapters/telegram-adapter.js";
22
+ import { NtfyAdapter } from "./adapters/ntfy-adapter.js";
23
+ import { EmailAdapter } from "./adapters/email-adapter.js";
24
+ import { WebhookAdapter } from "./adapters/webhook-adapter.js";
25
+
26
+ export class NotificationCenter {
27
+ private adapters: Map<string, ChannelAdapter> = new Map();
28
+ private redactPatterns: RegExp[];
29
+
30
+ constructor(config?: NotificationConfig) {
31
+ this.redactPatterns =
32
+ config?.redactPatterns ?? this.getDefaultRedactPatterns();
33
+
34
+ if (config?.channels) {
35
+ for (const channelConfig of config.channels) {
36
+ if (channelConfig.enabled) {
37
+ this.registerAdapter(channelConfig);
38
+ }
39
+ }
40
+ }
41
+ }
42
+
43
+ /**
44
+ * Register a new adapter
45
+ */
46
+ registerAdapter(config: NotificationChannelConfig): boolean {
47
+ try {
48
+ const adapter = this.createAdapter(config);
49
+ if (adapter && adapter.isConfigured()) {
50
+ this.adapters.set(config.id, adapter);
51
+ return true;
52
+ }
53
+ } catch (error) {
54
+ console.error(
55
+ `[NotificationCenter] Failed to register adapter: ${error}`,
56
+ );
57
+ }
58
+ return false;
59
+ }
60
+
61
+ /**
62
+ * Initialize all registered adapters
63
+ */
64
+ async initialize(): Promise<void> {
65
+ const adapterEntries = Array.from(this.adapters.entries());
66
+ for (const [id, adapter] of adapterEntries) {
67
+ try {
68
+ const ok = await adapter.initialize();
69
+ if (!ok) {
70
+ console.warn(
71
+ `[NotificationCenter] Adapter ${id} initialization failed`,
72
+ );
73
+ }
74
+ } catch (error) {
75
+ console.warn(
76
+ `[NotificationCenter] Adapter ${id} initialization error: ${error}`,
77
+ );
78
+ }
79
+ }
80
+ }
81
+
82
+ /**
83
+ * Send a notification to all configured channels
84
+ */
85
+ async notify(
86
+ event: NotificationEvent,
87
+ context: NotificationContext,
88
+ ): Promise<NotificationResult[]> {
89
+ const payload = this.buildPayload(event, context);
90
+ const results: NotificationResult[] = [];
91
+
92
+ // Send to all adapters in parallel
93
+ const adapterEntries = Array.from(this.adapters.entries());
94
+ const promises = adapterEntries.map(async ([id, adapter]) => {
95
+ try {
96
+ // Redact sensitive data
97
+ const redactedPayload = this.redact(payload);
98
+ const result = await adapter.send(redactedPayload);
99
+ results.push(result);
100
+ } catch (error) {
101
+ // Never crash the runtime due to notification failure
102
+ results.push({
103
+ success: false,
104
+ channel: id,
105
+ error: String(error),
106
+ });
107
+ }
108
+ });
109
+
110
+ await Promise.all(promises);
111
+ return results;
112
+ }
113
+
114
+ /**
115
+ * Send notification to a specific channel
116
+ */
117
+ async notifyChannel(
118
+ channelId: string,
119
+ event: NotificationEvent,
120
+ context: NotificationContext,
121
+ ): Promise<NotificationResult> {
122
+ const adapter = this.adapters.get(channelId);
123
+ if (!adapter) {
124
+ return { success: false, channel: channelId, error: "Adapter not found" };
125
+ }
126
+
127
+ try {
128
+ const payload = this.redact(this.buildPayload(event, context));
129
+ return await adapter.send(payload);
130
+ } catch (error) {
131
+ return { success: false, channel: channelId, error: String(error) };
132
+ }
133
+ }
134
+
135
+ /**
136
+ * Check if any notifications are configured
137
+ */
138
+ hasChannels(): boolean {
139
+ return this.adapters.size > 0;
140
+ }
141
+
142
+ /**
143
+ * List all configured channels
144
+ */
145
+ listChannels(): string[] {
146
+ return Array.from(this.adapters.keys());
147
+ }
148
+
149
+ // ─── Private Methods ────────────────────────────────────────────────
150
+
151
+ private createAdapter(
152
+ config: NotificationChannelConfig,
153
+ ): ChannelAdapter | null {
154
+ switch (config.type) {
155
+ case "telegram":
156
+ return new TelegramAdapter(
157
+ config.config as import("./types.js").TelegramConfig,
158
+ );
159
+ case "ntfy":
160
+ return new NtfyAdapter(
161
+ config.config as import("./types.js").NtfyConfig,
162
+ );
163
+ case "email":
164
+ return new EmailAdapter(
165
+ config.config as import("./types.js").EmailConfig,
166
+ );
167
+ case "webhook":
168
+ return new WebhookAdapter(
169
+ config.config as import("./types.js").WebhookConfig,
170
+ );
171
+ default:
172
+ return null;
173
+ }
174
+ }
175
+
176
+ private buildPayload(
177
+ event: NotificationEvent,
178
+ context: NotificationContext,
179
+ ): NotificationPayload {
180
+ const { title, message } = this.getEventContent(event, context);
181
+
182
+ return {
183
+ event,
184
+ jobId: context.jobId,
185
+ timestamp: new Date().toISOString(),
186
+ title,
187
+ message,
188
+ details: {
189
+ jobId: context.jobId,
190
+ requirement: context.requirement,
191
+ ...(context.taskId && { taskId: context.taskId }),
192
+ ...(context.taskTitle && { taskTitle: context.taskTitle }),
193
+ ...(context.error && { error: context.error }),
194
+ },
195
+ };
196
+ }
197
+
198
+ private getEventContent(
199
+ event: NotificationEvent,
200
+ context: NotificationContext,
201
+ ): { title: string; message: string } {
202
+ const requirement =
203
+ context.requirement.length > 50
204
+ ? context.requirement.slice(0, 50) + "..."
205
+ : context.requirement;
206
+
207
+ const map: Record<NotificationEvent, { title: string; message: string }> = {
208
+ JobStarted: {
209
+ title: "Job Started",
210
+ message: `Harness job started for: "${requirement}"`,
211
+ },
212
+ TaskCompleted: {
213
+ title: "Task Completed",
214
+ message: `Task "${context.taskTitle ?? "Unknown"}" completed successfully`,
215
+ },
216
+ TaskFailed: {
217
+ title: "Task Failed",
218
+ message: `Task "${context.taskTitle ?? "Unknown"}" failed${context.error ? `: ${context.error}` : ""}`,
219
+ },
220
+ QuotaPaused: {
221
+ title: "Quota Paused",
222
+ message: `Job paused due to quota limit. Will auto-resume when quota resets.`,
223
+ },
224
+ ResumeScheduled: {
225
+ title: "Resume Scheduled",
226
+ message: `Job will resume work on: "${requirement}"`,
227
+ },
228
+ ContextCompacted: {
229
+ title: "Context Compacted",
230
+ message: `Session context was compacted to continue work on: "${requirement}"`,
231
+ },
232
+ OutputLimitContinued: {
233
+ title: "Output Limit Continued",
234
+ message: `Response was continued after hitting output token limit`,
235
+ },
236
+ E2EFailed: {
237
+ title: "E2E Test Failed",
238
+ message: `End-to-end tests failed for job: "${requirement}"`,
239
+ },
240
+ HumanReviewNeeded: {
241
+ title: "Human Review Needed",
242
+ message: `Job blocked. Please review and take action.`,
243
+ },
244
+ ReadyForClient: {
245
+ title: "Ready for Review",
246
+ message: `Job completed successfully and ready for your review: "${requirement}"`,
247
+ },
248
+ JobCancelled: {
249
+ title: "Job Cancelled",
250
+ message: `Job was cancelled: "${requirement}"`,
251
+ },
252
+ Error: {
253
+ title: "Runtime Error",
254
+ message: `An error occurred${context.error ? `: ${context.error}` : ""}`,
255
+ },
256
+ };
257
+
258
+ return map[event] ?? { title: event, message: `Event: ${event}` };
259
+ }
260
+
261
+ private redact(payload: NotificationPayload): NotificationPayload {
262
+ const details = payload.details ? { ...payload.details } : {};
263
+
264
+ // Redact sensitive patterns
265
+ for (const pattern of this.redactPatterns) {
266
+ for (const [key, value] of Object.entries(details)) {
267
+ if (typeof value === "string" && pattern.test(value)) {
268
+ details[key] = "[REDACTED]";
269
+ }
270
+ }
271
+ }
272
+
273
+ return { ...payload, details };
274
+ }
275
+
276
+ private getDefaultRedactPatterns(): RegExp[] {
277
+ return [
278
+ /Bearer\s+[\w-]+/gi, // Bearer tokens
279
+ /password["\s:=]+[^\s,}]+/gi, // passwords
280
+ /cookie["\s:=]+[^\s,}]+/gi, // cookies
281
+ /secret["\s:=]+[^\s,}]+/gi, // secrets
282
+ /api[_-]?key["\s:=]+[^\s,}]+/gi, // API keys
283
+ /auth["\s:=]+[^\s,}]+/gi, // auth tokens
284
+ ];
285
+ }
286
+ }
@@ -0,0 +1,22 @@
1
+ {
2
+ "name": "@pi-harness/notification",
3
+ "version": "0.10.30",
4
+ "description": "pi-harness-runtime — notification",
5
+ "type": "module",
6
+ "main": "./dist/index.js",
7
+ "types": "./dist/index.d.ts",
8
+ "exports": {
9
+ ".": {
10
+ "import": "./dist/index.js",
11
+ "types": "./dist/index.d.ts"
12
+ }
13
+ },
14
+ "files": [
15
+ "dist"
16
+ ],
17
+ "scripts": {
18
+ "build": "tsc",
19
+ "test": "bun test"
20
+ },
21
+ "dependencies": {}
22
+ }