2.0 KiB
2.0 KiB
Архитектурный baseline UI AWatch-rus
Дата фиксации: 2026-06-05
Baseline
Backend/API: Rust
Agent: Rust
Current Portal: Rust server-rendered HTML + HTMX-ready static UI
Future Enterprise UI: React + TypeScript
Future Desktop Forensics: Tauri + React + Rust core
Dioxus: out of scope / не рассматривается
Правила
- Текущий HTML/HTMX-ready портал остаётся основным pilot/production интерфейсом.
- JSON API является контрактным слоем для будущих UI.
- Бизнес-логика не должна зависеть от HTML.
- Будущий React/Tauri UI не должен ломать текущий портал.
- Agent и backend остаются Rust-first.
- Новые UI-фреймворки не добавлять без отдельного architecture decision.
- Dioxus не добавлять и не рассматривать.
Практическое следствие
Развитие интерфейса выполняется в таком порядке:
- Укрепить текущий Rust web portal.
- Зафиксировать стабильные JSON API-контракты.
- Поддерживать DPD
/dpd/как параллельный mirror для проверки совместимости. - Готовить будущий React/Tauri UI только поверх опубликованных контрактов.
Контрактный слой
Основные endpoints:
/api/contracts;/api/contracts/openapi.json;/api/contracts/typescript.d.ts.
DPD mirror endpoints:
/dpd/api/contracts;/dpd/api/contracts/openapi.json;/dpd/api/contracts/typescript.d.ts.
Правило совместимости: изменения API должны быть additive. Клиенты обязаны игнорировать неизвестные поля и корректно обрабатывать отсутствующие optional поля.