refactor: make registry postgres-first
This commit is contained in:
@@ -434,7 +434,7 @@ mcpaas/
|
||||
- `tokio` как async runtime
|
||||
- `axum` для HTTP API
|
||||
- `serde` и `serde_json`
|
||||
- `sqlx` для PostgreSQL или SQLite
|
||||
- `sqlx` для PostgreSQL
|
||||
- `reqwest` для REST и GraphQL транспорта
|
||||
- `tonic` и `prost` для работы с gRPC
|
||||
- `tower` для middleware
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
|
||||
Этот документ фиксирует структуру хранения конфигураций, версий операций, загруженных артефактов и published runtime-view. Его цель - дать основу для SQL-миграций и для реализации `mcpaas-registry`.
|
||||
|
||||
В документе предполагается реляционная модель, ориентированная на `PostgreSQL`. Для MVP допускается адаптация под `SQLite`, но канонической считается схема, совместимая с `PostgreSQL`.
|
||||
В документе предполагается реляционная модель, ориентированная на `PostgreSQL`. Канонической считается схема, совместимая с `PostgreSQL`.
|
||||
|
||||
## 2. Общие принципы хранения
|
||||
|
||||
@@ -30,13 +30,13 @@
|
||||
|
||||
Для MVP рекомендуется отдельная таблица `auth_profiles`, где metadata и secret refs отделены от operation versions.
|
||||
|
||||
### 2.5. SQLite-адаптация допустима
|
||||
### 2.5. Тестовая изоляция
|
||||
|
||||
Канонической схемой остается PostgreSQL-совместимая модель, но MVP-реализация registry может использовать SQLite. В таком случае:
|
||||
Integration tests для registry должны выполняться на реальной `PostgreSQL`, но без влияния на runtime-данные. Предпочтительный способ:
|
||||
|
||||
- `jsonb` хранится как `text` с JSON-сериализацией;
|
||||
- `timestamptz` хранится как `text`;
|
||||
- внешние ключи и version snapshot semantics сохраняются без изменения.
|
||||
- отдельная test database;
|
||||
- либо отдельная временная schema на время теста;
|
||||
- обязательная очистка после завершения тестов.
|
||||
|
||||
## 3. Основные таблицы
|
||||
|
||||
|
||||
+1
-1
@@ -27,7 +27,7 @@ flowchart LR
|
||||
REST[adapter-rest]
|
||||
GQL[adapter-graphql]
|
||||
GRPC[adapter-grpc]
|
||||
DB[(PostgreSQL/SQLite)]
|
||||
DB[(PostgreSQL)]
|
||||
STORE[(Artifact Storage)]
|
||||
|
||||
UI --> ADMIN
|
||||
|
||||
@@ -311,7 +311,6 @@ mcpaas-registry/
|
||||
get_runtime_view.rs
|
||||
storage/
|
||||
mod.rs
|
||||
sqlite.rs
|
||||
postgres.rs
|
||||
cache/
|
||||
mod.rs
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
## 2. Базовые решения для MVP
|
||||
|
||||
- каноническая БД: `PostgreSQL`
|
||||
- допустимый упрощенный режим разработки: `SQLite`
|
||||
- локальная разработка и тесты используют ту же `PostgreSQL`-модель хранения
|
||||
- artifact storage: локальная файловая система
|
||||
- MCP transport: `Streamable HTTP`
|
||||
- admin API и mcp-server запускаются как отдельные приложения
|
||||
@@ -100,7 +100,7 @@ var/mcpaas/
|
||||
|
||||
Local development:
|
||||
|
||||
- `SQLite` допустим;
|
||||
- локальное окружение должно иметь доступ к `PostgreSQL`;
|
||||
- локальный storage;
|
||||
- упрощенная auth-модель admin-api.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user