# F-108 — Quitar módulo de variantes: precio/stock/EAN por producto ## Cambios ### Backend (catalog) - POST /products crea automáticamente una única variante interna con SKU `SKU-MV-` (modelo 1 producto = 1 variante). - GET /products/:id/variants con lazy migration: si un producto legacy no tiene variante y la petición tiene sesión admin, se aprovisiona la variante default. ### Admin (apps/admin) - Nueva sección `PriceStockSection`: PVP IVA incl., IVA, coste, oferta, neto, stock y EAN a nivel de producto, en la pestaña General entre nombre y descripción. - ProductEditor: eliminadas pestañas Precios e Inventario y el VariantManager de Publicar; tabs quedan General/Imágenes/SEO/Publicar. - Borrados VariantManager.tsx, PricingSection.tsx, InventorySection.tsx. - Inventario (/inventory): una fila por producto (primera variante interna). ## Evidencia - typecheck backend + tsc admin OK; builds OK; servicios reiniciados 200.