# ADR-0001: Изоляция семей ящиками (script-блоки)

**Статус:** ✅ Принято (2026-10) · **Такты:** v10.38–v10.49 · **Обновлено:** 2026-10-11

## Контекст

Дом — десятки семей функций (голос, сцена, свет, такт-пульс, пульт) в одном сайте без сборщика. Глобали `window.*` конфликтуют: разные семьи пишут одно имя, порядок инициализации хрупок, правка одной семьи ломает соседей. Сборщик (bundler) против канона дома: ноль зависимостей, ноль сборки.

## Решение

Каждая семья живёт в собственном **ящике** — изолированном `<script>`-блоке (IIFE/модуль-блок с кириллическим номером С23…С29). Внутри ящика — своя область видимости; наружу семья выставляется единой управляемой стопкой мостов (см. ADR-0002). Общий шкаф — `window.__КОМОД` (реестр семей у КАЗНАЧЕЯ v10.37).

## Последствия

- ✅ Семьи не грызутся: конфликт глобалей структурно невозможен.
- ✅ Ноль сборщика: файлы правятся и выпускаются тактами как есть.
- ⚠️ Порядок загрузки ящиков критичен — мосты держат порядок переселения.
- ⚠️ Отладка через глобали требует знать, какая семья чем торгует (реестр КАЗНАЧЕЯ + пробы ЗДОРОВЬЕ).
