Задачи#
Формат статусов: [ ] не начато, [~] в работе, [x] готово.
0. Инициализация пакета#
[x] Зафиксировать D-005 и создать пакет
melioration.[x] Утвердить решения D-007..D-009 (
decisions.md).[x] D-007 принят:
mmprimary,m3derived.[x] D-008 принят: локальная метеостанция
primary, внешний сервисfallback+ anomaly control.[x] D-009 принят: MVP режим
Bпо умолчанию + переключение вA/C.
1. Модель данных#
[x] Спроектировать сущности
field,field_zone,water_source.[x] Спроектировать
field_water_balance(агрегированная модель).[x] Спроектировать
machine_irrigation_event.[x] Спроектировать
drip_irrigation_event.[x] Спроектировать
soil_moisture_snapshot.[x] Спроектировать
weather_observation.[x] Спроектировать
control_modeиcontrol_mode_auditдля режимовA/B/C.
2. Backend API#
[x] Реализовать
melioration-field/scheme|list.[x] Реализовать
melioration-irrigation-machine/scheme|list.[x] Реализовать
melioration-irrigation-drip/scheme|list.[x] Реализовать
melioration-soil-moisture/scheme|list.[x] Реализовать
melioration-weather/scheme|list.[x] Реализовать агрегирующий endpoint водного баланса поля/зоны.
[x] Реализовать API переключения режима полива (
A|B|C) с аудитом.[x] Реализовать API деградации режима (
/melioration-control-mode/degrade) по D-009.
3. Интеграции#
[x] Подключить интеграцию широкозахватных дождевальных машин (adapter profile
melioration-machine-controller-v1, ingest runtime и scheme metadata).[x] Подключить интеграцию капельного/внутрипочвенного орошения (adapter profile
melioration-drip-controller-v1, ingest runtime и scheme metadata).[x] Подключить локальную метеостанцию (adapter profile
melioration-weather-station-v1, health-policy и fallback переключение).[x] Подключить внешние погодные сервисы (adapter profile
melioration-weather-service-v1, D-008 fallback и anomaly control).[x] Реализовать reconciliation данных осадков и полива с D-008 policy (
station primary,service fallback).
4. Алгоритмы#
[x] Реализовать расчет водного баланса по источникам и времени.
[x] Реализовать нормализацию единиц (
mm/m3+ площадь).[x] Реализовать дедупликацию событий из нескольких каналов (добавлен windowed-dedup в ingest для machine/drip/soil/weather + тест покрытия).
[x] Реализовать алерты дефицита/переувлажнения по данным soil + weather + irrigation.
[x] Реализовать policy деградации режима (
C -> B/A) при потере критичных данных.
5. Frontend#
[x] Добавить manifests melioration-модулей в реестр.
[x] Добавить карточку
Field Water Balance.[x] Добавить карточки
Irrigation Machine,Drip/Subsurface,Soil Moisture,Weather.[x] Добавить представление источников воды и долей по периоду.
[x] Добавить UI-переключатель режима полива
A/B/C(с индикацией ограничений режимаC).
6. Тестирование#
[x] Backend unit tests по melioration plugin-модулям.
[x] Contract tests по melioration API.
[x] E2E сценарий: полив машиной + дождь + капельный, корректный баланс в модуле поля (
frontend-vue/src/modules/melioration-field/e2e/water-balance.spec.js).[x] E2E сценарий: пропуск данных метеостанции и fallback на внешний weather service (D-008) (
frontend-vue/src/modules/melioration-weather/e2e/weather-fallback.spec.js).[x] E2E сценарий: переключение режимов
A/B/Cи автоматическая деградация изCпри сбое телеметрии.