diff --git a/package-lock.json b/package-lock.json index f44479a94..8d07f21dd 100644 --- a/package-lock.json +++ b/package-lock.json @@ -30091,7 +30091,7 @@ }, "services/gateway": { "name": "@deploystack/gateway", - "version": "0.6.1", + "version": "0.7.0", "license": "SEE LICENSE IN ../../LICENSE", "dependencies": { "@fastify/cors": "^11.1.0", diff --git a/services/backend/src/services/deviceService.ts b/services/backend/src/services/deviceService.ts index 85610341b..582421146 100644 --- a/services/backend/src/services/deviceService.ts +++ b/services/backend/src/services/deviceService.ts @@ -4,6 +4,7 @@ import { devices } from '../db/schema.sqlite'; import { nanoid } from 'nanoid'; import crypto from 'crypto'; import os from 'os'; +import type { FastifyBaseLogger } from 'fastify'; // TypeScript interfaces for type safety export interface DeviceInfo { @@ -251,7 +252,7 @@ export class DeviceService { /** * Revoke device access (mark as inactive and untrusted) */ - async revokeDevice(deviceId: string, revokedBy: string, reason?: string): Promise { + async revokeDevice(deviceId: string, revokedBy: string, logger: FastifyBaseLogger, reason?: string): Promise { const now = new Date(); await this.db @@ -263,8 +264,13 @@ export class DeviceService { }) .where(eq(devices.id, deviceId)); - // TODO: Log security event - console.log(`Device ${deviceId} revoked by ${revokedBy}${reason ? `: ${reason}` : ''}`); + // Log security event with structured logging + logger.warn({ + operation: 'device_revoked', + deviceId, + revokedBy, + reason: reason || null + }, `Device ${deviceId} revoked by ${revokedBy}${reason ? `: ${reason}` : ''}`); } /** diff --git a/services/gateway/CHANGELOG.md b/services/gateway/CHANGELOG.md index 6928c3b38..68b187772 100644 --- a/services/gateway/CHANGELOG.md +++ b/services/gateway/CHANGELOG.md @@ -1,5 +1,63 @@ # Changelog +## 0.7.0 (2025-08-23) + +* chore(all): bump @fastify/helmet from 12.0.1 to 13.0.1 ([6c460ff](https://github.com/deploystackio/deploystack/commit/6c460ff)) +* chore(all): bump @libsql/client from 0.15.10 to 0.15.12 ([d071f7c](https://github.com/deploystackio/deploystack/commit/d071f7c)) +* chore(all): bump @tailwindcss/postcss from 4.1.11 to 4.1.12 ([80e97dd](https://github.com/deploystackio/deploystack/commit/80e97dd)) +* chore(all): bump @tailwindcss/vite from 4.1.11 to 4.1.12 ([ed7288c](https://github.com/deploystackio/deploystack/commit/ed7288c)) +* chore(all): bump @types/node from 24.1.0 to 24.3.0 ([8691fce](https://github.com/deploystackio/deploystack/commit/8691fce)) +* chore(all): bump @types/nodemailer from 6.4.17 to 7.0.0 ([18cd97e](https://github.com/deploystackio/deploystack/commit/18cd97e)) +* chore(all): bump @types/uuid from 9.0.8 to 10.0.0 ([7550a88](https://github.com/deploystackio/deploystack/commit/7550a88)) +* chore(all): bump @vueuse/core from 13.6.0 to 13.7.0 ([aa31039](https://github.com/deploystackio/deploystack/commit/aa31039)) +* chore(all): bump chalk from 4.1.2 to 5.6.0 ([a42c3bb](https://github.com/deploystackio/deploystack/commit/a42c3bb)) +* chore(all): bump drizzle-orm from 0.44.3 to 0.44.4 ([ec4d396](https://github.com/deploystackio/deploystack/commit/ec4d396)) +* chore(all): bump eslint from 9.31.0 to 9.33.0 ([005d75f](https://github.com/deploystackio/deploystack/commit/005d75f)) +* chore(all): bump fs-extra from 11.3.0 to 11.3.1 ([10f3e8d](https://github.com/deploystackio/deploystack/commit/10f3e8d)) +* chore(all): bump inquirer from 12.9.1 to 12.9.3 ([44ebdc4](https://github.com/deploystackio/deploystack/commit/44ebdc4)) +* chore(all): bump jest from 30.0.4 to 30.0.5 ([e488a6d](https://github.com/deploystackio/deploystack/commit/e488a6d)) +* chore(all): bump jiti from 2.4.2 to 2.5.1 ([a402b2d](https://github.com/deploystackio/deploystack/commit/a402b2d)) +* chore(all): bump lucide-vue-next from 0.539.0 to 0.540.0 ([e826d16](https://github.com/deploystackio/deploystack/commit/e826d16)) +* chore(all): bump open from 8.4.2 to 10.2.0 ([c04c783](https://github.com/deploystackio/deploystack/commit/c04c783)) +* chore(all): bump ora from 5.4.1 to 8.2.0 ([4d6c190](https://github.com/deploystackio/deploystack/commit/4d6c190)) +* chore(all): bump pino from 9.8.0 to 9.9.0 ([2c17e56](https://github.com/deploystackio/deploystack/commit/2c17e56)) +* chore(all): bump reka-ui from 2.3.2 to 2.4.1 ([ce311b8](https://github.com/deploystackio/deploystack/commit/ce311b8)) +* chore(all): bump tailwindcss from 4.1.11 to 4.1.12 ([a51328d](https://github.com/deploystackio/deploystack/commit/a51328d)) +* chore(all): bump ts-jest from 29.4.0 to 29.4.1 ([d8b52b4](https://github.com/deploystackio/deploystack/commit/d8b52b4)) +* chore(all): bump typescript from 5.8.3 to 5.9.2 ([eaeddc0](https://github.com/deploystackio/deploystack/commit/eaeddc0)) +* chore(all): bump vue-sonner from 2.0.2 to 2.0.8 ([2238b7f](https://github.com/deploystackio/deploystack/commit/2238b7f)) +* chore(all): bump webpack from 5.101.2 to 5.101.3 ([16f2c7d](https://github.com/deploystackio/deploystack/commit/16f2c7d)) +* chore(backend): bump @types/nodemailer in /services/backend ([a80c28f](https://github.com/deploystackio/deploystack/commit/a80c28f)) +* chore(frontend): bump @vue/tsconfig in /services/frontend ([b534363](https://github.com/deploystackio/deploystack/commit/b534363)) +* chore(frontend): remove deprecated Account.vue backup file ([4d7ab8e](https://github.com/deploystackio/deploystack/commit/4d7ab8e)) +* chore(frontend): update vite and fdir dependencies to latest versions ([7a28eb2](https://github.com/deploystackio/deploystack/commit/7a28eb2)) +* refactor(frontend): clean up code and improve readability in components ([96923ed](https://github.com/deploystackio/deploystack/commit/96923ed)) +* refactor(frontend): improve team selection logic and error handling ([b8f24d6](https://github.com/deploystackio/deploystack/commit/b8f24d6)) +* feat(all): featured server and pre-install mcp server ([f919b90](https://github.com/deploystackio/deploystack/commit/f919b90)) +* feat(all): severl improvements to the env and arg system ([481ee39](https://github.com/deploystackio/deploystack/commit/481ee39)) +* feat(all): update roadmap with new MCP configuration features ([97b0b2d](https://github.com/deploystackio/deploystack/commit/97b0b2d)) +* feat(backend): add device information schema for OAuth2 token requests ([ae4cdd0](https://github.com/deploystackio/deploystack/commit/ae4cdd0)) +* feat(backend): add event emissions for user and MCP server actions ([e35ed2d](https://github.com/deploystackio/deploystack/commit/e35ed2d)) +* feat(backend): enhance MCP server creation and update descriptions ([69f4829](https://github.com/deploystackio/deploystack/commit/69f4829)) +* feat(backend): env and arg on user team and user level ([374e6fb](https://github.com/deploystackio/deploystack/commit/374e6fb)) +* feat(backend): implement global event bus for plugin communication ([3bbfbf5](https://github.com/deploystackio/deploystack/commit/3bbfbf5)) +* feat(backend): implement user devices management API ([42afcc0](https://github.com/deploystackio/deploystack/commit/42afcc0)) +* feat(backend): replace default_config with transport_type enum in MCP servers ([af7661a](https://github.com/deploystackio/deploystack/commit/af7661a)) +* feat(backend): update device routes to include user context ([88a9af8](https://github.com/deploystackio/deploystack/commit/88a9af8)) +* feat(backend): update device routes to use user context ([4ace49e](https://github.com/deploystackio/deploystack/commit/4ace49e)) +* feat(backend): update user configuration routes and scopes for OAuth2 access ([fae0557](https://github.com/deploystackio/deploystack/commit/fae0557)) +* feat(frontend): add featured server option to MCP server forms and views ([f91f3c7](https://github.com/deploystackio/deploystack/commit/f91f3c7)) +* feat(frontend): add programming language selection to technical step ([538b258](https://github.com/deploystackio/deploystack/commit/538b258)) +* feat(frontend): enhance server details view with ContentWrapper component ([d3a679f](https://github.com/deploystackio/deploystack/commit/d3a679f)) +* feat(frontend): Enhance TechnicalStep component with hover card and improved configuration handling ([d8d4b69](https://github.com/deploystackio/deploystack/commit/d8d4b69)) +* feat(frontend): Implement device management features including listing, viewing, editing, and removi ([4d2e332](https://github.com/deploystackio/deploystack/commit/4d2e332)) +* feat(frontend): wrap step content in ContentWrapper component for improved layout ([2ffff37](https://github.com/deploystackio/deploystack/commit/2ffff37)) +* feat(gateway): add user configuration retrieval and processing logic ([5ca072b](https://github.com/deploystackio/deploystack/commit/5ca072b)) +* feat(gateway): implement automatic device registration during login ([a647196](https://github.com/deploystackio/deploystack/commit/a647196)) +* feat(gateway): implement automatic device registration during OAuth2 flow ([5d89be8](https://github.com/deploystackio/deploystack/commit/5d89be8)) +* test(backend): replace default_config with transport_type in MCP server tests ([cbc6400](https://github.com/deploystackio/deploystack/commit/cbc6400)) +* cicd(release): enhance release note extraction for backend and frontend services ([59dee75](https://github.com/deploystackio/deploystack/commit/59dee75)) + ## 0.6.1 (2025-08-17) * chore(all): update branch cleanup workflow to include gateway-release branch ([351ef11](https://github.com/deploystackio/deploystack/commit/351ef11)) diff --git a/services/gateway/package.json b/services/gateway/package.json index bce09f28b..763b23868 100644 --- a/services/gateway/package.json +++ b/services/gateway/package.json @@ -1,6 +1,6 @@ { "name": "@deploystack/gateway", - "version": "0.6.1", + "version": "0.7.0", "description": "The local DeployStack Gateway for secure MCP server management.", "main": "dist/index.js", "bin": { diff --git a/services/gateway/src/config/version.ts b/services/gateway/src/config/version.ts index d1a3c81df..ea37cc78d 100644 --- a/services/gateway/src/config/version.ts +++ b/services/gateway/src/config/version.ts @@ -18,8 +18,8 @@ export interface VersionCheckResult { // This will be replaced by the build script let versionData: VersionInfo = { - version: '0.6.0', - buildTime: '2025-08-17T07:37:04.547Z', + version: '0.7.0', + buildTime: '2025-08-23T15:47:22.626Z', source: 'release' };