Skip to content

Commit ce888d0

Browse files
authored
Merge pull request #390 from deploystackio/backend-release
[Backend Release] v0.37.0
2 parents 4934a4f + 552dca2 commit ce888d0

File tree

5 files changed

+75
-4
lines changed

5 files changed

+75
-4
lines changed

package-lock.json

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

services/backend/CHANGELOG.md

Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,66 @@
11
# Changelog
22

3+
## 0.37.0 (2025-10-17)
4+
5+
* feat(all): Enhanced Job Queue Management - Search & Filtering ([6517f1e](https://github.com/deploystackio/deploystack/commit/6517f1e))
6+
* feat(all): implement idle process management for MCP servers ([e142784](https://github.com/deploystackio/deploystack/commit/e142784))
7+
* feat(all): MCP Client Activity Tracking ([01a130e](https://github.com/deploystackio/deploystack/commit/01a130e))
8+
* feat(backend): add endpoints for retrieving unique languages and runtimes ([f270dc0](https://github.com/deploystackio/deploystack/commit/f270dc0))
9+
* feat(backend): Add MCP client activity metrics cleanup job and worker ([7e1789b](https://github.com/deploystackio/deploystack/commit/7e1789b))
10+
* feat(backend): add MCP client activity metrics endpoint and service ([c02f022](https://github.com/deploystackio/deploystack/commit/c02f022))
11+
* feat(backend): add tags filtering to MCP servers API and implement endpoint to retrieve unique tags ([45f7088](https://github.com/deploystackio/deploystack/commit/45f7088))
12+
* feat(backend): enhance bucket filling with default metric fields ([7009ab2](https://github.com/deploystackio/deploystack/commit/7009ab2))
13+
* feat(backend): enhance MCP client activity endpoint for team awareness ([7ab668c](https://github.com/deploystackio/deploystack/commit/7ab668c))
14+
* feat(backend): implement cron job system for scheduled tasks ([722811a](https://github.com/deploystackio/deploystack/commit/722811a))
15+
* feat(backend): implement satellite event handling and processing ([dcfc9aa](https://github.com/deploystackio/deploystack/commit/dcfc9aa))
16+
* feat(frontend): add API methods to fetch unique runtimes and languages ([2a7f432](https://github.com/deploystackio/deploystack/commit/2a7f432))
17+
* feat(frontend): add chart components with echarts integration ([dc55c62](https://github.com/deploystackio/deploystack/commit/dc55c62))
18+
* feat(frontend): add field components with props and templates ([9ea64be](https://github.com/deploystackio/deploystack/commit/9ea64be))
19+
* feat(frontend): add hover card for Python MCP server installation warning ([df0d271](https://github.com/deploystackio/deploystack/commit/df0d271))
20+
* feat(frontend): add McpClientConnectionsCard component ([7f95f3e](https://github.com/deploystackio/deploystack/commit/7f95f3e))
21+
* feat(frontend): add runtime and tags display to MCP server card ([3b22e37](https://github.com/deploystackio/deploystack/commit/3b22e37))
22+
* feat(frontend): add search and filter functionality to server catalog ([13da4a1](https://github.com/deploystackio/deploystack/commit/13da4a1))
23+
* feat(frontend): add skeleton loading state for MCP server selection ([2653bb4](https://github.com/deploystackio/deploystack/commit/2653bb4))
24+
* feat(frontend): add white variant to card component styles ([755d175](https://github.com/deploystackio/deploystack/commit/755d175))
25+
* feat(frontend): enhance MCP server card with GitHub avatar display ([7479c5e](https://github.com/deploystackio/deploystack/commit/7479c5e))
26+
* feat(frontend): enhance MCP server installation views and add stats component ([6635348](https://github.com/deploystackio/deploystack/commit/6635348))
27+
* feat(frontend): implement ButtonGroup component with variants ([23a0418](https://github.com/deploystackio/deploystack/commit/23a0418))
28+
* feat(frontend): implement client activity tracking and polling ([e73e4e2](https://github.com/deploystackio/deploystack/commit/e73e4e2))
29+
* feat(frontend): implement item components with variants and slots ([3125aa4](https://github.com/deploystackio/deploystack/commit/3125aa4))
30+
* feat(frontend): implement McpInstallationsEmptyState component ([044c3e1](https://github.com/deploystackio/deploystack/commit/044c3e1))
31+
* feat(frontend): integrate team selection for client activity fetching ([bdb2280](https://github.com/deploystackio/deploystack/commit/bdb2280))
32+
* feat(metrics): add MCP client activity metrics endpoint and service ([9b82d78](https://github.com/deploystackio/deploystack/commit/9b82d78))
33+
* feat(satellite): add logger support to event handler functions ([4934a4f](https://github.com/deploystackio/deploystack/commit/4934a4f))
34+
* feat(satellite): implement job management system with heartbeat job ([ef0d19b](https://github.com/deploystackio/deploystack/commit/ef0d19b))
35+
* chore(all): bump @commitlint/cli from 19.8.1 to 20.1.0 ([9eb3189](https://github.com/deploystackio/deploystack/commit/9eb3189))
36+
* chore(all): bump @octokit/request from 10.0.3 to 10.0.5 ([d93fabf](https://github.com/deploystackio/deploystack/commit/d93fabf))
37+
* chore(all): bump @tailwindcss/postcss from 4.1.13 to 4.1.14 ([fd43779](https://github.com/deploystackio/deploystack/commit/fd43779))
38+
* chore(all): bump drizzle-kit from 0.31.4 to 0.31.5 ([18f93d4](https://github.com/deploystackio/deploystack/commit/18f93d4))
39+
* chore(all): bump drizzle-orm from 0.44.5 to 0.44.6 ([0b92ebf](https://github.com/deploystackio/deploystack/commit/0b92ebf))
40+
* chore(all): bump jest from 30.1.3 to 30.2.0 ([7c70f0a](https://github.com/deploystackio/deploystack/commit/7c70f0a))
41+
* chore(all): bump jiti from 2.6.0 to 2.6.1 ([9051c83](https://github.com/deploystackio/deploystack/commit/9051c83))
42+
* chore(all): bump pino from 9.11.0 to 10.0.0 ([7845a12](https://github.com/deploystackio/deploystack/commit/7845a12))
43+
* chore(all): bump tailwindcss from 4.1.13 to 4.1.14 ([e6e06c3](https://github.com/deploystackio/deploystack/commit/e6e06c3))
44+
* chore(all): bump vue-sonner from 2.0.8 to 2.0.9 ([ad873f0](https://github.com/deploystackio/deploystack/commit/ad873f0))
45+
* chore(all): bump vue-tsc from 3.0.8 to 3.1.1 ([8f93277](https://github.com/deploystackio/deploystack/commit/8f93277))
46+
* chore(all): bump zod-openapi from 5.4.1 to 5.4.2 ([35a5b7f](https://github.com/deploystackio/deploystack/commit/35a5b7f))
47+
* chore(backend): bump @commitlint/cli in /services/backend ([f303c24](https://github.com/deploystackio/deploystack/commit/f303c24))
48+
* chore(backend): update welcome email template for new users ([756e607](https://github.com/deploystackio/deploystack/commit/756e607))
49+
* chore(frontend): bump @types/marked in /services/frontend ([5f4ddd3](https://github.com/deploystackio/deploystack/commit/5f4ddd3))
50+
* chore(frontend): release v0.31.0 ([7e6b608](https://github.com/deploystackio/deploystack/commit/7e6b608))
51+
* chore(frontend): release v0.31.0 ([6c626f8](https://github.com/deploystackio/deploystack/commit/6c626f8))
52+
* chore(frontend): remove unused @types/marked dependency from package.json ([44f88ad](https://github.com/deploystackio/deploystack/commit/44f88ad))
53+
* chore(satellite): release v0.4.1 ([5ebb468](https://github.com/deploystackio/deploystack/commit/5ebb468))
54+
* chore(satellite): release v0.4.1 ([6594669](https://github.com/deploystackio/deploystack/commit/6594669))
55+
* chore(satellite): remove unnecessary log statements from server startup ([a1ff115](https://github.com/deploystackio/deploystack/commit/a1ff115))
56+
* refactor: clean up code structure and remove redundant sections ([4025c22](https://github.com/deploystackio/deploystack/commit/4025c22))
57+
* refactor(all): update MCP event schemas for consistency and clarity ([2258555](https://github.com/deploystackio/deploystack/commit/2258555))
58+
* refactor(frontend): simplify McpInstallationsCard component structure ([3fdb93d](https://github.com/deploystackio/deploystack/commit/3fdb93d))
59+
* refactor(satellite): improve client name detection logic in headers ([7c48a4a](https://github.com/deploystackio/deploystack/commit/7c48a4a))
60+
* docs(all): update README to clarify adoption friction and data ([c0e3a79](https://github.com/deploystackio/deploystack/commit/c0e3a79))
61+
* docs(all): update README to clarify VS Code settings for DeployStack ([05d5a35](https://github.com/deploystackio/deploystack/commit/05d5a35))
62+
* style(frontend): changed style for several views ([f856c52](https://github.com/deploystackio/deploystack/commit/f856c52))
63+
364
## 0.36.0 (2025-10-06)
465

566
* chore(backend): release v0.36.0 ([6bdfbcf](https://github.com/deploystackio/deploystack/commit/6bdfbcf))

services/backend/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@deploystack/backend",
3-
"version": "0.36.0",
3+
"version": "0.37.0",
44
"scripts": {
55
"dev": "nodemon",
66
"build": "tsc && webpack --mode=production",

services/backend/src/config/version.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,8 @@ export interface VersionInfo {
99

1010
// This will be replaced by the build script
1111
let versionData: VersionInfo = {
12-
version: '0.36.0',
13-
buildTime: '2025-10-06T19:35:12.942Z',
12+
version: '0.37.0',
13+
buildTime: '2025-10-17T22:20:23.126Z',
1414
source: 'release'
1515
};
1616

services/satellite/README.md

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -122,23 +122,27 @@ MCP_PROCESS_IDLE_TIMEOUT_SECONDS=180 # Idle timeout in seconds before terminatin
122122
These limits control resource allocation for MCP server processes running in nsjail isolation:
123123

124124
**NSJAIL_MEMORY_LIMIT_MB** (Default: 50)
125+
125126
- Memory limit per MCP server process in megabytes
126127
- Prevents memory exhaustion attacks
127128
- Recommended range: 50-500 MB depending on MCP server requirements
128129
- Example: Set to 100 for memory-intensive MCP servers
129130

130131
**NSJAIL_CPU_TIME_LIMIT_SECONDS** (Default: 60)
132+
131133
- CPU time limit per MCP server process in seconds
132134
- Protects against CPU-bound infinite loops
133135
- Recommended range: 30-300 seconds
134136
- Note: This is CPU time, not wall-clock time
135137

136138
**NSJAIL_MAX_PROCESSES** (Default: 50)
139+
137140
- Maximum number of child processes per MCP server
138141
- Prevents fork bombs and process exhaustion
139142
- Recommended range: 10-100 depending on MCP server needs
140143

141144
**Development Mode:**
145+
142146
- These limits are **not enforced** in development mode (direct spawn without isolation)
143147
- Allows easier debugging on macOS, Windows, and Linux
144148
- Full isolation only active in production Linux deployments
@@ -150,30 +154,35 @@ These limits control resource allocation for MCP server processes running in nsj
150154
Automatically terminates idle stdio MCP server processes to save resources. Dormant processes are transparently respawned when API calls arrive.
151155

152156
**How It Works:**
157+
153158
- Background job checks all stdio processes every 30 seconds
154159
- Processes idle longer than threshold are gracefully terminated
155160
- Process configurations stored in memory for automatic respawning
156161
- When API call arrives for dormant process, it respawns automatically (1-3s latency)
157162

158163
**Benefits:**
164+
159165
- **Memory Savings**: ~50-100MB per dormant process
160166
- **CPU Savings**: Zero overhead for idle processes
161167
- **Transparent**: MCP clients unaware of sleep/wake cycle
162168
- **Team Isolation**: Maintained (separate processes per team)
163169

164170
**Configuration Options:**
171+
165172
- `180` (default): 3 minutes idle timeout
166173
- `60`: 1 minute idle timeout (aggressive, for high-density deployments)
167174
- `600`: 10 minutes idle timeout (conservative, for frequently-used servers)
168175
- `0`: Disable idle timeout (processes never sleep)
169176

170177
**Edge Cases Handled:**
178+
171179
- Only terminates processes with `status=running`
172180
- Skips processes with active requests in flight
173181
- Prevents concurrent respawn attempts
174182
- Dormant processes excluded from heartbeat reports
175183

176184
**Monitoring:**
185+
177186
```bash
178187
# Check idle process activity
179188
grep "idle_process_check_completed" logs/satellite.log
@@ -186,6 +195,7 @@ grep "dormant_process_respawned" logs/satellite.log
186195
```
187196

188197
**When to Adjust:**
198+
189199
- **High-density deployments**: Lower timeout (60-120s) to maximize resource savings
190200
- **Frequently-used servers**: Higher timeout (300-600s) to avoid unnecessary respawns
191201
- **Development/testing**: Disable (0) to avoid respawn delays during debugging

0 commit comments

Comments
 (0)