Границы изменений (references/change-boundaries.md)

Источник: ds-skills/core-ui-development-skills/src/skills/build-core-ui-components/references/change-boundaries.md — справочник скилла build-core-ui-components

При создании src/my-widget/ по умолчанию изменять только:

src/my-widget/**
src/index.ts

Не изменять сестринские компоненты, их тесты, общие примитивы, хуки, утилиты, токены и инфраструктуру без явного согласования. Не включать рефакторинг соседнего кода в генерацию нового компонента.

Если существующего API недостаточно:

  1. Попытаться решить задачу через публичный API зависимостей.
  2. Рассмотреть локальное решение внутри директории нового компонента.
  3. Не копировать значительный объём общей логики ради формального соблюдения границы.
  4. Классифицировать проблему: BLOCKER — без внешнего изменения реализация невозможна; LIMITATION — возможно локальное решение с существенным компромиссом; IMPROVEMENT — общее улучшение полезно, но не блокирует задачу.
  5. Сообщить затронутый модуль, недостающий контракт, локальный и общий варианты и рекомендацию.
  6. Дождаться явного решения пользователя перед внешними изменениями.

Перед завершением выполнить git diff --name-only. Объяснить каждый путь вне согласованной области или безопасно отменить только собственное случайное изменение.