1.8 KiB
1.8 KiB
Contexto del proyecto para agentes de IA
Resumen rápido
- Proyecto backend en
.NET 10. - Estructura principal en capas:
Domain,Application,Infrastructure. - Patrón arquitectónico:
Clean Architecturecon enfoqueCQRS.
Arquitectura
- Domain (
Domain): entidades de negocio puras. - Application (
Application):- Casos de uso (comandos/queries y handlers).
- Contratos (
Application.Contracts). - Configuración de aplicación (
Application.Configuration). - Mensajería orientada a eventos a través de
IEventBus.
- Infrastructure (
Infrastructure):- Persistencia y acceso a datos.
- Integraciones externas (Keycloak, almacenamiento, procesamiento de imágenes).
- Implementación de mensajería y consumidores.
CQRS / Mediación
- Se usa DispatchR (paquete
DispatchR.Mediator) como variante de MediatR para orquestar comandos y consultas. - Los casos de uso están organizados por feature con handlers dedicados (
Commands,Queries).
Mensajería y workers
- Se usa MassTransit para publicación/consumo de eventos.
- Broker actual: RabbitMQ (
MassTransit.RabbitMQ). - Hay modo de registro para workers con consumidores en
Infrastructure.Messaging.Consumers. - Actualmente existen consumidores como:
ResizePictureConsumerRemoveFileConsumer
Persistencia e integraciones
Entity Framework Core+ proveedorNpgsql(PostgreSQL).- Integración de identidad con
Keycloak. - Almacenamiento con
AWS S3.
Notas para agentes
- Mantener separación de responsabilidades por capa.
- Evitar lógica de infraestructura dentro de
ApplicationyDomain. - Agregar nuevos casos de uso siguiendo el patrón CQRS existente (comando/query + handler).
- Para nuevas integraciones asíncronas, reutilizar el pipeline de
MassTransity la abstracciónIEventBus.