Федерация документации#

green-robot не должен быть полным зеркалом всех инженерных деталей. Вместо этого используется федеративная модель: опубликованный контур и инженерные контуры синхронизируются по явным правилам.

1. Цель модели#

  • не дублировать одни и те же технические детали в пяти репозиториях;

  • сохранить один published-вход для пользователя и регистрации;

  • сохранить быстрый вход для агентов через README.md каждого repo;

  • избежать расхождения общих контрактов и архитектуры.

2. Слои документации#

2.1. Published layer (green-robot)#

Содержит:

  • Документы;

  • Продукты;

  • Платформа;

  • Применение.

Это слой для пользователя, аудитора, регистрационного контура и кросс-проектного согласования.

2.2. Engineering layer (product repos)#

Содержит:

  • код и реальные runtime artifacts;

  • внутреннюю архитектуру продукта;

  • build/test/deploy flow;

  • detailed operator/developer docs.

2.3. Agent layer (README.md)#

Содержит краткую инструкцию:

  • что это за repo;

  • какой продукт он реализует;

  • где published canonical в green-robot;

  • где engineering canonical внутри repo;

  • что агент обязан синхронизировать при изменениях.

3. Правила синхронизации#

  1. Изменение локальной реализации без смены published-смысла:

    • правится engineering repo;

    • green-robot меняется только если пользовательский/регистрационный смысл изменился.

  2. Изменение общего контракта, архитектуры или классификации продукта:

    • сначала правится green-robot;

    • затем связанные engineering repo.

  3. Изменение отраслевого решения:

    • сначала обновляются Применение и платформенные связи в green-robot;

    • затем прикладной product repo, если изменена реализация.

  4. Изменение обязанностей repo или source-of-truth:

    • обязательно обновляются README.md затронутых репозиториев.

  5. Изменение published contract project/monitoring/ws, auth/access, git-driven deploy chain или product-chain iP-1220 -> green-robot-go -> iP-1510:

    • published/product docs и engineering docs обновляются в одном push;

    • отложенная документационная синхронизация не допускается.

Дополнение по инженерным семействам:

  • iC-4, iO-5, iU-6 синхронизируются через ../ioot-pro-hardware как engineering owner;

  • iD-7 должен выделяться в отдельный контур механики и электрики с собственным repo и собственным agent-facing README.md.

4. Что проверять агенту перед правкой#

  1. Это published-изменение или локальная реализация?

  2. Затронут ли продуктовый идентификатор, платформенный контракт или отраслевую связность?

  3. Обновлен ли README.md репозитория, если изменились зоны ответственности?

  4. Нужна ли синхронизация в green-robot после локальной правки?

5. Практический результат#

Такая схема позволяет:

  • держать green-robot как каноническую публикацию и регистрационный контур;

  • не дублировать в нем полностью инженерную документацию из ioot-pro-*;

  • дать агентам быстрый и единый способ понять границы ответственности через README.md.