@omnitron-dev/omnitron 0.2.0 → 0.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1299) hide show
  1. package/README.md +4 -0
  2. package/dist/BUILD.json +5 -0
  3. package/dist/cli/omnitron.js +375 -29
  4. package/dist/cli/omnitron.js.map +1 -1
  5. package/dist/cluster/cluster.rpc-service.d.ts +40 -0
  6. package/dist/cluster/cluster.rpc-service.d.ts.map +1 -1
  7. package/dist/cluster/cluster.rpc-service.js +49 -3
  8. package/dist/cluster/cluster.rpc-service.js.map +1 -1
  9. package/dist/cluster/config-sync.d.ts.map +1 -1
  10. package/dist/cluster/config-sync.js.map +1 -1
  11. package/dist/cluster/leader-election.d.ts +90 -2
  12. package/dist/cluster/leader-election.d.ts.map +1 -1
  13. package/dist/cluster/leader-election.js +176 -22
  14. package/dist/cluster/leader-election.js.map +1 -1
  15. package/dist/cluster/mesh-link.d.ts +136 -0
  16. package/dist/cluster/mesh-link.d.ts.map +1 -0
  17. package/dist/cluster/mesh-link.js +212 -0
  18. package/dist/cluster/mesh-link.js.map +1 -0
  19. package/dist/cluster/mesh.d.ts +59 -0
  20. package/dist/cluster/mesh.d.ts.map +1 -0
  21. package/dist/cluster/mesh.js +117 -0
  22. package/dist/cluster/mesh.js.map +1 -0
  23. package/dist/cluster/slave-connector.d.ts +193 -9
  24. package/dist/cluster/slave-connector.d.ts.map +1 -1
  25. package/dist/cluster/slave-connector.js +409 -37
  26. package/dist/cluster/slave-connector.js.map +1 -1
  27. package/dist/commands/audit.d.ts +65 -0
  28. package/dist/commands/audit.d.ts.map +1 -0
  29. package/dist/commands/audit.js +233 -0
  30. package/dist/commands/audit.js.map +1 -0
  31. package/dist/commands/backup.d.ts +4 -0
  32. package/dist/commands/backup.d.ts.map +1 -1
  33. package/dist/commands/backup.js +255 -33
  34. package/dist/commands/backup.js.map +1 -1
  35. package/dist/commands/cluster.d.ts.map +1 -1
  36. package/dist/commands/cluster.js +78 -47
  37. package/dist/commands/cluster.js.map +1 -1
  38. package/dist/commands/daemon-cmd.d.ts +7 -1
  39. package/dist/commands/daemon-cmd.d.ts.map +1 -1
  40. package/dist/commands/daemon-cmd.js +87 -21
  41. package/dist/commands/daemon-cmd.js.map +1 -1
  42. package/dist/commands/daemon-required.d.ts +34 -0
  43. package/dist/commands/daemon-required.d.ts.map +1 -0
  44. package/dist/commands/daemon-required.js +92 -0
  45. package/dist/commands/daemon-required.js.map +1 -0
  46. package/dist/commands/deploy.d.ts +70 -8
  47. package/dist/commands/deploy.d.ts.map +1 -1
  48. package/dist/commands/deploy.js +99 -64
  49. package/dist/commands/deploy.js.map +1 -1
  50. package/dist/commands/discover.d.ts +25 -4
  51. package/dist/commands/discover.d.ts.map +1 -1
  52. package/dist/commands/discover.js +155 -102
  53. package/dist/commands/discover.js.map +1 -1
  54. package/dist/commands/doctor.d.ts +293 -0
  55. package/dist/commands/doctor.d.ts.map +1 -0
  56. package/dist/commands/doctor.js +1706 -0
  57. package/dist/commands/doctor.js.map +1 -0
  58. package/dist/commands/env.d.ts +8 -1
  59. package/dist/commands/env.d.ts.map +1 -1
  60. package/dist/commands/env.js +13 -8
  61. package/dist/commands/env.js.map +1 -1
  62. package/dist/commands/exec.d.ts.map +1 -1
  63. package/dist/commands/exec.js +3 -2
  64. package/dist/commands/exec.js.map +1 -1
  65. package/dist/commands/fleet-asking.d.ts +87 -0
  66. package/dist/commands/fleet-asking.d.ts.map +1 -0
  67. package/dist/commands/fleet-asking.js +176 -0
  68. package/dist/commands/fleet-asking.js.map +1 -0
  69. package/dist/commands/fleet-recover.d.ts +2 -0
  70. package/dist/commands/fleet-recover.d.ts.map +1 -0
  71. package/dist/commands/fleet-recover.js +30 -0
  72. package/dist/commands/fleet-recover.js.map +1 -0
  73. package/dist/commands/fleet.d.ts +18 -0
  74. package/dist/commands/fleet.d.ts.map +1 -1
  75. package/dist/commands/fleet.js +314 -74
  76. package/dist/commands/fleet.js.map +1 -1
  77. package/dist/commands/health-check.d.ts +8 -6
  78. package/dist/commands/health-check.d.ts.map +1 -1
  79. package/dist/commands/health-check.js +26 -23
  80. package/dist/commands/health-check.js.map +1 -1
  81. package/dist/commands/health.d.ts.map +1 -1
  82. package/dist/commands/health.js +22 -8
  83. package/dist/commands/health.js.map +1 -1
  84. package/dist/commands/host-ingress.d.ts +3 -0
  85. package/dist/commands/host-ingress.d.ts.map +1 -0
  86. package/dist/commands/host-ingress.js +31 -0
  87. package/dist/commands/host-ingress.js.map +1 -0
  88. package/dist/commands/infra.d.ts +42 -1
  89. package/dist/commands/infra.d.ts.map +1 -1
  90. package/dist/commands/infra.js +418 -49
  91. package/dist/commands/infra.js.map +1 -1
  92. package/dist/commands/init.d.ts.map +1 -1
  93. package/dist/commands/init.js +21 -36
  94. package/dist/commands/init.js.map +1 -1
  95. package/dist/commands/inspect-graph.d.ts.map +1 -1
  96. package/dist/commands/inspect-graph.js +2 -6
  97. package/dist/commands/inspect-graph.js.map +1 -1
  98. package/dist/commands/inspect.d.ts.map +1 -1
  99. package/dist/commands/inspect.js +110 -14
  100. package/dist/commands/inspect.js.map +1 -1
  101. package/dist/commands/k8s.d.ts.map +1 -1
  102. package/dist/commands/k8s.js +23 -18
  103. package/dist/commands/k8s.js.map +1 -1
  104. package/dist/commands/kb.d.ts.map +1 -1
  105. package/dist/commands/kb.js +88 -29
  106. package/dist/commands/kb.js.map +1 -1
  107. package/dist/commands/list.d.ts.map +1 -1
  108. package/dist/commands/list.js +21 -9
  109. package/dist/commands/list.js.map +1 -1
  110. package/dist/commands/log-health.d.ts +120 -0
  111. package/dist/commands/log-health.d.ts.map +1 -0
  112. package/dist/commands/log-health.js +212 -0
  113. package/dist/commands/log-health.js.map +1 -0
  114. package/dist/commands/logs.d.ts +96 -2
  115. package/dist/commands/logs.d.ts.map +1 -1
  116. package/dist/commands/logs.js +522 -196
  117. package/dist/commands/logs.js.map +1 -1
  118. package/dist/commands/metrics.d.ts.map +1 -1
  119. package/dist/commands/metrics.js +35 -17
  120. package/dist/commands/metrics.js.map +1 -1
  121. package/dist/commands/monit.d.ts.map +1 -1
  122. package/dist/commands/monit.js +3 -2
  123. package/dist/commands/monit.js.map +1 -1
  124. package/dist/commands/node.d.ts +56 -0
  125. package/dist/commands/node.d.ts.map +1 -1
  126. package/dist/commands/node.js +297 -69
  127. package/dist/commands/node.js.map +1 -1
  128. package/dist/commands/output.d.ts +10 -0
  129. package/dist/commands/output.d.ts.map +1 -1
  130. package/dist/commands/output.js +41 -1
  131. package/dist/commands/output.js.map +1 -1
  132. package/dist/commands/pipeline.d.ts.map +1 -1
  133. package/dist/commands/pipeline.js +33 -19
  134. package/dist/commands/pipeline.js.map +1 -1
  135. package/dist/commands/project.d.ts +19 -0
  136. package/dist/commands/project.d.ts.map +1 -1
  137. package/dist/commands/project.js +125 -27
  138. package/dist/commands/project.js.map +1 -1
  139. package/dist/commands/release-store.d.ts +28 -0
  140. package/dist/commands/release-store.d.ts.map +1 -0
  141. package/dist/commands/release-store.js +158 -0
  142. package/dist/commands/release-store.js.map +1 -0
  143. package/dist/commands/release.d.ts +61 -0
  144. package/dist/commands/release.d.ts.map +1 -0
  145. package/dist/commands/release.js +555 -0
  146. package/dist/commands/release.js.map +1 -0
  147. package/dist/commands/reload.d.ts +16 -0
  148. package/dist/commands/reload.d.ts.map +1 -1
  149. package/dist/commands/reload.js +21 -5
  150. package/dist/commands/reload.js.map +1 -1
  151. package/dist/commands/remote.d.ts +40 -0
  152. package/dist/commands/remote.d.ts.map +1 -1
  153. package/dist/commands/remote.js +146 -35
  154. package/dist/commands/remote.js.map +1 -1
  155. package/dist/commands/restart.d.ts +16 -0
  156. package/dist/commands/restart.d.ts.map +1 -1
  157. package/dist/commands/restart.js +21 -5
  158. package/dist/commands/restart.js.map +1 -1
  159. package/dist/commands/scale.d.ts.map +1 -1
  160. package/dist/commands/scale.js +4 -3
  161. package/dist/commands/scale.js.map +1 -1
  162. package/dist/commands/secret.d.ts +54 -0
  163. package/dist/commands/secret.d.ts.map +1 -1
  164. package/dist/commands/secret.js +236 -34
  165. package/dist/commands/secret.js.map +1 -1
  166. package/dist/commands/service-units.d.ts +181 -0
  167. package/dist/commands/service-units.d.ts.map +1 -0
  168. package/dist/commands/service-units.js +291 -0
  169. package/dist/commands/service-units.js.map +1 -0
  170. package/dist/commands/service.d.ts +39 -0
  171. package/dist/commands/service.d.ts.map +1 -0
  172. package/dist/commands/service.js +370 -0
  173. package/dist/commands/service.js.map +1 -0
  174. package/dist/commands/spinner.d.ts +29 -0
  175. package/dist/commands/spinner.d.ts.map +1 -0
  176. package/dist/commands/spinner.js +44 -0
  177. package/dist/commands/spinner.js.map +1 -0
  178. package/dist/commands/stack.d.ts +49 -1
  179. package/dist/commands/stack.d.ts.map +1 -1
  180. package/dist/commands/stack.js +325 -12
  181. package/dist/commands/stack.js.map +1 -1
  182. package/dist/commands/start.d.ts +16 -0
  183. package/dist/commands/start.d.ts.map +1 -1
  184. package/dist/commands/start.js +20 -3
  185. package/dist/commands/start.js.map +1 -1
  186. package/dist/commands/status.d.ts +9 -0
  187. package/dist/commands/status.d.ts.map +1 -1
  188. package/dist/commands/status.js +45 -29
  189. package/dist/commands/status.js.map +1 -1
  190. package/dist/commands/stop.d.ts +16 -0
  191. package/dist/commands/stop.d.ts.map +1 -1
  192. package/dist/commands/stop.js +34 -6
  193. package/dist/commands/stop.js.map +1 -1
  194. package/dist/commands/tor.d.ts +14 -7
  195. package/dist/commands/tor.d.ts.map +1 -1
  196. package/dist/commands/tor.js +113 -33
  197. package/dist/commands/tor.js.map +1 -1
  198. package/dist/commands/up.d.ts +85 -1
  199. package/dist/commands/up.d.ts.map +1 -1
  200. package/dist/commands/up.js +180 -32
  201. package/dist/commands/up.js.map +1 -1
  202. package/dist/commands/webapp.d.ts.map +1 -1
  203. package/dist/commands/webapp.js +2 -1
  204. package/dist/commands/webapp.js.map +1 -1
  205. package/dist/config/defaults.d.ts +16 -0
  206. package/dist/config/defaults.d.ts.map +1 -1
  207. package/dist/config/defaults.js +26 -3
  208. package/dist/config/defaults.js.map +1 -1
  209. package/dist/config/define-ecosystem.d.ts.map +1 -1
  210. package/dist/config/define-ecosystem.js +2 -0
  211. package/dist/config/define-ecosystem.js.map +1 -1
  212. package/dist/config/index.d.ts +1 -1
  213. package/dist/config/index.d.ts.map +1 -1
  214. package/dist/config/index.js +1 -1
  215. package/dist/config/index.js.map +1 -1
  216. package/dist/config/loader.d.ts +45 -1
  217. package/dist/config/loader.d.ts.map +1 -1
  218. package/dist/config/loader.js +64 -6
  219. package/dist/config/loader.js.map +1 -1
  220. package/dist/config/omnitron-config.schema.d.ts.map +1 -1
  221. package/dist/config/omnitron-config.schema.js +16 -0
  222. package/dist/config/omnitron-config.schema.js.map +1 -1
  223. package/dist/config/types.d.ts +416 -44
  224. package/dist/config/types.d.ts.map +1 -1
  225. package/dist/daemon/config-reload.d.ts +27 -0
  226. package/dist/daemon/config-reload.d.ts.map +1 -0
  227. package/dist/daemon/config-reload.js +42 -0
  228. package/dist/daemon/config-reload.js.map +1 -0
  229. package/dist/daemon/daemon-client.d.ts +136 -2
  230. package/dist/daemon/daemon-client.d.ts.map +1 -1
  231. package/dist/daemon/daemon-client.js +307 -21
  232. package/dist/daemon/daemon-client.js.map +1 -1
  233. package/dist/daemon/daemon-entry.js +90 -30
  234. package/dist/daemon/daemon-entry.js.map +1 -1
  235. package/dist/daemon/daemon-scheduler.d.ts +4 -0
  236. package/dist/daemon/daemon-scheduler.d.ts.map +1 -1
  237. package/dist/daemon/daemon-scheduler.js +137 -7
  238. package/dist/daemon/daemon-scheduler.js.map +1 -1
  239. package/dist/daemon/daemon-state-store.service.d.ts +263 -0
  240. package/dist/daemon/daemon-state-store.service.d.ts.map +1 -0
  241. package/dist/daemon/daemon-state-store.service.js +446 -0
  242. package/dist/daemon/daemon-state-store.service.js.map +1 -0
  243. package/dist/daemon/daemon.d.ts +194 -4
  244. package/dist/daemon/daemon.d.ts.map +1 -1
  245. package/dist/daemon/daemon.js +1160 -157
  246. package/dist/daemon/daemon.js.map +1 -1
  247. package/dist/daemon/daemon.module.d.ts.map +1 -1
  248. package/dist/daemon/daemon.module.js +163 -85
  249. package/dist/daemon/daemon.module.js.map +1 -1
  250. package/dist/daemon/daemon.rpc-service.d.ts +90 -1
  251. package/dist/daemon/daemon.rpc-service.d.ts.map +1 -1
  252. package/dist/daemon/daemon.rpc-service.js +439 -97
  253. package/dist/daemon/daemon.rpc-service.js.map +1 -1
  254. package/dist/daemon/pid-manager.d.ts +16 -3
  255. package/dist/daemon/pid-manager.d.ts.map +1 -1
  256. package/dist/daemon/pid-manager.js +31 -4
  257. package/dist/daemon/pid-manager.js.map +1 -1
  258. package/dist/daemon/spawn-daemon.d.ts +73 -0
  259. package/dist/daemon/spawn-daemon.d.ts.map +1 -0
  260. package/dist/daemon/spawn-daemon.js +101 -0
  261. package/dist/daemon/spawn-daemon.js.map +1 -0
  262. package/dist/daemon/state-store.d.ts +65 -3
  263. package/dist/daemon/state-store.d.ts.map +1 -1
  264. package/dist/daemon/state-store.js +100 -58
  265. package/dist/daemon/state-store.js.map +1 -1
  266. package/dist/database/connection.d.ts +71 -0
  267. package/dist/database/connection.d.ts.map +1 -0
  268. package/dist/database/connection.js +129 -0
  269. package/dist/database/connection.js.map +1 -0
  270. package/dist/database/dialect.d.ts +60 -0
  271. package/dist/database/dialect.d.ts.map +1 -0
  272. package/dist/database/dialect.js +80 -0
  273. package/dist/database/dialect.js.map +1 -0
  274. package/dist/database/migrate.d.ts +5 -2
  275. package/dist/database/migrate.d.ts.map +1 -1
  276. package/dist/database/migrate.js +23 -33
  277. package/dist/database/migrate.js.map +1 -1
  278. package/dist/database/migration-runner.d.ts +50 -0
  279. package/dist/database/migration-runner.d.ts.map +1 -0
  280. package/dist/database/migration-runner.js +143 -0
  281. package/dist/database/migration-runner.js.map +1 -0
  282. package/dist/database/migrations/006_login_throttle.d.ts +17 -0
  283. package/dist/database/migrations/006_login_throttle.d.ts.map +1 -0
  284. package/dist/database/migrations/006_login_throttle.js +33 -0
  285. package/dist/database/migrations/006_login_throttle.js.map +1 -0
  286. package/dist/database/migrations/007_sync_ingested.d.ts +21 -0
  287. package/dist/database/migrations/007_sync_ingested.d.ts.map +1 -0
  288. package/dist/database/migrations/007_sync_ingested.js +39 -0
  289. package/dist/database/migrations/007_sync_ingested.js.map +1 -0
  290. package/dist/database/migrations/008_node_health_version_text.d.ts +24 -0
  291. package/dist/database/migrations/008_node_health_version_text.d.ts.map +1 -0
  292. package/dist/database/migrations/008_node_health_version_text.js +35 -0
  293. package/dist/database/migrations/008_node_health_version_text.js.map +1 -0
  294. package/dist/database/migrations/009_node_health_unmeasured.d.ts +40 -0
  295. package/dist/database/migrations/009_node_health_unmeasured.d.ts.map +1 -0
  296. package/dist/database/migrations/009_node_health_unmeasured.js +63 -0
  297. package/dist/database/migrations/009_node_health_unmeasured.js.map +1 -0
  298. package/dist/database/migrations/010_metrics_raw_had_no_reader.d.ts +22 -0
  299. package/dist/database/migrations/010_metrics_raw_had_no_reader.d.ts.map +1 -0
  300. package/dist/database/migrations/010_metrics_raw_had_no_reader.js +26 -0
  301. package/dist/database/migrations/010_metrics_raw_had_no_reader.js.map +1 -0
  302. package/dist/database/migrations/011_alerts_nobody_had_to_write.d.ts +56 -0
  303. package/dist/database/migrations/011_alerts_nobody_had_to_write.d.ts.map +1 -0
  304. package/dist/database/migrations/011_alerts_nobody_had_to_write.js +79 -0
  305. package/dist/database/migrations/011_alerts_nobody_had_to_write.js.map +1 -0
  306. package/dist/database/migrations/012_a_disk_nobody_watched.d.ts +26 -0
  307. package/dist/database/migrations/012_a_disk_nobody_watched.d.ts.map +1 -0
  308. package/dist/database/migrations/012_a_disk_nobody_watched.js +40 -0
  309. package/dist/database/migrations/012_a_disk_nobody_watched.js.map +1 -0
  310. package/dist/database/migrations/013_an_alarm_delivered.d.ts +14 -0
  311. package/dist/database/migrations/013_an_alarm_delivered.d.ts.map +1 -0
  312. package/dist/database/migrations/013_an_alarm_delivered.js +28 -0
  313. package/dist/database/migrations/013_an_alarm_delivered.js.map +1 -0
  314. package/dist/database/migrations/index.d.ts +21 -0
  315. package/dist/database/migrations/index.d.ts.map +1 -0
  316. package/dist/database/migrations/index.js +47 -0
  317. package/dist/database/migrations/index.js.map +1 -0
  318. package/dist/database/schema.d.ts +27 -11
  319. package/dist/database/schema.d.ts.map +1 -1
  320. package/dist/database/sqlite-date-binding.d.ts +71 -0
  321. package/dist/database/sqlite-date-binding.d.ts.map +1 -0
  322. package/dist/database/sqlite-date-binding.js +174 -0
  323. package/dist/database/sqlite-date-binding.js.map +1 -0
  324. package/dist/execution/data-channel.d.ts +48 -0
  325. package/dist/execution/data-channel.d.ts.map +1 -0
  326. package/dist/execution/data-channel.js +55 -0
  327. package/dist/execution/data-channel.js.map +1 -0
  328. package/dist/execution/execution.service.d.ts +146 -0
  329. package/dist/execution/execution.service.d.ts.map +1 -1
  330. package/dist/execution/execution.service.js +330 -10
  331. package/dist/execution/execution.service.js.map +1 -1
  332. package/dist/index.d.ts +1 -1
  333. package/dist/index.d.ts.map +1 -1
  334. package/dist/infrastructure/bare-metal-plan.d.ts +208 -0
  335. package/dist/infrastructure/bare-metal-plan.d.ts.map +1 -0
  336. package/dist/infrastructure/bare-metal-plan.js +363 -0
  337. package/dist/infrastructure/bare-metal-plan.js.map +1 -0
  338. package/dist/infrastructure/bare-metal-runner.d.ts +65 -0
  339. package/dist/infrastructure/bare-metal-runner.d.ts.map +1 -0
  340. package/dist/infrastructure/bare-metal-runner.js +354 -0
  341. package/dist/infrastructure/bare-metal-runner.js.map +1 -0
  342. package/dist/infrastructure/config-payload.d.ts +149 -0
  343. package/dist/infrastructure/config-payload.d.ts.map +1 -0
  344. package/dist/infrastructure/config-payload.js +235 -0
  345. package/dist/infrastructure/config-payload.js.map +1 -0
  346. package/dist/infrastructure/container-runtime.d.ts +170 -10
  347. package/dist/infrastructure/container-runtime.d.ts.map +1 -1
  348. package/dist/infrastructure/container-runtime.js +565 -52
  349. package/dist/infrastructure/container-runtime.js.map +1 -1
  350. package/dist/infrastructure/gateway-reachability.d.ts +85 -0
  351. package/dist/infrastructure/gateway-reachability.d.ts.map +1 -0
  352. package/dist/infrastructure/gateway-reachability.js +116 -0
  353. package/dist/infrastructure/gateway-reachability.js.map +1 -0
  354. package/dist/infrastructure/gateway-redis-db.d.ts +29 -0
  355. package/dist/infrastructure/gateway-redis-db.d.ts.map +1 -0
  356. package/dist/infrastructure/gateway-redis-db.js +32 -0
  357. package/dist/infrastructure/gateway-redis-db.js.map +1 -0
  358. package/dist/infrastructure/host-ingress-config.d.ts +12 -0
  359. package/dist/infrastructure/host-ingress-config.d.ts.map +1 -0
  360. package/dist/infrastructure/host-ingress-config.js +197 -0
  361. package/dist/infrastructure/host-ingress-config.js.map +1 -0
  362. package/dist/infrastructure/host-ingress-lock.d.ts +4 -0
  363. package/dist/infrastructure/host-ingress-lock.d.ts.map +1 -0
  364. package/dist/infrastructure/host-ingress-lock.js +36 -0
  365. package/dist/infrastructure/host-ingress-lock.js.map +1 -0
  366. package/dist/infrastructure/host-ingress-runtime.d.ts +25 -0
  367. package/dist/infrastructure/host-ingress-runtime.d.ts.map +1 -0
  368. package/dist/infrastructure/host-ingress-runtime.js +114 -0
  369. package/dist/infrastructure/host-ingress-runtime.js.map +1 -0
  370. package/dist/infrastructure/host-ingress-takeover.d.ts +18 -0
  371. package/dist/infrastructure/host-ingress-takeover.d.ts.map +1 -0
  372. package/dist/infrastructure/host-ingress-takeover.js +142 -0
  373. package/dist/infrastructure/host-ingress-takeover.js.map +1 -0
  374. package/dist/infrastructure/host-ingress-types.d.ts +173 -0
  375. package/dist/infrastructure/host-ingress-types.d.ts.map +1 -0
  376. package/dist/infrastructure/host-ingress-types.js +2 -0
  377. package/dist/infrastructure/host-ingress-types.js.map +1 -0
  378. package/dist/infrastructure/host-ingress.service.d.ts +47 -0
  379. package/dist/infrastructure/host-ingress.service.d.ts.map +1 -0
  380. package/dist/infrastructure/host-ingress.service.js +514 -0
  381. package/dist/infrastructure/host-ingress.service.js.map +1 -0
  382. package/dist/infrastructure/host-inspection.d.ts +223 -0
  383. package/dist/infrastructure/host-inspection.d.ts.map +1 -0
  384. package/dist/infrastructure/host-inspection.js +501 -0
  385. package/dist/infrastructure/host-inspection.js.map +1 -0
  386. package/dist/infrastructure/infrastructure-gate.d.ts.map +1 -1
  387. package/dist/infrastructure/infrastructure.service.d.ts +223 -7
  388. package/dist/infrastructure/infrastructure.service.d.ts.map +1 -1
  389. package/dist/infrastructure/infrastructure.service.js +500 -93
  390. package/dist/infrastructure/infrastructure.service.js.map +1 -1
  391. package/dist/infrastructure/known-machines.d.ts +76 -0
  392. package/dist/infrastructure/known-machines.d.ts.map +1 -0
  393. package/dist/infrastructure/known-machines.js +94 -0
  394. package/dist/infrastructure/known-machines.js.map +1 -0
  395. package/dist/infrastructure/node-credentials.d.ts +45 -0
  396. package/dist/infrastructure/node-credentials.d.ts.map +1 -0
  397. package/dist/infrastructure/node-credentials.js +80 -0
  398. package/dist/infrastructure/node-credentials.js.map +1 -0
  399. package/dist/infrastructure/orphan-containers.d.ts +99 -0
  400. package/dist/infrastructure/orphan-containers.d.ts.map +1 -0
  401. package/dist/infrastructure/orphan-containers.js +106 -0
  402. package/dist/infrastructure/orphan-containers.js.map +1 -0
  403. package/dist/infrastructure/phantom-endpoint-janitor.d.ts +20 -0
  404. package/dist/infrastructure/phantom-endpoint-janitor.d.ts.map +1 -1
  405. package/dist/infrastructure/phantom-endpoint-janitor.js +56 -6
  406. package/dist/infrastructure/phantom-endpoint-janitor.js.map +1 -1
  407. package/dist/infrastructure/presets/gateway-openresty.d.ts.map +1 -1
  408. package/dist/infrastructure/presets/gateway-openresty.js +29 -3
  409. package/dist/infrastructure/presets/gateway-openresty.js.map +1 -1
  410. package/dist/infrastructure/presets/minio.d.ts.map +1 -1
  411. package/dist/infrastructure/presets/minio.js +36 -3
  412. package/dist/infrastructure/presets/minio.js.map +1 -1
  413. package/dist/infrastructure/presets/postgres.d.ts.map +1 -1
  414. package/dist/infrastructure/presets/postgres.js +69 -2
  415. package/dist/infrastructure/presets/postgres.js.map +1 -1
  416. package/dist/infrastructure/presets/redis.d.ts.map +1 -1
  417. package/dist/infrastructure/presets/redis.js +13 -0
  418. package/dist/infrastructure/presets/redis.js.map +1 -1
  419. package/dist/infrastructure/presets/registry.d.ts.map +1 -1
  420. package/dist/infrastructure/presets/registry.js +81 -12
  421. package/dist/infrastructure/presets/registry.js.map +1 -1
  422. package/dist/infrastructure/presets/tor.d.ts +38 -0
  423. package/dist/infrastructure/presets/tor.d.ts.map +1 -1
  424. package/dist/infrastructure/presets/tor.js +78 -69
  425. package/dist/infrastructure/presets/tor.js.map +1 -1
  426. package/dist/infrastructure/presets/torrc.d.ts +54 -0
  427. package/dist/infrastructure/presets/torrc.d.ts.map +1 -0
  428. package/dist/infrastructure/presets/torrc.js +153 -0
  429. package/dist/infrastructure/presets/torrc.js.map +1 -0
  430. package/dist/infrastructure/presets/types.d.ts +17 -0
  431. package/dist/infrastructure/presets/types.d.ts.map +1 -1
  432. package/dist/infrastructure/provisioning-outcome.d.ts +85 -0
  433. package/dist/infrastructure/provisioning-outcome.d.ts.map +1 -0
  434. package/dist/infrastructure/provisioning-outcome.js +122 -0
  435. package/dist/infrastructure/provisioning-outcome.js.map +1 -0
  436. package/dist/infrastructure/server-registry.d.ts +27 -0
  437. package/dist/infrastructure/server-registry.d.ts.map +1 -1
  438. package/dist/infrastructure/server-registry.js +60 -5
  439. package/dist/infrastructure/server-registry.js.map +1 -1
  440. package/dist/infrastructure/service-binding.d.ts +60 -0
  441. package/dist/infrastructure/service-binding.d.ts.map +1 -0
  442. package/dist/infrastructure/service-binding.js +90 -0
  443. package/dist/infrastructure/service-binding.js.map +1 -0
  444. package/dist/infrastructure/service-credentials.d.ts +105 -0
  445. package/dist/infrastructure/service-credentials.d.ts.map +1 -0
  446. package/dist/infrastructure/service-credentials.js +141 -0
  447. package/dist/infrastructure/service-credentials.js.map +1 -0
  448. package/dist/infrastructure/service-resolver.d.ts +166 -12
  449. package/dist/infrastructure/service-resolver.d.ts.map +1 -1
  450. package/dist/infrastructure/service-resolver.js +535 -82
  451. package/dist/infrastructure/service-resolver.js.map +1 -1
  452. package/dist/infrastructure/shipped-config.d.ts +43 -0
  453. package/dist/infrastructure/shipped-config.d.ts.map +1 -0
  454. package/dist/infrastructure/shipped-config.js +159 -0
  455. package/dist/infrastructure/shipped-config.js.map +1 -0
  456. package/dist/infrastructure/stack-infra-manager.d.ts +16 -1
  457. package/dist/infrastructure/stack-infra-manager.d.ts.map +1 -1
  458. package/dist/infrastructure/stack-infra-manager.js +81 -53
  459. package/dist/infrastructure/stack-infra-manager.js.map +1 -1
  460. package/dist/infrastructure/types.d.ts +263 -6
  461. package/dist/infrastructure/types.d.ts.map +1 -1
  462. package/dist/mcp/mcp-bridge.d.ts.map +1 -1
  463. package/dist/mcp/mcp-bridge.js.map +1 -1
  464. package/dist/mcp/tool-groups/apps.tools.d.ts +2 -1
  465. package/dist/mcp/tool-groups/apps.tools.d.ts.map +1 -1
  466. package/dist/mcp/tool-groups/apps.tools.js +2 -2
  467. package/dist/mcp/tool-groups/apps.tools.js.map +1 -1
  468. package/dist/mcp/tool-groups/infra.tools.d.ts +16 -2
  469. package/dist/mcp/tool-groups/infra.tools.d.ts.map +1 -1
  470. package/dist/mcp/tool-groups/infra.tools.js +51 -41
  471. package/dist/mcp/tool-groups/infra.tools.js.map +1 -1
  472. package/dist/mcp/tool-groups/kb.tools.d.ts.map +1 -1
  473. package/dist/mcp/tool-groups/kb.tools.js +4 -6
  474. package/dist/mcp/tool-groups/kb.tools.js.map +1 -1
  475. package/dist/mcp/tool-groups/management.tools.d.ts +20 -3
  476. package/dist/mcp/tool-groups/management.tools.d.ts.map +1 -1
  477. package/dist/mcp/tool-groups/management.tools.js +158 -125
  478. package/dist/mcp/tool-groups/management.tools.js.map +1 -1
  479. package/dist/mcp/tool-groups/monitoring.tools.d.ts +10 -1
  480. package/dist/mcp/tool-groups/monitoring.tools.d.ts.map +1 -1
  481. package/dist/mcp/tool-groups/monitoring.tools.js +65 -18
  482. package/dist/mcp/tool-groups/monitoring.tools.js.map +1 -1
  483. package/dist/mcp/unavailable-tools.d.ts +35 -0
  484. package/dist/mcp/unavailable-tools.d.ts.map +1 -0
  485. package/dist/mcp/unavailable-tools.js +59 -0
  486. package/dist/mcp/unavailable-tools.js.map +1 -0
  487. package/dist/monitoring/app-health.indicator.d.ts.map +1 -1
  488. package/dist/monitoring/app-health.indicator.js +12 -0
  489. package/dist/monitoring/app-health.indicator.js.map +1 -1
  490. package/dist/monitoring/desktop-notifier.d.ts +26 -0
  491. package/dist/monitoring/desktop-notifier.d.ts.map +1 -0
  492. package/dist/monitoring/desktop-notifier.js +49 -0
  493. package/dist/monitoring/desktop-notifier.js.map +1 -0
  494. package/dist/monitoring/docker-health.indicator.d.ts +17 -1
  495. package/dist/monitoring/docker-health.indicator.d.ts.map +1 -1
  496. package/dist/monitoring/docker-health.indicator.js +38 -8
  497. package/dist/monitoring/docker-health.indicator.js.map +1 -1
  498. package/dist/monitoring/event-loop-stall.indicator.d.ts +26 -0
  499. package/dist/monitoring/event-loop-stall.indicator.d.ts.map +1 -0
  500. package/dist/monitoring/event-loop-stall.indicator.js +47 -0
  501. package/dist/monitoring/event-loop-stall.indicator.js.map +1 -0
  502. package/dist/monitoring/event-loop-watch.d.ts +124 -0
  503. package/dist/monitoring/event-loop-watch.d.ts.map +1 -0
  504. package/dist/monitoring/event-loop-watch.js +179 -0
  505. package/dist/monitoring/event-loop-watch.js.map +1 -0
  506. package/dist/monitoring/host-disk.d.ts +6 -0
  507. package/dist/monitoring/host-disk.d.ts.map +1 -0
  508. package/dist/monitoring/host-disk.js +26 -0
  509. package/dist/monitoring/host-disk.js.map +1 -0
  510. package/dist/monitoring/log-line.d.ts +188 -0
  511. package/dist/monitoring/log-line.d.ts.map +1 -0
  512. package/dist/monitoring/log-line.js +458 -0
  513. package/dist/monitoring/log-line.js.map +1 -0
  514. package/dist/monitoring/log-manager.d.ts +89 -8
  515. package/dist/monitoring/log-manager.d.ts.map +1 -1
  516. package/dist/monitoring/log-manager.js +246 -77
  517. package/dist/monitoring/log-manager.js.map +1 -1
  518. package/dist/observability/metrics-bridge.d.ts.map +1 -1
  519. package/dist/observability/metrics-server.d.ts.map +1 -1
  520. package/dist/operations.d.ts +16 -0
  521. package/dist/operations.d.ts.map +1 -0
  522. package/dist/operations.js +13 -0
  523. package/dist/operations.js.map +1 -0
  524. package/dist/orchestrator/app-handle.d.ts +157 -2
  525. package/dist/orchestrator/app-handle.d.ts.map +1 -1
  526. package/dist/orchestrator/app-handle.js +165 -3
  527. package/dist/orchestrator/app-handle.js.map +1 -1
  528. package/dist/orchestrator/app-health.d.ts +33 -0
  529. package/dist/orchestrator/app-health.d.ts.map +1 -0
  530. package/dist/orchestrator/app-health.js +74 -0
  531. package/dist/orchestrator/app-health.js.map +1 -0
  532. package/dist/orchestrator/app-traffic.d.ts +14 -0
  533. package/dist/orchestrator/app-traffic.d.ts.map +1 -0
  534. package/dist/orchestrator/app-traffic.js +33 -0
  535. package/dist/orchestrator/app-traffic.js.map +1 -0
  536. package/dist/orchestrator/bootstrap-loader-child.d.ts +19 -0
  537. package/dist/orchestrator/bootstrap-loader-child.d.ts.map +1 -0
  538. package/dist/orchestrator/bootstrap-loader-child.js +43 -0
  539. package/dist/orchestrator/bootstrap-loader-child.js.map +1 -0
  540. package/dist/orchestrator/bootstrap-loader.d.ts +72 -0
  541. package/dist/orchestrator/bootstrap-loader.d.ts.map +1 -1
  542. package/dist/orchestrator/bootstrap-loader.js +350 -5
  543. package/dist/orchestrator/bootstrap-loader.js.map +1 -1
  544. package/dist/orchestrator/bootstrap-process.d.ts +99 -4
  545. package/dist/orchestrator/bootstrap-process.d.ts.map +1 -1
  546. package/dist/orchestrator/bootstrap-process.js +332 -20
  547. package/dist/orchestrator/bootstrap-process.js.map +1 -1
  548. package/dist/orchestrator/build-service.d.ts +6 -12
  549. package/dist/orchestrator/build-service.d.ts.map +1 -1
  550. package/dist/orchestrator/build-service.js +120 -83
  551. package/dist/orchestrator/build-service.js.map +1 -1
  552. package/dist/orchestrator/call-exposed-service.d.ts +7 -0
  553. package/dist/orchestrator/call-exposed-service.d.ts.map +1 -0
  554. package/dist/orchestrator/call-exposed-service.js +50 -0
  555. package/dist/orchestrator/call-exposed-service.js.map +1 -0
  556. package/dist/orchestrator/classic-launcher.d.ts +1 -0
  557. package/dist/orchestrator/classic-launcher.d.ts.map +1 -1
  558. package/dist/orchestrator/classic-launcher.js +40 -4
  559. package/dist/orchestrator/classic-launcher.js.map +1 -1
  560. package/dist/orchestrator/file-watcher.d.ts +79 -1
  561. package/dist/orchestrator/file-watcher.d.ts.map +1 -1
  562. package/dist/orchestrator/file-watcher.js +193 -7
  563. package/dist/orchestrator/file-watcher.js.map +1 -1
  564. package/dist/orchestrator/http-routes.d.ts +4 -0
  565. package/dist/orchestrator/http-routes.d.ts.map +1 -0
  566. package/dist/orchestrator/http-routes.js +19 -0
  567. package/dist/orchestrator/http-routes.js.map +1 -0
  568. package/dist/orchestrator/module-worker-process.d.ts.map +1 -1
  569. package/dist/orchestrator/module-worker-process.js +10 -0
  570. package/dist/orchestrator/module-worker-process.js.map +1 -1
  571. package/dist/orchestrator/orchestrator.service.d.ts +385 -11
  572. package/dist/orchestrator/orchestrator.service.d.ts.map +1 -1
  573. package/dist/orchestrator/orchestrator.service.js +1738 -364
  574. package/dist/orchestrator/orchestrator.service.js.map +1 -1
  575. package/dist/orchestrator/owned-pids.d.ts +83 -0
  576. package/dist/orchestrator/owned-pids.d.ts.map +1 -0
  577. package/dist/orchestrator/owned-pids.js +93 -0
  578. package/dist/orchestrator/owned-pids.js.map +1 -0
  579. package/dist/orchestrator/port-conflict.d.ts +102 -0
  580. package/dist/orchestrator/port-conflict.d.ts.map +1 -0
  581. package/dist/orchestrator/port-conflict.js +131 -0
  582. package/dist/orchestrator/port-conflict.js.map +1 -0
  583. package/dist/orchestrator/process-janitor.d.ts +78 -4
  584. package/dist/orchestrator/process-janitor.d.ts.map +1 -1
  585. package/dist/orchestrator/process-janitor.js +246 -30
  586. package/dist/orchestrator/process-janitor.js.map +1 -1
  587. package/dist/orchestrator/ps-metrics.d.ts +37 -0
  588. package/dist/orchestrator/ps-metrics.d.ts.map +1 -0
  589. package/dist/orchestrator/ps-metrics.js +60 -0
  590. package/dist/orchestrator/ps-metrics.js.map +1 -0
  591. package/dist/orchestrator/service-router.d.ts +58 -2
  592. package/dist/orchestrator/service-router.d.ts.map +1 -1
  593. package/dist/orchestrator/service-router.js +157 -25
  594. package/dist/orchestrator/service-router.js.map +1 -1
  595. package/dist/orchestrator/topology-query.d.ts +49 -0
  596. package/dist/orchestrator/topology-query.d.ts.map +1 -0
  597. package/dist/orchestrator/topology-query.js +54 -0
  598. package/dist/orchestrator/topology-query.js.map +1 -0
  599. package/dist/project/artifact-builder.d.ts +174 -3
  600. package/dist/project/artifact-builder.d.ts.map +1 -1
  601. package/dist/project/artifact-builder.js +454 -42
  602. package/dist/project/artifact-builder.js.map +1 -1
  603. package/dist/project/build-decision.d.ts +58 -0
  604. package/dist/project/build-decision.d.ts.map +1 -0
  605. package/dist/project/build-decision.js +59 -0
  606. package/dist/project/build-decision.js.map +1 -0
  607. package/dist/project/config-resolver.d.ts +6 -4
  608. package/dist/project/config-resolver.d.ts.map +1 -1
  609. package/dist/project/config-resolver.js +128 -74
  610. package/dist/project/config-resolver.js.map +1 -1
  611. package/dist/project/declared-config.d.ts +42 -0
  612. package/dist/project/declared-config.d.ts.map +1 -0
  613. package/dist/project/declared-config.js +60 -0
  614. package/dist/project/declared-config.js.map +1 -0
  615. package/dist/project/dependency-analyzer.d.ts.map +1 -1
  616. package/dist/project/dependency-analyzer.js.map +1 -1
  617. package/dist/project/deploy-phases.d.ts +35 -0
  618. package/dist/project/deploy-phases.d.ts.map +1 -0
  619. package/dist/project/deploy-phases.js +75 -0
  620. package/dist/project/deploy-phases.js.map +1 -0
  621. package/dist/project/exec-in-group.d.ts +49 -0
  622. package/dist/project/exec-in-group.d.ts.map +1 -0
  623. package/dist/project/exec-in-group.js +100 -0
  624. package/dist/project/exec-in-group.js.map +1 -0
  625. package/dist/project/node-app-config.d.ts +101 -0
  626. package/dist/project/node-app-config.d.ts.map +1 -0
  627. package/dist/project/node-app-config.js +134 -0
  628. package/dist/project/node-app-config.js.map +1 -0
  629. package/dist/project/node-app-health.d.ts +76 -0
  630. package/dist/project/node-app-health.d.ts.map +1 -0
  631. package/dist/project/node-app-health.js +119 -0
  632. package/dist/project/node-app-health.js.map +1 -0
  633. package/dist/project/operator-account.d.ts +293 -0
  634. package/dist/project/operator-account.d.ts.map +1 -0
  635. package/dist/project/operator-account.js +373 -0
  636. package/dist/project/operator-account.js.map +1 -0
  637. package/dist/project/registry.d.ts +45 -8
  638. package/dist/project/registry.d.ts.map +1 -1
  639. package/dist/project/registry.js +214 -64
  640. package/dist/project/registry.js.map +1 -1
  641. package/dist/project/requirements-scanner.d.ts +1 -0
  642. package/dist/project/requirements-scanner.d.ts.map +1 -1
  643. package/dist/project/requirements-scanner.js +28 -3
  644. package/dist/project/requirements-scanner.js.map +1 -1
  645. package/dist/project/stack-env.d.ts +37 -0
  646. package/dist/project/stack-env.d.ts.map +1 -0
  647. package/dist/project/stack-env.js +85 -0
  648. package/dist/project/stack-env.js.map +1 -0
  649. package/dist/project/stand-containers.d.ts +11 -0
  650. package/dist/project/stand-containers.d.ts.map +1 -0
  651. package/dist/project/stand-containers.js +27 -0
  652. package/dist/project/stand-containers.js.map +1 -0
  653. package/dist/project/working-tree.d.ts +62 -0
  654. package/dist/project/working-tree.d.ts.map +1 -0
  655. package/dist/project/working-tree.js +101 -0
  656. package/dist/project/working-tree.js.map +1 -0
  657. package/dist/release/artifact-store.d.ts +360 -0
  658. package/dist/release/artifact-store.d.ts.map +1 -0
  659. package/dist/release/artifact-store.js +1040 -0
  660. package/dist/release/artifact-store.js.map +1 -0
  661. package/dist/release/attest-on-node.d.ts +93 -0
  662. package/dist/release/attest-on-node.d.ts.map +1 -0
  663. package/dist/release/attest-on-node.js +207 -0
  664. package/dist/release/attest-on-node.js.map +1 -0
  665. package/dist/release/attest.d.ts +135 -0
  666. package/dist/release/attest.d.ts.map +1 -0
  667. package/dist/release/attest.js +199 -0
  668. package/dist/release/attest.js.map +1 -0
  669. package/dist/release/build-run.d.ts +151 -0
  670. package/dist/release/build-run.d.ts.map +1 -0
  671. package/dist/release/build-run.js +609 -0
  672. package/dist/release/build-run.js.map +1 -0
  673. package/dist/release/builder.d.ts +57 -0
  674. package/dist/release/builder.d.ts.map +1 -0
  675. package/dist/release/builder.js +120 -0
  676. package/dist/release/builder.js.map +1 -0
  677. package/dist/release/daemon-omni.d.ts +41 -0
  678. package/dist/release/daemon-omni.d.ts.map +1 -0
  679. package/dist/release/daemon-omni.js +59 -0
  680. package/dist/release/daemon-omni.js.map +1 -0
  681. package/dist/release/definition-inputs.d.ts +34 -0
  682. package/dist/release/definition-inputs.d.ts.map +1 -0
  683. package/dist/release/definition-inputs.js +90 -0
  684. package/dist/release/definition-inputs.js.map +1 -0
  685. package/dist/release/delivered.d.ts +53 -0
  686. package/dist/release/delivered.d.ts.map +1 -0
  687. package/dist/release/delivered.js +81 -0
  688. package/dist/release/delivered.js.map +1 -0
  689. package/dist/release/layout.d.ts +61 -0
  690. package/dist/release/layout.d.ts.map +1 -0
  691. package/dist/release/layout.js +114 -0
  692. package/dist/release/layout.js.map +1 -0
  693. package/dist/release/load.d.ts +44 -0
  694. package/dist/release/load.d.ts.map +1 -0
  695. package/dist/release/load.js +84 -0
  696. package/dist/release/load.js.map +1 -0
  697. package/dist/release/manifest.d.ts +299 -0
  698. package/dist/release/manifest.d.ts.map +1 -0
  699. package/dist/release/manifest.js +176 -0
  700. package/dist/release/manifest.js.map +1 -0
  701. package/dist/release/migrations.d.ts +32 -0
  702. package/dist/release/migrations.d.ts.map +1 -0
  703. package/dist/release/migrations.js +51 -0
  704. package/dist/release/migrations.js.map +1 -0
  705. package/dist/release/publish.d.ts +71 -0
  706. package/dist/release/publish.d.ts.map +1 -0
  707. package/dist/release/publish.js +102 -0
  708. package/dist/release/publish.js.map +1 -0
  709. package/dist/release/store.d.ts +174 -0
  710. package/dist/release/store.d.ts.map +1 -0
  711. package/dist/release/store.js +257 -0
  712. package/dist/release/store.js.map +1 -0
  713. package/dist/services/alert.rpc-service.d.ts +11 -15
  714. package/dist/services/alert.rpc-service.d.ts.map +1 -1
  715. package/dist/services/alert.rpc-service.js +29 -14
  716. package/dist/services/alert.rpc-service.js.map +1 -1
  717. package/dist/services/alert.service.d.ts +96 -59
  718. package/dist/services/alert.service.d.ts.map +1 -1
  719. package/dist/services/alert.service.js +455 -70
  720. package/dist/services/alert.service.js.map +1 -1
  721. package/dist/services/anonymous-input.d.ts +26 -0
  722. package/dist/services/anonymous-input.d.ts.map +1 -0
  723. package/dist/services/anonymous-input.js +44 -0
  724. package/dist/services/anonymous-input.js.map +1 -0
  725. package/dist/services/audit.rpc-service.d.ts +27 -0
  726. package/dist/services/audit.rpc-service.d.ts.map +1 -0
  727. package/dist/services/audit.rpc-service.js +57 -0
  728. package/dist/services/audit.rpc-service.js.map +1 -0
  729. package/dist/services/audit.service.d.ts +165 -0
  730. package/dist/services/audit.service.d.ts.map +1 -0
  731. package/dist/services/audit.service.js +242 -0
  732. package/dist/services/audit.service.js.map +1 -0
  733. package/dist/services/auth-context.d.ts +21 -1
  734. package/dist/services/auth-context.d.ts.map +1 -1
  735. package/dist/services/auth-context.js +51 -5
  736. package/dist/services/auth-context.js.map +1 -1
  737. package/dist/services/auth.rpc-service.d.ts +0 -1
  738. package/dist/services/auth.rpc-service.d.ts.map +1 -1
  739. package/dist/services/auth.rpc-service.js +23 -9
  740. package/dist/services/auth.rpc-service.js.map +1 -1
  741. package/dist/services/auth.service.d.ts +47 -33
  742. package/dist/services/auth.service.d.ts.map +1 -1
  743. package/dist/services/auth.service.js +155 -23
  744. package/dist/services/auth.service.js.map +1 -1
  745. package/dist/services/backup-pipeline.d.ts +97 -0
  746. package/dist/services/backup-pipeline.d.ts.map +1 -0
  747. package/dist/services/backup-pipeline.js +286 -0
  748. package/dist/services/backup-pipeline.js.map +1 -0
  749. package/dist/services/backup-schedule.d.ts +69 -0
  750. package/dist/services/backup-schedule.d.ts.map +1 -0
  751. package/dist/services/backup-schedule.js +132 -0
  752. package/dist/services/backup-schedule.js.map +1 -0
  753. package/dist/services/backup.rpc-service.d.ts +31 -2
  754. package/dist/services/backup.rpc-service.d.ts.map +1 -1
  755. package/dist/services/backup.rpc-service.js +53 -0
  756. package/dist/services/backup.rpc-service.js.map +1 -1
  757. package/dist/services/backup.service.d.ts +458 -14
  758. package/dist/services/backup.service.d.ts.map +1 -1
  759. package/dist/services/backup.service.js +1368 -170
  760. package/dist/services/backup.service.js.map +1 -1
  761. package/dist/services/bundle-build-worker.d.ts +19 -0
  762. package/dist/services/bundle-build-worker.d.ts.map +1 -0
  763. package/dist/services/bundle-build-worker.js +40 -0
  764. package/dist/services/bundle-build-worker.js.map +1 -0
  765. package/dist/services/bundle-builder.d.ts +490 -0
  766. package/dist/services/bundle-builder.d.ts.map +1 -0
  767. package/dist/services/bundle-builder.js +1159 -0
  768. package/dist/services/bundle-builder.js.map +1 -0
  769. package/dist/services/bundle-worker-protocol.d.ts +19 -0
  770. package/dist/services/bundle-worker-protocol.d.ts.map +1 -0
  771. package/dist/services/bundle-worker-protocol.js +32 -0
  772. package/dist/services/bundle-worker-protocol.js.map +1 -0
  773. package/dist/services/deploy.rpc-service.d.ts +4 -1
  774. package/dist/services/deploy.rpc-service.d.ts.map +1 -1
  775. package/dist/services/deploy.rpc-service.js +10 -0
  776. package/dist/services/deploy.rpc-service.js.map +1 -1
  777. package/dist/services/deploy.service.d.ts +14 -24
  778. package/dist/services/deploy.service.d.ts.map +1 -1
  779. package/dist/services/deploy.service.js +46 -5
  780. package/dist/services/deploy.service.js.map +1 -1
  781. package/dist/services/discovery.rpc-service.d.ts +2 -1
  782. package/dist/services/discovery.rpc-service.d.ts.map +1 -1
  783. package/dist/services/discovery.rpc-service.js.map +1 -1
  784. package/dist/services/discovery.service.d.ts +32 -28
  785. package/dist/services/discovery.service.d.ts.map +1 -1
  786. package/dist/services/discovery.service.js +108 -133
  787. package/dist/services/discovery.service.js.map +1 -1
  788. package/dist/services/event-broadcaster.rpc-service.d.ts +36 -23
  789. package/dist/services/event-broadcaster.rpc-service.d.ts.map +1 -1
  790. package/dist/services/event-broadcaster.rpc-service.js +70 -32
  791. package/dist/services/event-broadcaster.rpc-service.js.map +1 -1
  792. package/dist/services/event-broadcaster.service.d.ts.map +1 -1
  793. package/dist/services/event-broadcaster.service.js.map +1 -1
  794. package/dist/services/fleet.rpc-service.d.ts +2 -1
  795. package/dist/services/fleet.rpc-service.d.ts.map +1 -1
  796. package/dist/services/fleet.rpc-service.js +3 -1
  797. package/dist/services/fleet.rpc-service.js.map +1 -1
  798. package/dist/services/fleet.service.d.ts +32 -34
  799. package/dist/services/fleet.service.d.ts.map +1 -1
  800. package/dist/services/fleet.service.js +66 -10
  801. package/dist/services/fleet.service.js.map +1 -1
  802. package/dist/services/health-check.rpc-service.d.ts +2 -1
  803. package/dist/services/health-check.rpc-service.d.ts.map +1 -1
  804. package/dist/services/health-check.rpc-service.js.map +1 -1
  805. package/dist/services/health-check.service.d.ts +50 -36
  806. package/dist/services/health-check.service.d.ts.map +1 -1
  807. package/dist/services/health-check.service.js +179 -182
  808. package/dist/services/health-check.service.js.map +1 -1
  809. package/dist/services/host-operation-barrier.d.ts +8 -0
  810. package/dist/services/host-operation-barrier.d.ts.map +1 -0
  811. package/dist/services/host-operation-barrier.js +44 -0
  812. package/dist/services/host-operation-barrier.js.map +1 -0
  813. package/dist/services/host-upgrade.d.ts +129 -0
  814. package/dist/services/host-upgrade.d.ts.map +1 -0
  815. package/dist/services/host-upgrade.js +352 -0
  816. package/dist/services/host-upgrade.js.map +1 -0
  817. package/dist/services/infrastructure.rpc-service.d.ts +312 -2
  818. package/dist/services/infrastructure.rpc-service.d.ts.map +1 -1
  819. package/dist/services/infrastructure.rpc-service.js +584 -11
  820. package/dist/services/infrastructure.rpc-service.js.map +1 -1
  821. package/dist/services/kubernetes.rpc-service.d.ts +2 -1
  822. package/dist/services/kubernetes.rpc-service.d.ts.map +1 -1
  823. package/dist/services/kubernetes.rpc-service.js.map +1 -1
  824. package/dist/services/kubernetes.service.d.ts +5 -39
  825. package/dist/services/kubernetes.service.d.ts.map +1 -1
  826. package/dist/services/kubernetes.service.js +29 -5
  827. package/dist/services/kubernetes.service.js.map +1 -1
  828. package/dist/services/local-bundle.d.ts +160 -0
  829. package/dist/services/local-bundle.d.ts.map +1 -0
  830. package/dist/services/local-bundle.js +242 -0
  831. package/dist/services/local-bundle.js.map +1 -0
  832. package/dist/services/lockout.d.ts +28 -0
  833. package/dist/services/lockout.d.ts.map +1 -0
  834. package/dist/services/lockout.js +41 -0
  835. package/dist/services/lockout.js.map +1 -0
  836. package/dist/services/log-collector.rpc-service.d.ts +16 -0
  837. package/dist/services/log-collector.rpc-service.d.ts.map +1 -1
  838. package/dist/services/log-collector.rpc-service.js +16 -0
  839. package/dist/services/log-collector.rpc-service.js.map +1 -1
  840. package/dist/services/log-collector.service.d.ts +172 -54
  841. package/dist/services/log-collector.service.d.ts.map +1 -1
  842. package/dist/services/log-collector.service.js +492 -102
  843. package/dist/services/log-collector.service.js.map +1 -1
  844. package/dist/services/log-retention.d.ts +50 -0
  845. package/dist/services/log-retention.d.ts.map +1 -0
  846. package/dist/services/log-retention.js +52 -0
  847. package/dist/services/log-retention.js.map +1 -0
  848. package/dist/services/maintenance-lock.d.ts +162 -0
  849. package/dist/services/maintenance-lock.d.ts.map +1 -0
  850. package/dist/services/maintenance-lock.js +316 -0
  851. package/dist/services/maintenance-lock.js.map +1 -0
  852. package/dist/services/master-address.d.ts +107 -0
  853. package/dist/services/master-address.d.ts.map +1 -0
  854. package/dist/services/master-address.js +154 -0
  855. package/dist/services/master-address.js.map +1 -0
  856. package/dist/services/migration-output.d.ts +16 -0
  857. package/dist/services/migration-output.d.ts.map +1 -0
  858. package/dist/services/migration-output.js +22 -0
  859. package/dist/services/migration-output.js.map +1 -0
  860. package/dist/services/netron-telemetry-transport.d.ts.map +1 -1
  861. package/dist/services/netron-telemetry-transport.js.map +1 -1
  862. package/dist/services/node-deploy-lease.d.ts +171 -0
  863. package/dist/services/node-deploy-lease.d.ts.map +1 -0
  864. package/dist/services/node-deploy-lease.js +460 -0
  865. package/dist/services/node-deploy-lease.js.map +1 -0
  866. package/dist/services/node-health.repository.d.ts +63 -4
  867. package/dist/services/node-health.repository.d.ts.map +1 -1
  868. package/dist/services/node-health.repository.js +108 -67
  869. package/dist/services/node-health.repository.js.map +1 -1
  870. package/dist/services/node-manager.rpc-service.d.ts +360 -10
  871. package/dist/services/node-manager.rpc-service.d.ts.map +1 -1
  872. package/dist/services/node-manager.rpc-service.js +754 -34
  873. package/dist/services/node-manager.rpc-service.js.map +1 -1
  874. package/dist/services/node-manager.service.d.ts +267 -95
  875. package/dist/services/node-manager.service.d.ts.map +1 -1
  876. package/dist/services/node-manager.service.js +805 -103
  877. package/dist/services/node-manager.service.js.map +1 -1
  878. package/dist/services/node-upgrade.d.ts +129 -0
  879. package/dist/services/node-upgrade.d.ts.map +1 -0
  880. package/dist/services/node-upgrade.js +161 -0
  881. package/dist/services/node-upgrade.js.map +1 -0
  882. package/dist/services/node-upgrade.service.d.ts +232 -0
  883. package/dist/services/node-upgrade.service.d.ts.map +1 -0
  884. package/dist/services/node-upgrade.service.js +468 -0
  885. package/dist/services/node-upgrade.service.js.map +1 -0
  886. package/dist/services/pipeline.rpc-service.d.ts +6 -1
  887. package/dist/services/pipeline.rpc-service.d.ts.map +1 -1
  888. package/dist/services/pipeline.rpc-service.js +9 -0
  889. package/dist/services/pipeline.rpc-service.js.map +1 -1
  890. package/dist/services/pipeline.service.d.ts +17 -46
  891. package/dist/services/pipeline.service.d.ts.map +1 -1
  892. package/dist/services/pipeline.service.js +84 -9
  893. package/dist/services/pipeline.service.js.map +1 -1
  894. package/dist/services/project.rpc-service.d.ts +140 -5
  895. package/dist/services/project.rpc-service.d.ts.map +1 -1
  896. package/dist/services/project.rpc-service.js +260 -22
  897. package/dist/services/project.rpc-service.js.map +1 -1
  898. package/dist/services/project.service.d.ts +687 -15
  899. package/dist/services/project.service.d.ts.map +1 -1
  900. package/dist/services/project.service.js +2846 -337
  901. package/dist/services/project.service.js.map +1 -1
  902. package/dist/services/redeploy-decision.d.ts +176 -0
  903. package/dist/services/redeploy-decision.d.ts.map +1 -0
  904. package/dist/services/redeploy-decision.js +142 -0
  905. package/dist/services/redeploy-decision.js.map +1 -0
  906. package/dist/services/release.rpc-service.d.ts +159 -0
  907. package/dist/services/release.rpc-service.d.ts.map +1 -0
  908. package/dist/services/release.rpc-service.js +395 -0
  909. package/dist/services/release.rpc-service.js.map +1 -0
  910. package/dist/services/release.service.d.ts +114 -0
  911. package/dist/services/release.service.d.ts.map +1 -0
  912. package/dist/services/release.service.js +208 -0
  913. package/dist/services/release.service.js.map +1 -0
  914. package/dist/services/remote-deployer.service.d.ts +580 -8
  915. package/dist/services/remote-deployer.service.d.ts.map +1 -1
  916. package/dist/services/remote-deployer.service.js +1786 -169
  917. package/dist/services/remote-deployer.service.js.map +1 -1
  918. package/dist/services/remote-ops.service.d.ts +51 -9
  919. package/dist/services/remote-ops.service.d.ts.map +1 -1
  920. package/dist/services/remote-ops.service.js +235 -39
  921. package/dist/services/remote-ops.service.js.map +1 -1
  922. package/dist/services/remote-provisioner.d.ts +124 -0
  923. package/dist/services/remote-provisioner.d.ts.map +1 -0
  924. package/dist/services/remote-provisioner.js +258 -0
  925. package/dist/services/remote-provisioner.js.map +1 -0
  926. package/dist/services/secrets.rpc-service.d.ts +51 -2
  927. package/dist/services/secrets.rpc-service.d.ts.map +1 -1
  928. package/dist/services/secrets.rpc-service.js +81 -2
  929. package/dist/services/secrets.rpc-service.js.map +1 -1
  930. package/dist/services/secrets.service.d.ts +108 -9
  931. package/dist/services/secrets.service.d.ts.map +1 -1
  932. package/dist/services/secrets.service.js +313 -48
  933. package/dist/services/secrets.service.js.map +1 -1
  934. package/dist/services/slave-storage.service.d.ts +107 -0
  935. package/dist/services/slave-storage.service.d.ts.map +1 -1
  936. package/dist/services/slave-storage.service.js +171 -2
  937. package/dist/services/slave-storage.service.js.map +1 -1
  938. package/dist/services/static-carry-forward.d.ts +110 -0
  939. package/dist/services/static-carry-forward.d.ts.map +1 -0
  940. package/dist/services/static-carry-forward.js +433 -0
  941. package/dist/services/static-carry-forward.js.map +1 -0
  942. package/dist/services/sync-policy.d.ts +167 -0
  943. package/dist/services/sync-policy.d.ts.map +1 -0
  944. package/dist/services/sync-policy.js +161 -0
  945. package/dist/services/sync-policy.js.map +1 -0
  946. package/dist/services/sync-summary.d.ts +39 -0
  947. package/dist/services/sync-summary.d.ts.map +1 -0
  948. package/dist/services/sync-summary.js +62 -0
  949. package/dist/services/sync-summary.js.map +1 -0
  950. package/dist/services/sync.rpc-service.d.ts +19 -7
  951. package/dist/services/sync.rpc-service.d.ts.map +1 -1
  952. package/dist/services/sync.rpc-service.js +36 -5
  953. package/dist/services/sync.rpc-service.js.map +1 -1
  954. package/dist/services/sync.service.d.ts +350 -18
  955. package/dist/services/sync.service.d.ts.map +1 -1
  956. package/dist/services/sync.service.js +864 -116
  957. package/dist/services/sync.service.js.map +1 -1
  958. package/dist/services/system-info.rpc-service.d.ts +2 -1
  959. package/dist/services/system-info.rpc-service.d.ts.map +1 -1
  960. package/dist/services/system-info.rpc-service.js.map +1 -1
  961. package/dist/services/system-info.service.d.ts +56 -68
  962. package/dist/services/system-info.service.d.ts.map +1 -1
  963. package/dist/services/system-info.service.js +240 -127
  964. package/dist/services/system-info.service.js.map +1 -1
  965. package/dist/services/telemetry.rpc-service.d.ts.map +1 -1
  966. package/dist/services/telemetry.rpc-service.js +9 -3
  967. package/dist/services/telemetry.rpc-service.js.map +1 -1
  968. package/dist/services/telemetry.service.d.ts +4 -2
  969. package/dist/services/telemetry.service.d.ts.map +1 -1
  970. package/dist/services/telemetry.service.js +4 -2
  971. package/dist/services/telemetry.service.js.map +1 -1
  972. package/dist/services/trace-collector.rpc-service.d.ts +2 -1
  973. package/dist/services/trace-collector.rpc-service.d.ts.map +1 -1
  974. package/dist/services/trace-collector.rpc-service.js.map +1 -1
  975. package/dist/services/trace-collector.service.d.ts +2 -41
  976. package/dist/services/trace-collector.service.d.ts.map +1 -1
  977. package/dist/services/trace-collector.service.js +27 -7
  978. package/dist/services/trace-collector.service.js.map +1 -1
  979. package/dist/services/wait-for-postgres.d.ts +28 -0
  980. package/dist/services/wait-for-postgres.d.ts.map +1 -0
  981. package/dist/services/wait-for-postgres.js +77 -0
  982. package/dist/services/wait-for-postgres.js.map +1 -0
  983. package/dist/shared/alert-expression.d.ts +60 -0
  984. package/dist/shared/alert-expression.d.ts.map +1 -0
  985. package/dist/shared/alert-expression.js +124 -0
  986. package/dist/shared/alert-expression.js.map +1 -0
  987. package/dist/shared/audit-outcome.d.ts +39 -0
  988. package/dist/shared/audit-outcome.d.ts.map +1 -0
  989. package/dist/shared/audit-outcome.js +45 -0
  990. package/dist/shared/audit-outcome.js.map +1 -0
  991. package/dist/shared/build-freshness.d.ts +59 -0
  992. package/dist/shared/build-freshness.d.ts.map +1 -0
  993. package/dist/shared/build-freshness.js +113 -0
  994. package/dist/shared/build-freshness.js.map +1 -0
  995. package/dist/shared/build-stamp.d.ts +26 -0
  996. package/dist/shared/build-stamp.d.ts.map +1 -0
  997. package/dist/shared/build-stamp.js +36 -0
  998. package/dist/shared/build-stamp.js.map +1 -0
  999. package/dist/shared/describe-error.d.ts +22 -0
  1000. package/dist/shared/describe-error.d.ts.map +1 -0
  1001. package/dist/shared/describe-error.js +39 -0
  1002. package/dist/shared/describe-error.js.map +1 -0
  1003. package/dist/shared/dto/alerts.d.ts +101 -0
  1004. package/dist/shared/dto/alerts.d.ts.map +1 -0
  1005. package/dist/shared/dto/alerts.js +9 -0
  1006. package/dist/shared/dto/alerts.js.map +1 -0
  1007. package/dist/shared/dto/auth.d.ts +49 -0
  1008. package/dist/shared/dto/auth.d.ts.map +1 -0
  1009. package/dist/shared/dto/auth.js +14 -0
  1010. package/dist/shared/dto/auth.js.map +1 -0
  1011. package/dist/shared/dto/backups.d.ts +16 -0
  1012. package/dist/shared/dto/backups.d.ts.map +1 -0
  1013. package/dist/shared/dto/backups.js +9 -0
  1014. package/dist/shared/dto/backups.js.map +1 -0
  1015. package/dist/shared/dto/deploy.d.ts +28 -0
  1016. package/dist/shared/dto/deploy.d.ts.map +1 -0
  1017. package/dist/shared/dto/deploy.js +8 -0
  1018. package/dist/shared/dto/deploy.js.map +1 -0
  1019. package/dist/shared/dto/discovery.d.ts +24 -0
  1020. package/dist/shared/dto/discovery.d.ts.map +1 -0
  1021. package/dist/shared/dto/discovery.js +9 -0
  1022. package/dist/shared/dto/discovery.js.map +1 -0
  1023. package/dist/shared/dto/fleet.d.ts +35 -0
  1024. package/dist/shared/dto/fleet.d.ts.map +1 -0
  1025. package/dist/shared/dto/fleet.js +8 -0
  1026. package/dist/shared/dto/fleet.js.map +1 -0
  1027. package/dist/shared/dto/health.d.ts +26 -0
  1028. package/dist/shared/dto/health.d.ts.map +1 -0
  1029. package/dist/shared/dto/health.js +9 -0
  1030. package/dist/shared/dto/health.js.map +1 -0
  1031. package/dist/shared/dto/kubernetes.d.ts +44 -0
  1032. package/dist/shared/dto/kubernetes.d.ts.map +1 -0
  1033. package/dist/shared/dto/kubernetes.js +9 -0
  1034. package/dist/shared/dto/kubernetes.js.map +1 -0
  1035. package/dist/shared/dto/logs.d.ts +77 -0
  1036. package/dist/shared/dto/logs.d.ts.map +1 -0
  1037. package/dist/shared/dto/logs.js +10 -0
  1038. package/dist/shared/dto/logs.js.map +1 -0
  1039. package/dist/shared/dto/metrics.d.ts +65 -0
  1040. package/dist/shared/dto/metrics.d.ts.map +1 -0
  1041. package/dist/shared/dto/metrics.js +17 -0
  1042. package/dist/shared/dto/metrics.js.map +1 -0
  1043. package/dist/shared/dto/nodes.d.ts +347 -0
  1044. package/dist/shared/dto/nodes.d.ts.map +1 -0
  1045. package/dist/shared/dto/nodes.js +8 -0
  1046. package/dist/shared/dto/nodes.js.map +1 -0
  1047. package/dist/shared/dto/pipelines.d.ts +53 -0
  1048. package/dist/shared/dto/pipelines.d.ts.map +1 -0
  1049. package/dist/shared/dto/pipelines.js +9 -0
  1050. package/dist/shared/dto/pipelines.js.map +1 -0
  1051. package/dist/shared/dto/project.d.ts +142 -8
  1052. package/dist/shared/dto/project.d.ts.map +1 -1
  1053. package/dist/shared/dto/services.d.ts +858 -7
  1054. package/dist/shared/dto/services.d.ts.map +1 -1
  1055. package/dist/shared/dto/system-info.d.ts +93 -0
  1056. package/dist/shared/dto/system-info.d.ts.map +1 -0
  1057. package/dist/shared/dto/system-info.js +9 -0
  1058. package/dist/shared/dto/system-info.js.map +1 -0
  1059. package/dist/shared/dto/traces.d.ts +49 -0
  1060. package/dist/shared/dto/traces.d.ts.map +1 -0
  1061. package/dist/shared/dto/traces.js +9 -0
  1062. package/dist/shared/dto/traces.js.map +1 -0
  1063. package/dist/shared/env-config.d.ts +74 -0
  1064. package/dist/shared/env-config.d.ts.map +1 -0
  1065. package/dist/shared/env-config.js +99 -0
  1066. package/dist/shared/env-config.js.map +1 -0
  1067. package/dist/shared/events.d.ts +45 -39
  1068. package/dist/shared/events.d.ts.map +1 -1
  1069. package/dist/shared/events.js +6 -0
  1070. package/dist/shared/events.js.map +1 -1
  1071. package/dist/shared/format.d.ts +1 -1
  1072. package/dist/shared/format.d.ts.map +1 -1
  1073. package/dist/shared/format.js +4 -0
  1074. package/dist/shared/format.js.map +1 -1
  1075. package/dist/shared/local-infra-host.d.ts +28 -0
  1076. package/dist/shared/local-infra-host.d.ts.map +1 -0
  1077. package/dist/shared/local-infra-host.js +28 -0
  1078. package/dist/shared/local-infra-host.js.map +1 -0
  1079. package/dist/shared/node-check.d.ts +37 -0
  1080. package/dist/shared/node-check.d.ts.map +1 -0
  1081. package/dist/shared/node-check.js +41 -0
  1082. package/dist/shared/node-check.js.map +1 -0
  1083. package/dist/shared/paths.d.ts +29 -0
  1084. package/dist/shared/paths.d.ts.map +1 -0
  1085. package/dist/shared/paths.js +54 -0
  1086. package/dist/shared/paths.js.map +1 -0
  1087. package/dist/shared/pnpm.d.ts +29 -0
  1088. package/dist/shared/pnpm.d.ts.map +1 -0
  1089. package/dist/shared/pnpm.js +57 -0
  1090. package/dist/shared/pnpm.js.map +1 -0
  1091. package/dist/shared/private-files.d.ts +29 -0
  1092. package/dist/shared/private-files.d.ts.map +1 -0
  1093. package/dist/shared/private-files.js +109 -0
  1094. package/dist/shared/private-files.js.map +1 -0
  1095. package/dist/shared/redact-env.d.ts +24 -0
  1096. package/dist/shared/redact-env.d.ts.map +1 -0
  1097. package/dist/shared/redact-env.js +36 -0
  1098. package/dist/shared/redact-env.js.map +1 -0
  1099. package/dist/shared/release-reading.d.ts +85 -0
  1100. package/dist/shared/release-reading.d.ts.map +1 -0
  1101. package/dist/shared/release-reading.js +81 -0
  1102. package/dist/shared/release-reading.js.map +1 -0
  1103. package/dist/shared/roles.d.ts +58 -3
  1104. package/dist/shared/roles.d.ts.map +1 -1
  1105. package/dist/shared/roles.js +55 -0
  1106. package/dist/shared/roles.js.map +1 -1
  1107. package/dist/shared/rpcauth.d.ts +13 -0
  1108. package/dist/shared/rpcauth.d.ts.map +1 -0
  1109. package/dist/shared/rpcauth.js +23 -0
  1110. package/dist/shared/rpcauth.js.map +1 -0
  1111. package/dist/shared/shell-escape.d.ts +9 -0
  1112. package/dist/shared/shell-escape.d.ts.map +1 -0
  1113. package/dist/shared/shell-escape.js +11 -0
  1114. package/dist/shared/shell-escape.js.map +1 -0
  1115. package/dist/shared/sync-reading.d.ts +45 -0
  1116. package/dist/shared/sync-reading.d.ts.map +1 -0
  1117. package/dist/shared/sync-reading.js +42 -0
  1118. package/dist/shared/sync-reading.js.map +1 -0
  1119. package/dist/shared/tokens.d.ts +19 -0
  1120. package/dist/shared/tokens.d.ts.map +1 -1
  1121. package/dist/shared/tokens.js +28 -0
  1122. package/dist/shared/tokens.js.map +1 -1
  1123. package/dist/webapp/webapp.service.d.ts +33 -2
  1124. package/dist/webapp/webapp.service.d.ts.map +1 -1
  1125. package/dist/webapp/webapp.service.js +143 -31
  1126. package/dist/webapp/webapp.service.js.map +1 -1
  1127. package/dist/workers/health-monitor-process.d.ts.map +1 -1
  1128. package/dist/workers/health-monitor-process.js +10 -0
  1129. package/dist/workers/health-monitor-process.js.map +1 -1
  1130. package/dist/workers/health-monitor.service.d.ts +45 -3
  1131. package/dist/workers/health-monitor.service.d.ts.map +1 -1
  1132. package/dist/workers/health-monitor.service.js +152 -25
  1133. package/dist/workers/health-monitor.service.js.map +1 -1
  1134. package/dist/workers/system-worker-manager.d.ts +43 -0
  1135. package/dist/workers/system-worker-manager.d.ts.map +1 -1
  1136. package/dist/workers/system-worker-manager.js +150 -3
  1137. package/dist/workers/system-worker-manager.js.map +1 -1
  1138. package/dist/workers/types.d.ts +8 -2
  1139. package/dist/workers/types.d.ts.map +1 -1
  1140. package/package.json +68 -30
  1141. package/webapp/dist/BUILD.json +5 -0
  1142. package/webapp/dist/assets/FormControlLabel-BbSxpQwN.js +1 -0
  1143. package/webapp/dist/assets/Grid-DizFZYue.js +1 -0
  1144. package/webapp/dist/assets/Switch-Bfiqzx8l.js +1 -0
  1145. package/webapp/dist/assets/alerts-DH_RVRS3.js +1 -0
  1146. package/webapp/dist/assets/apps-B96355sz.js +1 -0
  1147. package/webapp/dist/assets/audit-CYGtbi4k.js +1 -0
  1148. package/webapp/dist/assets/client-BmqFExWT.js +1 -0
  1149. package/webapp/dist/assets/constants-veKGFkC6.js +1 -0
  1150. package/webapp/dist/assets/containers-B_TpThln.js +2 -0
  1151. package/webapp/dist/assets/daemon-memory-CCPZ4cV_.js +1 -0
  1152. package/webapp/dist/assets/dashboard-DHf2_65N.js +1 -0
  1153. package/webapp/dist/assets/dashboard-builder-CWY2pjeG.js +1 -0
  1154. package/webapp/dist/assets/deploy-release-dialog-Dp-zpSAd.js +1 -0
  1155. package/webapp/dist/assets/deployments-tJI6O3fK.js +1 -0
  1156. package/webapp/dist/assets/detail-B2zP1Hto.js +8 -0
  1157. package/webapp/dist/assets/detail-CoIrwmsy.js +1 -0
  1158. package/webapp/dist/assets/detail-DWaGaOtL.js +2 -0
  1159. package/webapp/dist/assets/formatters-BqjL73N3.js +1 -0
  1160. package/webapp/dist/assets/index-Dvo0iprx.css +1 -0
  1161. package/webapp/dist/assets/index-vMnY_4jR.js +412 -0
  1162. package/webapp/dist/assets/logs-DTRjOfX8.js +12 -0
  1163. package/webapp/dist/assets/maplibre-gl-DowHoZAx.js +814 -0
  1164. package/webapp/dist/assets/metrics-UCajtdox.js +2 -0
  1165. package/webapp/dist/assets/nodes-DuTVU0f6.js +7 -0
  1166. package/webapp/dist/assets/pipelines-C8BeDcAl.js +4 -0
  1167. package/webapp/dist/assets/projects-Dp_zFfLY.js +1 -0
  1168. package/webapp/dist/assets/react-DlmbjZJV.js +1 -0
  1169. package/webapp/dist/assets/react-apexcharts.esm-C8pn45ml.js +97 -0
  1170. package/webapp/dist/assets/release-bits-BzTKz5fM.js +1 -0
  1171. package/webapp/dist/assets/release-build-panel-DcW9YcXQ.js +1 -0
  1172. package/webapp/dist/assets/releases-B4hcr1bE.js +2 -0
  1173. package/webapp/dist/assets/rolldown-runtime-XKyaHtl9.js +1 -0
  1174. package/webapp/dist/assets/settings-DIteZTbe.js +1 -0
  1175. package/webapp/dist/assets/settled-pair-C7SjZuns.js +1 -0
  1176. package/webapp/dist/assets/sign-in-D4kMBOHp.js +1 -0
  1177. package/webapp/dist/assets/stacks-Brnf-EB7.js +1 -0
  1178. package/webapp/dist/assets/sync-reading-C3PnJ7AX.js +1 -0
  1179. package/webapp/dist/assets/system-info-CFDNVKkU.js +1 -0
  1180. package/webapp/dist/assets/topology-7WeTUsDN.js +12 -0
  1181. package/webapp/dist/assets/topology-DLioOiRN.css +1 -0
  1182. package/webapp/dist/assets/traces-9c3gwCN-.js +1 -0
  1183. package/webapp/dist/assets/use-stack-context-CnA5FTHu.js +1 -0
  1184. package/webapp/dist/index.html +6 -6
  1185. package/dist/commands/dev.d.ts +0 -23
  1186. package/dist/commands/dev.d.ts.map +0 -1
  1187. package/dist/commands/dev.js +0 -76
  1188. package/dist/commands/dev.js.map +0 -1
  1189. package/dist/config/define-app.d.ts +0 -6
  1190. package/dist/config/define-app.d.ts.map +0 -1
  1191. package/dist/config/define-app.js +0 -38
  1192. package/dist/config/define-app.js.map +0 -1
  1193. package/dist/infrastructure/gateway-generator.d.ts +0 -63
  1194. package/dist/infrastructure/gateway-generator.d.ts.map +0 -1
  1195. package/dist/infrastructure/gateway-generator.js +0 -253
  1196. package/dist/infrastructure/gateway-generator.js.map +0 -1
  1197. package/dist/monitoring/health.service.d.ts +0 -14
  1198. package/dist/monitoring/health.service.d.ts.map +0 -1
  1199. package/dist/monitoring/health.service.js +0 -50
  1200. package/dist/monitoring/health.service.js.map +0 -1
  1201. package/dist/monitoring/metrics.service.d.ts +0 -14
  1202. package/dist/monitoring/metrics.service.d.ts.map +0 -1
  1203. package/dist/monitoring/metrics.service.js +0 -40
  1204. package/dist/monitoring/metrics.service.js.map +0 -1
  1205. package/dist/orchestrator/bootstrap-runner.d.ts +0 -15
  1206. package/dist/orchestrator/bootstrap-runner.d.ts.map +0 -1
  1207. package/dist/orchestrator/bootstrap-runner.js +0 -152
  1208. package/dist/orchestrator/bootstrap-runner.js.map +0 -1
  1209. package/dist/orchestrator/topology-proxy.d.ts +0 -65
  1210. package/dist/orchestrator/topology-proxy.d.ts.map +0 -1
  1211. package/dist/orchestrator/topology-proxy.js +0 -209
  1212. package/dist/orchestrator/topology-proxy.js.map +0 -1
  1213. package/dist/orchestrator/topology-relay.d.ts +0 -111
  1214. package/dist/orchestrator/topology-relay.d.ts.map +0 -1
  1215. package/dist/orchestrator/topology-relay.js +0 -255
  1216. package/dist/orchestrator/topology-relay.js.map +0 -1
  1217. package/dist/services/auth-middleware.d.ts +0 -47
  1218. package/dist/services/auth-middleware.d.ts.map +0 -1
  1219. package/dist/services/auth-middleware.js +0 -158
  1220. package/dist/services/auth-middleware.js.map +0 -1
  1221. package/dist/services/environment.rpc-service.d.ts +0 -22
  1222. package/dist/services/environment.rpc-service.d.ts.map +0 -1
  1223. package/dist/services/environment.rpc-service.js +0 -65
  1224. package/dist/services/environment.rpc-service.js.map +0 -1
  1225. package/dist/services/environment.service.d.ts +0 -87
  1226. package/dist/services/environment.service.d.ts.map +0 -1
  1227. package/dist/services/environment.service.js +0 -220
  1228. package/dist/services/environment.service.js.map +0 -1
  1229. package/dist/services/metrics-collector.service.d.ts +0 -103
  1230. package/dist/services/metrics-collector.service.d.ts.map +0 -1
  1231. package/dist/services/metrics-collector.service.js +0 -235
  1232. package/dist/services/metrics-collector.service.js.map +0 -1
  1233. package/dist/services/metrics.rpc-service.d.ts +0 -41
  1234. package/dist/services/metrics.rpc-service.d.ts.map +0 -1
  1235. package/dist/services/metrics.rpc-service.js +0 -90
  1236. package/dist/services/metrics.rpc-service.js.map +0 -1
  1237. package/dist/services/metrics.service.d.ts +0 -72
  1238. package/dist/services/metrics.service.d.ts.map +0 -1
  1239. package/dist/services/metrics.service.js +0 -185
  1240. package/dist/services/metrics.service.js.map +0 -1
  1241. package/dist/supervisor/omnitron-supervisor.d.ts +0 -21
  1242. package/dist/supervisor/omnitron-supervisor.d.ts.map +0 -1
  1243. package/dist/supervisor/omnitron-supervisor.js +0 -43
  1244. package/dist/supervisor/omnitron-supervisor.js.map +0 -1
  1245. package/dist/webapp/static-server.d.ts +0 -24
  1246. package/dist/webapp/static-server.d.ts.map +0 -1
  1247. package/dist/webapp/static-server.js +0 -152
  1248. package/dist/webapp/static-server.js.map +0 -1
  1249. package/webapp/dist/assets/Badge-D2ZBP5iK.js +0 -1
  1250. package/webapp/dist/assets/Card-vO88g06B.js +0 -1
  1251. package/webapp/dist/assets/CardActions-C9h7Q2wW.js +0 -1
  1252. package/webapp/dist/assets/CardContent-BA_Xmmhk.js +0 -1
  1253. package/webapp/dist/assets/CardHeader-ceIs__6x.js +0 -1
  1254. package/webapp/dist/assets/Chip-Ckk0xUhK.js +0 -1
  1255. package/webapp/dist/assets/DialogActions-BhHM7hov.js +0 -1
  1256. package/webapp/dist/assets/DialogContentText-BT2JQRmK.js +0 -1
  1257. package/webapp/dist/assets/FormControlLabel-CcQByVS8.js +0 -1
  1258. package/webapp/dist/assets/Grid-14PETRQW.js +0 -1
  1259. package/webapp/dist/assets/InputAdornment-B8aHIsQ7.js +0 -1
  1260. package/webapp/dist/assets/Skeleton-B74-Ds6O.js +0 -37
  1261. package/webapp/dist/assets/Switch-DvWD2wh4.js +0 -1
  1262. package/webapp/dist/assets/SwitchBase-CDU4nY8O.js +0 -1
  1263. package/webapp/dist/assets/Tab-DcCOYYp5.js +0 -1
  1264. package/webapp/dist/assets/TableContainer-CzTh4mu-.js +0 -1
  1265. package/webapp/dist/assets/TableRow-BySEreZR.js +0 -2
  1266. package/webapp/dist/assets/TextField-BLf-BHz2.js +0 -1
  1267. package/webapp/dist/assets/alerts-DnRbT41C.js +0 -1
  1268. package/webapp/dist/assets/apps-CdR0VH2d.js +0 -1
  1269. package/webapp/dist/assets/chunk-DtcAfS_W.js +0 -1
  1270. package/webapp/dist/assets/client-DU8I_lDc.js +0 -2
  1271. package/webapp/dist/assets/constants-BgnT-Xdy.js +0 -1
  1272. package/webapp/dist/assets/containers-Dw-rRXV1.js +0 -1
  1273. package/webapp/dist/assets/dashboard-CzgB0uZz.js +0 -1
  1274. package/webapp/dist/assets/dashboard-builder-DsA0yg33.js +0 -1
  1275. package/webapp/dist/assets/deployments-DtQAoIcQ.js +0 -1
  1276. package/webapp/dist/assets/detail-BJR-G7JG.js +0 -1
  1277. package/webapp/dist/assets/detail-nlCeSltl.js +0 -8
  1278. package/webapp/dist/assets/formatters-Do41SRmE.js +0 -1
  1279. package/webapp/dist/assets/index-ByQDwp2r.js +0 -566
  1280. package/webapp/dist/assets/index-CHVXOsTS.css +0 -1
  1281. package/webapp/dist/assets/isMuiElement-DwF2naaF.js +0 -1
  1282. package/webapp/dist/assets/logs-Kn8o4H7k.js +0 -11
  1283. package/webapp/dist/assets/metrics-DN8Zu5wT.js +0 -2
  1284. package/webapp/dist/assets/nodes-Bgch7AtN.js +0 -7
  1285. package/webapp/dist/assets/pipelines-Cry3qm-S.js +0 -4
  1286. package/webapp/dist/assets/popper-BJFSj6rc.js +0 -1
  1287. package/webapp/dist/assets/preload-helper-DSXbuxSR.js +0 -1
  1288. package/webapp/dist/assets/projects-Dym2GI1U.js +0 -1
  1289. package/webapp/dist/assets/react-apexcharts.esm-CSGK5Cxn.js +0 -958
  1290. package/webapp/dist/assets/react-apexcharts.esm-DEAWOwx5.js +0 -1003
  1291. package/webapp/dist/assets/settings-va3zTcow.js +0 -1
  1292. package/webapp/dist/assets/sign-in-ik35umbp.js +0 -1
  1293. package/webapp/dist/assets/stacks-CVFOnxbF.js +0 -1
  1294. package/webapp/dist/assets/system-info-npIXAjX2.js +0 -1
  1295. package/webapp/dist/assets/topology-CHpVij2M.css +0 -1
  1296. package/webapp/dist/assets/topology-bDe70vLs.js +0 -12
  1297. package/webapp/dist/assets/traces-DIIcT8DF.js +0 -1
  1298. package/webapp/dist/assets/use-stack-context-DHLwZv1r.js +0 -1
  1299. /package/webapp/dist/assets/{fs-CgZLtHiQ.js → fs-Ccl3sAcp.js} +0 -0
@@ -14,47 +14,8 @@
14
14
  import type { Kysely } from 'kysely';
15
15
  import type { ILogger } from '@omnitron-dev/titan/module/logger';
16
16
  import type { OmnitronDatabase } from '../database/schema.js';
17
- export interface TraceSpan {
18
- traceId: string;
19
- spanId: string;
20
- parentSpanId: string | null;
21
- operationName: string;
22
- serviceName: string;
23
- startTime: string;
24
- endTime: string;
25
- duration: number;
26
- status: 'ok' | 'error';
27
- tags: Record<string, string>;
28
- logs?: Array<{
29
- timestamp: string;
30
- message: string;
31
- }>;
32
- }
33
- export interface Trace {
34
- traceId: string;
35
- spans: TraceSpan[];
36
- duration: number;
37
- serviceName: string;
38
- operationName: string;
39
- startTime: string;
40
- }
41
- export interface TraceFilter {
42
- service?: string;
43
- operation?: string;
44
- minDuration?: number;
45
- maxDuration?: number;
46
- from?: string;
47
- to?: string;
48
- limit?: number;
49
- tags?: Record<string, string>;
50
- }
51
- export interface ServiceMapEntry {
52
- source: string;
53
- target: string;
54
- callCount: number;
55
- avgDuration: number;
56
- errorRate: number;
57
- }
17
+ import type { TraceSpan, Trace, TraceFilter, ServiceMapEntry } from '../shared/dto/traces.js';
18
+ export type { TraceSpan, Trace, TraceFilter, ServiceMapEntry, } from '../shared/dto/traces.js';
58
19
  export declare class TraceCollectorService {
59
20
  private readonly db;
60
21
  private readonly logger;
@@ -1 +1 @@
1
- {"version":3,"file":"trace-collector.service.d.ts","sourceRoot":"","sources":["../../src/services/trace-collector.service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAErC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mCAAmC,CAAC;AACjE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAM9D,MAAM,WAAW,SAAS;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,IAAI,GAAG,OAAO,CAAC;IACvB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7B,IAAI,CAAC,EAAE,KAAK,CAAC;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACtD;AAED,MAAM,WAAW,KAAK;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,SAAS,EAAE,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,WAAW;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC/B;AAED,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;CACnB;AAMD,qBAAa,qBAAqB;IAO9B,OAAO,CAAC,QAAQ,CAAC,EAAE;IACnB,OAAO,CAAC,QAAQ,CAAC,MAAM;IAPzB,OAAO,CAAC,MAAM,CAAmB;IACjC,OAAO,CAAC,UAAU,CAA+B;IACjD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAS;IACvC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAO;gBAGlB,EAAE,EAAE,MAAM,CAAC,gBAAgB,CAAC,EAC5B,MAAM,EAAE,OAAO;IAOlC,KAAK,IAAI,IAAI;IAMP,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAYrB,UAAU,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAO1C,WAAW,CAAC,KAAK,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAW9C,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC;IAuBhD,WAAW,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;IA+ClD,aAAa,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;YA8BnC,KAAK;IAwCnB,OAAO,CAAC,OAAO;CAehB"}
1
+ {"version":3,"file":"trace-collector.service.d.ts","sourceRoot":"","sources":["../../src/services/trace-collector.service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAErC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mCAAmC,CAAC;AACjE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,KAAK,EACV,SAAS,EACT,KAAK,EACL,WAAW,EACX,eAAe,EAChB,MAAM,yBAAyB,CAAC;AAMjC,YAAY,EACV,SAAS,EACT,KAAK,EACL,WAAW,EACX,eAAe,GAChB,MAAM,yBAAyB,CAAC;AAOjC,qBAAa,qBAAqB;IAO9B,OAAO,CAAC,QAAQ,CAAC,EAAE;IACnB,OAAO,CAAC,QAAQ,CAAC,MAAM;IAPzB,OAAO,CAAC,MAAM,CAAmB;IACjC,OAAO,CAAC,UAAU,CAA+B;IACjD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAS;IACvC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAO;IAErC,YACmB,EAAE,EAAE,MAAM,CAAC,gBAAgB,CAAC,EAC5B,MAAM,EAAE,OAAO,EAC9B;IAMJ,KAAK,IAAI,IAAI,CAIZ;IAEK,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAM1B;IAMK,UAAU,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAK/C;IAEK,WAAW,CAAC,KAAK,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAKnD;IAMK,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,CAqBrD;IAEK,WAAW,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC,CAyDvD;IAEK,aAAa,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC,CAgChD;YAMa,KAAK;IAwCnB,OAAO,CAAC,OAAO;CAehB"}
@@ -82,10 +82,22 @@ export class TraceCollectorService {
82
82
  async queryTraces(filter) {
83
83
  const limit = filter.limit ?? 50;
84
84
  // Query distinct trace IDs matching the filter, then fetch full traces
85
+ // The most recent span of each trace decides where the trace sorts.
86
+ //
87
+ // This was `SELECT DISTINCT traceId … ORDER BY startTime`, which Postgres
88
+ // rejects outright — "for SELECT DISTINCT, ORDER BY expressions must
89
+ // appear in select list" — so the traces page has never listed anything.
90
+ // The console hid it: the page fired this and `getServiceMap` through
91
+ // `Promise.allSettled` and read only the fulfilled halves, so a rejection
92
+ // left the previous (empty) value on screen with nothing said.
93
+ //
94
+ // Selecting the max start time per trace both satisfies the rule and is
95
+ // the ordering that was intended: a trace is as recent as its latest span.
85
96
  let query = this.db
86
97
  .selectFrom('traces')
87
98
  .select(['traceId'])
88
- .distinct();
99
+ .select(sql `MAX("startTime")`.as('latestStart'))
100
+ .groupBy('traceId');
89
101
  if (filter.service) {
90
102
  query = query.where('serviceName', '=', filter.service);
91
103
  }
@@ -110,7 +122,7 @@ export class TraceCollectorService {
110
122
  }
111
123
  }
112
124
  const traceIds = await query
113
- .orderBy('startTime', 'desc')
125
+ .orderBy('latestStart', 'desc')
114
126
  .limit(limit)
115
127
  .execute();
116
128
  const traces = [];
@@ -123,17 +135,25 @@ export class TraceCollectorService {
123
135
  }
124
136
  async getServiceMap() {
125
137
  // Query parent-child span pairs to build service-to-service call map
138
+ // Column names are quoted camelCase — this table is created that way (see
139
+ // migration 003), and the unquoted snake_case this query used does not
140
+ // exist, so every call failed with `column child.trace_id does not exist`.
141
+ // Both halves of the traces page were broken in the same way and the page
142
+ // showed neither, because it read only the fulfilled halves of an
143
+ // `allSettled` pair.
126
144
  const rows = await sql `
127
145
  SELECT
128
- parent.service_name AS source,
129
- child.service_name AS target,
146
+ parent."serviceName" AS source,
147
+ child."serviceName" AS target,
130
148
  COUNT(*) AS call_count,
131
149
  AVG(child.duration) AS avg_duration,
132
150
  SUM(CASE WHEN child.status = 'error' THEN 1 ELSE 0 END)::float / NULLIF(COUNT(*), 0) AS error_rate
133
151
  FROM traces child
134
- JOIN traces parent ON child.trace_id = parent.trace_id AND child.parent_span_id = parent.span_id
135
- WHERE parent.service_name != child.service_name
136
- GROUP BY parent.service_name, child.service_name
152
+ JOIN traces parent
153
+ ON child."traceId" = parent."traceId"
154
+ AND child."parentSpanId" = parent."spanId"
155
+ WHERE parent."serviceName" != child."serviceName"
156
+ GROUP BY parent."serviceName", child."serviceName"
137
157
  ORDER BY call_count DESC
138
158
  LIMIT 100
139
159
  `.execute(this.db);
@@ -1 +1 @@
1
- {"version":3,"file":"trace-collector.service.js","sourceRoot":"","sources":["../../src/services/trace-collector.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"trace-collector.service.js","sourceRoot":"","sources":["../../src/services/trace-collector.service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,28 @@
1
+ /**
2
+ * Wait until a Postgres accepts connections.
3
+ *
4
+ * Its own module because it has no dependency on `ProjectService` and one test
5
+ * that mattered could not reach it there. `project-service-internals.spec.ts`
6
+ * used to carry a COPY of this function, with a comment saying so, and
7
+ * therefore passed no matter what the real implementation did — including a
8
+ * change to this very message. A test that exercises a duplicate of the code
9
+ * is not a test of the code.
10
+ */
11
+ /**
12
+ * Poll until Postgres answers `SELECT 1`, or the deadline passes.
13
+ *
14
+ * Containers are reported "running" by Docker before they accept connections,
15
+ * especially right after a fresh provision: a cold one has to initdb and
16
+ * install extensions first. Callers run migrations immediately after this
17
+ * returns, and a `stack start` aborts entirely if it throws, so the deadline
18
+ * they pass decides whether a slow first boot is a delay or a stack that never
19
+ * comes up.
20
+ *
21
+ * On failure the message carries the last connection error and the time
22
+ * actually spent. Without them it said only that the deadline passed, which is
23
+ * the one thing the operator already knows — "not listening yet", "wrong
24
+ * password" and "database refuses connections" all arrived as the same
25
+ * sentence, naming a duration rather than a cause.
26
+ */
27
+ export declare function waitForPostgres(host: string, port: number, user: string, password: string, timeoutMs: number): Promise<void>;
28
+ //# sourceMappingURL=wait-for-postgres.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wait-for-postgres.d.ts","sourceRoot":"","sources":["../../src/services/wait-for-postgres.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,eAAe,CACnC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,IAAI,CAAC,CAsDf"}
@@ -0,0 +1,77 @@
1
+ /**
2
+ * Wait until a Postgres accepts connections.
3
+ *
4
+ * Its own module because it has no dependency on `ProjectService` and one test
5
+ * that mattered could not reach it there. `project-service-internals.spec.ts`
6
+ * used to carry a COPY of this function, with a comment saying so, and
7
+ * therefore passed no matter what the real implementation did — including a
8
+ * change to this very message. A test that exercises a duplicate of the code
9
+ * is not a test of the code.
10
+ */
11
+ /**
12
+ * Poll until Postgres answers `SELECT 1`, or the deadline passes.
13
+ *
14
+ * Containers are reported "running" by Docker before they accept connections,
15
+ * especially right after a fresh provision: a cold one has to initdb and
16
+ * install extensions first. Callers run migrations immediately after this
17
+ * returns, and a `stack start` aborts entirely if it throws, so the deadline
18
+ * they pass decides whether a slow first boot is a delay or a stack that never
19
+ * comes up.
20
+ *
21
+ * On failure the message carries the last connection error and the time
22
+ * actually spent. Without them it said only that the deadline passed, which is
23
+ * the one thing the operator already knows — "not listening yet", "wrong
24
+ * password" and "database refuses connections" all arrived as the same
25
+ * sentence, naming a duration rather than a cause.
26
+ */
27
+ export async function waitForPostgres(host, port, user, password, timeoutMs) {
28
+ const startedAt = Date.now();
29
+ const deadline = startedAt + timeoutMs;
30
+ const { Client } = await import('pg').catch(() => ({ Client: null }));
31
+ const failure = (kind, lastError) => {
32
+ const waited = Math.round((Date.now() - startedAt) / 1000);
33
+ const last = lastError ? ` Last attempt: ${lastError.message}.` : '';
34
+ return new Error(`Postgres at ${host}:${port} ${kind} (waited ${waited}s, limit ${timeoutMs}ms).${last}`, lastError ? { cause: lastError } : undefined);
35
+ };
36
+ let lastError = null;
37
+ if (!Client) {
38
+ // `pg` unavailable in this build — fall back to a TCP connect probe.
39
+ const net = await import('node:net');
40
+ while (Date.now() < deadline) {
41
+ const ok = await new Promise((resolve) => {
42
+ const sock = net.createConnection({ host, port }, () => {
43
+ sock.end();
44
+ resolve(true);
45
+ });
46
+ sock.once('error', (err) => {
47
+ lastError = err;
48
+ resolve(false);
49
+ });
50
+ sock.setTimeout(2_000, () => {
51
+ sock.destroy();
52
+ resolve(false);
53
+ });
54
+ });
55
+ if (ok)
56
+ return;
57
+ await new Promise((r) => setTimeout(r, 500));
58
+ }
59
+ throw failure('was not reachable', lastError);
60
+ }
61
+ while (Date.now() < deadline) {
62
+ const client = new Client({ host, port, user, password, database: 'postgres', connectionTimeoutMillis: 2_000 });
63
+ try {
64
+ await client.connect();
65
+ await client.query('SELECT 1');
66
+ await client.end().catch(() => { });
67
+ return;
68
+ }
69
+ catch (err) {
70
+ lastError = err;
71
+ await client.end().catch(() => { });
72
+ await new Promise((r) => setTimeout(r, 500));
73
+ }
74
+ }
75
+ throw failure('did not become ready', lastError);
76
+ }
77
+ //# sourceMappingURL=wait-for-postgres.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wait-for-postgres.js","sourceRoot":"","sources":["../../src/services/wait-for-postgres.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,60 @@
1
+ /**
2
+ * The alert expressions this platform can evaluate.
3
+ *
4
+ * Shared between the daemon and the console on purpose. The evaluator
5
+ * answers anything it cannot parse with `firing: false` — the same answer a
6
+ * healthy platform gives — so a rule outside this grammar is created
7
+ * successfully, shows enabled and green, and catches nothing. There is no
8
+ * later moment at which anybody finds out.
9
+ *
10
+ * The console's own placeholder used to read `cpu_percent > 90`, which is
11
+ * not one of these forms: the interface was suggesting an expression that
12
+ * could never fire. Keeping the grammar in one dependency-free module is
13
+ * what lets the form reject it before the rule exists, the evaluator report
14
+ * it if one slips through, and `omnitron doctor` find the ones already
15
+ * stored — all from the same list.
16
+ */
17
+ /** Every expression form `evaluateExpression` recognises. */
18
+ export declare const ALERT_EXPRESSION_FORMS: readonly [RegExp, RegExp, RegExp, RegExp];
19
+ /** Human-readable grammar, for a message that has to tell someone what to type. */
20
+ export declare const ALERT_EXPRESSION_HELP = "app.<name|*>.status != <status> \u00B7 app.<name|*>.<cpu|memory> <op> <number> \u00B7 infra.<name|*>.health != <status> \u00B7 host.disk.free <op> <bytes>";
21
+ /** Whether the evaluator can read this expression at all. */
22
+ export declare function isAlertExpressionParseable(expression: string): boolean;
23
+ /** Ascending: a threshold of `warning` notifies for `warning` and `critical`. */
24
+ export declare const ALERT_SEVERITIES: readonly ['info', 'warning', 'critical'];
25
+ export type AlertSeverity = (typeof ALERT_SEVERITIES)[number];
26
+ export declare function severityRank(severity: string): number;
27
+ /**
28
+ * What a rule watches, read off its expression — a state (`health`) or a
29
+ * figure (`metric`). It used to be chosen in the form, beside the expression
30
+ * that already said it, and nothing read the choice: a rule could be filed
31
+ * as `log`, a kind the grammar has no form for.
32
+ */
33
+ export declare function alertRuleTypeOf(expression: string): 'metric' | 'health' | null;
34
+ export declare const ALERT_RULE_LIMITS: {
35
+ readonly name: 100;
36
+ readonly expression: 200;
37
+ readonly summary: 500;
38
+ readonly forDuration: 86400;
39
+ };
40
+ export interface AlertRuleFields {
41
+ name: string;
42
+ expression: string;
43
+ severity: AlertSeverity;
44
+ /** Seconds the condition must hold before the alert fires; null fires at once. */
45
+ forDuration: number | null;
46
+ /** The sentence the alert is listed with; null lists the expression and its value. */
47
+ summary: string | null;
48
+ enabled: boolean;
49
+ }
50
+ /**
51
+ * The fields of a rule as a client sends them, checked and normalised — one
52
+ * function for the console's form and for the daemon, so the two cannot
53
+ * drift. `partial` reads an update: absent fields stay absent. Every problem
54
+ * is named, one per field.
55
+ */
56
+ export declare function readAlertRuleFields(input: unknown, partial: boolean): {
57
+ fields: Partial<AlertRuleFields>;
58
+ problems: string[];
59
+ };
60
+ //# sourceMappingURL=alert-expression.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"alert-expression.d.ts","sourceRoot":"","sources":["../../src/shared/alert-expression.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,6DAA6D;AAC7D,eAAO,MAAM,sBAAsB,2CAMzB,CAAC;AAEX,mFAAmF;AACnF,eAAO,MAAM,qBAAqB,+JAC6G,CAAC;AAEhJ,6DAA6D;AAC7D,wBAAgB,0BAA0B,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAGtE;AAMD,iFAAiF;AACjF,eAAO,MAAM,gBAAgB,YAAI,MAAM,EAAE,SAAS,EAAE,UAAU,CAAU,CAAC;AACzE,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,gBAAgB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE9D,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAErD;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,QAAQ,GAAG,QAAQ,GAAG,IAAI,CAK9E;AAED,eAAO,MAAM,iBAAiB;aAAK,IAAI,EAAE,GAAG;aAAE,UAAU,EAAE,GAAG;aAAE,OAAO,EAAE,GAAG;aAAE,WAAW,EAAE,KAAM;CAAW,CAAC;AAE5G,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,aAAa,CAAC;IACxB,kFAAkF;IAClF,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,sFAAsF;IACtF,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,OAAO,EAAE,OAAO,CAAC;CAClB;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,OAAO,EACd,OAAO,EAAE,OAAO,GACf;IAAE,MAAM,EAAE,OAAO,CAAC,eAAe,CAAC,CAAC;IAAC,QAAQ,EAAE,MAAM,EAAE,CAAA;CAAE,CA4C1D"}
@@ -0,0 +1,124 @@
1
+ /**
2
+ * The alert expressions this platform can evaluate.
3
+ *
4
+ * Shared between the daemon and the console on purpose. The evaluator
5
+ * answers anything it cannot parse with `firing: false` — the same answer a
6
+ * healthy platform gives — so a rule outside this grammar is created
7
+ * successfully, shows enabled and green, and catches nothing. There is no
8
+ * later moment at which anybody finds out.
9
+ *
10
+ * The console's own placeholder used to read `cpu_percent > 90`, which is
11
+ * not one of these forms: the interface was suggesting an expression that
12
+ * could never fire. Keeping the grammar in one dependency-free module is
13
+ * what lets the form reject it before the rule exists, the evaluator report
14
+ * it if one slips through, and `omnitron doctor` find the ones already
15
+ * stored — all from the same list.
16
+ */
17
+ /** Every expression form `evaluateExpression` recognises. */
18
+ export const ALERT_EXPRESSION_FORMS = [
19
+ /^app\.(\*|[\w-]+)\.status\s*(!=|==)\s*(\w+)$/,
20
+ /^app\.(\*|[\w-]+)\.(cpu|memory)\s*(>|<|>=|<=)\s*(\d+)$/,
21
+ /^infra\.(\*|[\w-]+)\.health\s*(!=|==)\s*(\w+)$/,
22
+ // Bytes free on the host's own disk (monitoring/host-disk.ts).
23
+ /^host\.disk\.free\s*(>|<|>=|<=)\s*(\d+)$/,
24
+ ];
25
+ /** Human-readable grammar, for a message that has to tell someone what to type. */
26
+ export const ALERT_EXPRESSION_HELP = 'app.<name|*>.status != <status> · app.<name|*>.<cpu|memory> <op> <number> · infra.<name|*>.health != <status> · host.disk.free <op> <bytes>';
27
+ /** Whether the evaluator can read this expression at all. */
28
+ export function isAlertExpressionParseable(expression) {
29
+ const trimmed = expression.trim();
30
+ return ALERT_EXPRESSION_FORMS.some((form) => form.test(trimmed));
31
+ }
32
+ // =============================================================================
33
+ // Rules — what a rule is made of, checked the same way in the form and the daemon
34
+ // =============================================================================
35
+ /** Ascending: a threshold of `warning` notifies for `warning` and `critical`. */
36
+ export const ALERT_SEVERITIES = ['info', 'warning', 'critical'];
37
+ export function severityRank(severity) {
38
+ return ALERT_SEVERITIES.indexOf(severity);
39
+ }
40
+ /**
41
+ * What a rule watches, read off its expression — a state (`health`) or a
42
+ * figure (`metric`). It used to be chosen in the form, beside the expression
43
+ * that already said it, and nothing read the choice: a rule could be filed
44
+ * as `log`, a kind the grammar has no form for.
45
+ */
46
+ export function alertRuleTypeOf(expression) {
47
+ const trimmed = expression.trim();
48
+ if (ALERT_EXPRESSION_FORMS[1].test(trimmed) || ALERT_EXPRESSION_FORMS[3].test(trimmed))
49
+ return 'metric';
50
+ if (ALERT_EXPRESSION_FORMS[0].test(trimmed) || ALERT_EXPRESSION_FORMS[2].test(trimmed))
51
+ return 'health';
52
+ return null;
53
+ }
54
+ export const ALERT_RULE_LIMITS = { name: 100, expression: 200, summary: 500, forDuration: 86_400 };
55
+ /**
56
+ * The fields of a rule as a client sends them, checked and normalised — one
57
+ * function for the console's form and for the daemon, so the two cannot
58
+ * drift. `partial` reads an update: absent fields stay absent. Every problem
59
+ * is named, one per field.
60
+ */
61
+ export function readAlertRuleFields(input, partial) {
62
+ const raw = (input !== null && typeof input === 'object' ? input : {});
63
+ const fields = {};
64
+ const problems = [];
65
+ const present = (key) => raw[key] !== undefined;
66
+ if (present('name') || !partial) {
67
+ const name = typeof raw['name'] === 'string' ? raw['name'].trim() : '';
68
+ if (name.length === 0 || name.length > ALERT_RULE_LIMITS.name) {
69
+ problems.push(`name: 1 to ${ALERT_RULE_LIMITS.name} characters`);
70
+ }
71
+ else
72
+ fields.name = name;
73
+ }
74
+ if (present('expression') || !partial) {
75
+ const expression = typeof raw['expression'] === 'string' ? raw['expression'].trim() : '';
76
+ if (expression.length > ALERT_RULE_LIMITS.expression || !isAlertExpressionParseable(expression)) {
77
+ problems.push(`expression: not one the evaluator reads — ${ALERT_EXPRESSION_HELP}`);
78
+ }
79
+ else
80
+ fields.expression = expression;
81
+ }
82
+ if (present('severity') || !partial) {
83
+ const severity = raw['severity'];
84
+ if (typeof severity !== 'string' || severityRank(severity) < 0) {
85
+ problems.push(`severity: one of ${ALERT_SEVERITIES.join(', ')}`);
86
+ }
87
+ else
88
+ fields.severity = severity;
89
+ }
90
+ if (present('forDuration')) {
91
+ const seconds = raw['forDuration'];
92
+ if (seconds === null)
93
+ fields.forDuration = null;
94
+ else if (typeof seconds !== 'number' || !Number.isInteger(seconds) || seconds < 0 || seconds > ALERT_RULE_LIMITS.forDuration) {
95
+ problems.push(`forDuration: whole seconds from 0 to ${ALERT_RULE_LIMITS.forDuration}, or null`);
96
+ }
97
+ else
98
+ fields.forDuration = seconds === 0 ? null : seconds;
99
+ }
100
+ else if (!partial)
101
+ fields.forDuration = null;
102
+ if (present('summary')) {
103
+ const summary = raw['summary'];
104
+ if (summary === null || (typeof summary === 'string' && summary.trim() === ''))
105
+ fields.summary = null;
106
+ else if (typeof summary !== 'string' || summary.trim().length > ALERT_RULE_LIMITS.summary) {
107
+ problems.push(`summary: at most ${ALERT_RULE_LIMITS.summary} characters`);
108
+ }
109
+ else
110
+ fields.summary = summary.trim();
111
+ }
112
+ else if (!partial)
113
+ fields.summary = null;
114
+ if (present('enabled')) {
115
+ if (typeof raw['enabled'] !== 'boolean')
116
+ problems.push('enabled: true or false');
117
+ else
118
+ fields.enabled = raw['enabled'];
119
+ }
120
+ else if (!partial)
121
+ fields.enabled = true;
122
+ return { fields, problems };
123
+ }
124
+ //# sourceMappingURL=alert-expression.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"alert-expression.js","sourceRoot":"","sources":["../../src/shared/alert-expression.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,39 @@
1
+ /**
2
+ * How an audit row's action ended — one reading for `omnitron audit`, which
3
+ * colours it, and the console's audit page, which showed none: its rows
4
+ * carried `outcome=partial` as one more `key=value` among the details, so a
5
+ * stack start in which apps did not come up read like any other.
6
+ *
7
+ * Imported by the console through `@omnitron-dev/omnitron/audit-outcome`, so
8
+ * nothing here may need Node.
9
+ */
10
+ /** `partial`: the action happened, and not all of it — a stack start where some apps did not come up. */
11
+ export type AuditOutcome = 'ok' | 'partial' | 'failed';
12
+ /** The part of an audit row its ending is read from. */
13
+ export interface OutcomeFields {
14
+ readonly action: string;
15
+ readonly details?: Readonly<Record<string, unknown>> | null | undefined;
16
+ }
17
+ /**
18
+ * How a row's action ended, as far as the row says: its recorded outcome, or
19
+ * `failed` for an action named as a failure (`node.upgrade.failed`). `null`
20
+ * for a row that records neither — most rows, written after an action that
21
+ * worked by a writer that records nothing else; `null` says that without
22
+ * claiming more.
23
+ */
24
+ export declare function outcomeOf(row: OutcomeFields): AuditOutcome | null;
25
+ /** What a row says of its ending beyond the word, and the `details` key it said it under. */
26
+ export interface OutcomeReason {
27
+ readonly key: string;
28
+ readonly text: string;
29
+ }
30
+ /**
31
+ * Why a row ended the way it did, when it says: for `partial`, what did not
32
+ * come up (`details.notUp`, as `stack.start` records it); for `failed`, what
33
+ * went wrong (`details.error`, or `details.message` in the older rows that
34
+ * named the failure in the action). `null` when the row says nothing more.
35
+ *
36
+ * With its key, so a reader listing the rest of `details` need not repeat it.
37
+ */
38
+ export declare function outcomeReason(row: OutcomeFields): OutcomeReason | null;
39
+ //# sourceMappingURL=audit-outcome.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"audit-outcome.d.ts","sourceRoot":"","sources":["../../src/shared/audit-outcome.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,yGAAyG;AACzG,MAAM,MAAM,YAAY,GAAG,IAAI,GAAG,SAAS,GAAG,QAAQ,CAAC;AAEvD,wDAAwD;AACxD,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GAAG,IAAI,GAAG,SAAS,CAAC;CACzE;AAED;;;;;;GAMG;AACH,wBAAgB,SAAS,CAAC,GAAG,EAAE,aAAa,GAAG,YAAY,GAAG,IAAI,CAIjE;AAED,6FAA6F;AAC7F,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAED;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,aAAa,GAAG,aAAa,GAAG,IAAI,CAatE"}
@@ -0,0 +1,45 @@
1
+ /**
2
+ * How an audit row's action ended — one reading for `omnitron audit`, which
3
+ * colours it, and the console's audit page, which showed none: its rows
4
+ * carried `outcome=partial` as one more `key=value` among the details, so a
5
+ * stack start in which apps did not come up read like any other.
6
+ *
7
+ * Imported by the console through `@omnitron-dev/omnitron/audit-outcome`, so
8
+ * nothing here may need Node.
9
+ */
10
+ /**
11
+ * How a row's action ended, as far as the row says: its recorded outcome, or
12
+ * `failed` for an action named as a failure (`node.upgrade.failed`). `null`
13
+ * for a row that records neither — most rows, written after an action that
14
+ * worked by a writer that records nothing else; `null` says that without
15
+ * claiming more.
16
+ */
17
+ export function outcomeOf(row) {
18
+ const recorded = row.details?.['outcome'];
19
+ if (recorded === 'ok' || recorded === 'partial' || recorded === 'failed')
20
+ return recorded;
21
+ return row.action.endsWith('.failed') ? 'failed' : null;
22
+ }
23
+ /**
24
+ * Why a row ended the way it did, when it says: for `partial`, what did not
25
+ * come up (`details.notUp`, as `stack.start` records it); for `failed`, what
26
+ * went wrong (`details.error`, or `details.message` in the older rows that
27
+ * named the failure in the action). `null` when the row says nothing more.
28
+ *
29
+ * With its key, so a reader listing the rest of `details` need not repeat it.
30
+ */
31
+ export function outcomeReason(row) {
32
+ const said = (key, words = (text) => text) => {
33
+ const value = row.details?.[key];
34
+ return typeof value === 'string' && value !== '' ? { key, text: words(value) } : null;
35
+ };
36
+ switch (outcomeOf(row)) {
37
+ case 'partial':
38
+ return said('notUp', (apps) => `not up: ${apps}`);
39
+ case 'failed':
40
+ return said('error') ?? said('message');
41
+ default:
42
+ return null;
43
+ }
44
+ }
45
+ //# sourceMappingURL=audit-outcome.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"audit-outcome.js","sourceRoot":"","sources":["../../src/shared/audit-outcome.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAWH;;;;;;GAMG;AACH,MAAM,UAAU,SAAS,CAAC,GAAkB;IAC1C,MAAM,QAAQ,GAAG,GAAG,CAAC,OAAO,EAAE,CAAC,SAAS,CAAC,CAAC;IAC1C,IAAI,QAAQ,KAAK,IAAI,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,KAAK,QAAQ;QAAE,OAAO,QAAQ,CAAC;IAC1F,OAAO,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC;AAC1D,CAAC;AAQD;;;;;;;GAOG;AACH,MAAM,UAAU,aAAa,CAAC,GAAkB;IAC9C,MAAM,IAAI,GAAG,CAAC,GAAW,EAAE,KAAK,GAA6B,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,EAAwB,EAAE;QACnG,MAAM,KAAK,GAAG,GAAG,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC;QACjC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IACxF,CAAC,CAAC;IACF,QAAQ,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC;QACvB,KAAK,SAAS;YACZ,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC;QACpD,KAAK,QAAQ;YACX,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC;QAC1C;YACE,OAAO,IAAI,CAAC;IAChB,CAAC;AACH,CAAC"}
@@ -0,0 +1,59 @@
1
+ /**
2
+ * Is the code that is running the code that was written?
3
+ *
4
+ * Every package here resolves through `dist`, and nothing checks that `dist`
5
+ * corresponds to `src`. Both test suites can be green while the application
6
+ * runs a build from months ago — the package's tests exercise `src`, the
7
+ * application's exercise `dist`, and neither one asks whether they are the
8
+ * same program. A change lands, the suite passes, and the change was never
9
+ * executed.
10
+ *
11
+ * That is not hypothetical. It was found by adding an export to a package's
12
+ * `src/index.ts` and watching a test keep failing with "is not a constructor"
13
+ * against a build four months old. And this daemon reproduces it in the small:
14
+ * it starts from `dist/`, so a rebuild after it started leaves it running code
15
+ * that no longer exists on disk.
16
+ *
17
+ * mtime is a proxy and it is a noisy one — copying a file back over itself
18
+ * marks it modified without changing a byte. The asymmetry is what justifies
19
+ * it: a false "rebuild needed" costs a rebuild, a false "all fresh" costs a
20
+ * session spent verifying the wrong program.
21
+ */
22
+ export interface TreeEntry {
23
+ /** Path relative to the tree root, e.g. `services/backup.service.ts`. */
24
+ rel: string;
25
+ mtimeMs: number;
26
+ }
27
+ export interface FreshnessReport {
28
+ /** Sources whose build output is older than they are. */
29
+ stale: string[];
30
+ /** Sources with no build output at all — a file added since the last build. */
31
+ unbuilt: string[];
32
+ /** Newest source mtime, or 0 when there are no sources. */
33
+ newestSourceMs: number;
34
+ /** Newest artifact mtime, or 0 when there are no artifacts. */
35
+ newestArtifactMs: number;
36
+ /** False when there was nothing to compare — the caller must not read a verdict into that. */
37
+ comparable: boolean;
38
+ }
39
+ /** `services/backup.service.ts` → `services/backup.service.js` */
40
+ export declare function artifactFor(rel: string): string;
41
+ /** Sources that are not compiled into the shipped tree, and must not be compared. */
42
+ export declare function isCompiledSource(rel: string): boolean;
43
+ /**
44
+ * Compare a source tree against a build tree.
45
+ *
46
+ * Pure: the caller supplies both listings, so the comparison can be tested
47
+ * without a filesystem and without a build.
48
+ */
49
+ export declare function compareTrees(sources: TreeEntry[], artifacts: TreeEntry[]): FreshnessReport;
50
+ /**
51
+ * Did the process start before the build it loaded was written?
52
+ *
53
+ * `null` when either timestamp is unknown — the same rule as `comparable`:
54
+ * an unanswerable question does not get answered "no".
55
+ */
56
+ export declare function processPredatesBuild(processStartedMs: number, newestArtifactMs: number): boolean | null;
57
+ /** Walk a directory, returning every file relative to it. Missing root → []. */
58
+ export declare function listTree(root: string): TreeEntry[];
59
+ //# sourceMappingURL=build-freshness.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build-freshness.d.ts","sourceRoot":"","sources":["../../src/shared/build-freshness.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAKH,MAAM,WAAW,SAAS;IACxB,yEAAyE;IACzE,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,eAAe;IAC9B,yDAAyD;IACzD,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,+EAA+E;IAC/E,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,2DAA2D;IAC3D,cAAc,EAAE,MAAM,CAAC;IACvB,+DAA+D;IAC/D,gBAAgB,EAAE,MAAM,CAAC;IACzB,8FAA8F;IAC9F,UAAU,EAAE,OAAO,CAAC;CACrB;AAED,kEAAkE;AAClE,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAE/C;AAED,qFAAqF;AACrF,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAKrD;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,SAAS,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,eAAe,CA0B1F;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,gBAAgB,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,GAAG,OAAO,GAAG,IAAI,CAIvG;AAED,gFAAgF;AAChF,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,EAAE,CAyBlD"}