@revealui/mcp 0.1.0 → 0.1.3

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 (293) hide show
  1. package/LICENSE +22 -0
  2. package/LICENSE.commercial +111 -0
  3. package/README.md +3 -0
  4. package/dist/{packages/mcp/src/adapters → adapters}/db.d.ts +1 -1
  5. package/dist/adapters/db.d.ts.map +1 -0
  6. package/dist/adapters/db.js.map +1 -0
  7. package/dist/config/index.d.ts.map +1 -0
  8. package/dist/config/index.js.map +1 -0
  9. package/dist/contracts.d.ts.map +1 -0
  10. package/dist/contracts.js.map +1 -0
  11. package/dist/{packages/mcp/src/hypervisor.d.ts → hypervisor.d.ts} +56 -0
  12. package/dist/hypervisor.d.ts.map +1 -0
  13. package/dist/{packages/mcp/src/hypervisor.js → hypervisor.js} +209 -1
  14. package/dist/hypervisor.js.map +1 -0
  15. package/dist/{packages/mcp/src/index.d.ts → index.d.ts} +9 -5
  16. package/dist/index.d.ts.map +1 -0
  17. package/dist/{packages/mcp/src/index.js → index.js} +8 -4
  18. package/dist/index.js.map +1 -0
  19. package/dist/{packages/mcp/src/servers → servers}/adapter.d.ts +11 -1
  20. package/dist/servers/adapter.d.ts.map +1 -0
  21. package/dist/{packages/mcp/src/servers → servers}/adapter.js +20 -4
  22. package/dist/servers/adapter.js.map +1 -0
  23. package/dist/servers/revealui-content.d.ts +21 -0
  24. package/dist/servers/revealui-content.d.ts.map +1 -0
  25. package/dist/servers/revealui-content.js +211 -0
  26. package/dist/servers/revealui-content.js.map +1 -0
  27. package/dist/servers/revealui-email.d.ts +18 -0
  28. package/dist/servers/revealui-email.d.ts.map +1 -0
  29. package/dist/servers/revealui-email.js +190 -0
  30. package/dist/servers/revealui-email.js.map +1 -0
  31. package/dist/servers/revealui-stripe.d.ts +19 -0
  32. package/dist/servers/revealui-stripe.d.ts.map +1 -0
  33. package/dist/servers/revealui-stripe.js +228 -0
  34. package/dist/servers/revealui-stripe.js.map +1 -0
  35. package/package.json +50 -11
  36. package/.env.example +0 -9
  37. package/MCP_MAINTENANCE.md +0 -265
  38. package/__tests__/crdt.integration.test.ts +0 -156
  39. package/configs/README.md +0 -77
  40. package/configs/claude-template.json +0 -54
  41. package/dist/packages/core/src/database/ssl-config.d.ts +0 -9
  42. package/dist/packages/core/src/database/ssl-config.d.ts.map +0 -1
  43. package/dist/packages/core/src/database/ssl-config.js +0 -8
  44. package/dist/packages/core/src/database/ssl-config.js.map +0 -1
  45. package/dist/packages/core/src/features.d.ts +0 -86
  46. package/dist/packages/core/src/features.d.ts.map +0 -1
  47. package/dist/packages/core/src/features.js +0 -93
  48. package/dist/packages/core/src/features.js.map +0 -1
  49. package/dist/packages/core/src/license.d.ts +0 -75
  50. package/dist/packages/core/src/license.d.ts.map +0 -1
  51. package/dist/packages/core/src/license.js +0 -174
  52. package/dist/packages/core/src/license.js.map +0 -1
  53. package/dist/packages/core/src/monitoring/alerts.d.ts +0 -118
  54. package/dist/packages/core/src/monitoring/alerts.d.ts.map +0 -1
  55. package/dist/packages/core/src/monitoring/alerts.js +0 -325
  56. package/dist/packages/core/src/monitoring/alerts.js.map +0 -1
  57. package/dist/packages/core/src/monitoring/cleanup-manager.d.ts +0 -71
  58. package/dist/packages/core/src/monitoring/cleanup-manager.d.ts.map +0 -1
  59. package/dist/packages/core/src/monitoring/cleanup-manager.js +0 -227
  60. package/dist/packages/core/src/monitoring/cleanup-manager.js.map +0 -1
  61. package/dist/packages/core/src/monitoring/health-monitor.d.ts +0 -22
  62. package/dist/packages/core/src/monitoring/health-monitor.d.ts.map +0 -1
  63. package/dist/packages/core/src/monitoring/health-monitor.js +0 -143
  64. package/dist/packages/core/src/monitoring/health-monitor.js.map +0 -1
  65. package/dist/packages/core/src/monitoring/index.d.ts +0 -14
  66. package/dist/packages/core/src/monitoring/index.d.ts.map +0 -1
  67. package/dist/packages/core/src/monitoring/index.js +0 -18
  68. package/dist/packages/core/src/monitoring/index.js.map +0 -1
  69. package/dist/packages/core/src/monitoring/process-registry.d.ts +0 -97
  70. package/dist/packages/core/src/monitoring/process-registry.d.ts.map +0 -1
  71. package/dist/packages/core/src/monitoring/process-registry.js +0 -223
  72. package/dist/packages/core/src/monitoring/process-registry.js.map +0 -1
  73. package/dist/packages/core/src/monitoring/types.d.ts +0 -231
  74. package/dist/packages/core/src/monitoring/types.d.ts.map +0 -1
  75. package/dist/packages/core/src/monitoring/types.js +0 -43
  76. package/dist/packages/core/src/monitoring/types.js.map +0 -1
  77. package/dist/packages/core/src/monitoring/zombie-detector.d.ts +0 -81
  78. package/dist/packages/core/src/monitoring/zombie-detector.d.ts.map +0 -1
  79. package/dist/packages/core/src/monitoring/zombie-detector.js +0 -232
  80. package/dist/packages/core/src/monitoring/zombie-detector.js.map +0 -1
  81. package/dist/packages/core/src/observability/logger.d.ts +0 -47
  82. package/dist/packages/core/src/observability/logger.d.ts.map +0 -1
  83. package/dist/packages/core/src/observability/logger.js +0 -141
  84. package/dist/packages/core/src/observability/logger.js.map +0 -1
  85. package/dist/packages/core/src/utils/logger-server.d.ts +0 -32
  86. package/dist/packages/core/src/utils/logger-server.d.ts.map +0 -1
  87. package/dist/packages/core/src/utils/logger-server.js +0 -69
  88. package/dist/packages/core/src/utils/logger-server.js.map +0 -1
  89. package/dist/packages/core/src/utils/request-context.d.ts +0 -143
  90. package/dist/packages/core/src/utils/request-context.d.ts.map +0 -1
  91. package/dist/packages/core/src/utils/request-context.js +0 -169
  92. package/dist/packages/core/src/utils/request-context.js.map +0 -1
  93. package/dist/packages/dev/src/code-validator/index.d.ts +0 -20
  94. package/dist/packages/dev/src/code-validator/index.d.ts.map +0 -1
  95. package/dist/packages/dev/src/code-validator/index.js +0 -20
  96. package/dist/packages/dev/src/code-validator/index.js.map +0 -1
  97. package/dist/packages/dev/src/code-validator/types.d.ts +0 -67
  98. package/dist/packages/dev/src/code-validator/types.d.ts.map +0 -1
  99. package/dist/packages/dev/src/code-validator/types.js +0 -7
  100. package/dist/packages/dev/src/code-validator/types.js.map +0 -1
  101. package/dist/packages/dev/src/code-validator/validator.d.ts +0 -48
  102. package/dist/packages/dev/src/code-validator/validator.d.ts.map +0 -1
  103. package/dist/packages/dev/src/code-validator/validator.js +0 -176
  104. package/dist/packages/dev/src/code-validator/validator.js.map +0 -1
  105. package/dist/packages/mcp/src/adapters/db.d.ts.map +0 -1
  106. package/dist/packages/mcp/src/adapters/db.js.map +0 -1
  107. package/dist/packages/mcp/src/config/index.d.ts.map +0 -1
  108. package/dist/packages/mcp/src/config/index.js.map +0 -1
  109. package/dist/packages/mcp/src/contracts.d.ts.map +0 -1
  110. package/dist/packages/mcp/src/contracts.js.map +0 -1
  111. package/dist/packages/mcp/src/hypervisor.d.ts.map +0 -1
  112. package/dist/packages/mcp/src/hypervisor.js.map +0 -1
  113. package/dist/packages/mcp/src/index.d.ts.map +0 -1
  114. package/dist/packages/mcp/src/index.js.map +0 -1
  115. package/dist/packages/mcp/src/servers/adapter.d.ts.map +0 -1
  116. package/dist/packages/mcp/src/servers/adapter.js.map +0 -1
  117. package/dist/packages/mcp/src/servers/code-validator.d.ts +0 -24
  118. package/dist/packages/mcp/src/servers/code-validator.d.ts.map +0 -1
  119. package/dist/packages/mcp/src/servers/code-validator.js +0 -156
  120. package/dist/packages/mcp/src/servers/code-validator.js.map +0 -1
  121. package/dist/packages/mcp/src/servers/neon.d.ts +0 -11
  122. package/dist/packages/mcp/src/servers/neon.d.ts.map +0 -1
  123. package/dist/packages/mcp/src/servers/neon.js +0 -90
  124. package/dist/packages/mcp/src/servers/neon.js.map +0 -1
  125. package/dist/packages/mcp/src/servers/next-devtools.d.ts +0 -11
  126. package/dist/packages/mcp/src/servers/next-devtools.d.ts.map +0 -1
  127. package/dist/packages/mcp/src/servers/next-devtools.js +0 -215
  128. package/dist/packages/mcp/src/servers/next-devtools.js.map +0 -1
  129. package/dist/packages/mcp/src/servers/playwright.d.ts +0 -11
  130. package/dist/packages/mcp/src/servers/playwright.d.ts.map +0 -1
  131. package/dist/packages/mcp/src/servers/playwright.js +0 -68
  132. package/dist/packages/mcp/src/servers/playwright.js.map +0 -1
  133. package/dist/packages/mcp/src/servers/stripe.d.ts +0 -11
  134. package/dist/packages/mcp/src/servers/stripe.d.ts.map +0 -1
  135. package/dist/packages/mcp/src/servers/stripe.js +0 -86
  136. package/dist/packages/mcp/src/servers/stripe.js.map +0 -1
  137. package/dist/packages/mcp/src/servers/supabase.d.ts +0 -11
  138. package/dist/packages/mcp/src/servers/supabase.d.ts.map +0 -1
  139. package/dist/packages/mcp/src/servers/supabase.js +0 -144
  140. package/dist/packages/mcp/src/servers/supabase.js.map +0 -1
  141. package/dist/packages/mcp/src/servers/vercel.d.ts +0 -11
  142. package/dist/packages/mcp/src/servers/vercel.d.ts.map +0 -1
  143. package/dist/packages/mcp/src/servers/vercel.js +0 -87
  144. package/dist/packages/mcp/src/servers/vercel.js.map +0 -1
  145. package/dist/packages/mcp/src/servers/vultr-test.d.ts +0 -3
  146. package/dist/packages/mcp/src/servers/vultr-test.d.ts.map +0 -1
  147. package/dist/packages/mcp/src/servers/vultr-test.js +0 -82
  148. package/dist/packages/mcp/src/servers/vultr-test.js.map +0 -1
  149. package/dist/scripts/lib/analyzers/console-analyzer.d.ts +0 -188
  150. package/dist/scripts/lib/analyzers/console-analyzer.d.ts.map +0 -1
  151. package/dist/scripts/lib/analyzers/console-analyzer.js +0 -432
  152. package/dist/scripts/lib/analyzers/console-analyzer.js.map +0 -1
  153. package/dist/scripts/lib/analyzers/index.d.ts +0 -11
  154. package/dist/scripts/lib/analyzers/index.d.ts.map +0 -1
  155. package/dist/scripts/lib/analyzers/index.js +0 -11
  156. package/dist/scripts/lib/analyzers/index.js.map +0 -1
  157. package/dist/scripts/lib/args.d.ts +0 -104
  158. package/dist/scripts/lib/args.d.ts.map +0 -1
  159. package/dist/scripts/lib/args.js +0 -304
  160. package/dist/scripts/lib/args.js.map +0 -1
  161. package/dist/scripts/lib/cache.d.ts +0 -185
  162. package/dist/scripts/lib/cache.d.ts.map +0 -1
  163. package/dist/scripts/lib/cache.js +0 -390
  164. package/dist/scripts/lib/cache.js.map +0 -1
  165. package/dist/scripts/lib/cli/dispatch.d.ts +0 -116
  166. package/dist/scripts/lib/cli/dispatch.d.ts.map +0 -1
  167. package/dist/scripts/lib/cli/dispatch.js +0 -206
  168. package/dist/scripts/lib/cli/dispatch.js.map +0 -1
  169. package/dist/scripts/lib/cli/index.d.ts +0 -10
  170. package/dist/scripts/lib/cli/index.d.ts.map +0 -1
  171. package/dist/scripts/lib/cli/index.js +0 -10
  172. package/dist/scripts/lib/cli/index.js.map +0 -1
  173. package/dist/scripts/lib/database/ssl-config.d.ts +0 -26
  174. package/dist/scripts/lib/database/ssl-config.d.ts.map +0 -1
  175. package/dist/scripts/lib/database/ssl-config.js +0 -47
  176. package/dist/scripts/lib/database/ssl-config.js.map +0 -1
  177. package/dist/scripts/lib/errors.d.ts +0 -218
  178. package/dist/scripts/lib/errors.d.ts.map +0 -1
  179. package/dist/scripts/lib/errors.js +0 -543
  180. package/dist/scripts/lib/errors.js.map +0 -1
  181. package/dist/scripts/lib/exec.d.ts +0 -107
  182. package/dist/scripts/lib/exec.d.ts.map +0 -1
  183. package/dist/scripts/lib/exec.js +0 -232
  184. package/dist/scripts/lib/exec.js.map +0 -1
  185. package/dist/scripts/lib/index.d.ts +0 -50
  186. package/dist/scripts/lib/index.d.ts.map +0 -1
  187. package/dist/scripts/lib/index.js +0 -65
  188. package/dist/scripts/lib/index.js.map +0 -1
  189. package/dist/scripts/lib/logger.d.ts +0 -50
  190. package/dist/scripts/lib/logger.d.ts.map +0 -1
  191. package/dist/scripts/lib/logger.js +0 -159
  192. package/dist/scripts/lib/logger.js.map +0 -1
  193. package/dist/scripts/lib/output.d.ts +0 -149
  194. package/dist/scripts/lib/output.d.ts.map +0 -1
  195. package/dist/scripts/lib/output.js +0 -263
  196. package/dist/scripts/lib/output.js.map +0 -1
  197. package/dist/scripts/lib/parallel.d.ts +0 -164
  198. package/dist/scripts/lib/parallel.d.ts.map +0 -1
  199. package/dist/scripts/lib/parallel.js +0 -355
  200. package/dist/scripts/lib/parallel.js.map +0 -1
  201. package/dist/scripts/lib/paths.d.ts +0 -92
  202. package/dist/scripts/lib/paths.d.ts.map +0 -1
  203. package/dist/scripts/lib/paths.js +0 -171
  204. package/dist/scripts/lib/paths.js.map +0 -1
  205. package/dist/scripts/lib/state/adapters/memory.d.ts +0 -42
  206. package/dist/scripts/lib/state/adapters/memory.d.ts.map +0 -1
  207. package/dist/scripts/lib/state/adapters/memory.js +0 -110
  208. package/dist/scripts/lib/state/adapters/memory.js.map +0 -1
  209. package/dist/scripts/lib/state/adapters/pglite.d.ts +0 -46
  210. package/dist/scripts/lib/state/adapters/pglite.d.ts.map +0 -1
  211. package/dist/scripts/lib/state/adapters/pglite.js +0 -256
  212. package/dist/scripts/lib/state/adapters/pglite.js.map +0 -1
  213. package/dist/scripts/lib/state/index.d.ts +0 -16
  214. package/dist/scripts/lib/state/index.d.ts.map +0 -1
  215. package/dist/scripts/lib/state/index.js +0 -16
  216. package/dist/scripts/lib/state/index.js.map +0 -1
  217. package/dist/scripts/lib/state/types.d.ts +0 -111
  218. package/dist/scripts/lib/state/types.d.ts.map +0 -1
  219. package/dist/scripts/lib/state/types.js +0 -8
  220. package/dist/scripts/lib/state/types.js.map +0 -1
  221. package/dist/scripts/lib/state/workflow-state.d.ts +0 -110
  222. package/dist/scripts/lib/state/workflow-state.d.ts.map +0 -1
  223. package/dist/scripts/lib/state/workflow-state.js +0 -331
  224. package/dist/scripts/lib/state/workflow-state.js.map +0 -1
  225. package/dist/scripts/lib/telemetry.d.ts +0 -194
  226. package/dist/scripts/lib/telemetry.d.ts.map +0 -1
  227. package/dist/scripts/lib/telemetry.js +0 -394
  228. package/dist/scripts/lib/telemetry.js.map +0 -1
  229. package/dist/scripts/lib/utils.d.ts +0 -270
  230. package/dist/scripts/lib/utils.d.ts.map +0 -1
  231. package/dist/scripts/lib/utils.js +0 -473
  232. package/dist/scripts/lib/utils.js.map +0 -1
  233. package/dist/scripts/lib/validation/database.d.ts +0 -83
  234. package/dist/scripts/lib/validation/database.d.ts.map +0 -1
  235. package/dist/scripts/lib/validation/database.js +0 -199
  236. package/dist/scripts/lib/validation/database.js.map +0 -1
  237. package/dist/scripts/lib/validation/env.d.ts +0 -80
  238. package/dist/scripts/lib/validation/env.d.ts.map +0 -1
  239. package/dist/scripts/lib/validation/env.js +0 -246
  240. package/dist/scripts/lib/validation/env.js.map +0 -1
  241. package/dist/scripts/lib/validation/index.d.ts +0 -16
  242. package/dist/scripts/lib/validation/index.d.ts.map +0 -1
  243. package/dist/scripts/lib/validation/index.js +0 -16
  244. package/dist/scripts/lib/validation/index.js.map +0 -1
  245. package/dist/scripts/lib/validation/post-execution.d.ts +0 -74
  246. package/dist/scripts/lib/validation/post-execution.d.ts.map +0 -1
  247. package/dist/scripts/lib/validation/post-execution.js +0 -110
  248. package/dist/scripts/lib/validation/post-execution.js.map +0 -1
  249. package/dist/scripts/lib/validation/pre-execution.d.ts +0 -165
  250. package/dist/scripts/lib/validation/pre-execution.d.ts.map +0 -1
  251. package/dist/scripts/lib/validation/pre-execution.js +0 -466
  252. package/dist/scripts/lib/validation/pre-execution.js.map +0 -1
  253. package/dist/scripts/lib/validators/documentation-validator.d.ts +0 -242
  254. package/dist/scripts/lib/validators/documentation-validator.d.ts.map +0 -1
  255. package/dist/scripts/lib/validators/documentation-validator.js +0 -584
  256. package/dist/scripts/lib/validators/documentation-validator.js.map +0 -1
  257. package/dist/scripts/lib/validators/index.d.ts +0 -11
  258. package/dist/scripts/lib/validators/index.d.ts.map +0 -1
  259. package/dist/scripts/lib/validators/index.js +0 -11
  260. package/dist/scripts/lib/validators/index.js.map +0 -1
  261. package/docker-compose.yml +0 -46
  262. package/docs/INDEX.md +0 -88
  263. package/docs/README.md +0 -774
  264. package/docs/SETUP.md +0 -264
  265. package/docs/servers/code-validator.md +0 -586
  266. package/eslint.config.js +0 -7
  267. package/migrations/0001_add_crdt_columns.sql +0 -8
  268. package/migrations/0001_rollback.sql +0 -6
  269. package/migrations/005_performance_indexes.sql +0 -190
  270. package/migrations/backfill_crdt_meta.js +0 -45
  271. package/src/__tests__/hypervisor.test.ts +0 -212
  272. package/src/adapters/db.ts +0 -180
  273. package/src/config/config.json +0 -49
  274. package/src/config/index.ts +0 -30
  275. package/src/contracts.ts +0 -221
  276. package/src/hypervisor.ts +0 -464
  277. package/src/index.ts +0 -87
  278. package/src/servers/adapter.ts +0 -643
  279. package/src/servers/code-validator.ts +0 -188
  280. package/src/servers/neon.ts +0 -103
  281. package/src/servers/next-devtools.ts +0 -230
  282. package/src/servers/playwright.ts +0 -77
  283. package/src/servers/stripe.ts +0 -99
  284. package/src/servers/supabase.ts +0 -161
  285. package/src/servers/vercel.ts +0 -100
  286. package/src/servers/vultr-test.ts +0 -97
  287. package/tsconfig.json +0 -12
  288. package/vitest.config.ts +0 -22
  289. /package/dist/{packages/mcp/src/adapters → adapters}/db.js +0 -0
  290. /package/dist/{packages/mcp/src/config → config}/index.d.ts +0 -0
  291. /package/dist/{packages/mcp/src/config → config}/index.js +0 -0
  292. /package/dist/{packages/mcp/src/contracts.d.ts → contracts.d.ts} +0 -0
  293. /package/dist/{packages/mcp/src/contracts.js → contracts.js} +0 -0
@@ -1,223 +0,0 @@
1
- /**
2
- * Process Registry
3
- *
4
- * Central registry for tracking all spawned processes in the RevealUI system.
5
- * Maintains process lifecycle information and provides query capabilities.
6
- */
7
- import { DEFAULT_MONITORING_CONFIG } from './types.js';
8
- /**
9
- * Global process registry instance
10
- */
11
- class ProcessRegistry {
12
- processes = new Map();
13
- enabled = DEFAULT_MONITORING_CONFIG.enabled;
14
- maxHistorySize = DEFAULT_MONITORING_CONFIG.maxHistorySize;
15
- /**
16
- * Register a new process
17
- */
18
- register(pid, command, args, source, metadata, ppid) {
19
- if (!this.enabled)
20
- return;
21
- const process = {
22
- pid,
23
- command,
24
- args,
25
- source,
26
- status: 'running',
27
- startTime: Date.now(),
28
- metadata,
29
- ppid,
30
- };
31
- this.processes.set(pid, process);
32
- this.trimHistory();
33
- }
34
- /**
35
- * Update process status
36
- */
37
- updateStatus(pid, status, exitCode, signal) {
38
- if (!this.enabled)
39
- return;
40
- const process = this.processes.get(pid);
41
- if (!process)
42
- return;
43
- process.status = status;
44
- process.endTime = Date.now();
45
- if (exitCode !== undefined) {
46
- process.exitCode = exitCode;
47
- }
48
- if (signal !== undefined) {
49
- process.signal = signal;
50
- }
51
- }
52
- /**
53
- * Mark process as zombie
54
- */
55
- markZombie(pid) {
56
- this.updateStatus(pid, 'zombie');
57
- }
58
- /**
59
- * Get process by PID
60
- */
61
- get(pid) {
62
- return this.processes.get(pid);
63
- }
64
- /**
65
- * Get all processes
66
- */
67
- getAll() {
68
- return Array.from(this.processes.values());
69
- }
70
- /**
71
- * Get processes by status
72
- */
73
- getByStatus(status) {
74
- return this.getAll().filter((p) => p.status === status);
75
- }
76
- /**
77
- * Get processes by source
78
- */
79
- getBySource(source) {
80
- return this.getAll().filter((p) => p.source === source);
81
- }
82
- /**
83
- * Get running processes
84
- */
85
- getRunning() {
86
- return this.getByStatus('running');
87
- }
88
- /**
89
- * Get zombie processes
90
- */
91
- getZombies() {
92
- return this.getByStatus('zombie');
93
- }
94
- /**
95
- * Get failed processes
96
- */
97
- getFailed() {
98
- return this.getByStatus('failed');
99
- }
100
- /**
101
- * Get registry statistics
102
- */
103
- getStats() {
104
- const all = this.getAll();
105
- const bySource = {
106
- exec: 0,
107
- orchestration: 0,
108
- mcp: 0,
109
- 'ai-runtime': 0,
110
- 'dev-server': 0,
111
- database: 0,
112
- unknown: 0,
113
- };
114
- for (const process of all) {
115
- bySource[process.source]++;
116
- }
117
- return {
118
- total: all.length,
119
- running: this.getByStatus('running').length,
120
- completed: this.getByStatus('completed').length,
121
- failed: this.getByStatus('failed').length,
122
- zombies: this.getByStatus('zombie').length,
123
- killed: this.getByStatus('killed').length,
124
- bySource,
125
- };
126
- }
127
- /**
128
- * Calculate spawn rate (processes per minute)
129
- */
130
- getSpawnRate() {
131
- const now = Date.now();
132
- const oneMinuteAgo = now - 60_000;
133
- const recentProcesses = this.getAll().filter((p) => p.startTime >= oneMinuteAgo);
134
- return recentProcesses.length;
135
- }
136
- /**
137
- * Clear completed/failed processes older than retention period
138
- */
139
- trimHistory() {
140
- if (this.processes.size <= this.maxHistorySize)
141
- return;
142
- const processArray = Array.from(this.processes.entries());
143
- // Sort by end time (oldest first), then start time
144
- processArray.sort(([, a], [, b]) => {
145
- const aTime = a.endTime || a.startTime;
146
- const bTime = b.endTime || b.startTime;
147
- return aTime - bTime;
148
- });
149
- // Keep only running processes and recent completed/failed
150
- const toKeep = new Map();
151
- let keptCount = 0;
152
- // First pass: keep all running and zombie processes
153
- for (const [pid, process] of processArray) {
154
- if (process.status === 'running' || process.status === 'zombie') {
155
- toKeep.set(pid, process);
156
- keptCount++;
157
- }
158
- }
159
- // Second pass: keep most recent completed/failed up to limit
160
- for (const [pid, process] of processArray.reverse()) {
161
- if (keptCount >= this.maxHistorySize)
162
- break;
163
- if (process.status !== 'running' && process.status !== 'zombie' && !toKeep.has(pid)) {
164
- toKeep.set(pid, process);
165
- keptCount++;
166
- }
167
- }
168
- this.processes = toKeep;
169
- }
170
- /**
171
- * Clear all processes
172
- */
173
- clear() {
174
- this.processes.clear();
175
- }
176
- /**
177
- * Enable or disable tracking
178
- */
179
- setEnabled(enabled) {
180
- this.enabled = enabled;
181
- }
182
- /**
183
- * Check if tracking is enabled
184
- */
185
- isEnabled() {
186
- return this.enabled;
187
- }
188
- }
189
- /**
190
- * Singleton instance
191
- */
192
- export const processRegistry = new ProcessRegistry();
193
- /**
194
- * Convenience functions
195
- */
196
- export function registerProcess(pid, command, args, source, metadata, ppid) {
197
- processRegistry.register(pid, command, args, source, metadata, ppid);
198
- }
199
- export function updateProcessStatus(pid, status, exitCode, signal) {
200
- processRegistry.updateStatus(pid, status, exitCode, signal);
201
- }
202
- export function markProcessZombie(pid) {
203
- processRegistry.markZombie(pid);
204
- }
205
- export function getProcess(pid) {
206
- return processRegistry.get(pid);
207
- }
208
- export function getAllProcesses() {
209
- return processRegistry.getAll();
210
- }
211
- export function getRunningProcesses() {
212
- return processRegistry.getRunning();
213
- }
214
- export function getZombieProcesses() {
215
- return processRegistry.getZombies();
216
- }
217
- export function getProcessStats() {
218
- return processRegistry.getStats();
219
- }
220
- export function getSpawnRate() {
221
- return processRegistry.getSpawnRate();
222
- }
223
- //# sourceMappingURL=process-registry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"process-registry.js","sourceRoot":"","sources":["../../../../../../core/src/monitoring/process-registry.ts"],"names":[],"mappings":"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"}
@@ -1,231 +0,0 @@
1
- /**
2
- * Process Health Monitoring Types
3
- *
4
- * TypeScript definitions for system health monitoring, process tracking,
5
- * zombie detection, and alerting.
6
- */
7
- /**
8
- * Source of a tracked process
9
- */
10
- export type ProcessSource = 'exec' | 'orchestration' | 'mcp' | 'ai-runtime' | 'dev-server' | 'database' | 'unknown';
11
- /**
12
- * Status of a tracked process
13
- */
14
- export type ProcessStatus = 'running' | 'completed' | 'failed' | 'zombie' | 'killed';
15
- /**
16
- * Tracked process metadata
17
- */
18
- export interface ProcessMetadata {
19
- [key: string]: string | number | boolean | undefined;
20
- }
21
- /**
22
- * Tracked process entry
23
- */
24
- export interface TrackedProcess {
25
- /** Process ID */
26
- pid: number;
27
- /** Command executed */
28
- command: string;
29
- /** Command arguments */
30
- args: string[];
31
- /** Process source */
32
- source: ProcessSource;
33
- /** Current status */
34
- status: ProcessStatus;
35
- /** Start timestamp */
36
- startTime: number;
37
- /** End timestamp (if completed/failed/killed) */
38
- endTime?: number;
39
- /** Exit code (if completed/failed) */
40
- exitCode?: number;
41
- /** Signal that killed process (if killed) */
42
- signal?: string;
43
- /** Custom metadata */
44
- metadata?: ProcessMetadata;
45
- /** Parent process ID */
46
- ppid?: number;
47
- }
48
- /**
49
- * Zombie process detection result
50
- */
51
- export interface ZombieProcess {
52
- /** Process ID */
53
- pid: number;
54
- /** Parent process ID */
55
- ppid: number;
56
- /** Command name */
57
- command: string;
58
- /** When zombie was first detected */
59
- detectedAt: number;
60
- /** Associated tracked process (if available) */
61
- trackedProcess?: TrackedProcess;
62
- }
63
- /**
64
- * Database pool metrics
65
- */
66
- export interface PoolMetrics {
67
- /** Total connections in pool */
68
- totalCount: number;
69
- /** Idle connections */
70
- idleCount: number;
71
- /** Waiting requests */
72
- waitingCount: number;
73
- /** Pool name/identifier */
74
- name: string;
75
- }
76
- /**
77
- * System health metrics
78
- */
79
- export interface HealthMetrics {
80
- /** System information */
81
- system: {
82
- /** Memory usage in MB */
83
- memoryUsage: number;
84
- /** CPU usage percentage */
85
- cpuUsage: number;
86
- /** Uptime in seconds */
87
- uptime: number;
88
- /** Platform */
89
- platform: string;
90
- /** Node.js version */
91
- nodeVersion: string;
92
- };
93
- /** Process statistics */
94
- processes: {
95
- /** Active running processes */
96
- active: number;
97
- /** Zombie processes */
98
- zombies: number;
99
- /** Failed processes */
100
- failed: number;
101
- /** Process spawn rate (per minute) */
102
- spawnRate: number;
103
- /** Processes by source */
104
- bySource: Record<ProcessSource, number>;
105
- };
106
- /** Database pool metrics */
107
- database: {
108
- /** REST database pools */
109
- rest: PoolMetrics[];
110
- /** Vector database pools */
111
- vector: PoolMetrics[];
112
- };
113
- /** Recent zombie processes */
114
- recentZombies: ZombieProcess[];
115
- /** Active alerts */
116
- alerts: Alert[];
117
- /** Timestamp of metrics collection */
118
- timestamp: number;
119
- }
120
- /**
121
- * Alert severity level
122
- */
123
- export type AlertLevel = 'warning' | 'critical';
124
- /**
125
- * Alert metric type
126
- */
127
- export type AlertMetric = 'zombies' | 'memory' | 'active_processes' | 'database_waiting' | 'spawn_rate';
128
- /**
129
- * Alert definition
130
- */
131
- export interface Alert {
132
- /** Alert severity */
133
- level: AlertLevel;
134
- /** Metric that triggered alert */
135
- metric: AlertMetric;
136
- /** Human-readable message */
137
- message: string;
138
- /** Current value */
139
- value: number;
140
- /** Threshold that was exceeded */
141
- threshold: number;
142
- /** Timestamp when alert was triggered */
143
- timestamp: number;
144
- }
145
- /**
146
- * Alert threshold configuration
147
- */
148
- export interface AlertThresholds {
149
- zombies: {
150
- warning: number;
151
- critical: number;
152
- };
153
- memory: {
154
- warning: number;
155
- critical: number;
156
- };
157
- processes: {
158
- active: {
159
- warning: number;
160
- critical: number;
161
- };
162
- };
163
- database: {
164
- waiting: {
165
- warning: number;
166
- critical: number;
167
- };
168
- };
169
- spawnRate: {
170
- warning: number;
171
- critical: number;
172
- };
173
- }
174
- /**
175
- * Cleanup handler function
176
- */
177
- export type CleanupHandler = () => void | Promise<void>;
178
- /**
179
- * Cleanup handler registration
180
- */
181
- export interface CleanupRegistration {
182
- /** Handler ID */
183
- id: string;
184
- /** Handler function */
185
- handler: CleanupHandler;
186
- /** Priority (higher executes first) */
187
- priority: number;
188
- /** Handler description */
189
- description: string;
190
- }
191
- /**
192
- * Process registry statistics
193
- */
194
- export interface RegistryStats {
195
- /** Total processes tracked */
196
- total: number;
197
- /** Currently running */
198
- running: number;
199
- /** Completed successfully */
200
- completed: number;
201
- /** Failed */
202
- failed: number;
203
- /** Zombies detected */
204
- zombies: number;
205
- /** Killed by signal */
206
- killed: number;
207
- /** Processes by source */
208
- bySource: Record<ProcessSource, number>;
209
- }
210
- /**
211
- * Health monitoring configuration
212
- */
213
- export interface MonitoringConfig {
214
- /** Enable process monitoring */
215
- enabled: boolean;
216
- /** Zombie detection interval (ms) */
217
- zombieDetectionInterval: number;
218
- /** Health check interval (ms) */
219
- healthCheckInterval: number;
220
- /** Alert thresholds */
221
- alertThresholds: AlertThresholds;
222
- /** Maximum tracked processes to keep in history */
223
- maxHistorySize: number;
224
- /** Maximum zombies to track */
225
- maxZombieHistory: number;
226
- }
227
- /**
228
- * Default monitoring configuration
229
- */
230
- export declare const DEFAULT_MONITORING_CONFIG: MonitoringConfig;
231
- //# sourceMappingURL=types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../../core/src/monitoring/types.ts"],"names":[],"mappings":"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"}
@@ -1,43 +0,0 @@
1
- /**
2
- * Process Health Monitoring Types
3
- *
4
- * TypeScript definitions for system health monitoring, process tracking,
5
- * zombie detection, and alerting.
6
- */
7
- /**
8
- * Default monitoring configuration
9
- */
10
- export const DEFAULT_MONITORING_CONFIG = {
11
- enabled: process.env.ENABLE_PROCESS_MONITORING !== 'false',
12
- zombieDetectionInterval: 30_000, // 30 seconds
13
- healthCheckInterval: 5_000, // 5 seconds
14
- alertThresholds: {
15
- zombies: {
16
- warning: 3,
17
- critical: 5,
18
- },
19
- memory: {
20
- warning: 512, // MB
21
- critical: 1024, // MB
22
- },
23
- processes: {
24
- active: {
25
- warning: 50,
26
- critical: 100,
27
- },
28
- },
29
- database: {
30
- waiting: {
31
- warning: 5,
32
- critical: 10,
33
- },
34
- },
35
- spawnRate: {
36
- warning: 20, // per minute
37
- critical: 50, // per minute
38
- },
39
- },
40
- maxHistorySize: 1000,
41
- maxZombieHistory: 50,
42
- };
43
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../../core/src/monitoring/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAgTH;;GAEG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAqB;IACzD,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,yBAAyB,KAAK,OAAO;IAC1D,uBAAuB,EAAE,MAAM,EAAE,aAAa;IAC9C,mBAAmB,EAAE,KAAK,EAAE,YAAY;IACxC,eAAe,EAAE;QACf,OAAO,EAAE;YACP,OAAO,EAAE,CAAC;YACV,QAAQ,EAAE,CAAC;SACZ;QACD,MAAM,EAAE;YACN,OAAO,EAAE,GAAG,EAAE,KAAK;YACnB,QAAQ,EAAE,IAAI,EAAE,KAAK;SACtB;QACD,SAAS,EAAE;YACT,MAAM,EAAE;gBACN,OAAO,EAAE,EAAE;gBACX,QAAQ,EAAE,GAAG;aACd;SACF;QACD,QAAQ,EAAE;YACR,OAAO,EAAE;gBACP,OAAO,EAAE,CAAC;gBACV,QAAQ,EAAE,EAAE;aACb;SACF;QACD,SAAS,EAAE;YACT,OAAO,EAAE,EAAE,EAAE,aAAa;YAC1B,QAAQ,EAAE,EAAE,EAAE,aAAa;SAC5B;KACF;IACD,cAAc,EAAE,IAAI;IACpB,gBAAgB,EAAE,EAAE;CACrB,CAAA"}
@@ -1,81 +0,0 @@
1
- /**
2
- * Zombie Process Detector
3
- *
4
- * Periodically scans for defunct (zombie) processes and attempts automatic cleanup.
5
- * Zombie processes are dead processes that haven't been reaped by their parent.
6
- */
7
- import type { ZombieProcess } from './types.js';
8
- /**
9
- * Zombie detector class
10
- */
11
- declare class ZombieDetector {
12
- private interval;
13
- private zombieHistory;
14
- private enabled;
15
- private detectionInterval;
16
- private maxHistory;
17
- private onZombieDetected?;
18
- /**
19
- * Start zombie detection
20
- */
21
- start(): void;
22
- /**
23
- * Stop zombie detection
24
- */
25
- stop(): void;
26
- /**
27
- * Perform a single scan for zombie processes
28
- */
29
- scan(): Promise<ZombieProcess[]>;
30
- /**
31
- * Attempt to clean up a zombie process
32
- */
33
- private attemptCleanup;
34
- /**
35
- * Add zombie to history
36
- */
37
- private addToHistory;
38
- /**
39
- * Get zombie history
40
- */
41
- getHistory(): ZombieProcess[];
42
- /**
43
- * Get current zombie count
44
- */
45
- getCount(): number;
46
- /**
47
- * Clear history
48
- */
49
- clearHistory(): void;
50
- /**
51
- * Set zombie detection callback
52
- */
53
- onZombie(callback: (zombie: ZombieProcess) => void): void;
54
- /**
55
- * Enable or disable detection
56
- */
57
- setEnabled(enabled: boolean): void;
58
- /**
59
- * Check if detection is enabled
60
- */
61
- isEnabled(): boolean;
62
- /**
63
- * Check if detector is running
64
- */
65
- isRunning(): boolean;
66
- }
67
- /**
68
- * Singleton instance
69
- */
70
- export declare const zombieDetector: ZombieDetector;
71
- /**
72
- * Convenience functions
73
- */
74
- export declare function startZombieDetection(): void;
75
- export declare function stopZombieDetection(): void;
76
- export declare function scanForZombies(): Promise<ZombieProcess[]>;
77
- export declare function getZombieHistory(): ZombieProcess[];
78
- export declare function getZombieCount(): number;
79
- export declare function onZombieDetected(callback: (zombie: ZombieProcess) => void): void;
80
- export {};
81
- //# sourceMappingURL=zombie-detector.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"zombie-detector.d.ts","sourceRoot":"","sources":["../../../../../../core/src/monitoring/zombie-detector.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAK/C;;GAEG;AACH,cAAM,cAAc;IAClB,OAAO,CAAC,QAAQ,CAA8B;IAC9C,OAAO,CAAC,aAAa,CAAsB;IAC3C,OAAO,CAAC,OAAO,CAA6C;IAC5D,OAAO,CAAC,iBAAiB,CAA4D;IACrF,OAAO,CAAC,UAAU,CAAqD;IACvE,OAAO,CAAC,gBAAgB,CAAC,CAAiC;IAE1D;;OAEG;IACH,KAAK,IAAI,IAAI;IAiBb;;OAEG;IACH,IAAI,IAAI,IAAI;IAQZ;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;IA6DtC;;OAEG;YACW,cAAc;IAkD5B;;OAEG;IACH,OAAO,CAAC,YAAY;IASpB;;OAEG;IACH,UAAU,IAAI,aAAa,EAAE;IAI7B;;OAEG;IACH,QAAQ,IAAI,MAAM;IAIlB;;OAEG;IACH,YAAY,IAAI,IAAI;IAIpB;;OAEG;IACH,QAAQ,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,IAAI,GAAG,IAAI;IAIzD;;OAEG;IACH,UAAU,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAUlC;;OAEG;IACH,SAAS,IAAI,OAAO;IAIpB;;OAEG;IACH,SAAS,IAAI,OAAO;CAGrB;AAED;;GAEG;AACH,eAAO,MAAM,cAAc,gBAAuB,CAAA;AAElD;;GAEG;AAEH,wBAAgB,oBAAoB,IAAI,IAAI,CAE3C;AAED,wBAAgB,mBAAmB,IAAI,IAAI,CAE1C;AAED,wBAAgB,cAAc,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC,CAEzD;AAED,wBAAgB,gBAAgB,IAAI,aAAa,EAAE,CAElD;AAED,wBAAgB,cAAc,IAAI,MAAM,CAEvC;AAED,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,IAAI,GAAG,IAAI,CAEhF"}