Inspiración
En un taller industrial, una orden puede detenerse días por una pieza que nadie sabía que faltaba. El taller publicaba eventos, pero ningún inventario respondía en tiempo real: ¿qué tengo, qué está apartado, qué falta y qué compro primero?
Qué hace
Escucha los eventos del taller por Kafka y cierra el ciclo:
- reserva piezas al aprobarse una inspección;
- registra faltantes y sugiere compras;
- recibe las compras y surte primero las órdenes que esperan;
- el técnico escanea con su celular y retira contra su orden.
Incluye pantallas de almacén, órdenes y kardex, y un tablero con costo promedio, rotación y pronóstico. También trae El Consejero, un asesor con IA que explica los números y te lleva a la pantalla donde hay que actuar.
Cómo lo construimos
Usamos Python + FastAPI + PostgreSQL para el backend, Redpanda (Kafka) para los eventos, React + TypeScript para las pantallas y Gemini para el asesor. Todo se levanta con un comando.
El stock nunca se edita: es la suma de movimientos inmutables.
$$ \text{available}_p = \sum q_m - \text{reserved}_p \qquad \text{reserva} = \min(\text{available}_p,\; n) $$
Retos que enfrentamos
- Datos sucios: eventos duplicados y desordenados, y SKU repetidos o ausentes. Los resolvimos con idempotencia por
event_id, una cola de reintentos y una DLQ. - Concurrencia: que dos órdenes no tomen la misma última pieza. Usamos un candado por pieza.
- Cámara en el celular: solo funciona con HTTPS, y las etiquetas pequeñas eran difíciles de leer.
- IA segura: solo lee, se ancla en datos reales y resiste prompt injection.
Logros de los que estamos orgullosos
- 50/50 en las pruebas de contrato oficiales.
- Los tres niveles del reto cubiertos: base, intermedio y avanzado.
- Un flujo de piso de pocos toques, donde la orden se llena sola.
- Un asesor con IA que no solo explica: te dice qué hacer y te lleva ahí.
Lo que aprendimos
- Un inventario confiable se diseña como un libro contable.
- Hay que diseñar para el desorden, no esperar que no pase.
- Una IA sirve cuando se basa en datos reales y deja la decisión al humano.
Qué sigue para Inventario Inteligente Noobs404
- Usuarios y roles.
- Alertas al celular.
- Órdenes de compra automáticas.
- Un pronóstico más fino.
- Impresión de etiquetas.
Built With
- docker
- fastapi
- gemini
- postgresql
- python
- react
- redpanda
- vite
Log in or sign up for Devpost to join the conversation.