NAM-APJATEL-BACKEND/delivery/controller/AGENTS.md

871 B

OVERVIEW

High-complexity controller layer: 17 controllers wired to usecases, router groups, and config.

WHERE TO LOOK

The 17 controller files:

  • activity_logs_controller.go
  • auth_controller.go
  • backbone_controller.go
  • cable_connections_controller.go
  • count_assets_controller.go
  • creatin_admin.go
  • device_details.go
  • device_inspections_controller.go
  • devicePort_controller.go
  • devices_controller.go
  • fishbone_controller.go
  • nearest_device_controller.go
  • olt_controller.go
  • tower_controller.go
  • user_management_controller.go
  • user_registration.go
  • users_controller.go

Pattern: struct {Entity}Controller, New{Entity}Controller(usecase, routerGroup, config), Route() method.

ANTI-PATTERNS

  • Put business logic in controllers; delegate to usecases
  • Access DB directly in controllers
  • Skip input validation; use validator
  • Duplicate route wiring