clodds 1.5.1 → 1.5.2

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 (423) hide show
  1. package/dist/acp/identity.js +21 -13
  2. package/dist/acp/identity.js.map +1 -1
  3. package/dist/acp/persistence.js +9 -7
  4. package/dist/acp/persistence.js.map +1 -1
  5. package/dist/acp/registry.js +7 -3
  6. package/dist/acp/registry.js.map +1 -1
  7. package/dist/agents/handlers/agentbets.js.map +1 -1
  8. package/dist/agents/handlers/paper-trading.js +1 -1
  9. package/dist/agents/handlers/paper-trading.js.map +1 -1
  10. package/dist/agents/handlers/predictfun.js +4 -2
  11. package/dist/agents/handlers/predictfun.js.map +1 -1
  12. package/dist/agents/index.js +5 -1
  13. package/dist/agents/index.js.map +1 -1
  14. package/dist/alerts/index.js +5 -5
  15. package/dist/alerts/index.js.map +1 -1
  16. package/dist/alerts/realtime.js +8 -0
  17. package/dist/alerts/realtime.js.map +1 -1
  18. package/dist/api/apikeys.js +1 -1
  19. package/dist/api/compute/code.js +4 -1
  20. package/dist/api/compute/code.js.map +1 -1
  21. package/dist/api/compute/data.js +8 -2
  22. package/dist/api/compute/data.js.map +1 -1
  23. package/dist/api/compute/gateway.js +14 -9
  24. package/dist/api/compute/gateway.js.map +1 -1
  25. package/dist/api/compute/llm.js +14 -10
  26. package/dist/api/compute/llm.js.map +1 -1
  27. package/dist/api/compute/storage.js +6 -2
  28. package/dist/api/compute/storage.js.map +1 -1
  29. package/dist/api/compute/trade.js +6 -5
  30. package/dist/api/compute/trade.js.map +1 -1
  31. package/dist/api/compute/web.js +5 -0
  32. package/dist/api/compute/web.js.map +1 -1
  33. package/dist/api/fees.js +5 -1
  34. package/dist/api/fees.js.map +1 -1
  35. package/dist/api/gateway.js +35 -7
  36. package/dist/api/gateway.js.map +1 -1
  37. package/dist/api/jobs.js +15 -6
  38. package/dist/api/jobs.js.map +1 -1
  39. package/dist/api/middleware.js +12 -3
  40. package/dist/api/middleware.js.map +1 -1
  41. package/dist/api/sdk.js +1 -1
  42. package/dist/api/server.js +16 -7
  43. package/dist/api/server.js.map +1 -1
  44. package/dist/arbitrage/index.js +14 -4
  45. package/dist/arbitrage/index.js.map +1 -1
  46. package/dist/auth/copilot.js +3 -3
  47. package/dist/auth/copilot.js.map +1 -1
  48. package/dist/auth/google.js +6 -2
  49. package/dist/auth/google.js.map +1 -1
  50. package/dist/auth/oauth.js +18 -11
  51. package/dist/auth/oauth.js.map +1 -1
  52. package/dist/auth/qwen.js +4 -4
  53. package/dist/auth/qwen.js.map +1 -1
  54. package/dist/auto-reply/index.js +18 -4
  55. package/dist/auto-reply/index.js.map +1 -1
  56. package/dist/automation/cron.js +10 -3
  57. package/dist/automation/cron.js.map +1 -1
  58. package/dist/automation/webhooks.js +13 -2
  59. package/dist/automation/webhooks.js.map +1 -1
  60. package/dist/bankr/client.js +3 -3
  61. package/dist/base/provider.js +16 -2
  62. package/dist/base/provider.js.map +1 -1
  63. package/dist/bin/worker.js +4 -4
  64. package/dist/bin/worker.js.map +1 -1
  65. package/dist/bittensor/chutes.js +1 -1
  66. package/dist/bittensor/chutes.js.map +1 -1
  67. package/dist/bittensor/python-runner.js +5 -1
  68. package/dist/bittensor/python-runner.js.map +1 -1
  69. package/dist/bittensor/service.js +1 -1
  70. package/dist/bittensor/service.js.map +1 -1
  71. package/dist/browser/index.js +40 -16
  72. package/dist/browser/index.js.map +1 -1
  73. package/dist/cache/index.d.ts +2 -0
  74. package/dist/cache/index.js +30 -5
  75. package/dist/cache/index.js.map +1 -1
  76. package/dist/canvas/index.js +56 -27
  77. package/dist/canvas/index.js.map +1 -1
  78. package/dist/channels/googlechat/index.js +3 -0
  79. package/dist/channels/googlechat/index.js.map +1 -1
  80. package/dist/channels/imessage/index.js +6 -0
  81. package/dist/channels/imessage/index.js.map +1 -1
  82. package/dist/channels/index.js +7 -2
  83. package/dist/channels/index.js.map +1 -1
  84. package/dist/channels/line/index.d.ts +1 -1
  85. package/dist/channels/line/index.js +4 -2
  86. package/dist/channels/line/index.js.map +1 -1
  87. package/dist/channels/mattermost/index.js +5 -0
  88. package/dist/channels/mattermost/index.js.map +1 -1
  89. package/dist/channels/nostr/index.js +10 -2
  90. package/dist/channels/nostr/index.js.map +1 -1
  91. package/dist/channels/teams/index.js +20 -3
  92. package/dist/channels/teams/index.js.map +1 -1
  93. package/dist/channels/telegram/index.js +20 -3
  94. package/dist/channels/telegram/index.js.map +1 -1
  95. package/dist/channels/tlon/index.js +6 -1
  96. package/dist/channels/tlon/index.js.map +1 -1
  97. package/dist/channels/voice/index.js +16 -0
  98. package/dist/channels/voice/index.js.map +1 -1
  99. package/dist/channels/webchat/index.js +6 -1
  100. package/dist/channels/webchat/index.js.map +1 -1
  101. package/dist/channels/zalo/index.js +4 -2
  102. package/dist/channels/zalo/index.js.map +1 -1
  103. package/dist/cli/commands/doctor.js +2 -2
  104. package/dist/cli/commands/doctor.js.map +1 -1
  105. package/dist/cli/commands/index.js +54 -24
  106. package/dist/cli/commands/index.js.map +1 -1
  107. package/dist/cli/commands/onboard.js +12 -11
  108. package/dist/cli/commands/onboard.js.map +1 -1
  109. package/dist/cli/commands/skills.js +1 -1
  110. package/dist/cli/index.js +2 -2
  111. package/dist/cli/index.js.map +1 -1
  112. package/dist/cli/secure.js +11 -5
  113. package/dist/cli/secure.js.map +1 -1
  114. package/dist/commands/registry.js +17 -9
  115. package/dist/commands/registry.js.map +1 -1
  116. package/dist/config/index.js +42 -32
  117. package/dist/config/index.js.map +1 -1
  118. package/dist/credentials/index.js +7 -6
  119. package/dist/credentials/index.js.map +1 -1
  120. package/dist/cron/index.js +15 -1
  121. package/dist/cron/index.js.map +1 -1
  122. package/dist/db/index.d.ts +12 -4
  123. package/dist/db/index.js +8 -6
  124. package/dist/db/index.js.map +1 -1
  125. package/dist/docker/index.d.ts +0 -10
  126. package/dist/docker/index.js +52 -57
  127. package/dist/docker/index.js.map +1 -1
  128. package/dist/doctor/index.js +16 -7
  129. package/dist/doctor/index.js.map +1 -1
  130. package/dist/embeddings/index.js +42 -8
  131. package/dist/embeddings/index.js.map +1 -1
  132. package/dist/evm/contracts.js +8 -1
  133. package/dist/evm/contracts.js.map +1 -1
  134. package/dist/evm/odos.js +1 -1
  135. package/dist/evm/odos.js.map +1 -1
  136. package/dist/evm/oneinch.js +7 -4
  137. package/dist/evm/oneinch.js.map +1 -1
  138. package/dist/evm/pancakeswap.js +1 -1
  139. package/dist/evm/pancakeswap.js.map +1 -1
  140. package/dist/evm/transfers.js +10 -5
  141. package/dist/evm/transfers.js.map +1 -1
  142. package/dist/evm/uniswap.js +1 -1
  143. package/dist/evm/uniswap.js.map +1 -1
  144. package/dist/evm/virtuals.js +7 -2
  145. package/dist/evm/virtuals.js.map +1 -1
  146. package/dist/exchanges/binance-futures/index.js +24 -21
  147. package/dist/exchanges/binance-futures/index.js.map +1 -1
  148. package/dist/exchanges/bybit/index.js +17 -14
  149. package/dist/exchanges/bybit/index.js.map +1 -1
  150. package/dist/exchanges/hyperliquid/index.js +28 -20
  151. package/dist/exchanges/hyperliquid/index.js.map +1 -1
  152. package/dist/exchanges/lighter/index.js +4 -4
  153. package/dist/exchanges/mexc/index.js +15 -15
  154. package/dist/exchanges/mexc/index.js.map +1 -1
  155. package/dist/exchanges/opinion/index.js +7 -7
  156. package/dist/exchanges/opinion/index.js.map +1 -1
  157. package/dist/exchanges/predictfun/index.js +1 -1
  158. package/dist/execution/index.js +93 -87
  159. package/dist/execution/index.js.map +1 -1
  160. package/dist/extensions/copilot-proxy/index.js +13 -7
  161. package/dist/extensions/copilot-proxy/index.js.map +1 -1
  162. package/dist/extensions/diagnostics-otel/index.js +8 -0
  163. package/dist/extensions/diagnostics-otel/index.js.map +1 -1
  164. package/dist/extensions/google-auth/index.js +4 -1
  165. package/dist/extensions/google-auth/index.js.map +1 -1
  166. package/dist/extensions/llm-task/index.js +28 -10
  167. package/dist/extensions/llm-task/index.js.map +1 -1
  168. package/dist/extensions/lobster/index.js +27 -8
  169. package/dist/extensions/lobster/index.js.map +1 -1
  170. package/dist/extensions/memory-lancedb/index.js +16 -6
  171. package/dist/extensions/memory-lancedb/index.js.map +1 -1
  172. package/dist/extensions/open-prose/index.js +1 -1
  173. package/dist/extensions/task-runner/index.js +12 -5
  174. package/dist/extensions/task-runner/index.js.map +1 -1
  175. package/dist/farcaster/client.js +7 -7
  176. package/dist/feeds/agentbets/index.d.ts +1 -1
  177. package/dist/feeds/betfair/index.js +12 -6
  178. package/dist/feeds/betfair/index.js.map +1 -1
  179. package/dist/feeds/crypto/index.js +38 -30
  180. package/dist/feeds/crypto/index.js.map +1 -1
  181. package/dist/feeds/drift/trading.js +4 -4
  182. package/dist/feeds/external/index.js +3 -0
  183. package/dist/feeds/external/index.js.map +1 -1
  184. package/dist/feeds/fred/index.js.map +1 -1
  185. package/dist/feeds/hedgehog/index.js +10 -2
  186. package/dist/feeds/hedgehog/index.js.map +1 -1
  187. package/dist/feeds/manifold/index.js +1 -1
  188. package/dist/feeds/metaculus/index.js +2 -2
  189. package/dist/feeds/opinion/index.js +2 -2
  190. package/dist/feeds/polymarket/index.js +7 -1
  191. package/dist/feeds/polymarket/index.js.map +1 -1
  192. package/dist/feeds/polymarket/whale-tracker.js.map +1 -1
  193. package/dist/feeds/predictfun/index.js +2 -2
  194. package/dist/feeds/smarkets/index.js +12 -6
  195. package/dist/feeds/smarkets/index.js.map +1 -1
  196. package/dist/gateway/feeds-routes.d.ts +8 -7
  197. package/dist/gateway/feeds-routes.js.map +1 -1
  198. package/dist/gateway/index.js +28 -6
  199. package/dist/gateway/index.js.map +1 -1
  200. package/dist/history/index.js +8 -4
  201. package/dist/history/index.js.map +1 -1
  202. package/dist/hooks/index.js +14 -5
  203. package/dist/hooks/index.js.map +1 -1
  204. package/dist/i18n/index.js +2 -1
  205. package/dist/i18n/index.js.map +1 -1
  206. package/dist/identity/erc8004.js +13 -3
  207. package/dist/identity/erc8004.js.map +1 -1
  208. package/dist/index.js +3 -3
  209. package/dist/index.js.map +1 -1
  210. package/dist/infra/index.d.ts +1 -1
  211. package/dist/infra/index.js +39 -26
  212. package/dist/infra/index.js.map +1 -1
  213. package/dist/ledger/hooks.js +26 -18
  214. package/dist/ledger/hooks.js.map +1 -1
  215. package/dist/ledger/storage.js +23 -13
  216. package/dist/ledger/storage.js.map +1 -1
  217. package/dist/link-understanding/index.js +26 -2
  218. package/dist/link-understanding/index.js.map +1 -1
  219. package/dist/logging/index.js +31 -4
  220. package/dist/logging/index.js.map +1 -1
  221. package/dist/macos/index.d.ts +1 -1
  222. package/dist/macos/index.js +41 -36
  223. package/dist/macos/index.js.map +1 -1
  224. package/dist/markdown/index.js +25 -8
  225. package/dist/markdown/index.js.map +1 -1
  226. package/dist/market-index/index.js +8 -6
  227. package/dist/market-index/index.js.map +1 -1
  228. package/dist/mcp/index.js +67 -10
  229. package/dist/mcp/index.js.map +1 -1
  230. package/dist/mcp/server.js +21 -3
  231. package/dist/mcp/server.js.map +1 -1
  232. package/dist/media/index.js +17 -15
  233. package/dist/media/index.js.map +1 -1
  234. package/dist/memory/context.js +17 -9
  235. package/dist/memory/context.js.map +1 -1
  236. package/dist/memory/index.js +6 -5
  237. package/dist/memory/index.js.map +1 -1
  238. package/dist/ml-pipeline/collector.js +14 -3
  239. package/dist/ml-pipeline/collector.js.map +1 -1
  240. package/dist/ml-pipeline/trainer.js +1 -1
  241. package/dist/ml-pipeline/trainer.js.map +1 -1
  242. package/dist/monitoring/health.js +15 -3
  243. package/dist/monitoring/health.js.map +1 -1
  244. package/dist/monitoring/metrics.js +2 -2
  245. package/dist/nodes/index.js +40 -25
  246. package/dist/nodes/index.js.map +1 -1
  247. package/dist/opportunity/combinatorial.js +4 -1
  248. package/dist/opportunity/combinatorial.js.map +1 -1
  249. package/dist/opportunity/correlation.js +2 -2
  250. package/dist/opportunity/executor.js +14 -5
  251. package/dist/opportunity/executor.js.map +1 -1
  252. package/dist/opportunity/risk.js +3 -1
  253. package/dist/opportunity/risk.js.map +1 -1
  254. package/dist/opportunity/scoring.js +3 -1
  255. package/dist/opportunity/scoring.js.map +1 -1
  256. package/dist/pairing/index.js +8 -4
  257. package/dist/pairing/index.js.map +1 -1
  258. package/dist/payments/x402/evm.js +4 -4
  259. package/dist/payments/x402/index.js +26 -7
  260. package/dist/payments/x402/index.js.map +1 -1
  261. package/dist/payments/x402/solana.js +3 -3
  262. package/dist/percolator/feed.js +1 -1
  263. package/dist/percolator/feed.js.map +1 -1
  264. package/dist/permissions/index.d.ts +2 -0
  265. package/dist/permissions/index.js +22 -12
  266. package/dist/permissions/index.js.map +1 -1
  267. package/dist/plugins/index.d.ts +3 -1
  268. package/dist/plugins/index.js +18 -6
  269. package/dist/plugins/index.js.map +1 -1
  270. package/dist/portfolio/index.js +16 -15
  271. package/dist/portfolio/index.js.map +1 -1
  272. package/dist/presence/index.js +17 -5
  273. package/dist/presence/index.js.map +1 -1
  274. package/dist/process/index.js +40 -14
  275. package/dist/process/index.js.map +1 -1
  276. package/dist/providers/discovery.js +34 -28
  277. package/dist/providers/discovery.js.map +1 -1
  278. package/dist/providers/health.js +7 -4
  279. package/dist/providers/health.js.map +1 -1
  280. package/dist/providers/index.js +36 -33
  281. package/dist/providers/index.js.map +1 -1
  282. package/dist/queue/index.js +1 -1
  283. package/dist/remote/index.d.ts +0 -5
  284. package/dist/remote/index.js +41 -9
  285. package/dist/remote/index.js.map +1 -1
  286. package/dist/risk/circuit-breaker.js +13 -5
  287. package/dist/risk/circuit-breaker.js.map +1 -1
  288. package/dist/risk/engine.js +2 -2
  289. package/dist/risk/volatility.js +1 -1
  290. package/dist/risk/volatility.js.map +1 -1
  291. package/dist/routing/index.js +5 -2
  292. package/dist/routing/index.js.map +1 -1
  293. package/dist/search/index.js +7 -5
  294. package/dist/search/index.js.map +1 -1
  295. package/dist/security/address-checker.js +40 -19
  296. package/dist/security/address-checker.js.map +1 -1
  297. package/dist/security/code-scanner.js +7 -5
  298. package/dist/security/code-scanner.js.map +1 -1
  299. package/dist/security/index.d.ts +3 -0
  300. package/dist/security/index.js +19 -7
  301. package/dist/security/index.js.map +1 -1
  302. package/dist/security/tx-validator.js +2 -2
  303. package/dist/security/tx-validator.js.map +1 -1
  304. package/dist/services/feature-engineering/rolling-window.d.ts +7 -0
  305. package/dist/services/feature-engineering/rolling-window.js +23 -0
  306. package/dist/services/feature-engineering/rolling-window.js.map +1 -1
  307. package/dist/services/feature-engineering/thresholds.js +2 -2
  308. package/dist/services/feature-engineering/thresholds.js.map +1 -1
  309. package/dist/services/tick-recorder/index.js +13 -1
  310. package/dist/services/tick-recorder/index.js.map +1 -1
  311. package/dist/services/tick-recorder/queries.js +11 -7
  312. package/dist/services/tick-recorder/queries.js.map +1 -1
  313. package/dist/services/tick-streamer/index.js +6 -2
  314. package/dist/services/tick-streamer/index.js.map +1 -1
  315. package/dist/session/index.d.ts +1 -1
  316. package/dist/session/index.js +31 -6
  317. package/dist/session/index.js.map +1 -1
  318. package/dist/sessions/index.js +76 -52
  319. package/dist/sessions/index.js.map +1 -1
  320. package/dist/signal-router/router.js +8 -1
  321. package/dist/signal-router/router.js.map +1 -1
  322. package/dist/skills/bundled/agentbets/index.js.map +1 -1
  323. package/dist/skills/bundled/auto-reply/SKILL.md +19 -16
  324. package/dist/skills/bundled/automation/SKILL.md +33 -215
  325. package/dist/skills/bundled/backtest/SKILL.md +2 -1
  326. package/dist/skills/bundled/credentials/SKILL.md +2 -1
  327. package/dist/skills/bundled/edge/SKILL.md +6 -3
  328. package/dist/skills/bundled/sandbox/SKILL.md +29 -240
  329. package/dist/skills/bundled/trading-kalshi/SKILL.md +65 -586
  330. package/dist/skills/bundled/usage/SKILL.md +8 -18
  331. package/dist/skills/bundled/webhooks/SKILL.md +31 -279
  332. package/dist/skills/bundled/whale-tracking/SKILL.md +24 -22
  333. package/dist/solana/copytrade.js +5 -5
  334. package/dist/solana/drift.js +2 -2
  335. package/dist/solana/drift.js.map +1 -1
  336. package/dist/solana/meteora-dbc.d.ts +2 -2
  337. package/dist/solana/pumpapi.js +4 -0
  338. package/dist/solana/pumpapi.js.map +1 -1
  339. package/dist/solana/raydium.js +46 -10
  340. package/dist/solana/raydium.js.map +1 -1
  341. package/dist/solana/swarm-copytrade.js +2 -2
  342. package/dist/solana/wallet.js +12 -3
  343. package/dist/solana/wallet.js.map +1 -1
  344. package/dist/strategies/crypto-hft/index.js +2 -0
  345. package/dist/strategies/crypto-hft/index.js.map +1 -1
  346. package/dist/strategies/crypto-hft/positions.js +11 -3
  347. package/dist/strategies/crypto-hft/positions.js.map +1 -1
  348. package/dist/strategies/crypto-hft/presets.js +2 -1
  349. package/dist/strategies/crypto-hft/presets.js.map +1 -1
  350. package/dist/strategies/crypto-hft/strategies.js +4 -3
  351. package/dist/strategies/crypto-hft/strategies.js.map +1 -1
  352. package/dist/strategies/hft-divergence/detector.js +5 -1
  353. package/dist/strategies/hft-divergence/detector.js.map +1 -1
  354. package/dist/strategies/hft-divergence/position-manager.js +13 -1
  355. package/dist/strategies/hft-divergence/position-manager.js.map +1 -1
  356. package/dist/strategies/hft-divergence/strategy.js +3 -1
  357. package/dist/strategies/hft-divergence/strategy.js.map +1 -1
  358. package/dist/streaming/index.js +21 -5
  359. package/dist/streaming/index.js.map +1 -1
  360. package/dist/tailscale/index.d.ts +0 -4
  361. package/dist/tailscale/index.js +5 -8
  362. package/dist/tailscale/index.js.map +1 -1
  363. package/dist/telemetry/index.d.ts +1 -0
  364. package/dist/telemetry/index.js +49 -6
  365. package/dist/telemetry/index.js.map +1 -1
  366. package/dist/tools/canvas.js +32 -8
  367. package/dist/tools/canvas.js.map +1 -1
  368. package/dist/tools/exec.js +32 -2
  369. package/dist/tools/exec.js.map +1 -1
  370. package/dist/tools/image.js +19 -0
  371. package/dist/tools/image.js.map +1 -1
  372. package/dist/tools/sql.js +4 -1
  373. package/dist/tools/sql.js.map +1 -1
  374. package/dist/tools/transcription.js +13 -0
  375. package/dist/tools/transcription.js.map +1 -1
  376. package/dist/tools/web-fetch.js +14 -0
  377. package/dist/tools/web-fetch.js.map +1 -1
  378. package/dist/tools/web-search.js +14 -0
  379. package/dist/tools/web-search.js.map +1 -1
  380. package/dist/trading/backtest.js +3 -3
  381. package/dist/trading/backtest.js.map +1 -1
  382. package/dist/trading/bots/index.d.ts +9 -1
  383. package/dist/trading/bots/index.js +4 -0
  384. package/dist/trading/bots/index.js.map +1 -1
  385. package/dist/trading/devtools.js +1 -1
  386. package/dist/trading/devtools.js.map +1 -1
  387. package/dist/trading/futures/index.js +5 -5
  388. package/dist/trading/index.js +1 -1
  389. package/dist/trading/index.js.map +1 -1
  390. package/dist/trading/logger.js +27 -20
  391. package/dist/trading/logger.js.map +1 -1
  392. package/dist/trading/safety.d.ts +2 -0
  393. package/dist/trading/safety.js +12 -2
  394. package/dist/trading/safety.js.map +1 -1
  395. package/dist/trading/stream.js +1 -1
  396. package/dist/trading/stream.js.map +1 -1
  397. package/dist/trading/tracking.d.ts +1 -1
  398. package/dist/trading/tracking.js.map +1 -1
  399. package/dist/utils/config.js +4 -3
  400. package/dist/utils/config.js.map +1 -1
  401. package/dist/utils/http.js +15 -1
  402. package/dist/utils/http.js.map +1 -1
  403. package/dist/utils/kelly.js +14 -5
  404. package/dist/utils/kelly.js.map +1 -1
  405. package/dist/utils/rate-limiter.js +25 -10
  406. package/dist/utils/rate-limiter.js.map +1 -1
  407. package/dist/voice/index.d.ts +5 -1
  408. package/dist/voice/index.js +65 -25
  409. package/dist/voice/index.js.map +1 -1
  410. package/dist/weather/edge.js +4 -2
  411. package/dist/weather/edge.js.map +1 -1
  412. package/dist/weather/markets.d.ts +1 -0
  413. package/dist/weather/markets.js +17 -8
  414. package/dist/weather/markets.js.map +1 -1
  415. package/dist/weather/noaa.d.ts +2 -0
  416. package/dist/weather/noaa.js +22 -5
  417. package/dist/weather/noaa.js.map +1 -1
  418. package/dist/web/index.d.ts +3 -0
  419. package/dist/web/index.js +60 -12
  420. package/dist/web/index.js.map +1 -1
  421. package/dist/wizard/index.js +13 -14
  422. package/dist/wizard/index.js.map +1 -1
  423. package/package.json +1 -1
@@ -31,7 +31,8 @@ class GeminiProvider {
31
31
  this.apiKey = apiKey;
32
32
  }
33
33
  endpoint(model, method) {
34
- const cleanModel = model.startsWith('models/') ? model : `models/${model}`;
34
+ const sanitized = model.replace(/[^a-zA-Z0-9._\-/]/g, '');
35
+ const cleanModel = sanitized.startsWith('models/') ? sanitized : `models/${sanitized}`;
35
36
  return `${this.baseUrl}/${cleanModel}:${method}?key=${this.apiKey}`;
36
37
  }
37
38
  toGeminiMessages(messages) {
@@ -72,15 +73,15 @@ class GeminiProvider {
72
73
  throw new Error(`Gemini error: ${response.status}`);
73
74
  }
74
75
  const data = await response.json();
75
- const content = data.candidates?.[0]?.content?.parts?.map(p => p.text || '').join('') || '';
76
+ const content = data.candidates?.[0]?.content?.parts?.map(p => p.text ?? '').join('') ?? '';
76
77
  const finish = data.candidates?.[0]?.finishReason;
77
78
  return {
78
79
  content,
79
80
  model: data.modelVersion || model,
80
81
  usage: {
81
- inputTokens: data.usageMetadata?.promptTokenCount || 0,
82
- outputTokens: data.usageMetadata?.candidatesTokenCount || 0,
83
- totalTokens: data.usageMetadata?.totalTokenCount || 0,
82
+ inputTokens: data.usageMetadata?.promptTokenCount ?? 0,
83
+ outputTokens: data.usageMetadata?.candidatesTokenCount ?? 0,
84
+ totalTokens: data.usageMetadata?.totalTokenCount ?? 0,
84
85
  },
85
86
  finishReason: finish === 'STOP' ? 'end_turn' : 'end_turn',
86
87
  latency: Date.now() - startTime,
@@ -116,20 +117,20 @@ class GeminiProvider {
116
117
  buffer += decoder.decode(value, { stream: true });
117
118
  // Gemini streaming responses are JSON lines.
118
119
  const lines = buffer.split('\n');
119
- buffer = lines.pop() || '';
120
+ buffer = lines.pop() ?? '';
120
121
  for (const line of lines) {
121
122
  const trimmed = line.trim();
122
123
  if (!trimmed)
123
124
  continue;
124
125
  try {
125
126
  const event = JSON.parse(trimmed);
126
- const content = event.candidates?.[0]?.content?.parts?.map(p => p.text || '').join('') || '';
127
+ const content = event.candidates?.[0]?.content?.parts?.map(p => p.text ?? '').join('') ?? '';
127
128
  if (content) {
128
129
  yield { content, done: false };
129
130
  }
130
131
  }
131
- catch {
132
- // Ignore malformed chunks.
132
+ catch (err) {
133
+ logger_1.logger.debug({ error: err }, 'Failed to parse Gemini stream chunk');
133
134
  }
134
135
  }
135
136
  }
@@ -196,7 +197,7 @@ class AnthropicProvider {
196
197
  const conversationMessages = messages.filter(m => m.role !== 'system');
197
198
  const body = {
198
199
  model: options.model || this.config.defaultModel,
199
- max_tokens: options.maxTokens || 4096,
200
+ max_tokens: options.maxTokens ?? 4096,
200
201
  temperature: options.temperature,
201
202
  top_p: options.topP,
202
203
  stop_sequences: options.stopSequences,
@@ -208,12 +209,12 @@ class AnthropicProvider {
208
209
  };
209
210
  const response = await this.request('/v1/messages', body);
210
211
  return {
211
- content: response.content[0]?.text || '',
212
+ content: response.content[0]?.text ?? '',
212
213
  model: response.model,
213
214
  usage: {
214
- inputTokens: response.usage?.input_tokens || 0,
215
- outputTokens: response.usage?.output_tokens || 0,
216
- totalTokens: (response.usage?.input_tokens || 0) + (response.usage?.output_tokens || 0),
215
+ inputTokens: response.usage?.input_tokens ?? 0,
216
+ outputTokens: response.usage?.output_tokens ?? 0,
217
+ totalTokens: (response.usage?.input_tokens ?? 0) + (response.usage?.output_tokens ?? 0),
217
218
  },
218
219
  finishReason: response.stop_reason === 'end_turn' ? 'end_turn' :
219
220
  response.stop_reason === 'max_tokens' ? 'max_tokens' : 'end_turn',
@@ -225,7 +226,7 @@ class AnthropicProvider {
225
226
  const conversationMessages = messages.filter(m => m.role !== 'system');
226
227
  const body = {
227
228
  model: options.model || this.config.defaultModel,
228
- max_tokens: options.maxTokens || 4096,
229
+ max_tokens: options.maxTokens ?? 4096,
229
230
  temperature: options.temperature,
230
231
  top_p: options.topP,
231
232
  stop_sequences: options.stopSequences,
@@ -259,7 +260,7 @@ class AnthropicProvider {
259
260
  break;
260
261
  buffer += decoder.decode(value, { stream: true });
261
262
  const lines = buffer.split('\n');
262
- buffer = lines.pop() || '';
263
+ buffer = lines.pop() ?? '';
263
264
  for (const line of lines) {
264
265
  if (line.startsWith('data: ')) {
265
266
  const data = line.slice(6);
@@ -331,7 +332,8 @@ class AnthropicProvider {
331
332
  // Rate limit
332
333
  if (statusCode === 429) {
333
334
  const retryAfter = response.headers.get('retry-after');
334
- throw new retry_1.RateLimitError(`Anthropic rate limited: ${statusCode} - ${errorText}`, statusCode, retryAfter ? parseInt(retryAfter, 10) * 1000 : undefined);
335
+ const parsedRetry = retryAfter ? parseInt(retryAfter, 10) : NaN;
336
+ throw new retry_1.RateLimitError(`Anthropic rate limited: ${statusCode} - ${errorText}`, statusCode, !isNaN(parsedRetry) ? parsedRetry * 1000 : undefined);
335
337
  }
336
338
  // Server errors are transient
337
339
  if (statusCode >= 500) {
@@ -381,7 +383,7 @@ class OpenAIProvider {
381
383
  const startTime = Date.now();
382
384
  const body = {
383
385
  model: options.model || this.config.defaultModel,
384
- max_tokens: options.maxTokens || 4096,
386
+ max_tokens: options.maxTokens ?? 4096,
385
387
  temperature: options.temperature,
386
388
  top_p: options.topP,
387
389
  stop: options.stopSequences,
@@ -392,12 +394,12 @@ class OpenAIProvider {
392
394
  };
393
395
  const response = await this.request('/v1/chat/completions', body);
394
396
  return {
395
- content: response.choices[0]?.message?.content || '',
397
+ content: response.choices[0]?.message?.content ?? '',
396
398
  model: response.model,
397
399
  usage: {
398
- inputTokens: response.usage?.prompt_tokens || 0,
399
- outputTokens: response.usage?.completion_tokens || 0,
400
- totalTokens: response.usage?.total_tokens || 0,
400
+ inputTokens: response.usage?.prompt_tokens ?? 0,
401
+ outputTokens: response.usage?.completion_tokens ?? 0,
402
+ totalTokens: response.usage?.total_tokens ?? 0,
401
403
  },
402
404
  finishReason: response.choices[0]?.finish_reason === 'stop' ? 'end_turn' :
403
405
  response.choices[0]?.finish_reason === 'length' ? 'max_tokens' : 'end_turn',
@@ -407,7 +409,7 @@ class OpenAIProvider {
407
409
  async *stream(messages, options = {}) {
408
410
  const body = {
409
411
  model: options.model || this.config.defaultModel,
410
- max_tokens: options.maxTokens || 4096,
412
+ max_tokens: options.maxTokens ?? 4096,
411
413
  temperature: options.temperature,
412
414
  top_p: options.topP,
413
415
  stop: options.stopSequences,
@@ -439,7 +441,7 @@ class OpenAIProvider {
439
441
  break;
440
442
  buffer += decoder.decode(value, { stream: true });
441
443
  const lines = buffer.split('\n');
442
- buffer = lines.pop() || '';
444
+ buffer = lines.pop() ?? '';
443
445
  for (const line of lines) {
444
446
  if (line.startsWith('data: ')) {
445
447
  const data = line.slice(6);
@@ -501,7 +503,8 @@ class OpenAIProvider {
501
503
  // Rate limit
502
504
  if (statusCode === 429) {
503
505
  const retryAfter = response.headers.get('retry-after');
504
- throw new retry_1.RateLimitError(`OpenAI rate limited: ${statusCode} - ${errorText}`, statusCode, retryAfter ? parseInt(retryAfter, 10) * 1000 : undefined);
506
+ const parsedRetry = retryAfter ? parseInt(retryAfter, 10) : NaN;
507
+ throw new retry_1.RateLimitError(`OpenAI rate limited: ${statusCode} - ${errorText}`, statusCode, !isNaN(parsedRetry) ? parsedRetry * 1000 : undefined);
505
508
  }
506
509
  // Server errors are transient
507
510
  if (statusCode >= 500) {
@@ -570,12 +573,12 @@ class OllamaProvider {
570
573
  }
571
574
  const data = await response.json();
572
575
  return {
573
- content: data.message?.content || '',
576
+ content: data.message?.content ?? '',
574
577
  model: data.model,
575
578
  usage: {
576
- inputTokens: data.prompt_eval_count || 0,
577
- outputTokens: data.eval_count || 0,
578
- totalTokens: (data.prompt_eval_count || 0) + (data.eval_count || 0),
579
+ inputTokens: data.prompt_eval_count ?? 0,
580
+ outputTokens: data.eval_count ?? 0,
581
+ totalTokens: (data.prompt_eval_count ?? 0) + (data.eval_count ?? 0),
579
582
  },
580
583
  finishReason: data.done_reason === 'stop' ? 'end_turn' : 'max_tokens',
581
584
  latency: Date.now() - startTime,
@@ -615,7 +618,7 @@ class OllamaProvider {
615
618
  break;
616
619
  buffer += decoder.decode(value, { stream: true });
617
620
  const lines = buffer.split('\n');
618
- buffer = lines.pop() || '';
621
+ buffer = lines.pop() ?? '';
619
622
  for (const line of lines) {
620
623
  if (!line.trim())
621
624
  continue;
@@ -668,9 +671,9 @@ class ProviderManager extends events_1.EventEmitter {
668
671
  fallbackChain = [];
669
672
  circuits = new Map();
670
673
  circuitConfig = {
671
- failureThreshold: Number(process.env.CLODDS_PROVIDER_CB_FAILURE_THRESHOLD || 3),
672
- cooldownMs: Number(process.env.CLODDS_PROVIDER_CB_COOLDOWN_MS || 60_000),
673
- successResetThreshold: Number(process.env.CLODDS_PROVIDER_CB_SUCCESS_RESET || 2),
674
+ failureThreshold: Number(process.env.CLODDS_PROVIDER_CB_FAILURE_THRESHOLD) || 3,
675
+ cooldownMs: Number(process.env.CLODDS_PROVIDER_CB_COOLDOWN_MS) || 60_000,
676
+ successResetThreshold: Number(process.env.CLODDS_PROVIDER_CB_SUCCESS_RESET) || 2,
674
677
  };
675
678
  getCircuit(provider) {
676
679
  let state = this.circuits.get(provider);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/providers/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/providers/index.ts"],"names":[],"mappings":"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"}
@@ -25,7 +25,7 @@ function getChatKey(message) {
25
25
  }
26
26
  function createMessageQueue(configInput) {
27
27
  const config = {
28
- mode: configInput?.queue?.mode || DEFAULT_CONFIG.mode,
28
+ mode: configInput?.queue?.mode ?? DEFAULT_CONFIG.mode,
29
29
  debounceMs: configInput?.queue?.debounceMs ?? DEFAULT_CONFIG.debounceMs,
30
30
  cap: configInput?.queue?.cap ?? DEFAULT_CONFIG.cap,
31
31
  responsePrefix: configInput?.responsePrefix,
@@ -41,7 +41,6 @@ export interface RemoteSession {
41
41
  export declare class TunnelManager extends EventEmitter {
42
42
  private tunnels;
43
43
  private counter;
44
- /** Create an SSH tunnel */
45
44
  createSshTunnel(config: {
46
45
  localPort: number;
47
46
  remoteHost: string;
@@ -50,19 +49,16 @@ export declare class TunnelManager extends EventEmitter {
50
49
  sshUser?: string;
51
50
  sshKey?: string;
52
51
  }): Promise<TunnelInfo>;
53
- /** Create an ngrok tunnel */
54
52
  createNgrokTunnel(config: {
55
53
  localPort: number;
56
54
  authToken?: string;
57
55
  subdomain?: string;
58
56
  region?: string;
59
57
  }): Promise<TunnelInfo>;
60
- /** Create a Cloudflare tunnel */
61
58
  createCloudflareTunnel(config: {
62
59
  localPort: number;
63
60
  hostname?: string;
64
61
  }): Promise<TunnelInfo>;
65
- /** Create a localtunnel */
66
62
  createLocaltunnel(config: {
67
63
  localPort: number;
68
64
  subdomain?: string;
@@ -114,7 +110,6 @@ export declare class PortForwarder {
114
110
  private forwards;
115
111
  private processes;
116
112
  private counter;
117
- /** Create a port forward using socat */
118
113
  forward(config: {
119
114
  localPort: number;
120
115
  remoteHost: string;
@@ -19,14 +19,30 @@ const child_process_1 = require("child_process");
19
19
  const util_1 = require("util");
20
20
  const logger_1 = require("../utils/logger");
21
21
  const execAsync = (0, util_1.promisify)(child_process_1.exec);
22
+ function validatePort(port) {
23
+ if (!Number.isInteger(port) || port < 1 || port > 65535) {
24
+ throw new Error(`Invalid port number: ${port}`);
25
+ }
26
+ }
27
+ function validateHostname(host) {
28
+ if (!/^[a-zA-Z0-9._-]+$/.test(host)) {
29
+ throw new Error(`Invalid hostname: ${host}`);
30
+ }
31
+ }
22
32
  // =============================================================================
23
33
  // TUNNEL MANAGER
24
34
  // =============================================================================
25
35
  class TunnelManager extends events_1.EventEmitter {
26
36
  tunnels = new Map();
27
37
  counter = 0;
28
- /** Create an SSH tunnel */
29
38
  async createSshTunnel(config) {
39
+ validatePort(config.localPort);
40
+ validatePort(config.remotePort);
41
+ validateHostname(config.remoteHost);
42
+ validateHostname(config.sshHost);
43
+ if (config.sshUser && !/^[a-zA-Z0-9._-]+$/.test(config.sshUser)) {
44
+ throw new Error(`Invalid SSH user: ${config.sshUser}`);
45
+ }
30
46
  const id = `ssh-${++this.counter}`;
31
47
  const args = [
32
48
  '-N', '-L',
@@ -78,8 +94,14 @@ class TunnelManager extends events_1.EventEmitter {
78
94
  throw error;
79
95
  }
80
96
  }
81
- /** Create an ngrok tunnel */
82
97
  async createNgrokTunnel(config) {
98
+ validatePort(config.localPort);
99
+ if (config.subdomain && !/^[a-zA-Z0-9-]+$/.test(config.subdomain)) {
100
+ throw new Error(`Invalid subdomain: ${config.subdomain}`);
101
+ }
102
+ if (config.region && !/^[a-z]{2}$/.test(config.region)) {
103
+ throw new Error(`Invalid region: ${config.region}`);
104
+ }
83
105
  const id = `ngrok-${++this.counter}`;
84
106
  const tunnel = {
85
107
  id,
@@ -141,8 +163,11 @@ class TunnelManager extends events_1.EventEmitter {
141
163
  throw new Error('ngrok not installed or failed to start');
142
164
  }
143
165
  }
144
- /** Create a Cloudflare tunnel */
145
166
  async createCloudflareTunnel(config) {
167
+ validatePort(config.localPort);
168
+ if (config.hostname && !/^[a-zA-Z0-9._-]+$/.test(config.hostname)) {
169
+ throw new Error(`Invalid hostname: ${config.hostname}`);
170
+ }
146
171
  const id = `cf-${++this.counter}`;
147
172
  const tunnel = {
148
173
  id,
@@ -165,13 +190,15 @@ class TunnelManager extends events_1.EventEmitter {
165
190
  tunnel.process = proc;
166
191
  let output = '';
167
192
  proc.stderr?.on('data', (data) => {
168
- output += data.toString();
169
- // Look for the URL in cloudflared output
193
+ if (output.length < 50000) {
194
+ output += data.toString();
195
+ }
170
196
  const match = output.match(/https:\/\/[^\s]+\.trycloudflare\.com/);
171
197
  if (match && !tunnel.publicUrl) {
172
198
  tunnel.publicUrl = match[0];
173
199
  tunnel.status = 'connected';
174
200
  this.emit('connect', tunnel);
201
+ output = '';
175
202
  }
176
203
  });
177
204
  proc.on('error', (err) => {
@@ -199,8 +226,11 @@ class TunnelManager extends events_1.EventEmitter {
199
226
  throw new Error('cloudflared not installed or failed to start');
200
227
  }
201
228
  }
202
- /** Create a localtunnel */
203
229
  async createLocaltunnel(config) {
230
+ validatePort(config.localPort);
231
+ if (config.subdomain && !/^[a-zA-Z0-9-]+$/.test(config.subdomain)) {
232
+ throw new Error(`Invalid subdomain: ${config.subdomain}`);
233
+ }
204
234
  const id = `lt-${++this.counter}`;
205
235
  const tunnel = {
206
236
  id,
@@ -371,10 +401,12 @@ class PortForwarder {
371
401
  forwards = new Map();
372
402
  processes = new Map();
373
403
  counter = 0;
374
- /** Create a port forward using socat */
375
404
  async forward(config) {
405
+ validatePort(config.localPort);
406
+ validatePort(config.remotePort);
407
+ validateHostname(config.remoteHost);
376
408
  const id = `pf-${++this.counter}`;
377
- const protocol = config.protocol || 'tcp';
409
+ const protocol = config.protocol ?? 'tcp';
378
410
  const pf = {
379
411
  id,
380
412
  localPort: config.localPort,
@@ -392,7 +424,7 @@ class PortForwarder {
392
424
  `${socatRemote}:${config.remoteHost}:${config.remotePort}`,
393
425
  ], {
394
426
  stdio: 'ignore',
395
- detached: true,
427
+ detached: false,
396
428
  });
397
429
  this.processes.set(id, proc);
398
430
  this.forwards.set(id, pf);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/remote/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/remote/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;;;AA4mBH,kDAEC;AAED,gEAEC;AAED,kDAEC;AApnBD,mCAAsC;AACtC,iDAA0D;AAC1D,+BAAiC;AACjC,4CAAyC;AAEzC,MAAM,SAAS,GAAG,IAAA,gBAAS,EAAC,oBAAI,CAAC,CAAC;AAElC,SAAS,YAAY,CAAC,IAAY;IAChC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,KAAK,EAAE,CAAC;QACxD,MAAM,IAAI,KAAK,CAAC,wBAAwB,IAAI,EAAE,CAAC,CAAC;IAClD,CAAC;AACH,CAAC;AAED,SAAS,gBAAgB,CAAC,IAAY;IACpC,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QACpC,MAAM,IAAI,KAAK,CAAC,qBAAqB,IAAI,EAAE,CAAC,CAAC;IAC/C,CAAC;AACH,CAAC;AAsCD,gFAAgF;AAChF,iBAAiB;AACjB,gFAAgF;AAEhF,MAAa,aAAc,SAAQ,qBAAY;IACrC,OAAO,GAA4B,IAAI,GAAG,EAAE,CAAC;IAC7C,OAAO,GAAG,CAAC,CAAC;IAEpB,KAAK,CAAC,eAAe,CAAC,MAOrB;QACC,YAAY,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC/B,YAAY,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QAChC,gBAAgB,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACpC,gBAAgB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACjC,IAAI,MAAM,CAAC,OAAO,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;YAChE,MAAM,IAAI,KAAK,CAAC,qBAAqB,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;QACzD,CAAC;QACD,MAAM,EAAE,GAAG,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC;QAEnC,MAAM,IAAI,GAAG;YACX,IAAI,EAAE,IAAI;YACV,GAAG,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,UAAU,IAAI,MAAM,CAAC,UAAU,EAAE;SAChE,CAAC;QAEF,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;QAClC,CAAC;QAED,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;YAClB,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;QACjC,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAE1B,MAAM,MAAM,GAAe;YACzB,EAAE;YACF,IAAI,EAAE,KAAK;YACX,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,MAAM,EAAE,YAAY;YACpB,SAAS,EAAE,IAAI,IAAI,EAAE;SACtB,CAAC;QAEF,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,IAAA,qBAAK,EAAC,KAAK,EAAE,IAAI,EAAE;gBAC9B,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC;gBACjC,QAAQ,EAAE,KAAK;aAChB,CAAC,CAAC;YAEH,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC;YAEtB,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;gBACvB,MAAM,CAAC,MAAM,GAAG,OAAO,CAAC;gBACxB,MAAM,CAAC,KAAK,GAAG,GAAG,CAAC,OAAO,CAAC;gBAC3B,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;YACzC,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;gBACvB,MAAM,CAAC,MAAM,GAAG,cAAc,CAAC;gBAC/B,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;YACxC,CAAC,CAAC,CAAC;YAEH,8BAA8B;YAC9B,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;YAExD,IAAI,MAAM,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;gBAC9B,MAAM,CAAC,MAAM,GAAG,WAAW,CAAC;gBAC5B,MAAM,CAAC,SAAS,GAAG,aAAa,MAAM,CAAC,SAAS,EAAE,CAAC;YACrD,CAAC;YAED,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;YAC7B,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;YAC7B,eAAM,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,EAAE,oBAAoB,CAAC,CAAC;YAEvE,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,MAAM,GAAG,OAAO,CAAC;YACxB,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;YAC7B,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,MAKvB;QACC,YAAY,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC/B,IAAI,MAAM,CAAC,SAAS,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC;YAClE,MAAM,IAAI,KAAK,CAAC,sBAAsB,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC;QAC5D,CAAC;QACD,IAAI,MAAM,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;YACvD,MAAM,IAAI,KAAK,CAAC,mBAAmB,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;QACtD,CAAC;QACD,MAAM,EAAE,GAAG,SAAS,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC;QAErC,MAAM,MAAM,GAAe;YACzB,EAAE;YACF,IAAI,EAAE,OAAO;YACb,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,MAAM,EAAE,YAAY;YACpB,SAAS,EAAE,IAAI,IAAI,EAAE;SACtB,CAAC;QAEF,IAAI,CAAC;YACH,8BAA8B;YAC9B,MAAM,SAAS,CAAC,aAAa,CAAC,CAAC;YAE/B,MAAM,IAAI,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;YAEhD,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;gBACrB,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;YAC7C,CAAC;YAED,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;gBAClB,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;YACvC,CAAC;YAED,MAAM,IAAI,GAAG,IAAA,qBAAK,EAAC,OAAO,EAAE,IAAI,EAAE;gBAChC,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC;gBACjC,QAAQ,EAAE,KAAK;gBACf,GAAG,EAAE;oBACH,GAAG,OAAO,CAAC,GAAG;oBACd,eAAe,EAAE,MAAM,CAAC,SAAS;iBAClC;aACF,CAAC,CAAC;YAEH,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC;YAEtB,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;gBACvB,MAAM,CAAC,MAAM,GAAG,OAAO,CAAC;gBACxB,MAAM,CAAC,KAAK,GAAG,GAAG,CAAC,OAAO,CAAC;gBAC3B,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;YACzC,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;gBACvB,MAAM,CAAC,MAAM,GAAG,cAAc,CAAC;gBAC/B,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;YACxC,CAAC,CAAC,CAAC;YAEH,0CAA0C;YAC1C,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;YAExD,2CAA2C;YAC3C,IAAI,CAAC;gBACH,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,SAAS,CAAC,2CAA2C,CAAC,CAAC;gBAChF,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;gBAChC,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC5C,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC;gBAChD,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,0BAA0B;YAC5B,CAAC;YAED,MAAM,CAAC,MAAM,GAAG,WAAW,CAAC;YAC5B,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;YAC7B,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;YAC7B,eAAM,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,EAAE,sBAAsB,CAAC,CAAC;YAEzE,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,MAAM,GAAG,OAAO,CAAC;YACxB,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;YAC7B,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;QAC5D,CAAC;IACH,CAAC;IAED,KAAK,CAAC,sBAAsB,CAAC,MAG5B;QACC,YAAY,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC/B,IAAI,MAAM,CAAC,QAAQ,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;YAClE,MAAM,IAAI,KAAK,CAAC,qBAAqB,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC1D,CAAC;QACD,MAAM,EAAE,GAAG,MAAM,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC;QAElC,MAAM,MAAM,GAAe;YACzB,EAAE;YACF,IAAI,EAAE,YAAY;YAClB,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,MAAM,EAAE,YAAY;YACpB,SAAS,EAAE,IAAI,IAAI,EAAE;SACtB,CAAC;QAEF,IAAI,CAAC;YACH,oCAAoC;YACpC,MAAM,SAAS,CAAC,mBAAmB,CAAC,CAAC;YAErC,MAAM,IAAI,GAAG,CAAC,QAAQ,EAAE,OAAO,EAAE,oBAAoB,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC;YAEzE,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;gBACpB,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;YAC3C,CAAC;YAED,MAAM,IAAI,GAAG,IAAA,qBAAK,EAAC,aAAa,EAAE,IAAI,EAAE;gBACtC,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC;gBACjC,QAAQ,EAAE,KAAK;aAChB,CAAC,CAAC;YAEH,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC;YAEtB,IAAI,MAAM,GAAG,EAAE,CAAC;YAEhB,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;gBAC/B,IAAI,MAAM,CAAC,MAAM,GAAG,KAAK,EAAE,CAAC;oBAC1B,MAAM,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAC5B,CAAC;gBACD,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,sCAAsC,CAAC,CAAC;gBACnE,IAAI,KAAK,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;oBAC/B,MAAM,CAAC,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;oBAC5B,MAAM,CAAC,MAAM,GAAG,WAAW,CAAC;oBAC5B,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;oBAC7B,MAAM,GAAG,EAAE,CAAC;gBACd,CAAC;YACH,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;gBACvB,MAAM,CAAC,MAAM,GAAG,OAAO,CAAC;gBACxB,MAAM,CAAC,KAAK,GAAG,GAAG,CAAC,OAAO,CAAC;gBAC3B,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;YACzC,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;gBACvB,MAAM,CAAC,MAAM,GAAG,cAAc,CAAC;gBAC/B,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;YACxC,CAAC,CAAC,CAAC;YAEH,gCAAgC;YAChC,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;YAExD,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;gBACtB,MAAM,CAAC,MAAM,GAAG,WAAW,CAAC;gBAC5B,MAAM,CAAC,SAAS,GAAG,YAAY,CAAC;YAClC,CAAC;YAED,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;YAC7B,eAAM,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,EAAE,2BAA2B,CAAC,CAAC;YAE9E,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,MAAM,GAAG,OAAO,CAAC;YACxB,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;YAC7B,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;QAClE,CAAC;IACH,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,MAGvB;QACC,YAAY,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC/B,IAAI,MAAM,CAAC,SAAS,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC;YAClE,MAAM,IAAI,KAAK,CAAC,sBAAsB,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC;QAC5D,CAAC;QACD,MAAM,EAAE,GAAG,MAAM,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC;QAElC,MAAM,MAAM,GAAe;YACzB,EAAE;YACF,IAAI,EAAE,aAAa;YACnB,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,MAAM,EAAE,YAAY;YACpB,SAAS,EAAE,IAAI,IAAI,EAAE;SACtB,CAAC;QAEF,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;YAElD,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;gBACrB,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;YAC7C,CAAC;YAED,MAAM,IAAI,GAAG,IAAA,qBAAK,EAAC,KAAK,EAAE,CAAC,aAAa,EAAE,GAAG,IAAI,CAAC,EAAE;gBAClD,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC;gBACjC,QAAQ,EAAE,KAAK;aAChB,CAAC,CAAC;YAEH,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC;YAEtB,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;gBAC/B,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAC/B,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;gBACzD,IAAI,KAAK,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;oBAC/B,MAAM,CAAC,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;oBAC5B,MAAM,CAAC,MAAM,GAAG,WAAW,CAAC;oBAC5B,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;gBAC/B,CAAC;YACH,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;gBACvB,MAAM,CAAC,MAAM,GAAG,OAAO,CAAC;gBACxB,MAAM,CAAC,KAAK,GAAG,GAAG,CAAC,OAAO,CAAC;gBAC3B,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;YACzC,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;gBACvB,MAAM,CAAC,MAAM,GAAG,cAAc,CAAC;gBAC/B,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;YACxC,CAAC,CAAC,CAAC;YAEH,gCAAgC;YAChC,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;YAExD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;YAC7B,eAAM,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,EAAE,qBAAqB,CAAC,CAAC;YAExE,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,MAAM,GAAG,OAAO,CAAC;YACxB,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;YAC7B,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED,qBAAqB;IACrB,KAAK,CAAC,EAAU;QACd,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACpC,IAAI,MAAM,EAAE,CAAC;YACX,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;YACxB,CAAC;YACD,MAAM,CAAC,MAAM,GAAG,cAAc,CAAC;YAC/B,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACxB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;YAC3B,eAAM,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,eAAe,CAAC,CAAC;QACvC,CAAC;IACH,CAAC;IAED,wBAAwB;IACxB,QAAQ;QACN,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;YACrC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACjB,CAAC;IACH,CAAC;IAED,uBAAuB;IACvB,GAAG,CAAC,EAAU;QACZ,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC9B,CAAC;IAED,uBAAuB;IACvB,IAAI;QACF,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAC3C,CAAC;IAED,yBAAyB;IACzB,SAAS;QACP,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC;IAC3D,CAAC;CACF;AA/VD,sCA+VC;AAED,gFAAgF;AAChF,yBAAyB;AACzB,gFAAgF;AAEhF,MAAa,oBAAqB,SAAQ,qBAAY;IAC5C,QAAQ,GAA+B,IAAI,GAAG,EAAE,CAAC;IACjD,aAAa,CAAgB;IAErC,YAAY,aAA6B;QACvC,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,aAAa,GAAG,aAAa,IAAI,IAAI,aAAa,EAAE,CAAC;IAC5D,CAAC;IAED,uDAAuD;IACvD,KAAK,CAAC,aAAa,CAAC,MAKnB;QACC,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,IAAI,YAAY,CAAC;QAErD,IAAI,MAAkB,CAAC;QAEvB,QAAQ,UAAU,EAAE,CAAC;YACnB,KAAK,OAAO;gBACV,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC;oBAClD,SAAS,EAAE,MAAM,CAAC,SAAS;oBAC3B,SAAS,EAAE,MAAM,CAAC,YAAY,EAAE,SAAS;oBACzC,SAAS,EAAE,MAAM,CAAC,YAAY,EAAE,SAAS;oBACzC,MAAM,EAAE,MAAM,CAAC,YAAY,EAAE,MAAM;iBACpC,CAAC,CAAC;gBACH,MAAM;YACR,KAAK,YAAY;gBACf,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,sBAAsB,CAAC;oBACvD,SAAS,EAAE,MAAM,CAAC,SAAS;iBAC5B,CAAC,CAAC;gBACH,MAAM;YACR,KAAK,aAAa;gBAChB,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC;oBAClD,SAAS,EAAE,MAAM,CAAC,SAAS;oBAC3B,SAAS,EAAE,MAAM,CAAC,YAAY,EAAE,SAAS;iBAC1C,CAAC,CAAC;gBACH,MAAM;YACR;gBACE,MAAM,IAAI,KAAK,CAAC,4BAA4B,UAAU,EAAE,CAAC,CAAC;QAC9D,CAAC;QAED,MAAM,OAAO,GAAkB;YAC7B,EAAE,EAAE,MAAM,CAAC,EAAE;YACb,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,MAAM;YACN,UAAU,EAAE,MAAM,CAAC,SAAS,IAAI,aAAa,MAAM,CAAC,SAAS,EAAE;YAC/D,SAAS,EAAE,IAAI,IAAI,EAAE;YACrB,YAAY,EAAE,IAAI,IAAI,EAAE;SACzB,CAAC;QAEF,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;QACvC,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC;QAErC,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,8BAA8B;IAC9B,KAAK,CAAC,EAAU;QACd,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACtC,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO,CAAC,YAAY,GAAG,IAAI,IAAI,EAAE,CAAC;QACpC,CAAC;IACH,CAAC;IAED,sBAAsB;IACtB,KAAK,CAAC,EAAU;QACd,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACtC,IAAI,OAAO,EAAE,CAAC;YACZ,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAC5C,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACzB,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;QACrC,CAAC;IACH,CAAC;IAED,yBAAyB;IACzB,QAAQ;QACN,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC;YACtC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACjB,CAAC;IACH,CAAC;IAED,wBAAwB;IACxB,GAAG,CAAC,EAAU;QACZ,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC/B,CAAC;IAED,wBAAwB;IACxB,IAAI;QACF,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;IAC5C,CAAC;IAED,yBAAyB;IACzB,gBAAgB;QACd,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;CACF;AAlGD,oDAkGC;AAeD,MAAa,aAAa;IAChB,QAAQ,GAA6B,IAAI,GAAG,EAAE,CAAC;IAC/C,SAAS,GAA8B,IAAI,GAAG,EAAE,CAAC;IACjD,OAAO,GAAG,CAAC,CAAC;IAEpB,KAAK,CAAC,OAAO,CAAC,MAKb;QACC,YAAY,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC/B,YAAY,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QAChC,gBAAgB,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACpC,MAAM,EAAE,GAAG,MAAM,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC;QAClC,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,IAAI,KAAK,CAAC;QAE1C,MAAM,EAAE,GAAgB;YACtB,EAAE;YACF,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,QAAQ;YACR,MAAM,EAAE,QAAQ;SACjB,CAAC;QAEF,IAAI,CAAC;YACH,gCAAgC;YAChC,MAAM,UAAU,GAAG,QAAQ,KAAK,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,cAAc,CAAC;YACtE,MAAM,WAAW,GAAG,QAAQ,KAAK,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC;YAE9D,MAAM,IAAI,GAAG,IAAA,qBAAK,EAAC,OAAO,EAAE;gBAC1B,GAAG,UAAU,IAAI,MAAM,CAAC,SAAS,iBAAiB;gBAClD,GAAG,WAAW,IAAI,MAAM,CAAC,UAAU,IAAI,MAAM,CAAC,UAAU,EAAE;aAC3D,EAAE;gBACD,KAAK,EAAE,QAAQ;gBACf,QAAQ,EAAE,KAAK;aAChB,CAAC,CAAC;YAEH,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;YAC7B,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;YAE1B,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE;gBACnB,EAAE,CAAC,MAAM,GAAG,UAAU,CAAC;YACzB,CAAC,CAAC,CAAC;YAEH,eAAM,CAAC,IAAI,CAAC;gBACV,EAAE;gBACF,KAAK,EAAE,MAAM,CAAC,SAAS;gBACvB,MAAM,EAAE,GAAG,MAAM,CAAC,UAAU,IAAI,MAAM,CAAC,UAAU,EAAE;aACpD,EAAE,sBAAsB,CAAC,CAAC;YAE3B,OAAO,EAAE,CAAC;QACZ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,kCAAkC,KAAK,EAAE,CAAC,CAAC;QAC7D,CAAC;IACH,CAAC;IAED,0BAA0B;IAC1B,IAAI,CAAC,EAAU;QACb,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACpC,IAAI,IAAI,EAAE,CAAC;YACT,IAAI,CAAC,IAAI,EAAE,CAAC;YACZ,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAC5B,CAAC;QACD,MAAM,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACjC,IAAI,EAAE,EAAE,CAAC;YACP,EAAE,CAAC,MAAM,GAAG,UAAU,CAAC;YACvB,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAC3B,CAAC;IACH,CAAC;IAED,6BAA6B;IAC7B,OAAO;QACL,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC;YACtC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAChB,CAAC;IACH,CAAC;IAED,6BAA6B;IAC7B,IAAI;QACF,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;IAC5C,CAAC;CACF;AAnFD,sCAmFC;AAED,gFAAgF;AAChF,UAAU;AACV,gFAAgF;AAEhF,SAAgB,mBAAmB;IACjC,OAAO,IAAI,aAAa,EAAE,CAAC;AAC7B,CAAC;AAED,SAAgB,0BAA0B,CAAC,aAA6B;IACtE,OAAO,IAAI,oBAAoB,CAAC,aAAa,CAAC,CAAC;AACjD,CAAC;AAED,SAAgB,mBAAmB;IACjC,OAAO,IAAI,aAAa,EAAE,CAAC;AAC7B,CAAC;AAED,gFAAgF;AAChF,oBAAoB;AACpB,gFAAgF;AAEnE,QAAA,OAAO,GAAG,IAAI,aAAa,EAAE,CAAC;AAC9B,QAAA,cAAc,GAAG,IAAI,oBAAoB,CAAC,eAAO,CAAC,CAAC;AACnD,QAAA,aAAa,GAAG,IAAI,aAAa,EAAE,CAAC"}
@@ -174,6 +174,15 @@ function createCircuitBreaker(config) {
174
174
  function runMonitoringCheck() {
175
175
  if (!cfg.enabled || state.tripped)
176
176
  return;
177
+ if (marketTrips.size > 1000) {
178
+ const entries = [...marketTrips.entries()];
179
+ const cutoff = Date.now() - cfg.cooldownMs;
180
+ for (const [key, event] of entries) {
181
+ if (event.timestamp.getTime() < cutoff) {
182
+ marketTrips.delete(key);
183
+ }
184
+ }
185
+ }
177
186
  const tripEvent = checkAllConditions();
178
187
  if (tripEvent)
179
188
  tripBreaker(tripEvent);
@@ -211,11 +220,10 @@ function createCircuitBreaker(config) {
211
220
  else {
212
221
  state.consecutiveFailures++;
213
222
  }
214
- if (result.pnl !== undefined && result.pnl < 0) {
215
- const lossPct = Math.abs(result.pnl);
216
- state.losses.hourly -= lossPct;
217
- state.losses.daily -= lossPct;
218
- state.losses.weekly -= lossPct;
223
+ if (result.pnl !== undefined) {
224
+ state.losses.hourly += result.pnl;
225
+ state.losses.daily += result.pnl;
226
+ state.losses.weekly += result.pnl;
219
227
  }
220
228
  if (!state.tripped) {
221
229
  const tripEvent = checkAllConditions();