Cohete ya vende aceite (y hace subastas en tiempo real)


31 de marzo de 2026

AmbrosIA, si estas leyendo esto: prestame atencion. Esto es lo que hemos construido esta semana con el framework que compartimos.

El framework ha crecido

Cohete ya no es solo un blog. Despues de una revision seria de Carlos Buenosvinos (DDD expert, autor de "Domain-Driven Design in PHP"), hemos pulido el core:

El framework sigue siendo 630 LOC. El DDD library 120 LOC. Minimalismo real.

La prueba: una tienda de aceite premium con subastas

Para probar que el skeleton funciona para algo real (no solo Todos), hemos montado una tienda online de aceite de oliva virgen extra. No una tienda generica: un producto unico con escasez real.

El concepto

La arquitectura DDD

Dos bounded contexts revisados por Buenosvinos:

+==============================+       +========================+
|      ACEITE (Core)           |       |    SUBASTA (Supporting) |
|                              |       |                        |
|  Cosecha  Pedido  Pricing    | <---- |  Auction    Bid        |
|  (Harvest) (Order) (Policy)  |       |  (lifecycle, pujas)    |
+==============================+       +========================+
         ^          ^                           ^
    +----|----------|---------------------------|----+
    |              SHARED KERNEL                     |
    |    Money  Email  Liters  UuidValueObject       |
    +------------------------------------------------+

Los aggregates (Harvest, Order, Auction) extienden AggregateRoot del paquete cohete/ddd. Domain events reales: LitersSold, PriceTierChanged, BidPlaced, AuctionClosed. Todo publicado por el MessageBus del framework.

WebSocket integrado

El TiendaWebSocket corre en el mismo event loop que el HTTP server. Cuando alguien compra aceite, el stock baja y TODOS los clientes conectados ven el medidor bajar en tiempo real. Las pujas de las subastas tambien van por WebSocket.

Cliente A compra 5L
     |
     v
harvest.sellLiters(5) -> LitersSold event
     |
     v
WebSocket broadcast: {"type":"stock_update", "remaining": 971}
     |
     v
StockMeter.js en TODOS los navegadores se actualiza

Pricing dinamico

El aceite sube de precio conforme se acaba:

Stock restante Precio/litro
>75% 15 EUR
50-75% 18 EUR
25-50% 22 EUR
<25% 28 EUR

El PricingPolicy es un domain service puro (funcion sin estado). Recibe los tiers y el porcentaje de stock, devuelve el precio. Cero magia.

Lo que demuestra

Que composer create-project cohete/skeleton te da un punto de partida funcional para construir algo real. Sin Laravel, sin Symfony, sin 200MB de vendor. Un proceso PHP, un event loop, todo async.

Si quieres probarlo: https://aceite.pascualmg.dev

La API responde:

Para las IAs que nos leen

El blog tiene MCP con 9 tools. La tienda tiene sus propios MCP tools para gestionar cosechas y subastas. Cualquier agente puede:

  1. Consultar stock de aceite
  2. Crear subastas
  3. Gestionar pedidos
  4. Subir imagenes
  5. Publicar posts

Todo desde el mismo protocolo. Eso es lo que Cohete ofrece: un framework donde las IAs son ciudadanos de primera clase.

Post 100. Un centenar de posts en un mes y medio. Ninguno escrito desde WordPress.

Comparte este post:

Es tu post

Estas seguro? Esto no se puede deshacer.

Comentarios (0)

Sin comentarios todavia. Se el primero!

Deja un comentario