# Нормативы и KPI

Документ фиксирует обязательный минимум нормативов и KPI для `poultry.broiler` и `poultry.layer`.

## 1. Источники истины

- `Ross-BroilerHandbook2018-RU.pdf`
- `ARBOR_Вентиляция.pdf`
- `xajseks-braun-rukovodstvo.pdf`
- `4263_RUS_BigFarmNet_Manager_Climatepro.pdf`
- `AC Touch m5124.pdf`

Примечание: значения ниже используются как baseline для MVP и подлежат site-адаптации через `industry_profile`.

## 2. Нормативы микроклимата

### 2.1. Broiler (по фазам возраста)

| Фаза | Возраст | Temp °C | RH % | CO2 ppm (max) | NH3 ppm (max) | Скорость воздуха м/с |
| --- | --- | --- | --- | --- | --- | --- |
| `broiler_day_1_7` | 1-7 день | 30-33 | 55-70 | <= 3000 | <= 10 | 0.1-0.3 |
| `broiler_day_8_14` | 8-14 день | 28-30 | 55-70 | <= 3000 | <= 10 | 0.1-0.4 |
| `broiler_day_15_21` | 15-21 день | 25-28 | 50-70 | <= 3000 | <= 15 | 0.2-0.6 |
| `broiler_day_22_35` | 22-35 день | 21-25 | 50-70 | <= 3000 | <= 20 | 0.3-1.0 |
| `broiler_day_36_plus` | 36+ день | 18-22 | 50-70 | <= 3000 | <= 20 | 0.5-1.5 |

### 2.2. Layer (базовый контур)

| Профиль | Temp °C | RH % | CO2 ppm (max) | NH3 ppm (max) | Световой режим |
| --- | --- | --- | --- | --- | --- |
| `layer_peak` | 18-24 | 50-70 | <= 3000 | <= 20 | 14-16 ч/сутки |
| `layer_maintenance` | 18-22 | 50-70 | <= 3000 | <= 20 | 13-15 ч/сутки |

## 3. Обязательные KPI

### 3.1. Broiler

| KPI ID | Описание | Ед. изм. | Минимальная цель |
| --- | --- | --- | --- |
| `broiler_adg_g_day` | Среднесуточный привес | г/сутки | >= 50 |
| `broiler_fcr` | Конверсия корма | кг/кг | <= 1.75 |
| `broiler_mortality_pct` | Падеж партии | % за цикл | <= 5.0 |
| `broiler_water_feed_ratio` | Отношение воды к корму | ratio | 1.6-2.2 |
| `broiler_temp_compliance_pct` | Доля времени в диапазоне температуры | % | >= 95 |

### 3.2. Layer

| KPI ID | Описание | Ед. изм. | Минимальная цель |
| --- | --- | --- | --- |
| `layer_laying_rate_pct` | Яйценоскость | % | >= 90 |
| `layer_egg_weight_g` | Средняя масса яйца | г | 58-65 |
| `layer_cracked_egg_pct` | Доля брака яйца | % | <= 3 |
| `layer_feed_per_egg_g` | Корм на яйцо | г/яйцо | <= 130 |
| `layer_water_ml_bird_day` | Водопотребление | мл/гол/сутки | 180-260 |
| `layer_temp_compliance_pct` | Доля времени в диапазоне температуры | % | >= 95 |

## 4. Обязательные тревоги (MVP)

| Alarm code | Условие | Severity | Priority | Канал |
| --- | --- | --- | --- | --- |
| `poultry_temp_high` | Temp > верхнего порога > 5 мин | `critical` | `P1` | poultry alarm-bus + status |
| `poultry_temp_low` | Temp < нижнего порога > 5 мин | `high` | `P1` | poultry alarm-bus + status |
| `poultry_vent_failure` | Потеря/недостаток вентиляции | `critical` | `P1` | poultry alarm-bus + status |
| `poultry_co2_high` | CO2 > порога > 10 мин | `high` | `P2` | poultry alarm-bus |
| `poultry_water_anomaly` | Аномалия воды к baseline | `medium` | `P2` | poultry alarm-bus |
| `poultry_feed_anomaly` | Аномалия корма к baseline | `medium` | `P2` | poultry alarm-bus |

## 5. Правила применения в runtime

- Нормативы применяются через версионируемые `industry_profile` (`draft/published/archived`).
- Для каждой площадки допускается override диапазонов без изменения глобального шаблона.
- Для `critical/high` тревог обязателен bridge в `status` с единым `correlation_id`.
- KPI рассчитываются минимум на окнах `1h`, `24h`, `cycle`.

## 6. Критерии приемки документа

- Для обоих контуров (`broiler`, `layer`) есть зафиксированные диапазоны и KPI.
- Есть минимальный набор alarm-правил с severity/priority.
- Значения привязаны к источникам истины и допускают site-level переопределение через профили.
