f3d5ddcddd
Se crean 9 issues para trackear el desarrollo de agentes: Nuevos agentes: - #001 orchestrator: coordinar agentes para proyectos - #002 ci-cd: pipelines de build/test/deploy - #003 testing: tests automatizados Go y React - #004 api-client: gestión de APIs externas - #005 docs-generator: documentación automática Mejoras a existentes: - #006 db-reader: PostgreSQL, migraciones - #007 backend-lib: nuevos módulos shell/app - #008 frontend-lib: versionado, testing - #009 gitea: Actions, templates
1.5 KiB
1.5 KiB
Issue #007: Mejorar agente backend-lib (DevFactory)
Tipo: enhancement Prioridad: alta Estado: pendiente
Descripción
Extender DevFactory con más módulos en shell/ y app/ para cubrir casos de uso comunes.
Nuevos módulos shell/
shell/postgres.go
- Cliente PostgreSQL funcional
- Connection pooling
- Transacciones con Result[T]
- Query builder básico
shell/redis.go
- Cliente Redis funcional
- Get/Set/Del con Result[T]
- Pub/Sub
- Cache wrapper
shell/queue.go
- Cola de mensajes simple
- Workers con retry
- Dead letter queue
Nuevos módulos app/
app/auth/
- JWT generation/validation
- OAuth2 client
- Session management
- Password hashing (argon2)
app/email/
- SMTP client
- Templates HTML
- Queue de envío
Mejoras de calidad
Testing
- Tests para todos los módulos core/
- Tests para shell/ (con mocks)
- Coverage > 80%
- Benchmarks
CI/CD
- GitHub/Gitea Actions workflow
- Lint con golangci-lint
- Release automático con goreleaser
Documentación
- godoc para cada función
- Ejemplos en README
- CHANGELOG.md
Ejemplo de uso nuevo
import (
"github.com/lucasdataproyects/devfactory/shell"
"github.com/lucasdataproyects/devfactory/app/auth"
)
// Postgres
db := shell.NewPostgresClient(os.Getenv("DATABASE_URL"))
users := db.Query("SELECT * FROM users").UnwrapOr([]User{})
// Auth
token := auth.GenerateJWT(userID, secret)
claims := auth.ValidateJWT(token, secret)