name: backend-standards description: Hono/Bun patterns and backend best practices for this project. Use when implementing API endpoints, WebSocket handlers, services, or server-side logic in packages/server.
Backend Standards
Key Principles
- Server is the source of truth - Backend manages all session/worker state
- Structured logging - Use Pino with context objects
- Resource cleanup - Always clean up PTY processes and connections
- Type safety - Define types in shared package, validate at boundaries
Tech Stack
- Bun, Hono, bun-pty, Pino, Valibot
Backend Best Practices
- Resource Cleanup - PTY processes, WebSocket connections, file handles must be cleaned up
- Callback Detachment - Detach callbacks when resources are destroyed (memory leak prevention)
- WebSocket Message Types - Define and validate server→client and client→server types explicitly
- Output Buffering - Buffer rapid PTY output before WebSocket send to reduce message frequency
- Structured Logging - Use Pino with structured data:
logger.info({ sessionId }, 'message')
Detailed Documentation
- backend-standards.md - Directory structure, Hono, logging, services, testing, security, best practices
- websocket-patterns.md - Dual WebSocket architecture, message protocol, broadcasting