forked from syntaxbullet/aurorabot
feat: implement branded discord embeds and versioning
This commit is contained in:
32
.agent/work/tickets/003-modularize-web-server.md
Normal file
32
.agent/work/tickets/003-modularize-web-server.md
Normal file
@@ -0,0 +1,32 @@
|
||||
### Context & Goal
|
||||
|
||||
The current `web/src/server.ts` is a monolithic file with a very long `fetch` handler. This makes it difficult to read and maintain. Modularizing the logic into separate route handlers and middleware-like functions will improve code quality and scalability.
|
||||
|
||||
### Dependencies
|
||||
|
||||
- None
|
||||
|
||||
### Affected Files
|
||||
|
||||
- `web/src/server.ts`: Refactor to use modular handlers.
|
||||
- `web/src/routes/api.ts`: New file for API route definitions.
|
||||
- `web/src/routes/static.ts`: New file for static file serving logic.
|
||||
- `web/src/routes/websocket.ts`: New file for WebSocket event handling.
|
||||
|
||||
### Technical Constraints & Strategy
|
||||
|
||||
- Implementation: Move different responsibilities (API, Static, WS) into separate files.
|
||||
- The main `serve` configuration should just call these modules.
|
||||
- Ensure the SPA fallback logic remains intact.
|
||||
|
||||
### Definition of Done (Binary)
|
||||
|
||||
- [ ] `web/src/server.ts` length reduced by at least 50%.
|
||||
- [ ] API routes moved to dedicated module.
|
||||
- [ ] Static file serving moved to dedicated module.
|
||||
- [ ] WebSocket logic moved to dedicated module.
|
||||
- [ ] Dashboard still loads and functions correctly.
|
||||
|
||||
### New Test Files
|
||||
|
||||
- None (Verification via manual testing of the dashboard).
|
||||
Reference in New Issue
Block a user