Split UME and alarms routes out of main; align UI scopes.

Extract ume_support/ume_router and alarms_router so main stays startup-focused, add topology fabric/views import surfaces, and gate managed-NE writes by ne:write.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
oliver 2026-08-02 16:30:29 +08:00
parent 633a9d55bd
commit 8180f069ea
11 changed files with 2365 additions and 2090 deletions

22
docs/ALEMBIC.md Normal file
View file

@ -0,0 +1,22 @@
# Alembic (schema migrations)
netx historically evolved the schema with startup `ALTER TABLE … IF NOT EXISTS`.
Alembic is the preferred path going forward.
## Commands
```powershell
cd netx
.\.venv\Scripts\alembic.exe upgrade head
```
## Env
| Variable | Meaning |
|----------|---------|
| `NETX_SKIP_LEGACY_STARTUP_DDL=true` | Skip the large ad-hoc ALTER block in API startup (keep auth `scopes` column ensures). Use after `alembic upgrade head`. |
| `NETX_DATABASE_URL` | Same URL Alembic reads via `netx_api.config.settings`. |
Fresh lab installs can keep the legacy startup DDL (`false`, default) until you adopt Alembic in your deploy checklist.
Revision for capability scopes: `alembic/versions/20260802_scopes.py`.