---
name: integration-gate
description: "IntegrationGate — обязательный чеклист (4 шага) при проектировании нового инструмента, агента, детектора или системы. Загружать при триггерах: новый инструмент / агент / детектор / система / метод / интеграция."
version: 1.0.0
layer: L1
status: active
triggers:
  slash: [/integration-gate]
  phrases:
    - "новый инструмент"
    - "новый агент"
    - "новая система"
    - "новый детектор"
    - "новый метод"
    - "integration gate"
    - "IntegrationGate"
related: [archgate]
---

# /integration-gate — IntegrationGate

> **Триггер:** новый инструмент / агент / детектор / система / метод  
> **Приоритет:** БЛОКИРУЮЩЕЕ — пропуск фазы = паттерн P10 (DP.FM.010)

## Чеклист (4 шага — строго по порядку)

> Пропуск фазы → зафиксировать как инцидент: `DS-ecosystem-development/.../C2.3.Operations/Incidents/`

1. **Обещание (Service Clause).** Какое обещание инструмент даёт потребителю?  
   Создать/обновить `DP.SC.NNN` в `PACK-digital-platform/.../08-service-clauses/`.  
   Содержит: триггер · входы · выходы · время отклика · инвариант · режим отказа.

2. **Сценарии использования.** Кто запускает? Когда? Зачем? В каком контексте? Что делает с результатом?  
   Минимум 3 сценария с разными потребителями. Приложить к Service Clause.

3. **Роль.** Какую роль в системе играет инструмент?  
   Создать/обновить `DP.ROLE.NNN` в `PACK-digital-platform/.../02-domain-entities/`.  
   Содержит: обязанности · полномочия · связи · входы/выходы как артефакты.  
   Идентифицировать **Kind** (род) и **Owner Role** (кто владеет в надсистеме). Шаблон: DP.D.033.

4. **Реализация.** Только после (1)–(3).  
   Код · тесты · регистрация в hooks/config · smoke-test.  
   Заголовок реализации: `# see DP.SC.NNN, DP.ROLE.NNN`

## Исключения (IntegrationGate НЕ нужен)

- Правка существующего инструмента без изменения его обещания.
- Bugfix без изменения поведения снаружи.
- Рефакторинг (переименование, реорганизация) без функциональных изменений.
- Экспериментальный скрипт на один запуск (если запускается повторно — уже инструмент).

<!-- USER-SPACE -->
<!-- /USER-SPACE -->
