Skip to content

Releases: rocket-lease/contracts

0.4.0: Merge pull request #31 from rocket-lease/dev

Choose a tag to compare

@flopeztancredi flopeztancredi released this 13 May 18:00
981e8b5
feat(vehicle): add optional owner to GetVehicleResponse for US-20

v0.3.0

Choose a tag to compare

@flopeztancredi flopeztancredi released this 13 May 15:05
94db852
Merge pull request #30 from rocket-lease/dev

Dev

v0.2.5

Choose a tag to compare

@Mario-Merlinsky Mario-Merlinsky released this 13 May 03:10
70ecd70
Merge pull request #24 from rocket-lease/dev

fix: update package.json version

0.2.4

Choose a tag to compare

@Mario-Merlinsky Mario-Merlinsky released this 13 May 03:08
57de49c
Merge pull request #23 from rocket-lease/dev

fix: delete tests in workflow

v0.2.3

Choose a tag to compare

@SantinoZucconi SantinoZucconi released this 13 May 03:02
cb5de53
Merge pull request #22 from rocket-lease/dev

fix: merge conflicts (again!)

v0.2.2

Choose a tag to compare

@SantinoZucconi SantinoZucconi released this 13 May 02:53
8c7aa31
Merge pull request #20 from rocket-lease/dev

fix: merge conflicts

v0.2.1

Choose a tag to compare

@SantinoZucconi SantinoZucconi released this 13 May 02:43
4042d7b
Dev (#19)

* feat(auth): add password reset schemas (US-03)

* feat: add schemas and types for user profile and vehicle management

* feat(us-21): add favorite schemas, recover missing auth/vehicle schemas

## Especificación funcional

### Nuevos schemas — Gestión de favoritos (US-21)

`src/schemas/favorite.schema.ts` define el contrato entre `api` y `web`
para el feature de favoritos del conductor:

- `AddFavoriteRequestSchema` — body del POST /favorites: { vehicleId: UUID }
- `AddFavoriteResponseSchema` — respuesta 201: { id, vehicleId, conductorId, createdAt (ISO) }
- `FavoriteItemSchema` — elemento individual en la lista: { id, vehicleId, createdAt }
- `ListFavoritesResponseSchema` — respuesta del GET /favorites: { items: FavoriteItem[] }

Todos los IDs son UUID v4 (z.string().uuid()). Las fechas son ISO 8601
(z.string().datetime()). Sigue las convenciones del paquete (money en cents,
fechas ISO, IDs UUID).

### Nuevos error codes

`src/errors/error-codes.ts` agrega dos códigos al enum:
- `FAVORITE_ALREADY_EXISTS` — el conductor ya tiene ese vehículo en favoritos (→ 409)
- `FAVORITE_NOT_FOUND` — se intenta eliminar un favorito que no existe (→ 404)

El `api` mapea estos códigos en su `DomainExceptionFilter`.
El `web` puede ramificar sobre ellos sin usar el HTTP status directamente.

### Recuperación de schemas pre-existentes

`src/auth/login.ts` y `src/auth/vehicle.ts` existían en `main` pero no
habían sido mergeados a `dev`. Al crear la rama `us-21` desde `dev`, estos
archivos no estaban presentes. Fueron recuperados del paquete publicado
v0.1.3 para mantener compatibilidad con el `api` (que importa
`CreateVehicleRequestSchema`, `LoginUserRequestSchema`, etc.).

Sin estos archivos, el `api` en rama `us-21` fallaba al importar schemas
que no encontraba en el contracts local (cuando se usa `pnpm link` para
desarrollo cross-repo sin publicar).

`src/index.ts` ahora exporta los 6 módulos: register, login, vehicle,
error-codes, problem-details, favorite.schema.

### Tests

`test/schemas/favorite.schema.test.ts` — 16 casos Vitest:
- parse con valores válidos para cada schema
- rechazo de UUID mal formado, datetime inválido, campos faltantes
- rechazo de vehicleId inválido dentro de un array (ListFavorites)

Ejecutar: `pnpm test` (requiere Node ≥ 22 y pnpm ≥ 11)
Resultado verificado: 24/24 tests pasan (8 pre-existentes + 16 nuevos)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* feat: vehicle dtos

* feat: manage vehicle dtos (#13)

* feat: vehicle dtos

* fix: vehicle file and adding  field in get response dto

* fix: manage vehicle dtos (#14)

* feat: vehicle dtos

* fix: manage vehicle dtos

* merge dev into us-21 and resolve conflicts

Agent-Logs-Url: https://github.com/rocket-lease/contracts/sessions/db5e165c-04f0-40a1-9b81-0f1e7ac44b98

Co-authored-by: echepereza <142249406+echepereza@users.noreply.github.com>

* fix: missing `isAccessible` field in create vehicle dto (#15)

* feat: vehicle dtos

* fix: manage vehicle dtos

* chore(us-21): remove dead auth/vehicle.ts recovered in previous commit

src/vehicle/vehicle.ts (from dev) supersedes the compatibility copy we
added in auth/vehicle.ts. The public index.ts already exports from
vehicle/vehicle, so auth/vehicle.ts was unreachable dead code.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* chore: drop misplaced auth/vehicle.ts (vehicle schemas live in their own module)

* Nuevos campos en publish y get vehicle

* fix: strict UpdateVehicleSchema

---------

Co-authored-by: Aizen Sanchez <127356367+AizenSanchez@users.noreply.github.com>
Co-authored-by: echepereza <epereza@fi.uba.ar>
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: SantinoZucconi <santinozucconi@gmail.com>
Co-authored-by: Santino Zucconi <107319354+SantinoZucconi@users.noreply.github.com>
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: echepereza <142249406+echepereza@users.noreply.github.com>
Co-authored-by: juanma <drjuanma2712@gmail.com>

v0.2.0

Choose a tag to compare

@flopeztancredi flopeztancredi released this 13 May 02:22
659a419
Merge pull request #17 from rocket-lease/feature/us3-password-reset-s…

v0.1.4

Choose a tag to compare

@Mario-Merlinsky Mario-Merlinsky released this 13 May 00:52
8346ef4
feat: Manage vehicle DTOs (#16)

* feat: add schemas and types for user profile and vehicle management

* feat: manage vehicle dtos (#13)

* feat: vehicle dtos

* fix: vehicle file and adding  field in get response dto

* fix: manage vehicle dtos (#14)

* feat: vehicle dtos

* fix: manage vehicle dtos

* fix: missing `isAccessible` field in create vehicle dto (#15)

* feat: vehicle dtos

* fix: manage vehicle dtos

---------

Co-authored-by: Aizen Sanchez <127356367+AizenSanchez@users.noreply.github.com>

v0.1.3

Choose a tag to compare

@Mario-Merlinsky Mario-Merlinsky released this 11 May 14:37
fix: upgrade package.json to 0.1.3