Baby in BrazilControl Platform v2 · Справка
⌂ ГлавнаяPUBLIC HELP

Public knowledge base

Как устроена Control Platform v2.

Публичная справка объясняет проекты, roadmap, задачи, review, сроки, releases, Preview Portal и Telegram. Она не содержит секретов, admin-token, внутренних ключей или закрытых данных.

Основы

Что такое Control Platform v2

Это единый control-plane для проектов Baby in Brazil. Web Admin управляет внутренним состоянием, Telegram показывает оперативные действия, а Preview Portal публикует только предварительные версии, которые явно разрешены для просмотра.

AdminПроекты, roadmap, задачи, releases, audit и управление.
TelegramОперативная проекция: что делать, что ждёт решения, где срок или блокер.
PreviewТолько предварительные artifacts. Production не зеркалируется автоматически.

Identity / RBAC

Web Admin входит через тот же Telegram identity

Основной браузерный flow v2 не требует вручную копировать DEV admin-token. Web Admin создаёт одноразовый challenge, пользователь открывает @BIBControlDevBot и подтверждает вход. После подтверждения браузер получает HttpOnly/Secure session cookie.

Telegram user ID связывается с участником Control Platform. Права могут быть глобальными и project-level. Emergency bearer token остаётся только bootstrap/recovery механизмом и не показывается в обычном Admin UI.

Структура

Projects и универсальный Roadmap

Каждая работа сначала относится к Project. Внутри проекта используется произвольное дерево roadmap: phase, workstream, module, milestone, category или другой тип узла. Движок не должен требовать специального кода для конкретного проекта.

Roadmap, Tasks и Releases — разные слои. Наличие узла в roadmap само по себе не означает, что работа завершена или версия выложена в production.

Для Preview проект или узел может использовать режим AUTO / TREE / VERSIONS. TREE полезен при реальных фазах/ветках; VERSIONS — когда пользователю нужна просто история версий без искусственного дерева; AUTO выбирает представление по фактической структуре.

Работа

Задачи, сроки и следующий action

Задача хранит фактическую работу: owner/assignee, статус, приоритет, блокировку, срок и следующий ожидаемый action. Управленческая сводка должна отвечать на вопросы: что делается, что заблокировано, что просрочено и от кого сейчас нужен следующий шаг.

EstimateОценка продолжительности или диапазона.
PlanПлановая цель, которая может измениться при изменении scope.
DeadlineКонкретная крайняя дата/время.
CommitmentЗафиксированное обязательство; может иметь deadline.
SLAНорматив времени реакции или обработки, например на review.

Согласование

Review относится к конкретной revision

Approval не должен быть абстрактным комментарием к задаче. Review фиксируется для конкретной revision. Если после CHANGES_REQUIRED содержимое меняется, создаётся новая revision и новый review cycle; старые решения не должны молча переноситься.

В управленческой проекции важно видеть не только «на согласовании», но и кто уже принял решение, кто ещё ожидается и какой SLA действует для текущего цикла.

Предварительные версии

Release, Preview artifact и Deployment — не одно и то же

Release — версия продукта или части проекта. Preview artifact — конкретный предварительный результат, который разрешено открыть до выкладки. Deployment — отдельный факт выкладки версии в dev, staging или production.

Preview Portal использует последовательную навигацию: проекты → фазы/ветки → версии. На первой странице показываются только проекты, у которых реально есть опубликованные preview artifacts. После входа в проект открывается его preview-capable roadmap, а уже внутри конкретной фазы/ветки — история версий и кнопки открытия artifacts.

Поэтому обычная production-задача — например новая статья или карточка врача — не появляется в Preview Portal автоматически. Она появится там только если для неё существует специально опубликованный preview artifact.

Паспорт версии

Каждый опубликованный preview release может иметь отдельный паспорт: project/node, версия, lifecycle/gate, current/immutable признаки, дата публикации, manifest и список artifacts. Snapshot/source package регистрируются отдельными artifact types и не смешиваются с самим preview URL.

Immutable snapshot создаётся при публикации/установке версии, получает SHA-256 и скачивается как зарегистрированный artifact. Для legacy releases bytes импортируются отдельно; отсутствие старого ZIP не подменяется выдуманным snapshot.

Telegram

Telegram — клиент Control Platform

Бот не является отдельным источником истины. Он читает те же project/action projections, что и Web Admin, поэтому roadmap и статусы не должны дублироваться отдельными Telegram-справочниками.

Постоянная нижняя навигация

Частые глобальные переходы вынесены из старых сообщений в persistent reply keyboard: Главная, Сегодня, Проекты, Согласования, Сроки, Блокеры, Preview, Справка и Настройки. При выборе «Проекты» нижняя клавиатура временно показывает проекты, а после открытия проекта возвращается к основному меню.

Inline-кнопки в сообщениях предназначены не для общей навигации, а для действий над конкретным объектом: например APPROVE / CHANGES REQUIRED для конкретного review, подтверждение конкретного обязательства или открытие конкретного preview artifact.

/start
Открыть персональную оперативную сводку: срочные действия + состояние проектов.
/today
Оперативная сводка по portfolio.
/projects
Выбрать проект через нижнюю клавиатуру.
/reviews
Задачи на согласовании.
/deadlines
Задачи с зафиксированными сроками.
/blockers
Заблокированные задачи и причины.
/preview
Предварительные версии, разрешённые к просмотру.
/settings
Язык и настройки уведомлений.
/help
Краткая справка и ссылка на публичную базу знаний.
/project <slug>
Открыть конкретный проект.

DEV-бот ограничен allowlist. Публичная справка не публикует Telegram user IDs, token или внутренние ключи.

Профиль

Язык и уведомления — одна запись для Web и Telegram

Профиль хранит UI language, notification language, timezone, digest mode и категории уведомлений. Те же preferences редактируются в Web Admin и через «⚙️ Настройки» в Telegram; интерфейсы не ведут отдельные копии.

R5 фиксирует contract/preferences и identity. Полный event-dispatch уведомлений подключается следующим операционным слоем вместе с импортом mature v1 workflows.

Governance

Что считается источником истины

  • Состояние задачи — Control Platform.
  • Review decision — конкретный review cycle / revision.
  • Audit — история изменения состояния.
  • Telegram — интерфейс, а не отдельная база.
  • Notification — уведомление, а не доказательство отсутствия или существования задачи.
  • Комментарий — не approval.
  • Новый feedback не переписывает задним числом исторически завершённую работу.

Интерфейс

Светлая/тёмная тема и разные экраны

В v2 тема выбирается пользователем и сохраняется локально в браузере. Светлая тема остаётся default. Layout не ограничивается фиксированной шириной контейнера: интерфейс занимает доступную ширину и адаптируется от телефона до широких/TV/4K экранов.

Migration boundary

Обязательства и mature v1 workflows не потеряны

Foundation II сначала фиксирует identity/RBAC, preferences, management projections, Preview navigation и release passports. После этого v1 импортируются задачи/review/audit, а отдельным операционным слоем — obligations, recurring occurrence cycles, owner/recipient facts, reminders и daily reports.

Это намеренная последовательность: обязательство остаётся отдельной сущностью со своей семантикой и не превращается в специальный task type или набор project-specific if.