docs: add pilot validation package

This commit is contained in:
igor04091968
2026-06-07 19:09:41 +03:00
parent 56134e832a
commit cff6e7c425
8 changed files with 655 additions and 134 deletions
+62 -133
View File
@@ -1,145 +1,74 @@
# Анализ разрывов готовности пилота AWatch-rus
# Pilot Gap Analysis
Дата аудита: 2026-06-06.
Аудируемый срез: `origin/main`,
`9c57d6d2ce7eae1b133c937f037b24933f5797fe`.
Цель: объективно определить готовность AWatch-rus к контролируемой пилотной
эксплуатации и демонстрации руководителю, ИБ и эксплуатации.
Ограничения аудита: код, архитектура, сущности и интеграции не изменялись.
Сформирован только этот аудитный документ.
Не входило в аудит: pfSense, Telegram, Grafana, InfluxDB.
Документ фиксирует текущую готовность AWatch-rus к контролируемому пилоту.
Оценка относится к существующему состоянию продукта и не добавляет новых
функций, API, агентов или интеграций.
## Что готово
- Архитектура пилота выстроена как понятная цепочка:
`агент -> телеметрия -> аналитика -> риск -> расследование -> отчет`.
- Rust workspace на текущем `origin/main` проходит обязательные проверки:
- Сформирован Pilot v1 контур с ролями `executive`, `manager`, `security`,
`forensics` и `admin`.
- Есть Executive, Workforce, Security и Forensics сценарии для демонстрации.
- Реализованы Workforce reports, Explainable KPI, UEBA Score v1, Risk Narrative
и Executive Action Center.
- Есть Rust Backend, Rust Agent baseline, HTML/HTMX portal и role-based
контракты Pilot v1.
- Подготовлен demo pack: сценарии руководителя, ИБ и расследований, синтетический
demo dataset, evidence pack, пример итогового отчета и value proposition.
- Подготовлены registry readiness документы без ложных заявлений о сертификации.
- Подготовлены enterprise deployment документы: topology, sizing, backup and
recovery, operations runbook, hardening и acceptance checklist.
- pfSense readiness описан как `contract_only`, без заявления production
ingestion или SIEM-функциональности.
- Скриншоты портала вынесены в `docs/screenshots/` и описаны в README.
- Есть отдельный smoke для проверки demo, registry, deployment, screenshots,
roadmap, reports и runbooks.
| Проверка | Результат |
| --- | --- |
| `cargo test --workspace` | Пройдено. |
| `cargo clippy --all-targets --all-features` | Пройдено. |
| `cargo build --release` | Пройдено. |
| `node scripts/detmir-portal-tabs-smoke.mjs` | Пройдено против рабочего портала через временный туннель; `security_events=available`. |
## Что требует доработки
- Portal UX проходит smoke: вкладки `Обзор`, `Сотрудники`,
`Подразделения`, `Риски`, `Расследования`, `Сетевой периметр`, `Отчеты`,
`Настройки` открываются без ошибок консоли и HTTP 4xx/5xx.
- Executive View готов к показу руководителю: главный вывод расположен первым,
порядок управленческих блоков подтвержден smoke, англоязычные и лишние
технические термины в проверяемом пользовательском слое не обнаружены.
- Security View готов к показу ИБ: есть кандидаты на проверку, расследования,
аудит, материалы расследования и переход из риска в карточку расследования.
Smoke подтвердил 3 кнопки перехода к расследованию.
- Operations View готов к показу эксплуатации: видны полнота и качество
данных, состояние источников, режим событий безопасности и ошибки сбора.
- ClickHouse integration работает в пилотном контуре: `/api/health`
возвращает `ok=true`, источник `security_events` активен, портал получает
агрегированные события безопасности через ClickHouse.
- Сбор данных 1С и DLP зафиксирован как Rust-first runtime: `aw-1c-ingest-rust`
и Windows telemetry/evidence sync работают с 15-минутным циклом; скриншоты
1С не копируются, доказательные PNG остаются только для DLP-событий.
- Agent/Rust migration закрывает критичный runtime-риск: основной сбор
worktime, browser/domain, URL/domain extraction, clipboard/USB/print
incident semantics и DLP evidence path покрыты Rust-бинарниками и тестами.
- Документы `docs/PORTAL_RU.md` и `docs/SECURITY_EVENTS_CLICKHOUSE_RU.md`
присутствуют и отражают текущую модель портала и ClickHouse-событий.
- Пилотные документы находятся в единой структуре `docs/`:
`docs/CUSTOMER_PILOT_PACK_RU.md`, `docs/PILOT_READINESS_AUDIT_RU.md`,
`docs/SALES_POSITIONING_RU.md`, `docs/DEMO_RUNBOOK_RU.md`.
- 10-минутный демонстрационный путь технически доступен: главный риск,
подразделение, причина риска, кандидат, расследование, пакет расследования и
итоговый управленческий вывод показываются в портале.
- Провести live pilot smoke на целевом стенде заказчика, а не только локальную
проверку репозитория.
- Зафиксировать согласованные источники данных, ожидаемое покрытие агентов и
допустимую задержку обновления данных.
- Выполнить контрольный тест backup and recovery на стенде пилота.
- Проверить reverse proxy, TLS, авторизацию и доступность портала из сети
заказчика.
- Провести визуальную проверку портала на рабочем разрешении демонстрационного
ноутбука и на мобильном/планшетном экране, если такой показ предполагается.
- Подтвердить, что Markdown-отчеты не содержат персональных данных и внутренних
идентификаторов заказчика.
- Зафиксировать владельцев действий по Recommended Actions: бизнес,
эксплуатация, ИБ.
## Что критично исправить
## Что не входит в пилот
Критичных блокеров в коде, сборке и smoke-проверке для контролируемого пилота
на текущем срезе не выявлено.
- Полноценная DLP-система с контентной фильтрацией, блокировками и политиками
предотвращения утечек.
- Полноценная SIEM-система с централизованной корреляцией всех событий ИБ.
- EDR/XDR, антивирусная защита, реагирование на вредоносный код и управление
изоляцией хостов.
- ML/LLM-прогнозирование, автоматическая классификация сотрудников и
генеративная аналитика.
- Автоматическое применение дисциплинарных или кадровых решений.
- Обязательный production ingestion pfSense.
- Юридически значимая экспертиза без ручной проверки материалов ответственным
лицом.
Критичные условия перед фактическим показом:
## Что отложено на roadmap
- Демо должно запускаться на контуре, где развернут именно commit
`9c57d6d2ce7eae1b133c937f037b24933f5797fe` или более новый проверенный срез.
- Перед показом нужен короткий преддемо-прогон на той же сети и экране:
открыть портал, дождаться `Данные готовы`, проверить кандидата, открыть
расследование и сформировать отчет.
- Нельзя продавать текущий срез как промышленно завершенную платформу без
оговорок по доступу, retention, backup, versioning и регламенту эксплуатации.
- Расширенные agentless providers: PowerShell, SSH, Syslog, 1C, VPN и SCUD.
- Production validation российских ОС: Astra Linux, РЕД ОС, Альт и РОСА.
- Расширенный React/TypeScript Enterprise UI и Tauri Desktop Forensics.
- Глубокие enterprise-коннекторы AD/LDAP, SIEM и корпоративных учетных систем.
- Нагрузочное тестирование крупного контура с формальным capacity baseline.
- Формальный release package с подписанными артефактами, SBOM и процедурой
поставки для промышленной эксплуатации.
- Дополнительные регламентные материалы для закупки и юридической приемки.
## Что желательно исправить
## Итог
- Русифицировать заголовки customer-facing документов: текущие документы
используют названия вроде `Customer Pilot Pack` и `Sales Positioning`, что
слабее выглядит на показе руководителю и заказчику.
- Отдельно перед демо проверить экспорт в формате, который будет показан:
текстовый отчет, печать или PDF.
- Добавить в регулярный smoke мобильный/визуальный прогон. Текущий
`detmir-portal-tabs-smoke.mjs` хорошо проверяет функциональный путь, но не
является полноценной визуальной regression-проверкой.
- Сформировать явную матрицу совместимости API: agent, portal, telemetry,
ClickHouse security events и investigation state.
- Убрать из публичного customer-facing пакета внутренние формулировки про
`<LOCAL_CARGO_TARGET_DIR>`, private contour и служебные runtime-детали.
## Что перенести после пилота
- Полное hardening локальных JSON/JSONL/state-хранилищ: atomic write,
блокировки, retention, backup/restore и нагрузочные тесты больших файлов.
- Промышленный app-layer RBAC для портала. Сейчас ролевые представления есть в
UX, но контроль доступа должен оставаться задачей защищенного контура или
reverse proxy до отдельного product hardening.
- Полное удаление оставшихся PowerShell deploy/bootstrap/fallback-элементов.
Для пилота важно отсутствие PowerShell как основного runtime-сборщика; полная
зачистка deploy-истории не является блокером показа.
- Load/sizing-профиль под промышленную эксплуатацию: количество рабочих мест,
объем событий, глубина хранения, требования к ClickHouse и файловому evidence.
- Формальные регламенты хранения и доступа к материалам расследований.
- CI-упаковку customer-facing документов с проверкой путей, ссылок и русских
заголовков.
## Риски пилота
| Риск | Влияние | Оценка |
| --- | --- | --- |
| Контур демо не совпадает с проверенным commit | Возможны расхождения UI, API или данных | Критично контролировать перед показом |
| Документы или ссылки изменятся без проверки | Путает hand-off и приемку пакета | Контролировать markdown link-check перед передачей |
| Первый запуск портала без прогрева | Может выглядеть как зависшая загрузка | Управляемо преддемо-прогоном |
| В текущих данных исчезнут кандидаты на расследование | 10-минутный сценарий потеряет самый сильный пример | Проверять `/api/reports` перед демо |
| ClickHouse станет недоступен | Operations View покажет fallback/ошибку вместо полного ИБ-среза | Не блокер UI, но слабее для ИБ |
| Нет промышленного RBAC внутри приложения | Нельзя открывать портал вне защищенного контура | Для контролируемого пилота приемлемо |
| Остаточные PowerShell deploy/fallback артефакты | Могут вызвать вопросы эксплуатации о миграции | Объяснять как legacy/fallback, не runtime-core |
| Нет полной визуальной mobile regression-проверки в обязательном smoke | Возможны мелкие UX-дефекты на нестандартном экране | Проверить вручную перед показом с планшета/ноутбука |
Дополнительное наблюдение: один первичный запуск smoke через только что
созданный туннель один раз не дождался `READY` за 30 секунд. Повтор с тем же
30-секундным таймаутом прошел примерно за 8 секунд, `/portal/api/reports`
отвечал примерно за 0.4 секунды. Это не выглядит как продуктовый блокер, но
подтверждает необходимость преддемо-прогона.
## Итоговая оценка готовности
Статус: AWatch-rus готов к контролируемому демонстрационному пилоту на текущем
`origin/main`.
Оценка готовности: 88%.
Обоснование:
- Сборка, тесты, clippy, release build и portal smoke на проверенном срезе
успешны.
- Executive/Security/Operations View закрывают основной сценарий для
руководителя, ИБ и эксплуатации.
- Rust runtime migration убрал главный риск зависимости от PowerShell в
рабочих сборщиках.
- ClickHouse-события безопасности доступны и отражаются в портале.
- Оставшиеся разрывы относятся в основном к вычитке документов, преддемо
дисциплине, промышленному hardening и формальному управлению доступом.
Рекомендация: допустить к пилоту только как контролируемый демонстрационный
контур. Перед показом выполнить короткий smoke на рабочем URL, проверить
наличие кандидата на расследование, открыть пакет расследования и заранее
подготовить итоговый отчет.
AWatch-rus готов к контролируемому пилоту и демонстрации Pilot v1 как
Workforce-first платформы с Security Analytics и Forensics-контуром. Главный
остаточный риск не в функциональности демо, а в неподтвержденной готовности
целевого стенда: доступность портала, покрытие источников, свежесть данных,
резервное восстановление и роли ответственных за действия после пилота.