Plan: paginar la lista de pedidos
Meta
Agregar paginación por cursor a GET /orders sin cambiar lo que los clientes actuales reciben.
Pasos
- En src/routes/orders.ts, leer limit y cursor de la query. El limit por defecto es 50 y el máximo permitido es 200.
- En src/db/orders.ts, agregar listOrders({ limit, cursor }), ordenado por created_at y luego id, que también devuelve nextCursor.
- Cuando no se envía ninguno de los dos parámetros, devolver la lista completa como antes. De lo contrario, devolver { items, nextCursor }.
- Agregar pruebas en tests/orders.test.ts para la primera página, la siguiente y la última.
Verificar
Ejecutar npm test -- orders. Luego solicitar /orders?limit=2 dos veces, pasando nextCursor la segunda vez: cuatro pedidos distintos, ninguno repetido.
No hacer
Cambiar la tabla orders ni la respuesta cuando no se envían parámetros.