# Анатомия репозитория модели *Построение мета-модели · урок 1 из 6 · ~15 мин* ## Что вы узнаете Каноническая форма соответствующего стандарту репозитория модели: каждое зарезервированное место, что в нём лежит и почему сама форма является контрактом. ## Каноническое дерево ```text meta-model/ ├── README.md # human landing ├── BOOTSTRAP.md # operating instructions: how to read this model (read first) ├── LICENSE ├── CHANGELOG.md ├── manifest.yaml # walk declaration: bundle order, classification, exclusions ├── sources.yaml # Data Mastership Register: who masters each dataset │ ├── bundles/ # the model data: bundles → layers → records ├── canon/ # source texts this model treats as ground truth ├── raw/ # unprocessed harvested captures (never hand-edited) ├── artifacts/ # generated, regenerable outputs (never authored) ├── imports/ ├── mappings/ # external standards and alignments to them ├── schemas/ ├── examples/ ├── diagrams/ ├── docs/ └── tools/ ``` За каждым местом закреплён фиксированный смысл, поэтому читатель - человек или агент - никогда не гадает, что за файл перед ним, по общему ощущению. ## Две точки входа **`BOOTSTRAP.md`** - для умов: как читать эту модель, в каком порядке, каковы местные соглашения, чего трогать нельзя. **`manifest.yaml`** - для машин: идентичность, порядок бандлов, правила классификации файлов, исключения. Всё остальное достижимо из этих двух. Если в вашей экосистеме уже есть файл входа (`CLAUDE.md`, `AGENTS.md`), оставьте его, но пусть он указывает на BOOTSTRAP: один структурный источник истины. ## Четыре темперамента содержимого У всего в модели есть один из четырёх темпераментов, и они никогда не смешиваются: 1. **Авторское** содержимое (бандлы, политики, документы): написано людьми или агентами-в-роли-авторов, правится на месте, рецензируется как код. 2. **Канонические** тексты (`canon/`): документы, *о которых* модель или которыми она связана: доктрина, принятое решение, спецификация мета-модели, которой вы соответствуете. Слои ссылаются на канон; они его никогда не пересказывают. Если запись и канонический текст противоречат друг другу, побеждает канон. 3. **Собранные** свидетельства (`raw/`): выгрузки из внешних систем - экспорты, дампы, обходы. Организованы как `raw/<система>/<набор>/`, у каждого рядом файл происхождения (источник, охват, время извлечения, инструмент). Ручная правка выгрузки уничтожает её доказательную ценность: исправления делаются в источнике (и затем повторная выгрузка) либо аннотированными записями модели. 4. **Порождённые** выходы (`artifacts/`): вычисленные представления, отчёты, результаты обходов. Проверка здорового `artifacts/`: удалите его целиком, пересоберите, ничего ценного не потеряно. ## Реальный пример: модель платформы Модель DevTeam.Games показывает, как форма вбирает в себя грязную реальность: её `_raw/` (унаследованное имя, сопоставленное в манифесте) держит экспорт ClickUp, замороженный на момент списания трекера, исследования конкурентов и дизайн-выгрузки; `00-meta/` держит вендоренную копию канона AISMM с файлами происхождения; фактический исходный код платформы подключён внешними клонами git, присутствует на диске, но объявлен зеркалом, мастер которого в другом месте. 2613 файлов, каждый классифицирован. Унаследованные раскладки не пришлось переименовывать: манифест сопоставляет старые имена зарезервированным смыслам. ## Главное - Две точки входа: BOOTSTRAP.md для умов, manifest.yaml для машин. - Четыре темперамента (авторское, канон, собранное, порождённое) со своими зарезервированными домами; они не смешиваются. - Унаследованные раскладки выживают: сопоставление лучше переименования. ## Копнуть глубже - [MMAS-Package: структура репозитория и пакета](/spec/#02-architecture/MMAS-Package.md) - [Обход модели и известные места](/spec/#02-architecture/Model-Traversal-and-Layout.md) Дальше: [Бандлы, слои, записи](02-records.md)