feat: overhaul with modular API, agent endpoints, migrations, backup and tests

- Split monolithic app.py into server/api/ routers
- Add Pydantic schemas for input validation
- Add /agent/* API with separate AGENT_TOKEN auth
- Replace static schema.sql with versioned migrations (datenerhaltend)
- Add tools/backup_db.py for SQLite backups
- Add Dockerfile HEALTHCHECK and compose.yml AGENT_TOKEN env
- Add pytest tests for user and agent API
- Update README with API docs and deployment safety notes
- Bump version to 1.2.0
This commit is contained in:
Frank Schwenk
2026-09-21 12:46:44 +02:00
parent 7cec3030c1
commit 88bdf6f34b
31 changed files with 942 additions and 184 deletions
+4 -1
View File
@@ -10,6 +10,8 @@ class Settings(BaseSettings):
jwt_secret: str = "dev-secret-change-me"
jwt_expire_days: int = 90
agent_token: str = "" # long-lived token for /agent/* endpoints
vapid_private_key: str = ""
vapid_public_key: str = ""
vapid_claims_email: str = "mailto:admin@schwenk.online"
@@ -22,7 +24,8 @@ class Settings(BaseSettings):
messages_path: str = "messages.yaml"
public_dir: str = "public"
app_version: str = "1.1.0"
app_version: str = "1.2.0"
migrations_dir: str = "tools/migrations"
settings = Settings() # type: ignore[call-arg]