architect/standards/PLATFORM_DISCUSSION.md

Платформа — Обсуждение структуры

Версия: 0.1.0 (черновик для обсуждения)
Дата: 2026-03-15
Статус: discussion


Две платформы — одна структура

Сейчас существует Платформа 1 и проектируется Платформа 2.
Ключевое отличие — не код, а способ работы.

Платформа 1 Платформа 2
Интерфейс CLI (Claude Code в терминале) Веб-интерфейс
Кодер Claude Code (claude в терминале) Claude API через веб-UI
Как работать Диалог в консоли Диалог в браузере
Где запускать SSH на сервер Открыть браузер
Структура папок ✅ одинаковая ✅ одинаковая
Стандарты ✅ одинаковые ✅ одинаковые
Deploy ✅ одинаковый ✅ одинаковый

Главный принцип: структура workspace не зависит от интерфейса.
Переезд с P1 на P2 = смена способа доступа, не смена папок.


Структура workspace

workspace/
├── architect/         Методология, стандарты, правила
   ├── standards/     Стандарты (этот файл здесь)
   ├── theory/        Теория, концепции
   └── templates/     Шаблоны проектов

├── system/            Ядро платформы
   ├── core/          Движок: executor, scheduler
   ├── agents/        Claude агенты и протоколы
   ├── monitor/       Мониторинг сервисов
   └── scheduler/     Планировщик задач

├── library/           Переиспользуемые компоненты
   ├── connectors/    API коннекторы (ozon, telegram, pochta...)
   ├── adapters/      Адаптеры форматов данных
   └── components/    Утилиты, парсеры

├── infra/             Инфраструктурные сервисы платформы
   ├── @md-viewer.service/     docs.0kt.ru
   ├── @backup.service/        бэкапы
   └── @monitor.service/       мониторинг

├── projects/org/      Бизнес-проекты
   ├── pirotehnika/
   └── lideravto/

└── deploy/            Профили деплоя (см. ниже)
    ├── profiles/
    └── scripts/

Правила для каждой папки

Папка Что там Кто меняет В git
architect/ Только документы (.md, .yaml) Архитектор
system/ Код платформы (.py) Платформенная команда
library/ Переиспользуемый код Архитектор + тесты
infra/ Docker compose, конфиги Оператор
projects/ Код проектов Проектор / Кодер
$DATASPACE/ Данные, venv, артефакты

venv, node_modules → всегда в $DATASPACE/runtime/{project}/, никогда в git.


Как устроен исполняемый модуль

Каждый сервис/приложение проекта:

projects/org/pirotehnika/app/erp/
├── src/                  ← Исходный код (в git)
│   ├── main.py
│   └── ...
├── infrastructure/       ← Docker, конфиги (в git)
│   ├── Dockerfile
│   ├── docker-compose.yml
│   └── .env.example
└── CLAUDE.md             ← Контекст для AI

$DATASPACE/runtime/pirotehnika/erp/   ← НЕ в git
├── venv/                 ← Python окружение
└── data/                 ← БД, файлы runtime

Профили деплоя

Один репозиторий, разные профили для разных серверов.
При создании нового сервера — одна команда клонирует нужное.

deploy/
├── profiles/
   ├── architect.txt      всё (текущий сервер)
   ├── projector.txt      всё кроме architect/
   └── engine.txt         шаблон для одного проекта
└── scripts/
    ├── clone-projector.sh     bash deploy/... user@server
    └── clone-engine.sh        bash deploy/... pirotehnika user@server

Содержимое projector.txt:

system/
library/
infra/
projects/
deploy/

Содержимое engine.txt (шаблон):

system/core/
system/scheduler/
library/connectors/
infra/
projects/org/${PROJECT}/
deploy/

Решения

1. Library — стадии разработки ✅

Использовать существующий стандарт (architect/standards/2-lifecycle/lifecycle-code.md):

lib/ → dev/ → test/ → prod/ → archive/

Применяется к library/ так же как к любому другому коду.


2. Веб-UI P2 — где живёт ✅

Новая папка в корне workspace — точка входа платформы.
Название уточняется (варианты: hub/, platform/, entry/).

hub/                    ← главная точка входа
├── web/                ← веб-интерфейс P2
├── launcher/           ← запуск компонентов платформы
└── CLAUDE.md

Это не бизнес-проект и не инфра-сервис —
это сама платформа как продукт.


3. Полная логика работы с кодом ⏳ ГЛАВНЫЙ ВОПРОС

Нужно определить и зафиксировать:
- Где хранится код (workspace vs dataspace)
- Как работает git (ветки, теги, коммиты)
- Как деплоить (на сервер, в Docker)
- Где живут доки (рядом с кодом vs отдельно)
- Жизненный цикл компонента от идеи до prod

→ Это станет финальным стандартом PLATFORM_STANDARD.md


4. Кодер P2 ✅

Кодер P2 = веб-кодер (Claude API через браузер).
Работает с сервером Проектора.
Может использовать:
- P1-кодер — Claude Code CLI (текущий, через SSH)
- P2-кодер — Claude API через веб-UI (новый)

Оба работают с одним workspace, одними стандартами.


Следующий шаг

Написать PLATFORM_STANDARD.md — полный стандарт работы платформы.

Структура стандарта:

1. Workspace  что где лежит (папки, правила)
2. Код  git-workflow, ветки, теги, коммиты
3. Компоненты  lifecycle (devtestprod), library
4. Сервисы  Docker, Dockerfile, deploy
5. Документы  где хранить, формат, связь с кодом
6. Deploy  профили (architect/projector/engine), скрипты
7. Hub  точка входа платформы, P1 vs P2

Черновик · 2026-03-15 · требует обсуждения