ECOSYSTEM GAPS CLOSED — cowork-service now matches the pattern used by all other product backends (FlowMonk, ActionTrail, NoteLett, etc.): New lib files (6): - lib/product-config.ts — canonical product identity (PRODUCT_ID, productConfig) - lib/auth.ts — @bytelyst/fastify-auth createAuthMiddleware - lib/request-context.ts — getUserId(), getRequestProductId() - lib/telemetry.ts — @bytelyst/backend-telemetry buffer - lib/feature-flags.ts — @bytelyst/backend-flags with 12 cowork flags - lib/ipc-bridge.ts — IpcBridge class: spawn Rust child, JSON-RPC, 13 methods Updated files: - lib/config.ts — extends @bytelyst/backend-config baseBackendConfigSchema - server.ts — JWT context, bootstrap endpoint, IPC startup, graceful shutdown - modules/tasks/routes.ts — IPC bridge forwarding with in-memory fallback - modules/health/routes.ts — productId from product-config, IPC status - package.json — 7 new @bytelyst/* workspace deps IPC bridge features: - Spawns cowork-orchestrator --ipc-bridge as child process - JSON-RPC 2.0 over stdin/stdout (line-delimited) - 13 convenience methods matching Rust IpcHandler - Timeout + pending request tracking - Graceful shutdown with SIGTERM - Singleton pattern with setIpcBridge() for testing 24 tests passing (was 8), typecheck clean.
38 lines
1.1 KiB
JSON
38 lines
1.1 KiB
JSON
{
|
|
"name": "@lysnrai/cowork-service",
|
|
"version": "0.1.0",
|
|
"private": true,
|
|
"description": "Cowork Service — Fastify bridge between Tauri desktop / clients and Rust agent runtime + platform-service",
|
|
"type": "module",
|
|
"scripts": {
|
|
"dev": "tsx watch src/server.ts",
|
|
"build": "tsc",
|
|
"start": "node dist/server.js",
|
|
"test": "vitest run --pool forks",
|
|
"test:watch": "vitest",
|
|
"typecheck": "tsc --noEmit",
|
|
"lint": "eslint src/"
|
|
},
|
|
"dependencies": {
|
|
"@bytelyst/backend-config": "workspace:*",
|
|
"@bytelyst/backend-flags": "workspace:*",
|
|
"@bytelyst/backend-telemetry": "workspace:*",
|
|
"@bytelyst/config": "workspace:*",
|
|
"@bytelyst/errors": "workspace:*",
|
|
"@bytelyst/fastify-auth": "workspace:*",
|
|
"@bytelyst/fastify-core": "workspace:*",
|
|
"@bytelyst/logger": "workspace:*",
|
|
"@fastify/cors": "^10.0.2",
|
|
"fastify": "^5.2.1",
|
|
"jose": "^6.0.11",
|
|
"zod": "^3.24.2"
|
|
},
|
|
"devDependencies": {
|
|
"@bytelyst/testing": "workspace:*",
|
|
"@types/node": "^22.12.0",
|
|
"tsx": "^4.19.2",
|
|
"typescript": "^5.7.3",
|
|
"vitest": "^3.0.5"
|
|
}
|
|
}
|