Create or process Product
Create a vendor-owned product.
Authentication and permission: vendor JWT with create-product permission.
Request fields/required markers are based on src/api/vendor/controllers/requests/VendorProductRequest.ts; success and validation examples are from src/api/vendor/controllers/VendorProductController.ts.
Source note: the DTO types image as string, while the controller iterates it as an array of image objects. The schema models the handler behavior and flags this code/DTO mismatch for confirmation.
Authorizations
Body
Required fields are based on VendorProductRequest class-validator decorators. The image TypeScript property is declared as string, but the controller iterates it as an array of image objects; that repository inconsistency is explicitly called out in the schema description.
