9 Commits (422747c1777d73602b488b42d296b305a3473a02)

Author SHA1 Message Date
borja 422747c177 feat: add access control for task completion
Users can only complete tasks if they are:
- Assigned to the task, OR
- An active member of the task's group, OR
- An admin (ADMIN_USERS env var)

Changes:
- TaskService.completeTask() now checks assignment, group membership,
  and admin status before allowing completion
- Returns 'forbidden' status when unauthorized
- completar command handler shows appropriate error message
- Web path (loadTaskAndGating) gets admin override for consistency
- AdminService.isAdmin() made public for reuse
- Updated tests to respect new access control + 12 new test cases
1 month ago
brobert ac680ac467 refactor: mantener única DB por suite y limpiar tablas en beforeEach
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
7 months ago
brobert ecc0cc6fd8 refactor: usar locator para inyectar DB en tests
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
7 months ago
borja 435b90d131 test: eliminar valor de active al insertar grupos en pruebas
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
9 months ago
borja 6c4e85aa6c test: agrega pruebas de ver sin y ver todos en comandos y servidor
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
9 months ago
borja 48d750b648 fix: silenciar errores DB en webhook y actualizar pruebas de TaskService
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
9 months ago
borja db790064af test: sembrar grupo para satisfacer FK de tasks.group_id
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
9 months ago
borja 703ea61c67 refactor: migrar a bun:sqlite y adaptar servicio/tareas y pruebas
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
9 months ago
borja 7b9928937b feat: añadir TaskService con dbInstance y tests unitarios
Co-authored-by: aider (openrouter/openai/gpt-5) <aider@aider.chat>
9 months ago