Update roadmap: Phase 1 complete - PostgreSQL, TURN, URL previews, search, upload limit

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-02-11 19:57:01 -05:00
parent 7e35a46145
commit a9ac9f2f1d

View File

@@ -4,13 +4,13 @@ Matrix bot and server improvements for the Lotus Guild homeserver (`matrix.lotus
**Repo**: https://code.lotusguild.org/LotusGuild/matrixBot **Repo**: https://code.lotusguild.org/LotusGuild/matrixBot
## Status: Planning ## Status: Phase 1 Complete (Database + Voice/Video)
--- ---
## Priority Order (suggested) ## Priority Order (suggested)
1. PostgreSQL migration (SQLite will bottleneck everything else) 1. ~~PostgreSQL migration (SQLite will bottleneck everything else)~~
2. TURN server (makes voice/video actually reliable) 2. ~~TURN server (makes voice/video actually reliable)~~
3. Custom Element Web (chat.lotusguild.org with branding) 3. Custom Element Web (chat.lotusguild.org with branding)
4. Discord bridge (lets people transition gradually) 4. Discord bridge (lets people transition gradually)
5. Custom emoji packs (makes it feel like home) 5. Custom emoji packs (makes it feel like home)
@@ -21,12 +21,32 @@ Matrix bot and server improvements for the Lotus Guild homeserver (`matrix.lotus
--- ---
## Infrastructure
| Service | Host | IP | LXC | Notes |
|---------|------|-----|-----|-------|
| Synapse | storage-01 | 10.10.10.29 | 151 | Homeserver + coturn |
| PostgreSQL 17 | storage-01 | 10.10.10.44 | 109 | Synapse database backend |
| NPM | large1 | 10.10.10.27 | 139 | Reverse proxy for matrix.lotusguild.org |
**Key paths on Synapse LXC (10.10.10.29):**
- Synapse config: `/etc/matrix-synapse/homeserver.yaml`
- Synapse venv: `/opt/venvs/matrix-synapse/`
- coturn config: `/etc/turnserver.conf`
- SQLite backup: `/var/lib/matrix-synapse/homeserver.db`
**Port forwarding (router -> 10.10.10.29):**
- TCP+UDP 3478 (TURN signaling)
- UDP 49152-65535 (media relay)
---
## Server - Quality of Life ## Server - Quality of Life
- [ ] Migrate from SQLite to PostgreSQL (critical for performance at any real scale) - [x] Migrate from SQLite to PostgreSQL (critical for performance at any real scale)
- [ ] Enable URL previews in Synapse (preview_url in homeserver.yaml) - [x] Set up TURN/STUN server (coturn) for reliable voice/video calls behind NAT
- [ ] Increase upload size limit for media/GIFs (default is 50MB, may want higher) - [x] Enable URL previews in Synapse
- [ ] Enable message search (full-text search requires Synapse config + postgres) - [x] Increase upload size limit for media/GIFs (200MB)
- [ ] Set up TURN/STUN server (coturn) for reliable voice/video calls behind NAT - [x] Enable message search (full-text search with PostgreSQL backend)
- [ ] Enable push notifications gateway for mobile clients - [ ] Enable push notifications gateway for mobile clients
- [ ] Configure media retention policy (auto-cleanup old remote media) - [ ] Configure media retention policy (auto-cleanup old remote media)
- [ ] Set up sliding sync proxy (faster room loading in Element) - [ ] Set up sliding sync proxy (faster room loading in Element)
@@ -139,7 +159,7 @@ Matrix bot and server improvements for the Lotus Guild homeserver (`matrix.lotus
- [ ] Systemd service (`matrixbot.service`) - [ ] Systemd service (`matrixbot.service`)
- [ ] Auto-deploy from Gitea webhook (matching Discord bot pattern) - [ ] Auto-deploy from Gitea webhook (matching Discord bot pattern)
- [ ] Deployment script (`/usr/local/bin/matrix_bot_deploy.sh`) - [ ] Deployment script (`/usr/local/bin/matrix_bot_deploy.sh`)
- [ ] Determine host LXC (new container or colocate with Synapse on 10.10.10.205) - [ ] Determine host LXC (new container or colocate with Synapse on 10.10.10.29)
## Bot - Not Porting (Discord-specific) ## Bot - Not Porting (Discord-specific)
- Reaction roles (no Matrix equivalent) - Reaction roles (no Matrix equivalent)
@@ -151,7 +171,9 @@ Matrix bot and server improvements for the Lotus Guild homeserver (`matrix.lotus
## Tech Stack ## Tech Stack
- **Language**: Python 3 - **Language**: Python 3
- **Library**: matrix-nio (with E2EE) - **Library**: matrix-nio (with E2EE)
- **Homeserver**: matrix.lotusguild.org (Synapse on 10.10.10.205) - **Homeserver**: matrix.lotusguild.org (Synapse on 10.10.10.29)
- **Database**: PostgreSQL 17 on 10.10.10.44
- **TURN**: coturn on 10.10.10.29 (colocated with Synapse)
- **Dependencies**: matrix-nio[e2ee], aiohttp, python-dotenv, mcrcon - **Dependencies**: matrix-nio[e2ee], aiohttp, python-dotenv, mcrcon
## Production Server ## Production Server