@jsonstudio/rcc 0.89.2239 → 0.90.89

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 (338) hide show
  1. package/README.md +27 -0
  2. package/dist/build-info.js +2 -2
  3. package/dist/build-info.js.map +1 -1
  4. package/dist/cli/commands/claude.js +4 -8
  5. package/dist/cli/commands/claude.js.map +1 -1
  6. package/dist/cli/commands/codex.js +6 -3
  7. package/dist/cli/commands/codex.js.map +1 -1
  8. package/dist/cli/commands/guardian-daemon.d.ts +2 -0
  9. package/dist/cli/commands/guardian-daemon.js +299 -0
  10. package/dist/cli/commands/guardian-daemon.js.map +1 -0
  11. package/dist/cli/commands/init/camoufox.js +1 -1
  12. package/dist/cli/commands/init/camoufox.js.map +1 -1
  13. package/dist/cli/commands/launcher/index.d.ts +1 -1
  14. package/dist/cli/commands/launcher/types.d.ts +7 -1
  15. package/dist/cli/commands/launcher/utils.d.ts +4 -1
  16. package/dist/cli/commands/launcher/utils.js +18 -8
  17. package/dist/cli/commands/launcher/utils.js.map +1 -1
  18. package/dist/cli/commands/launcher-kernel.d.ts +1 -1
  19. package/dist/cli/commands/launcher-kernel.js +608 -249
  20. package/dist/cli/commands/launcher-kernel.js.map +1 -1
  21. package/dist/cli/commands/port.js +28 -8
  22. package/dist/cli/commands/port.js.map +1 -1
  23. package/dist/cli/commands/restart.d.ts +4 -0
  24. package/dist/cli/commands/restart.js +91 -42
  25. package/dist/cli/commands/restart.js.map +1 -1
  26. package/dist/cli/commands/{clock-admin.d.ts → session-admin.d.ts} +2 -2
  27. package/dist/cli/commands/{clock-admin.js → session-admin.js} +17 -17
  28. package/dist/cli/commands/session-admin.js.map +1 -0
  29. package/dist/cli/commands/{tmux-inject.d.ts → session-inject.d.ts} +2 -2
  30. package/dist/cli/commands/{tmux-inject.js → session-inject.js} +12 -12
  31. package/dist/cli/commands/session-inject.js.map +1 -0
  32. package/dist/cli/commands/start-types.d.ts +4 -0
  33. package/dist/cli/commands/start-utils.d.ts +1 -0
  34. package/dist/cli/commands/start-utils.js +3 -0
  35. package/dist/cli/commands/start-utils.js.map +1 -1
  36. package/dist/cli/commands/start.js +122 -72
  37. package/dist/cli/commands/start.js.map +1 -1
  38. package/dist/cli/commands/stop.d.ts +3 -0
  39. package/dist/cli/commands/stop.js +30 -63
  40. package/dist/cli/commands/stop.js.map +1 -1
  41. package/dist/cli/config/init-provider-catalog.js +8 -3
  42. package/dist/cli/config/init-provider-catalog.js.map +1 -1
  43. package/dist/cli/guardian/client.d.ts +38 -0
  44. package/dist/cli/guardian/client.js +237 -0
  45. package/dist/cli/guardian/client.js.map +1 -0
  46. package/dist/cli/guardian/paths.d.ts +7 -0
  47. package/dist/cli/guardian/paths.js +13 -0
  48. package/dist/cli/guardian/paths.js.map +1 -0
  49. package/dist/cli/guardian/types.d.ts +30 -0
  50. package/dist/cli/guardian/types.js +2 -0
  51. package/dist/cli/guardian/types.js.map +1 -0
  52. package/dist/cli/register/guardian-daemon-command.d.ts +2 -0
  53. package/dist/cli/register/guardian-daemon-command.js +5 -0
  54. package/dist/cli/register/guardian-daemon-command.js.map +1 -0
  55. package/dist/cli/register/session-admin-command.d.ts +3 -0
  56. package/dist/cli/register/session-admin-command.js +5 -0
  57. package/dist/cli/register/session-admin-command.js.map +1 -0
  58. package/dist/cli/register/session-inject-command.d.ts +3 -0
  59. package/dist/cli/register/session-inject-command.js +5 -0
  60. package/dist/cli/register/session-inject-command.js.map +1 -0
  61. package/dist/cli/server/port-utils.js +57 -1
  62. package/dist/cli/server/port-utils.js.map +1 -1
  63. package/dist/cli.js +52 -4
  64. package/dist/cli.js.map +1 -1
  65. package/dist/commands/oauth.js +6 -6
  66. package/dist/commands/oauth.js.map +1 -1
  67. package/dist/config/provider-v2-loader.js +18 -3
  68. package/dist/config/provider-v2-loader.js.map +1 -1
  69. package/dist/config/routecodex-config-loader.js +184 -9
  70. package/dist/config/routecodex-config-loader.js.map +1 -1
  71. package/dist/config/unified-config-paths.js +22 -0
  72. package/dist/config/unified-config-paths.js.map +1 -1
  73. package/dist/config/virtual-router-builder.js +18 -5
  74. package/dist/config/virtual-router-builder.js.map +1 -1
  75. package/dist/config/virtual-router-types.js +20 -5
  76. package/dist/config/virtual-router-types.js.map +1 -1
  77. package/dist/daemon-admin-ui/assets/index-C8vP_c5E.js +15 -0
  78. package/dist/daemon-admin-ui/assets/index-DjIoHmNv.css +1 -0
  79. package/dist/daemon-admin-ui/index.html +13 -0
  80. package/dist/docs/daemon-admin-ui.html +334 -63
  81. package/dist/index.d.ts +9 -0
  82. package/dist/index.js +268 -10
  83. package/dist/index.js.map +1 -1
  84. package/dist/manager/modules/quota/provider-key-normalization.js +1 -10
  85. package/dist/manager/modules/quota/provider-key-normalization.js.map +1 -1
  86. package/dist/manager/modules/quota/provider-quota-daemon.error-helpers.d.ts +1 -0
  87. package/dist/manager/modules/quota/provider-quota-daemon.error-helpers.js +36 -0
  88. package/dist/manager/modules/quota/provider-quota-daemon.error-helpers.js.map +1 -1
  89. package/dist/manager/modules/quota/provider-quota-daemon.events.js +89 -49
  90. package/dist/manager/modules/quota/provider-quota-daemon.events.js.map +1 -1
  91. package/dist/manager/modules/quota/provider-quota-daemon.model-backoff.js +2 -16
  92. package/dist/manager/modules/quota/provider-quota-daemon.model-backoff.js.map +1 -1
  93. package/dist/manager/modules/token/index.d.ts +1 -0
  94. package/dist/manager/modules/token/index.js +6 -1
  95. package/dist/manager/modules/token/index.js.map +1 -1
  96. package/dist/manager/types.d.ts +1 -0
  97. package/dist/modules/llmswitch/bridge/state-integrations.js +1 -1
  98. package/dist/modules/llmswitch/bridge/state-integrations.js.map +1 -1
  99. package/dist/providers/auth/antigravity-user-agent.js +78 -31
  100. package/dist/providers/auth/antigravity-user-agent.js.map +1 -1
  101. package/dist/providers/auth/gemini-cli-userinfo-helper.js +94 -63
  102. package/dist/providers/auth/gemini-cli-userinfo-helper.js.map +1 -1
  103. package/dist/providers/auth/iflow-userinfo-helper.js +1 -1
  104. package/dist/providers/auth/iflow-userinfo-helper.js.map +1 -1
  105. package/dist/providers/auth/oauth-error-message.d.ts +1 -0
  106. package/dist/providers/auth/oauth-error-message.js +44 -0
  107. package/dist/providers/auth/oauth-error-message.js.map +1 -0
  108. package/dist/providers/auth/oauth-lifecycle/error-detection.js +42 -8
  109. package/dist/providers/auth/oauth-lifecycle/error-detection.js.map +1 -1
  110. package/dist/providers/auth/oauth-lifecycle/token-io.d.ts +1 -0
  111. package/dist/providers/auth/oauth-lifecycle/token-io.js +12 -0
  112. package/dist/providers/auth/oauth-lifecycle/token-io.js.map +1 -1
  113. package/dist/providers/auth/oauth-lifecycle.js +502 -87
  114. package/dist/providers/auth/oauth-lifecycle.js.map +1 -1
  115. package/dist/providers/auth/oauth-repair-env.js +3 -5
  116. package/dist/providers/auth/oauth-repair-env.js.map +1 -1
  117. package/dist/providers/auth/oauth-utils/error-extraction.js +42 -8
  118. package/dist/providers/auth/oauth-utils/error-extraction.js.map +1 -1
  119. package/dist/providers/core/config/camoufox-actions.d.ts +31 -0
  120. package/dist/providers/core/config/camoufox-actions.js +470 -0
  121. package/dist/providers/core/config/camoufox-actions.js.map +1 -0
  122. package/dist/providers/core/config/camoufox-launcher.d.ts +3 -0
  123. package/dist/providers/core/config/camoufox-launcher.js +553 -159
  124. package/dist/providers/core/config/camoufox-launcher.js.map +1 -1
  125. package/dist/providers/core/config/oauth-flows.js +6 -44
  126. package/dist/providers/core/config/oauth-flows.js.map +1 -1
  127. package/dist/providers/core/config/provider-oauth-configs.js +51 -7
  128. package/dist/providers/core/config/provider-oauth-configs.js.map +1 -1
  129. package/dist/providers/core/config/service-profiles.js +2 -2
  130. package/dist/providers/core/config/service-profiles.js.map +1 -1
  131. package/dist/providers/core/runtime/base-provider-runtime-helpers.js +15 -2
  132. package/dist/providers/core/runtime/base-provider-runtime-helpers.js.map +1 -1
  133. package/dist/providers/core/runtime/provider-error-classifier.js +32 -15
  134. package/dist/providers/core/runtime/provider-error-classifier.js.map +1 -1
  135. package/dist/providers/core/runtime/provider-family-profile-utils.js +1 -1
  136. package/dist/providers/core/runtime/provider-family-profile-utils.js.map +1 -1
  137. package/dist/providers/core/runtime/provider-response-postprocessor.js +61 -14
  138. package/dist/providers/core/runtime/provider-response-postprocessor.js.map +1 -1
  139. package/dist/providers/core/strategies/oauth-auth-code-flow.d.ts +1 -0
  140. package/dist/providers/core/strategies/oauth-auth-code-flow.js +124 -19
  141. package/dist/providers/core/strategies/oauth-auth-code-flow.js.map +1 -1
  142. package/dist/providers/core/strategies/oauth-device-flow.js +32 -6
  143. package/dist/providers/core/strategies/oauth-device-flow.js.map +1 -1
  144. package/dist/providers/core/utils/provider-error-reporter.js +51 -0
  145. package/dist/providers/core/utils/provider-error-reporter.js.map +1 -1
  146. package/dist/providers/profile/families/iflow-profile.js +83 -10
  147. package/dist/providers/profile/families/iflow-profile.js.map +1 -1
  148. package/dist/scripts/camoufox/launch-auth.mjs +112 -5
  149. package/dist/server/handlers/config-admin-handler.js +9 -2
  150. package/dist/server/handlers/config-admin-handler.js.map +1 -1
  151. package/dist/server/handlers/handler-response-utils.js +3 -6
  152. package/dist/server/handlers/handler-response-utils.js.map +1 -1
  153. package/dist/server/handlers/handler-utils.js +14 -17
  154. package/dist/server/handlers/handler-utils.js.map +1 -1
  155. package/dist/server/handlers/logging.js +3 -4
  156. package/dist/server/handlers/logging.js.map +1 -1
  157. package/dist/server/handlers/responses-handler.js +5 -3
  158. package/dist/server/handlers/responses-handler.js.map +1 -1
  159. package/dist/server/runtime/http-server/daemon-admin/auth-handler.js +5 -3
  160. package/dist/server/runtime/http-server/daemon-admin/auth-handler.js.map +1 -1
  161. package/dist/server/runtime/http-server/daemon-admin/control-handler.js +104 -15
  162. package/dist/server/runtime/http-server/daemon-admin/control-handler.js.map +1 -1
  163. package/dist/server/runtime/http-server/daemon-admin/credentials-handler.js +2 -2
  164. package/dist/server/runtime/http-server/daemon-admin/credentials-handler.js.map +1 -1
  165. package/dist/server/runtime/http-server/daemon-admin/providers-handler-routing-utils.d.ts +24 -0
  166. package/dist/server/runtime/http-server/daemon-admin/providers-handler-routing-utils.js +316 -70
  167. package/dist/server/runtime/http-server/daemon-admin/providers-handler-routing-utils.js.map +1 -1
  168. package/dist/server/runtime/http-server/daemon-admin/providers-handler.js +190 -1
  169. package/dist/server/runtime/http-server/daemon-admin/providers-handler.js.map +1 -1
  170. package/dist/server/runtime/http-server/daemon-admin/routing-policy.d.ts +1 -1
  171. package/dist/server/runtime/http-server/daemon-admin/routing-policy.js +21 -32
  172. package/dist/server/runtime/http-server/daemon-admin/routing-policy.js.map +1 -1
  173. package/dist/server/runtime/http-server/daemon-admin/stats-handler.js +2 -0
  174. package/dist/server/runtime/http-server/daemon-admin/stats-handler.js.map +1 -1
  175. package/dist/server/runtime/http-server/daemon-admin-routes.d.ts +8 -1
  176. package/dist/server/runtime/http-server/daemon-admin-routes.js +30 -0
  177. package/dist/server/runtime/http-server/daemon-admin-routes.js.map +1 -1
  178. package/dist/server/runtime/http-server/executor/client-injection-flow.d.ts +14 -0
  179. package/dist/server/runtime/http-server/executor/client-injection-flow.js +297 -0
  180. package/dist/server/runtime/http-server/executor/client-injection-flow.js.map +1 -0
  181. package/dist/server/runtime/http-server/executor/index.d.ts +1 -1
  182. package/dist/server/runtime/http-server/executor/index.js +1 -1
  183. package/dist/server/runtime/http-server/executor/index.js.map +1 -1
  184. package/dist/server/runtime/http-server/executor/provider-response-converter.js +281 -70
  185. package/dist/server/runtime/http-server/executor/provider-response-converter.js.map +1 -1
  186. package/dist/server/runtime/http-server/executor/provider-runtime-resolver.js +8 -6
  187. package/dist/server/runtime/http-server/executor/provider-runtime-resolver.js.map +1 -1
  188. package/dist/server/runtime/http-server/executor/request-executor-core-utils.d.ts +1 -0
  189. package/dist/server/runtime/http-server/executor/request-executor-core-utils.js +12 -0
  190. package/dist/server/runtime/http-server/executor/request-executor-core-utils.js.map +1 -1
  191. package/dist/server/runtime/http-server/executor/request-retry-helpers.d.ts +1 -1
  192. package/dist/server/runtime/http-server/executor/request-retry-helpers.js +23 -19
  193. package/dist/server/runtime/http-server/executor/request-retry-helpers.js.map +1 -1
  194. package/dist/server/runtime/http-server/executor/retry-engine.d.ts +2 -2
  195. package/dist/server/runtime/http-server/executor/retry-engine.js +2 -2
  196. package/dist/server/runtime/http-server/executor/retry-engine.js.map +1 -1
  197. package/dist/server/runtime/http-server/executor/sse-error-handler.d.ts +1 -0
  198. package/dist/server/runtime/http-server/executor/sse-error-handler.js +13 -2
  199. package/dist/server/runtime/http-server/executor/sse-error-handler.js.map +1 -1
  200. package/dist/server/runtime/http-server/executor/usage-aggregator.d.ts +0 -12
  201. package/dist/server/runtime/http-server/executor/usage-aggregator.js +89 -90
  202. package/dist/server/runtime/http-server/executor/usage-aggregator.js.map +1 -1
  203. package/dist/server/runtime/http-server/executor-metadata.js +318 -17
  204. package/dist/server/runtime/http-server/executor-metadata.js.map +1 -1
  205. package/dist/server/runtime/http-server/executor-provider.d.ts +1 -0
  206. package/dist/server/runtime/http-server/executor-provider.js +5 -1
  207. package/dist/server/runtime/http-server/executor-provider.js.map +1 -1
  208. package/dist/server/runtime/http-server/executor-response.d.ts +1 -0
  209. package/dist/server/runtime/http-server/executor-response.js +52 -58
  210. package/dist/server/runtime/http-server/executor-response.js.map +1 -1
  211. package/dist/server/runtime/http-server/http-server-bootstrap.js +50 -6
  212. package/dist/server/runtime/http-server/http-server-bootstrap.js.map +1 -1
  213. package/dist/server/runtime/http-server/http-server-lifecycle.js +6 -5
  214. package/dist/server/runtime/http-server/http-server-lifecycle.js.map +1 -1
  215. package/dist/server/runtime/http-server/http-server-runtime-setup.js +1 -1
  216. package/dist/server/runtime/http-server/http-server-runtime-setup.js.map +1 -1
  217. package/dist/server/runtime/http-server/http-server-session-daemon.d.ts +6 -0
  218. package/dist/server/runtime/http-server/http-server-session-daemon.js +404 -0
  219. package/dist/server/runtime/http-server/http-server-session-daemon.js.map +1 -0
  220. package/dist/server/runtime/http-server/hub-shadow-compare.js +1 -1
  221. package/dist/server/runtime/http-server/hub-shadow-compare.js.map +1 -1
  222. package/dist/server/runtime/http-server/index.d.ts +11 -10
  223. package/dist/server/runtime/http-server/index.js +21 -20
  224. package/dist/server/runtime/http-server/index.js.map +1 -1
  225. package/dist/server/runtime/http-server/managed-process-probe.js +1 -1
  226. package/dist/server/runtime/http-server/managed-process-probe.js.map +1 -1
  227. package/dist/server/runtime/http-server/middleware.js +91 -5
  228. package/dist/server/runtime/http-server/middleware.js.map +1 -1
  229. package/dist/server/runtime/http-server/request-executor.js +19 -9
  230. package/dist/server/runtime/http-server/request-executor.js.map +1 -1
  231. package/dist/server/runtime/http-server/routes.d.ts +2 -1
  232. package/dist/server/runtime/http-server/routes.js +7 -5
  233. package/dist/server/runtime/http-server/routes.js.map +1 -1
  234. package/dist/server/runtime/http-server/{clock-client-reaper.d.ts → session-client-reaper.d.ts} +6 -6
  235. package/dist/server/runtime/http-server/{clock-client-reaper.js → session-client-reaper.js} +26 -49
  236. package/dist/server/runtime/http-server/session-client-reaper.js.map +1 -0
  237. package/dist/server/runtime/http-server/{clock-client-registry-utils.d.ts → session-client-registry-utils.d.ts} +14 -10
  238. package/dist/server/runtime/http-server/{clock-client-registry-utils.js → session-client-registry-utils.js} +77 -19
  239. package/dist/server/runtime/http-server/session-client-registry-utils.js.map +1 -0
  240. package/dist/server/runtime/http-server/{clock-client-registry.d.ts → session-client-registry.d.ts} +26 -11
  241. package/dist/server/runtime/http-server/{clock-client-registry.js → session-client-registry.js} +305 -11
  242. package/dist/server/runtime/http-server/session-client-registry.js.map +1 -0
  243. package/dist/server/runtime/http-server/{clock-client-route-utils.d.ts → session-client-route-utils.d.ts} +1 -1
  244. package/dist/server/runtime/http-server/{clock-client-route-utils.js → session-client-route-utils.js} +4 -4
  245. package/dist/server/runtime/http-server/session-client-route-utils.js.map +1 -0
  246. package/dist/server/runtime/http-server/session-client-routes.d.ts +2 -0
  247. package/dist/server/runtime/http-server/{clock-client-routes.js → session-client-routes.js} +107 -59
  248. package/dist/server/runtime/http-server/session-client-routes.js.map +1 -0
  249. package/dist/server/runtime/http-server/session-daemon-inject-config.d.ts +1 -0
  250. package/dist/server/runtime/http-server/{clock-daemon-inject-config.js → session-daemon-inject-config.js} +2 -2
  251. package/dist/server/runtime/http-server/session-daemon-inject-config.js.map +1 -0
  252. package/dist/server/runtime/http-server/session-daemon-log-throttle.d.ts +28 -0
  253. package/dist/server/runtime/http-server/session-daemon-log-throttle.js +105 -0
  254. package/dist/server/runtime/http-server/session-daemon-log-throttle.js.map +1 -0
  255. package/dist/server/runtime/http-server/session-dir.js +12 -1
  256. package/dist/server/runtime/http-server/session-dir.js.map +1 -1
  257. package/dist/server/runtime/http-server/session-scope-resolution.d.ts +14 -0
  258. package/dist/server/runtime/http-server/session-scope-resolution.js +208 -0
  259. package/dist/server/runtime/http-server/session-scope-resolution.js.map +1 -0
  260. package/dist/server/runtime/http-server/stats-manager.d.ts +35 -0
  261. package/dist/server/runtime/http-server/stats-manager.js +269 -21
  262. package/dist/server/runtime/http-server/stats-manager.js.map +1 -1
  263. package/dist/server/runtime/http-server/stopmessage-scope-rebind.d.ts +21 -0
  264. package/dist/server/runtime/http-server/stopmessage-scope-rebind.js +197 -0
  265. package/dist/server/runtime/http-server/stopmessage-scope-rebind.js.map +1 -0
  266. package/dist/server/runtime/http-server/tmux-session-probe.d.ts +10 -0
  267. package/dist/server/runtime/http-server/tmux-session-probe.js +98 -1
  268. package/dist/server/runtime/http-server/tmux-session-probe.js.map +1 -1
  269. package/dist/server-lifecycle/port-utils.d.ts +2 -1
  270. package/dist/server-lifecycle/port-utils.js +84 -4
  271. package/dist/server-lifecycle/port-utils.js.map +1 -1
  272. package/dist/token-daemon/index.d.ts +1 -0
  273. package/dist/token-daemon/index.js +17 -12
  274. package/dist/token-daemon/index.js.map +1 -1
  275. package/dist/token-daemon/token-daemon.d.ts +2 -0
  276. package/dist/token-daemon/token-daemon.js +18 -10
  277. package/dist/token-daemon/token-daemon.js.map +1 -1
  278. package/dist/utils/llms-engine-shadow.js +1 -1
  279. package/dist/utils/llms-engine-shadow.js.map +1 -1
  280. package/dist/utils/log-helpers.js +46 -0
  281. package/dist/utils/log-helpers.js.map +1 -1
  282. package/dist/utils/session-client-token.d.ts +4 -0
  283. package/dist/utils/session-client-token.js +93 -0
  284. package/dist/utils/session-client-token.js.map +1 -0
  285. package/dist/utils/session-scope-trace.d.ts +11 -0
  286. package/dist/utils/session-scope-trace.js +41 -0
  287. package/dist/utils/session-scope-trace.js.map +1 -0
  288. package/docs/CLOCK.md +0 -1
  289. package/docs/DAEMON_CONTROL_PLANE.md +1 -0
  290. package/docs/PORTS.md +2 -2
  291. package/docs/ROUTING_POLICY_SCHEMA.md +5 -3
  292. package/docs/antigravity-routing-contract.md +2 -2
  293. package/docs/daemon-admin-ui.html +334 -63
  294. package/docs/design/servertool-stopmessage-lifecycle.md +109 -0
  295. package/docs/exec-command-guard-policy.example.v1.json +7 -1
  296. package/docs/providers/antigravity-gemini-provider-compat.md +2 -2
  297. package/docs/{clock-client-daemon-design.md → session-client-daemon-design.md} +34 -34
  298. package/package.json +23 -7
  299. package/scripts/build-core.mjs +12 -0
  300. package/scripts/camoufox/launch-auth.mjs +112 -5
  301. package/scripts/ci/repo-sanity.mjs +1 -0
  302. package/scripts/compare-responses-sse.mjs +267 -0
  303. package/scripts/install-global.sh +6 -0
  304. package/scripts/install-verify.mjs +33 -16
  305. package/scripts/replay-codex-sample.mjs +52 -6
  306. package/scripts/run-bg.sh +226 -43
  307. package/scripts/run-fg-gtimeout.sh +158 -14
  308. package/scripts/tests/blackbox-rcc-vs-routecodex-antigravity.mjs +3 -3
  309. package/scripts/tests/ci-jest.mjs +9 -1
  310. package/scripts/triage-errorsamples.mjs +216 -0
  311. package/scripts/verify-codex-error-samples.mjs +92 -15
  312. package/scripts/verify-install-e2e.mjs +57 -27
  313. package/scripts/virtual-router-dryrun.mjs +7 -1
  314. package/dist/cli/commands/clock-admin.js.map +0 -1
  315. package/dist/cli/commands/tmux-inject.js.map +0 -1
  316. package/dist/cli/register/clock-admin-command.d.ts +0 -3
  317. package/dist/cli/register/clock-admin-command.js +0 -5
  318. package/dist/cli/register/clock-admin-command.js.map +0 -1
  319. package/dist/cli/register/tmux-inject-command.d.ts +0 -3
  320. package/dist/cli/register/tmux-inject-command.js +0 -5
  321. package/dist/cli/register/tmux-inject-command.js.map +0 -1
  322. package/dist/server/runtime/http-server/clock-client-reaper.js.map +0 -1
  323. package/dist/server/runtime/http-server/clock-client-registry-utils.js.map +0 -1
  324. package/dist/server/runtime/http-server/clock-client-registry.js.map +0 -1
  325. package/dist/server/runtime/http-server/clock-client-route-utils.js.map +0 -1
  326. package/dist/server/runtime/http-server/clock-client-routes.d.ts +0 -2
  327. package/dist/server/runtime/http-server/clock-client-routes.js.map +0 -1
  328. package/dist/server/runtime/http-server/clock-daemon-inject-config.d.ts +0 -1
  329. package/dist/server/runtime/http-server/clock-daemon-inject-config.js.map +0 -1
  330. package/dist/server/runtime/http-server/clock-daemon-log-throttle.d.ts +0 -12
  331. package/dist/server/runtime/http-server/clock-daemon-log-throttle.js +0 -56
  332. package/dist/server/runtime/http-server/clock-daemon-log-throttle.js.map +0 -1
  333. package/dist/server/runtime/http-server/http-server-clock-daemon.d.ts +0 -5
  334. package/dist/server/runtime/http-server/http-server-clock-daemon.js +0 -255
  335. package/dist/server/runtime/http-server/http-server-clock-daemon.js.map +0 -1
  336. package/dist/utils/clock-client-token.d.ts +0 -3
  337. package/dist/utils/clock-client-token.js +0 -54
  338. package/dist/utils/clock-client-token.js.map +0 -1
@@ -0,0 +1,404 @@
1
+ import * as fs from 'node:fs/promises';
2
+ import path from 'node:path';
3
+ import { resolveClockConfigSnapshot, reserveClockDueTasks, commitClockDueReservation, clearClockTasksSnapshot, listClockTasksSnapshot, saveRoutingInstructionStateSync } from '../../../modules/llmswitch/bridge.js';
4
+ import { getSessionClientRegistry } from './session-client-registry.js';
5
+ import { toExactMatchSessionConfig } from './session-daemon-inject-config.js';
6
+ import { shouldClearSessionTasksForInjectSkip, shouldLogSessionDaemonCleanupAudit, shouldLogSessionDaemonInjectSkip } from './session-daemon-log-throttle.js';
7
+ import { isTmuxSessionAlive } from './tmux-session-probe.js';
8
+ const SESSION_DAEMON_SESSION_PREFIX = 'sessiond.';
9
+ const SESSION_CLEANUP_AUDIT_SAMPLE_LIMIT = 3;
10
+ function readString(value) {
11
+ if (typeof value !== 'string') {
12
+ return undefined;
13
+ }
14
+ const trimmed = value.trim();
15
+ return trimmed || undefined;
16
+ }
17
+ function readSessionDirFromEnv(value) {
18
+ const normalized = readString(value);
19
+ if (!normalized) {
20
+ return undefined;
21
+ }
22
+ const lowered = normalized.toLowerCase();
23
+ if (lowered === 'undefined' || lowered === 'null') {
24
+ return undefined;
25
+ }
26
+ return normalized;
27
+ }
28
+ function extractReservationTaskIds(reservation) {
29
+ if (!reservation || typeof reservation !== 'object') {
30
+ return new Set();
31
+ }
32
+ const rawTaskIds = reservation.taskIds;
33
+ if (!Array.isArray(rawTaskIds)) {
34
+ return new Set();
35
+ }
36
+ const taskIds = new Set();
37
+ for (const entry of rawTaskIds) {
38
+ const taskId = readString(entry);
39
+ if (taskId) {
40
+ taskIds.add(taskId);
41
+ }
42
+ }
43
+ return taskIds;
44
+ }
45
+ export function extractWorkdirHintFromReservationTasks(tasks, reservationTaskIds) {
46
+ if (!Array.isArray(tasks) || reservationTaskIds.size < 1) {
47
+ return undefined;
48
+ }
49
+ const candidates = new Set();
50
+ for (const task of tasks) {
51
+ if (!task || typeof task !== 'object') {
52
+ continue;
53
+ }
54
+ const taskId = readString(task.taskId);
55
+ if (!taskId || !reservationTaskIds.has(taskId)) {
56
+ continue;
57
+ }
58
+ const args = task.arguments;
59
+ if (!args || typeof args !== 'object' || Array.isArray(args)) {
60
+ continue;
61
+ }
62
+ const workdir = readString(args.workdir)
63
+ ?? readString(args.cwd)
64
+ ?? readString(args.workingDirectory);
65
+ if (workdir) {
66
+ candidates.add(workdir);
67
+ }
68
+ }
69
+ if (candidates.size !== 1) {
70
+ return undefined;
71
+ }
72
+ return Array.from(candidates)[0];
73
+ }
74
+ function resolveBoolFromEnv(value, fallback) {
75
+ if (!value) {
76
+ return fallback;
77
+ }
78
+ const normalized = value.trim().toLowerCase();
79
+ if (['1', 'true', 'yes', 'on'].includes(normalized)) {
80
+ return true;
81
+ }
82
+ if (['0', 'false', 'no', 'off'].includes(normalized)) {
83
+ return false;
84
+ }
85
+ return fallback;
86
+ }
87
+ function shouldEnableSessionCleanupAuditLog() {
88
+ return resolveBoolFromEnv(process.env.ROUTECODEX_SESSION_DAEMON_CLEANUP_AUDIT_LOG ?? process.env.RCC_SESSION_DAEMON_CLEANUP_AUDIT_LOG, false);
89
+ }
90
+ function summarizeStringList(values) {
91
+ if (!Array.isArray(values) || values.length < 1) {
92
+ return { count: 0, sample: [] };
93
+ }
94
+ const normalized = values
95
+ .map((entry) => readString(entry))
96
+ .filter((entry) => Boolean(entry));
97
+ return {
98
+ count: normalized.length,
99
+ sample: normalized.slice(0, SESSION_CLEANUP_AUDIT_SAMPLE_LIMIT)
100
+ };
101
+ }
102
+ function summarizeNumberList(values) {
103
+ if (!Array.isArray(values) || values.length < 1) {
104
+ return { count: 0, sample: [] };
105
+ }
106
+ const normalized = values.filter((entry) => Number.isFinite(entry)).map((entry) => Math.floor(entry));
107
+ return {
108
+ count: normalized.length,
109
+ sample: normalized.slice(0, SESSION_CLEANUP_AUDIT_SAMPLE_LIMIT)
110
+ };
111
+ }
112
+ function clearScopedRoutingStateByScope(scope) {
113
+ const normalized = readString(scope);
114
+ if (!normalized) {
115
+ return;
116
+ }
117
+ try {
118
+ saveRoutingInstructionStateSync(normalized, null);
119
+ }
120
+ catch {
121
+ // best-effort only
122
+ }
123
+ }
124
+ function clearScopedRoutingStateForSessionCleanup(args) {
125
+ for (const daemonId of args.removedDaemonIds) {
126
+ clearScopedRoutingStateByScope(`sessiond.${daemonId}`);
127
+ }
128
+ for (const tmuxSessionId of args.removedTmuxSessionIds) {
129
+ clearScopedRoutingStateByScope(`tmux:${tmuxSessionId}`);
130
+ }
131
+ for (const scope of args.extraScopes || []) {
132
+ clearScopedRoutingStateByScope(scope);
133
+ }
134
+ }
135
+ export function shouldEnableSessionDaemonInjectLoop() {
136
+ const raw = String(process.env.ROUTECODEX_SESSION_DAEMON_INJECT_ENABLE || process.env.RCC_SESSION_DAEMON_INJECT_ENABLE || '')
137
+ .trim()
138
+ .toLowerCase();
139
+ if (raw === '0' || raw === 'false' || raw === 'off' || raw === 'no') {
140
+ return false;
141
+ }
142
+ if (raw === '1' || raw === 'true' || raw === 'on' || raw === 'yes') {
143
+ return true;
144
+ }
145
+ if (process.env.JEST_WORKER_ID || process.env.NODE_ENV === 'test') {
146
+ return false;
147
+ }
148
+ return true;
149
+ }
150
+ function extractSessionDaemonIdFromSessionScope(sessionId) {
151
+ const normalized = String(sessionId || '').trim();
152
+ if (!normalized.startsWith(SESSION_DAEMON_SESSION_PREFIX)) {
153
+ return undefined;
154
+ }
155
+ const daemonId = normalized.slice(SESSION_DAEMON_SESSION_PREFIX.length).trim();
156
+ return daemonId || undefined;
157
+ }
158
+ export function resolveRawSessionConfig(server) {
159
+ const user = server.userConfig && typeof server.userConfig === 'object' ? server.userConfig : {};
160
+ const vr = user.virtualrouter && typeof user.virtualrouter === 'object' ? user.virtualrouter : null;
161
+ if (vr && Object.prototype.hasOwnProperty.call(vr, 'session')) {
162
+ return vr.session;
163
+ }
164
+ if (Object.prototype.hasOwnProperty.call(user, 'session')) {
165
+ return user.session;
166
+ }
167
+ const artCfg = server.currentRouterArtifacts &&
168
+ server.currentRouterArtifacts.config &&
169
+ typeof server.currentRouterArtifacts.config === 'object'
170
+ ? server.currentRouterArtifacts.config
171
+ : null;
172
+ if (artCfg && Object.prototype.hasOwnProperty.call(artCfg, 'session')) {
173
+ return artCfg.session;
174
+ }
175
+ return undefined;
176
+ }
177
+ export function stopSessionDaemonInjectLoop(server) {
178
+ if (server.sessionDaemonInjectTimer) {
179
+ clearInterval(server.sessionDaemonInjectTimer);
180
+ server.sessionDaemonInjectTimer = null;
181
+ }
182
+ }
183
+ export function startSessionDaemonInjectLoop(server) {
184
+ stopSessionDaemonInjectLoop(server);
185
+ if (!shouldEnableSessionDaemonInjectLoop()) {
186
+ return;
187
+ }
188
+ const rawSessionConfig = resolveRawSessionConfig(server);
189
+ if (!rawSessionConfig) {
190
+ return;
191
+ }
192
+ const rawTick = String(process.env.ROUTECODEX_SESSION_DAEMON_INJECT_TICK_MS || process.env.RCC_SESSION_DAEMON_INJECT_TICK_MS || '').trim();
193
+ const parsedTick = rawTick ? Number.parseInt(rawTick, 10) : NaN;
194
+ const tickMs = Number.isFinite(parsedTick) && parsedTick >= 200 ? Math.floor(parsedTick) : 1500;
195
+ server.sessionDaemonInjectTimer = setInterval(() => {
196
+ void tickSessionDaemonInjectLoop(server);
197
+ }, tickMs);
198
+ server.sessionDaemonInjectTimer.unref?.();
199
+ void tickSessionDaemonInjectLoop(server);
200
+ }
201
+ export async function tickSessionDaemonInjectLoop(server) {
202
+ if (server.sessionDaemonInjectTickInFlight) {
203
+ return;
204
+ }
205
+ server.sessionDaemonInjectTickInFlight = true;
206
+ try {
207
+ const rawSessionConfig = resolveRawSessionConfig(server);
208
+ if (!rawSessionConfig) {
209
+ return;
210
+ }
211
+ const resolvedClockConfig = await resolveClockConfigSnapshot(rawSessionConfig);
212
+ if (!resolvedClockConfig) {
213
+ return;
214
+ }
215
+ const sessionConfig = toExactMatchSessionConfig(resolvedClockConfig);
216
+ const sessionDir = readSessionDirFromEnv(process.env.ROUTECODEX_SESSION_DIR) || '';
217
+ const sessionTaskDir = sessionDir ? path.join(sessionDir, 'clock') : '';
218
+ const entries = sessionTaskDir ? await fs.readdir(sessionTaskDir, { withFileTypes: true }).catch(() => []) : [];
219
+ const registry = getSessionClientRegistry();
220
+ const now = Date.now();
221
+ const cleanupRequestId = `session_cleanup_${now}_${Math.random().toString(16).slice(2, 8)}`;
222
+ const enableCleanupAuditLog = shouldEnableSessionCleanupAuditLog();
223
+ const deadTmuxCleanup = registry.cleanupDeadTmuxSessions({
224
+ isTmuxSessionAlive
225
+ });
226
+ const staleCleanup = registry.cleanupStaleHeartbeats({
227
+ nowMs: now
228
+ });
229
+ const removedConversationSessionIds = Array.from(new Set([...staleCleanup.removedConversationSessionIds, ...deadTmuxCleanup.removedConversationSessionIds]));
230
+ const removedTmuxSessionIds = Array.from(new Set([...staleCleanup.removedTmuxSessionIds, ...deadTmuxCleanup.removedTmuxSessionIds]));
231
+ const cleanupSessionIds = Array.from(new Set([...removedConversationSessionIds, ...removedTmuxSessionIds]));
232
+ clearScopedRoutingStateForSessionCleanup({
233
+ removedDaemonIds: Array.from(new Set([
234
+ ...staleCleanup.removedDaemonIds,
235
+ ...deadTmuxCleanup.removedDaemonIds
236
+ ])),
237
+ removedTmuxSessionIds,
238
+ extraScopes: removedConversationSessionIds
239
+ });
240
+ if (cleanupSessionIds.length > 0) {
241
+ for (const cleanupSessionId of cleanupSessionIds) {
242
+ await clearClockTasksSnapshot({
243
+ sessionId: cleanupSessionId,
244
+ config: sessionConfig
245
+ });
246
+ }
247
+ }
248
+ const hasCleanupActions = staleCleanup.removedDaemonIds.length > 0 || deadTmuxCleanup.removedDaemonIds.length > 0;
249
+ if (hasCleanupActions
250
+ && enableCleanupAuditLog
251
+ && Date.now() - server.lastSessionDaemonCleanupAtMs > 2000
252
+ && shouldLogSessionDaemonCleanupAudit({
253
+ cache: server.sessionDaemonCleanupLogByKey,
254
+ input: {
255
+ managedTerminationEnabled: false,
256
+ staleRemovedDaemonIds: staleCleanup.removedDaemonIds,
257
+ staleRemovedTmuxSessionIds: staleCleanup.removedTmuxSessionIds,
258
+ deadRemovedDaemonIds: deadTmuxCleanup.removedDaemonIds,
259
+ deadRemovedTmuxSessionIds: deadTmuxCleanup.removedTmuxSessionIds,
260
+ failedKillTmuxSessionIds: [...staleCleanup.failedKillTmuxSessionIds, ...deadTmuxCleanup.failedKillTmuxSessionIds],
261
+ failedKillManagedClientPids: [
262
+ ...staleCleanup.failedKillManagedClientPids,
263
+ ...deadTmuxCleanup.failedKillManagedClientPids
264
+ ]
265
+ }
266
+ })) {
267
+ server.lastSessionDaemonCleanupAtMs = Date.now();
268
+ console.log('[RouteCodexHttpServer] session daemon cleanup audit:', {
269
+ requestId: cleanupRequestId,
270
+ managedTerminationEnabled: false,
271
+ staleHeartbeat: {
272
+ reason: 'heartbeat_timeout',
273
+ staleAfterMs: staleCleanup.staleAfterMs,
274
+ removedDaemonIds: summarizeStringList(staleCleanup.removedDaemonIds),
275
+ removedTmuxSessionIds: summarizeStringList(staleCleanup.removedTmuxSessionIds),
276
+ removedConversationSessionIds: summarizeStringList(staleCleanup.removedConversationSessionIds),
277
+ killedTmuxSessionIds: summarizeStringList(staleCleanup.killedTmuxSessionIds),
278
+ failedKillTmuxSessionIds: summarizeStringList(staleCleanup.failedKillTmuxSessionIds),
279
+ skippedKillTmuxSessionIds: summarizeStringList(staleCleanup.skippedKillTmuxSessionIds),
280
+ killedManagedClientPids: summarizeNumberList(staleCleanup.killedManagedClientPids),
281
+ failedKillManagedClientPids: summarizeNumberList(staleCleanup.failedKillManagedClientPids),
282
+ skippedKillManagedClientPids: summarizeNumberList(staleCleanup.skippedKillManagedClientPids)
283
+ },
284
+ deadTmux: {
285
+ reason: 'tmux_not_alive',
286
+ removedDaemonIds: summarizeStringList(deadTmuxCleanup.removedDaemonIds),
287
+ removedTmuxSessionIds: summarizeStringList(deadTmuxCleanup.removedTmuxSessionIds),
288
+ removedConversationSessionIds: summarizeStringList(deadTmuxCleanup.removedConversationSessionIds),
289
+ killedTmuxSessionIds: summarizeStringList(deadTmuxCleanup.killedTmuxSessionIds),
290
+ failedKillTmuxSessionIds: summarizeStringList(deadTmuxCleanup.failedKillTmuxSessionIds),
291
+ skippedKillTmuxSessionIds: summarizeStringList(deadTmuxCleanup.skippedKillTmuxSessionIds),
292
+ killedManagedClientPids: summarizeNumberList(deadTmuxCleanup.killedManagedClientPids),
293
+ failedKillManagedClientPids: summarizeNumberList(deadTmuxCleanup.failedKillManagedClientPids),
294
+ skippedKillManagedClientPids: summarizeNumberList(deadTmuxCleanup.skippedKillManagedClientPids)
295
+ }
296
+ });
297
+ }
298
+ for (const entry of entries) {
299
+ if (!entry || typeof entry.name !== 'string') {
300
+ continue;
301
+ }
302
+ if (!entry.name.endsWith('.json')) {
303
+ continue;
304
+ }
305
+ if (typeof entry.isFile === 'function' && !entry.isFile()) {
306
+ continue;
307
+ }
308
+ const sessionId = entry.name.slice(0, -'.json'.length).trim();
309
+ if (!sessionId) {
310
+ continue;
311
+ }
312
+ const reservationId = 'sessiond_inject_' + now + '_' + Math.random().toString(16).slice(2, 8);
313
+ const reserved = await reserveClockDueTasks({
314
+ reservationId,
315
+ sessionId,
316
+ config: sessionConfig,
317
+ requestId: reservationId
318
+ });
319
+ if (!reserved || !reserved.reservation || typeof reserved.injectText !== 'string' || !reserved.injectText.trim()) {
320
+ continue;
321
+ }
322
+ const daemonId = extractSessionDaemonIdFromSessionScope(sessionId);
323
+ const persistedTmuxSessionId = registry.resolveBoundTmuxSession(sessionId);
324
+ const daemonWorkdirHint = daemonId ? readString(registry.findByDaemonId(daemonId)?.workdir) : undefined;
325
+ const boundWorkdirHint = registry.resolveBoundWorkdir(sessionId);
326
+ let taskWorkdirHint;
327
+ const reservationTaskIds = extractReservationTaskIds(reserved.reservation);
328
+ if (reservationTaskIds.size > 0) {
329
+ const tasks = await listClockTasksSnapshot({ sessionId, config: sessionConfig });
330
+ taskWorkdirHint = extractWorkdirHintFromReservationTasks(tasks, reservationTaskIds);
331
+ }
332
+ const workdirHint = daemonWorkdirHint ?? boundWorkdirHint ?? taskWorkdirHint;
333
+ const bind = registry.bindConversationSession({
334
+ conversationSessionId: sessionId,
335
+ ...(persistedTmuxSessionId ? { tmuxSessionId: persistedTmuxSessionId } : {}),
336
+ ...(daemonId ? { daemonId } : {}),
337
+ ...(workdirHint ? { workdir: workdirHint } : {})
338
+ });
339
+ const tmuxSessionId = bind.tmuxSessionId || persistedTmuxSessionId;
340
+ const text = [
341
+ '[Session Reminder]: scheduled tasks are due.',
342
+ reserved.injectText.trim(),
343
+ 'Only call tools that are actually available in your current runtime.'
344
+ ].join('\n');
345
+ const injected = await registry.inject({
346
+ sessionId,
347
+ ...(tmuxSessionId ? { tmuxSessionId } : {}),
348
+ ...(workdirHint ? { workdir: workdirHint } : {}),
349
+ text,
350
+ requestId: reservationId,
351
+ source: 'session.daemon.inject'
352
+ });
353
+ if (!injected.ok) {
354
+ const shouldClearOrphanTasks = shouldClearSessionTasksForInjectSkip({
355
+ sessionId,
356
+ injectReason: injected.reason,
357
+ bindReason: bind.reason
358
+ });
359
+ let clearedClockTasks = 0;
360
+ if (shouldClearOrphanTasks) {
361
+ registry.unbindSessionScope(sessionId);
362
+ clearedClockTasks = await clearClockTasksSnapshot({ sessionId, config: sessionConfig });
363
+ clearScopedRoutingStateByScope(sessionId);
364
+ if (tmuxSessionId) {
365
+ clearScopedRoutingStateByScope(`tmux:${tmuxSessionId}`);
366
+ }
367
+ }
368
+ if (shouldLogSessionDaemonInjectSkip({
369
+ cache: server.sessionDaemonInjectSkipLogByKey,
370
+ input: {
371
+ sessionId,
372
+ injectReason: injected.reason,
373
+ bindReason: bind.reason
374
+ }
375
+ })) {
376
+ console.warn('[RouteCodexHttpServer] session daemon inject skipped:', {
377
+ sessionId,
378
+ injectReason: injected.reason,
379
+ bindOk: bind.ok,
380
+ bindReason: bind.reason,
381
+ ...(workdirHint ? { workdirHint } : {}),
382
+ ...(shouldClearOrphanTasks ? { clearedClockTasks } : {})
383
+ });
384
+ }
385
+ continue;
386
+ }
387
+ await commitClockDueReservation({
388
+ reservation: reserved.reservation,
389
+ config: sessionConfig
390
+ });
391
+ }
392
+ }
393
+ catch (error) {
394
+ const now = Date.now();
395
+ if (now - server.lastSessionDaemonInjectErrorAtMs > 5000) {
396
+ server.lastSessionDaemonInjectErrorAtMs = now;
397
+ console.warn('[RouteCodexHttpServer] session daemon inject loop tick failed:', error);
398
+ }
399
+ }
400
+ finally {
401
+ server.sessionDaemonInjectTickInFlight = false;
402
+ }
403
+ }
404
+ //# sourceMappingURL=http-server-session-daemon.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"http-server-session-daemon.js","sourceRoot":"","sources":["../../../../src/server/runtime/http-server/http-server-session-daemon.ts"],"names":[],"mappings":"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"}
@@ -76,7 +76,7 @@ export function resolveHubShadowCompareConfig() {
76
76
  const isRccx = runtimePackageName === '@jsonstudio/rccx';
77
77
  const defaultEnabled = isRccx;
78
78
  const enabled = resolveBoolFromEnv(process.env.ROUTECODEX_UNIFIED_HUB_SHADOW_COMPARE, defaultEnabled);
79
- const sampleRate = clamp01(resolveNumberFromEnv(process.env.ROUTECODEX_UNIFIED_HUB_SHADOW_COMPARE_SAMPLE_RATE, 1));
79
+ const sampleRate = clamp01(resolveNumberFromEnv(process.env.ROUTECODEX_UNIFIED_HUB_SHADOW_COMPARE_SAMPLE_RATE, 0.1));
80
80
  const baselineModeRaw = String(process.env.ROUTECODEX_UNIFIED_HUB_SHADOW_BASELINE_MODE || 'off').trim().toLowerCase();
81
81
  const baselineMode = baselineModeRaw === 'observe' || baselineModeRaw === 'enforce' ? baselineModeRaw : 'off';
82
82
  return { enabled, sampleRate, baselineMode };
@@ -1 +1 @@
1
- {"version":3,"file":"hub-shadow-compare.js","sourceRoot":"","sources":["../../../../src/server/runtime/http-server/hub-shadow-compare.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hub-shadow-compare.js","sourceRoot":"","sources":["../../../../src/server/runtime/http-server/hub-shadow-compare.ts"],"names":[],"mappings":"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"}
@@ -49,11 +49,12 @@ export declare class RouteCodexHttpServer {
49
49
  private hubPolicyMode;
50
50
  private hubPipelineEngineShadow;
51
51
  private hubPipelineConfigForShadow;
52
- private clockDaemonInjectTimer;
53
- private clockDaemonInjectTickInFlight;
54
- private lastClockDaemonInjectErrorAtMs;
55
- private readonly clockDaemonInjectSkipLogByKey;
56
- private lastClockDaemonCleanupAtMs;
52
+ private sessionDaemonInjectTimer;
53
+ private sessionDaemonInjectTickInFlight;
54
+ private lastSessionDaemonInjectErrorAtMs;
55
+ private readonly sessionDaemonInjectSkipLogByKey;
56
+ private readonly sessionDaemonCleanupLogByKey;
57
+ private lastSessionDaemonCleanupAtMs;
57
58
  private readonly requestExecutor;
58
59
  constructor(config: ServerConfigV2);
59
60
  private resolveVirtualRouterInput;
@@ -80,11 +81,11 @@ export declare class RouteCodexHttpServer {
80
81
  private waitForRuntimeReady;
81
82
  private isQuotaRoutingEnabled;
82
83
  private shouldStartManagerDaemon;
83
- private shouldEnableClockDaemonInjectLoop;
84
- private resolveRawClockConfig;
85
- private stopClockDaemonInjectLoop;
86
- private startClockDaemonInjectLoop;
87
- private tickClockDaemonInjectLoop;
84
+ private shouldEnableSessionDaemonInjectLoop;
85
+ private resolveRawSessionConfig;
86
+ private stopSessionDaemonInjectLoop;
87
+ private startSessionDaemonInjectLoop;
88
+ private tickSessionDaemonInjectLoop;
88
89
  initialize(): Promise<void>;
89
90
  private restartRuntimeFromDisk;
90
91
  start(): Promise<void>;
@@ -24,9 +24,9 @@ import { StatsManager } from './stats-manager.js';
24
24
  import { resolveHubShadowCompareConfig } from './hub-shadow-compare.js';
25
25
  import { resolveLlmsEngineShadowConfig } from '../../../utils/llms-engine-shadow.js';
26
26
  import { createRequestExecutor } from './request-executor.js';
27
- import { startClockReaper, stopClockReaper } from './clock-client-reaper.js';
27
+ import { startSessionReaper, stopSessionReaper } from './session-client-reaper.js';
28
28
  import { resolveVirtualRouterInput, getModuleDependencies, registerDaemonAdminUiRoute, getErrorHandlingShim, createDebugCenterShim, updateProviderProfiles, ensureProviderProfilesFromUserConfig, tryBuildProfiles, findProviderProfile, applyProviderProfileOverrides, canonicalizeRuntimeProvider, logStage, extractProviderModel, buildProviderLabel, normalizeAuthType, resolveSecretValue, isSafeSecretReference, bootstrapVirtualRouter, ensureHubPipelineCtor, ensureHubPipelineEngineShadow, isPipelineReady, waitForRuntimeReady, isQuotaRoutingEnabled, shouldStartManagerDaemon, initializeRouteErrorHub } from './http-server-bootstrap.js';
29
- import { shouldEnableClockDaemonInjectLoop, resolveRawClockConfig, stopClockDaemonInjectLoop, startClockDaemonInjectLoop, tickClockDaemonInjectLoop } from './http-server-clock-daemon.js';
29
+ import { shouldEnableSessionDaemonInjectLoop, resolveRawSessionConfig, stopSessionDaemonInjectLoop, startSessionDaemonInjectLoop, tickSessionDaemonInjectLoop } from './http-server-session-daemon.js';
30
30
  import { setupRuntime } from './http-server-runtime-setup.js';
31
31
  import { initializeProviderRuntimes, createProviderHandle, materializeRuntimeProfile, normalizeRuntimeBaseUrl, resolveRuntimeAuth, resolveApiKeyValue, isLocalBaseUrl, disposeProviders } from './http-server-runtime-providers.js';
32
32
  import { initializeHttpServer, restartRuntimeFromDisk, startHttpServer, stopHttpServer, getHttpServerStatus, getHttpServerConfig, isHttpServerInitialized, isHttpServerRunning, handleHttpServerError, initializeWithUserConfig, reloadHttpServerRuntime, buildHttpHandlerContext } from './http-server-lifecycle.js';
@@ -70,11 +70,12 @@ export class RouteCodexHttpServer {
70
70
  hubPolicyMode = null;
71
71
  hubPipelineEngineShadow = null;
72
72
  hubPipelineConfigForShadow = null;
73
- clockDaemonInjectTimer = null;
74
- clockDaemonInjectTickInFlight = false;
75
- lastClockDaemonInjectErrorAtMs = 0;
76
- clockDaemonInjectSkipLogByKey = new Map();
77
- lastClockDaemonCleanupAtMs = 0;
73
+ sessionDaemonInjectTimer = null;
74
+ sessionDaemonInjectTickInFlight = false;
75
+ lastSessionDaemonInjectErrorAtMs = 0;
76
+ sessionDaemonInjectSkipLogByKey = new Map();
77
+ sessionDaemonCleanupLogByKey = new Map();
78
+ lastSessionDaemonCleanupAtMs = 0;
78
79
  requestExecutor;
79
80
  constructor(config) {
80
81
  this.config = config;
@@ -195,20 +196,20 @@ export class RouteCodexHttpServer {
195
196
  shouldStartManagerDaemon() {
196
197
  return shouldStartManagerDaemon(this);
197
198
  }
198
- shouldEnableClockDaemonInjectLoop() {
199
- return shouldEnableClockDaemonInjectLoop();
199
+ shouldEnableSessionDaemonInjectLoop() {
200
+ return shouldEnableSessionDaemonInjectLoop();
200
201
  }
201
- resolveRawClockConfig() {
202
- return resolveRawClockConfig(this);
202
+ resolveRawSessionConfig() {
203
+ return resolveRawSessionConfig(this);
203
204
  }
204
- stopClockDaemonInjectLoop() {
205
- stopClockDaemonInjectLoop(this);
205
+ stopSessionDaemonInjectLoop() {
206
+ stopSessionDaemonInjectLoop(this);
206
207
  }
207
- startClockDaemonInjectLoop() {
208
- startClockDaemonInjectLoop(this);
208
+ startSessionDaemonInjectLoop() {
209
+ startSessionDaemonInjectLoop(this);
209
210
  }
210
- async tickClockDaemonInjectLoop() {
211
- await tickClockDaemonInjectLoop(this);
211
+ async tickSessionDaemonInjectLoop() {
212
+ await tickSessionDaemonInjectLoop(this);
212
213
  }
213
214
  async initialize() {
214
215
  await initializeHttpServer(this);
@@ -218,11 +219,11 @@ export class RouteCodexHttpServer {
218
219
  }
219
220
  async start() {
220
221
  await startHttpServer(this);
221
- // Start the clock reaper after server is running
222
- startClockReaper();
222
+ // Start the session reaper after server is running
223
+ startSessionReaper();
223
224
  }
224
225
  async stop() {
225
- stopClockReaper();
226
+ stopSessionReaper();
226
227
  await stopHttpServer(this);
227
228
  }
228
229
  getStatus() {