.air.toml .gitignore .golangci.yml .swaggo AGENTS.md Makefile README.md RELAY_API.md TODO-List.txt config.example.yml config.yml design/verification-before-device-deletion/index.md design/verification-before-device-deletion/plan_service_refactor.md docs/docs.go docs/swagger.json docs/swagger.yaml go.mod go.sum internal/app/api/api.go internal/app/api/router.go internal/app/controller/auth_utils.go internal/app/controller/device/device_controller.go internal/app/controller/management/controller_helpers.go internal/app/controller/management/pig_batch_controller.go internal/app/controller/management/pig_batch_health_controller.go internal/app/controller/management/pig_batch_trade_controller.go internal/app/controller/management/pig_batch_transfer_controller.go internal/app/controller/management/pig_farm_controller.go internal/app/controller/monitor/monitor_controller.go internal/app/controller/plan/plan_controller.go internal/app/controller/response.go internal/app/controller/user/user_controller.go internal/app/dto/device_converter.go internal/app/dto/device_dto.go internal/app/dto/monitor_converter.go internal/app/dto/monitor_dto.go internal/app/dto/notification_converter.go internal/app/dto/notification_dto.go internal/app/dto/pig_batch_dto.go internal/app/dto/pig_farm_dto.go internal/app/dto/plan_converter.go internal/app/dto/plan_dto.go internal/app/dto/user_dto.go internal/app/middleware/audit.go internal/app/middleware/auth.go internal/app/service/device_service.go internal/app/service/monitor_service.go internal/app/service/pig_batch_service.go internal/app/service/pig_farm_service.go internal/app/service/pig_service.go internal/app/service/plan_service.go internal/app/service/user_service.go internal/app/webhook/chirp_stack.go internal/app/webhook/chirp_stack_types.go internal/app/webhook/placeholder_listener.go internal/app/webhook/transport.go internal/core/application.go internal/core/component_initializers.go internal/core/data_initializer.go internal/domain/audit/service.go internal/domain/device/device_service.go internal/domain/device/general_device_service.go internal/domain/notify/notify.go internal/domain/pig/pen_transfer_manager.go internal/domain/pig/pig_batch_service.go internal/domain/pig/pig_batch_service_method.go internal/domain/pig/pig_batch_service_pen_transfer.go internal/domain/pig/pig_batch_service_pig_sick.go internal/domain/pig/pig_batch_service_pig_trade.go internal/domain/pig/pig_sick_manager.go internal/domain/pig/pig_trade_manager.go internal/domain/plan/analysis_plan_task_manager.go internal/domain/plan/plan_execution_manager.go internal/domain/plan/task.go internal/domain/task/delay_task.go internal/domain/task/full_collection_task.go internal/domain/task/release_feed_weight_task.go internal/domain/task/task.go internal/domain/token/token_service.go internal/infra/config/config.go internal/infra/database/postgres.go internal/infra/database/storage.go internal/infra/logs/logs.go internal/infra/models/device.go internal/infra/models/device_template.go internal/infra/models/execution.go internal/infra/models/farm_asset.go internal/infra/models/feed.go internal/infra/models/medication.go internal/infra/models/models.go internal/infra/models/notify.go internal/infra/models/pig_batch.go internal/infra/models/pig_sick.go internal/infra/models/pig_trade.go internal/infra/models/pig_transfer.go internal/infra/models/plan.go internal/infra/models/schedule.go internal/infra/models/sensor_data.go internal/infra/models/user.go internal/infra/notify/lark.go internal/infra/notify/log_notifier.go internal/infra/notify/notify.go internal/infra/notify/smtp.go internal/infra/notify/wechat.go internal/infra/repository/area_controller_repository.go internal/infra/repository/device_command_log_repository.go internal/infra/repository/device_repository.go internal/infra/repository/device_template_repository.go internal/infra/repository/execution_log_repository.go internal/infra/repository/medication_log_repository.go internal/infra/repository/notification_repository.go internal/infra/repository/pending_collection_repository.go internal/infra/repository/pending_task_repository.go internal/infra/repository/pig_batch_log_repository.go internal/infra/repository/pig_batch_repository.go internal/infra/repository/pig_farm_repository.go internal/infra/repository/pig_pen_repository.go internal/infra/repository/pig_sick_repository.go internal/infra/repository/pig_trade_repository.go internal/infra/repository/pig_transfer_log_repository.go internal/infra/repository/plan_repository.go internal/infra/repository/raw_material_repository.go internal/infra/repository/repository.go internal/infra/repository/sensor_data_repository.go internal/infra/repository/unit_of_work.go internal/infra/repository/user_action_log_repository.go internal/infra/repository/user_repository.go internal/infra/transport/lora/chirp_stack.go internal/infra/transport/lora/lora_mesh_uart_passthrough_transport.go internal/infra/transport/lora/placeholder_transport.go internal/infra/transport/proto/device.pb.go internal/infra/transport/proto/device.proto internal/infra/transport/transport.go internal/infra/utils/command_generater/modbus_rtu.go internal/infra/utils/time.go internal/infra/utils/validation.go main.go openspec/AGENTS.md openspec/changes/archive/2025-10-30-refactor-migrate-gin-to-echo/design.md openspec/changes/archive/2025-10-30-refactor-migrate-gin-to-echo/proposal.md openspec/changes/archive/2025-10-30-refactor-migrate-gin-to-echo/specs/http-server/spec.md openspec/changes/archive/2025-10-30-refactor-migrate-gin-to-echo/tasks.md openspec/changes/archive/2025-10-31-refactor-business-logic-layering/design.md openspec/changes/archive/2025-10-31-refactor-business-logic-layering/proposal.md openspec/changes/archive/2025-10-31-refactor-business-logic-layering/specs/business-logic-layering/spec.md openspec/changes/archive/2025-10-31-refactor-business-logic-layering/tasks.md openspec/changes/archive/2025-11-01-add-plan-recovery-option/design.md openspec/changes/archive/2025-11-01-add-plan-recovery-option/proposal.md openspec/changes/archive/2025-11-01-add-plan-recovery-option/specs/plan-lifecycle/spec.md openspec/changes/archive/2025-11-01-add-plan-recovery-option/tasks.md openspec/project.md openspec/specs/business-logic-layering/spec.md openspec/specs/http-server/spec.md openspec/specs/plan-lifecycle/spec.md package-lock.json project_structure.txt internal/infra/transport/lora/chirp_stack_proto/