architect/standards/arch-workspace-structure.md

type: standard
layer: arch
object: workspace
aspect: structure
form: text
title: "Структура Workspace платформы"
status: superseded
superseded_by: arch-platform-structure.md
version: 1.0.0
date: 2026-04-10
knowledge_level: У1
parent: arch-filesystem-structure.md


Структура Workspace платформы

Стандарт описывает где физически хранятся файлы платформы: два пространства ($WORKSPACE / $DATASPACE), семь компонентов $WORKSPACE, правила каждого компонента, именование модулей, служебные файлы.


1. ДВА ПРОСТРАНСТВА

Правила разграничения $WORKSPACE/$DATASPACE, белые и чёрные списки файлов →
arch-filesystem-structure.md


2. СТРУКТУРА $WORKSPACE — 7 КОМПОНЕНТОВ

Платформа состоит из семи компонентов. Каждый отвечает на один вопрос:

$WORKSPACE/
│
├── CLAUDE.md                    ← навигатор для Claude Code
├── AI.md                        ← контекст для AI-агентов
├── README.md                    ← публичное описание
├── .gitignore
│
├── arch/                        ← ЧТО МЫ ЗНАЕМ? (только .md)
│   ├── AI.md / CLAUDE.md / README.md
│   ├── theory/                  ← теория (LOCKED)
│   ├── concept/                 ← концепция платформы
│   ├── standards/               ← стандарты платформы
│   ├── patterns/                ← паттерны решений
│   ├── decisions/               ← ADR
│   └── templates/               ← шаблоны документов
│
├── projector/                   ← КАК МЫ УПРАВЛЯЕМ? (только .md)
│   ├── AI.md / CLAUDE.md / README.md
│   └── templates/               ← шаблоны проектов, стеков
│       ├── @project/
│       ├── @agent/
│       └── @it/stacks/          ← стеки IT
│
├── projects/                    ← ЧТО МЫ ДЕЛАЕМ?
│   ├── org/                     ← клиентские проекты
│   │   └── {домен}/{проект}/
│   └── sys/                     ← системные проекты платформы
│
├── infra/                       ← ГДЕ ЭТО РАБОТАЕТ?
│   ├── AI.md / CLAUDE.md / README.md
│   └── @{имя}.server/           ← конфиги серверов и сервисов
│
├── system/                      ← ЧЕМ ЖИВЁТ ПЛАТФОРМА? (исполняемый код)
│   ├── AI.md / CLAUDE.md / README.md
│   ├── @{имя}.agent/            ← AI-агенты
│   ├── @{имя}.service/          ← сервисы платформы
│   └── scheduler/ monitor/      ← планировщик, мониторинг
│
├── coder/                       ← ЧЕМ СТРОИМ ПРОЕКТЫ? (исполняемый код)
│   ├── AI.md / CLAUDE.md / README.md
│   ├── library/                 ← переиспользуемый код, утилиты
│   └── @{стек}.coder/           ← IT-стек (drupal, fastapi, nextjs)
│
├── services/                    ← КТО ОБСЛУЖИВАЕТ? (docker-сервисы)
│   └── @{имя}.service/
│
└── _archive/                    ← архив устаревшего

3. ПРАВИЛА КОМПОНЕНТОВ

3.1. arch/ — ЗНАНИЯ (только .md)

✅ теория, концепция, стандарты, паттерны, ADR, шаблоны документов
❌ код → system/ или coder/ | проекты → projects/ | конфиги → infra/

3.2. projector/ — УПРАВЛЕНИЕ ПРОЕКТАМИ (только .md)

✅ шаблоны проектов, шаблоны агентов, описания стеков, паттерны ведения
❌ исполняемый код → coder/ | реальные проекты → projects/

Маршрутизация проектов:

Путь Режим Результат
projects/org/{домен}/{проект}/ PRO-PRO продукт клиента — остаётся
projects/sys/{проект}/ PRO-SYS → пополняет arch/, coder/library/

3.3. projects/ — КОНКРЕТНЫЕ ПРОЕКТЫ

org/ клиентские, sys/ системные проекты платформы
❌ стандарты → arch/ | библиотеки → coder/library/

3.4. infra/ — ИНФРАСТРУКТУРА

✅ конфиги серверов @{имя}.server/, nginx, docker-compose, скрипты деплоя
❌ код приложений → coder/ | агенты → system/

3.5. system/ — ЯДРО ПЛАТФОРМЫ (исполняемый код)

✅ AI-агенты @{имя}.agent/, сервисы @{имя}.service/, планировщик, мониторинг
❌ библиотеки для проектов → coder/library/ | инфра конфиги → infra/

3.6. coder/ — КОД ДЛЯ ПРОЕКТОВ (исполняемый код)

library/ переиспользуемый код, @{стек}.coder/ IT-стеки (drupal, fastapi, nextjs)
❌ платформенные сервисы → system/ | стандарты стека → arch/

3.7. services/ — DOCKER-СЕРВИСЫ

✅ docker-compose сервисы обслуживания платформы
❌ код → system/ | инфра конфиги → infra/


4. ИМЕНОВАНИЕ КОМПОНЕНТОВ

Компонент — автономная функциональная единица. Всегда в папке @{имя}.{тип}/.

Суффикс Где Назначение
.agent system/ AI-агент платформы
.service system/, services/, infra/ Docker Compose сервис
.coder coder/ IT-стек (drupal, fastapi, nextjs)
.api coder/library/ REST/GraphQL коннектор
.data coder/library/ БД коннектор
.storage coder/library/ S3 / файловое хранилище
.server infra/ конфигурация сервера
.bot system/ Telegram-бот
.ui system/ веб-интерфейс

5. СЛУЖЕБНЫЕ ФАЙЛЫ

5.1. Тройка файлов

В каждом важном узле платформы — три файла для трёх аудиторий:

AI.md       = контекст для любого AI (лаконично, без объяснений)
CLAUDE.md   = AI.md целиком + Claude Code специфичное
README.md   = AI.md целиком + комментарии для людей

Пишутся в порядке: AI.md → CLAUDE.md → README.md

Файл Для кого Содержание
AI.md любой AI-агент полный контекст папки
CLAUDE.md Claude Code CLI AI.md + команды, хуки, shortcuts
README.md люди / GitHub AI.md + объяснения и комментарии
{имя}.ai.md агент с ролью определение роли (отдельно от AI.md)

5.2. Где создавать тройку

Место CLAUDE.md AI.md README.md
Корень $WORKSPACE
7 компонентов (arch/, projector/, ...)
Корень проекта (projects/org/{домен}/{проект}/)
Компонент-агент (@{имя}.agent/) ✅ (AI.md=главный)
Компонент-сервис (@{имя}.service/) ✅ (если публичный)
Вложенные папки (scripts/, src/)

6. ЗАЩИЩЁННЫЕ ФАЙЛЫ

Файлы с суффиксом .fx.md заблокированы pre-commit хуком — изменение невозможно без явного согласования с Архитектором.

{name}.fx.md   ← заблокированный файл
Путь Причина
arch/theory/*.fx.md теоретический фундамент, меняется никогда
arch/concept/PROJECTOR.fx.md жизненный цикл проекта
arch/concept/METAMODEL.md метамодель (защищён отдельно)
корневой CLAUDE.md AI читает первым

7. СТАДИИ И ВОЛНЫ: СТРУКТУРА РАБОТ ПЛАТФОРМЫ

Стадии проекта

Стадия — этап жизненного цикла. Это структура проекта, не единица работы.

planning → infra → install → setup → dev → testing → deploy → monitor → maint
Стадия Назначение
planning Roadmap, требования
infra Сервер, домены, БД
install Установка платформы
setup Конфиги, переменные окружения
dev Разработка (блоки)
testing Unit, e2e, интеграционные тесты
deploy CI/CD, staging → production
monitor Логи, алерты, метрики
maint Обслуживание, очистка

Каждая стадия — физическая папка в проекте с собственным CLAUDE.md.

Волны (итерации продукта)

Волна = версия всего продукта в определённый момент (набор блоков × поколений).

Волна  Поколение:
  Поколение  версия одного блока  (import v1, v2, v3)
  Волна      версия всего проекта (Product 1.0, 2.0, 3.0)

Схема в ROADMAP.md:

waves:
  v1.0:
    name: "MVP"
    status: deployed
    blocks:
      import: v1
      infra: v1
  v2.0:
    name: "Каталог"
    status: in_progress
    blocks:
      import: v3
      catalog: v1
      seo: v1

Чеклист релиза волны:
- [ ] Все блоки волны в статусе deployed
- [ ] Тесты прошли
- [ ] ROADMAP.md обновлён
- [ ] Версия зафиксирована тегом (git tag vX.Y.Z)

Четыре измерения проекта

1. СТАДИИ (Stages)         -- этапы жизненного цикла
2. БЛОКИ (Blocks)          -- единицы работы (контекстблоки)
3. ПОКОЛЕНИЯ (Generations) -- версии одного блока
4. ВОЛНЫ (Waves)           -- релизы продукта

Стадии и волны — это инфраструктура разработки на уровне workspace и проекта.
Блоки и поколения — это инфраструктура работы AI-агента с компонентом.


СВЯЗАННЫЕ ДОКУМЕНТЫ