team-review

LearnTrading

Período: 2026-03-19 → 2026-05-07 · Generado por: oscar · 2026-06-29 12:00 · Fuentes: jira, github

LearnTrading — Cronología, entregas por área y pendientes

Esta es la versión para el cliente con las tres vistas clave del período: línea de tiempo día a día, entregas agrupadas por área funcional y estado real de los pendientes. Todos los datos son reales, extraídos en vivo de Jira (épica SD-227) y GitHub (swissbull-group/learntrading); nada está inventado.

⏱️ Duración real: 34 días laborales. El período del 19 de marzo al 7 de mayo de 2026 abarca 50 días corridos, de los cuales se descuentan 7 sábados, 7 domingos y 2 feriados nacionales de Bolivia (Viernes Santo, 3 de abril y Día del Trabajo, 1 de mayo) → quedan 34 días laborales. El dato relevante: hubo commits en los 34 días hábiles, es decir, el equipo trabajó prácticamente todos los días laborables disponibles del período, sin semanas ni días muertos dentro de la jornada hábil.


1. Línea de tiempo — día por día

Cada día es un desplegable: el título resume qué se hizo; al abrirlo se ven los tickets (evidencia trazable en Jira) y la actividad (tickets cerrados · commits · PRs). Por defecto están colapsados — hacé clic en cada día para ver el detalle. Fines de semana y feriados omitidos.

🎨 Diseño y Marca — en paralelo (equipo de Diseño)

Trabajo del equipo de Diseño, en paralelo al desarrollo (comenzó el 15 de marzo, antes que el código). Datos provistos por el equipo de Diseño — no provienen de Jira SD-227 ni de GitHub.

15–18 mar — Creación de logo e identidad visual

Investigación y desarrollo de concepto · Moodboard (dirección visual) · Tipografía y paleta de color · Desarrollo de la suite de logo · Fotos de perfil y banners para redes sociales.

19–22 mar — Ideación y creación de la mascota de marca

Concepto y desarrollo de la mascota · Presentación del personaje.

23 mar – 5 abr — Diseño web: Home, página 404 y Login

Wireframe del Home · Mockup completo del Home · Banner del hero y assets visuales del Home (íconos y video) · Feature cards del Home.

10–11 abr — Página de Planes (web)

Diseño de las secciones de la página de Planes.

13–30 abr — Página de Cursos y demás assets (web y redes)

Diseño completo de la página de Cursos · Diseño del certificado · Banners de lecciones de los Módulos 1 y 2 · Feature cards de la página de Cursos · Set de íconos de la página de Cursos · Diseño del certificado (página de Cursos) · Setup de canales de redes sociales (Facebook, Instagram, X, TikTok) · Diseños de posts de lanzamiento.

💻 Desarrollo — día por día (equipo de Dev)

Semana 1 — Cimientos del proyecto (19–20 mar)

Jue 19 mar — Arranque del proyecto desde cero: se crea el proyecto Next.js y se configura el linting/formato (ESLint + Prettier), la integración continua (CI) y el comando de revisión de PRs.

Tickets: SD-229, SD-226, SD-230, SD-232 · 4 done · 21 commits · 4 PRs

Vie 20 mar — Infraestructura de UI: se instala shadcn, se añade Supabase MCP y se construyen los layouts base (header, navbars de escritorio y móvil, footer).

Tickets: SD-238, SD-231, SD-234, SD-239 · 4 done · 7 commits · 2 PRs

Semana 2 — Backend, autenticación y pagos en test (23–27 mar)

Lun 23 mar — Infraestructura central: integración de Supabase con Next.js, configuración y compra de Supabase, dominio en Vercel y Cloudflare, protección de ramas main/develop, despliegue de producción y pre-producción; librerías de formularios (zod, react-hook-form, tanstack-query).

Tickets: SD-241, SD-247, SD-248, SD-253, SD-250, SD-249, SD-240 · 7 done · 22 commits · 3 PRs

Mar 24 mar — Autenticación: auth con Supabase, Login y Signup funcionando; cuenta de Resend y verificación del dominio de correo en Cloudflare (emails transaccionales).

Tickets: SD-242, SD-243, SD-244, SD-254, SD-255, SD-228 · 6 done · 21 commits · 2 PRs

Mié 25 mar — *Día de mayor cierre.* Jornada intensiva de autenticación y cuenta (perfil, signout, fuerza de contraseña, rutas de auth, drawer con avatar), primeros pasos de cursos (persistencia en Supabase, mini-quizzes por módulo) y pagos (Stripe en modo test con tarjetas de prueba).

Tickets: SD-264, SD-271, SD-273, SD-279, SD-281, SD-283, SD-251, SD-268, SD-270, SD-274, SD-275 (y más) · 18 done · 48 commits · 2 PRs

Jue 26 mar — Autenticación avanzada: recuperación de contraseña, estilizado de formularios, Google Sign-In (Next.js + Supabase + Google Cloud), edición de avatar; pagos con Stripe en test y fix de versión de API.

Tickets: SD-245, SD-265, SD-266, SD-294, SD-256, SD-288, SD-284 · 11 done · 35 commits · 7 PRs

Vie 27 mar — Estabilización del entorno de desarrollo y corrección de errores de Stripe en dev. Alto volumen de commits (22) frente a pocos cierres: jornada de depuración/integración.

Tickets: SD-305, SD-307 · 2 done · 22 commits · 4 PRs

Semana 3 — Dashboard, suscripciones y segundo proveedor de pago (30 mar–2 abr)

Lun 30 mar — Autenticación (fixes de signout y de formularios claro/oscuro, vista previa de lecciones gratis con login), infraestructura (fixes de despliegue en develop, previews en Vercel) y landing (loaders, loading.tsx).

Tickets: SD-299, SD-304, SD-309, SD-319, SD-313, SD-314, SD-290, SD-316 · 11 done · 18 commits · 3 PRs

Mar 31 mar — Pagos/suscripciones: vista de suscripción por usuario en el dashboard, enlace Manage Billing de Stripe, alta de NowPayments (sandbox, cripto), modal de método de pago; cursos al dashboard.

Tickets: SD-321, SD-322, SD-330, SD-331, SD-276, SD-324, SD-325, SD-326 · 9 done · 23 commits · 3 PRs

Mié 1 abr — Lógica de lecciones premium, resolución de conflictos de migraciones en Supabase y nuevas skills de Claude para el equipo. 30 commits: jornada de trabajo profundo con pocos cierres formales.

Tickets: SD-329, SD-362, SD-336 · 3 done · 30 commits · 4 PRs

Jue 2 abr — Roles de creador/estudiante, mejora de la página de herramientas en escritorio, fix de logo y avisos de Supabase.

Tickets: SD-354, SD-363, SD-366, SD-368 · 4 done · 29 commits · 2 PRs

Vie 3 – Dom 5 abr — Semana Santa (feriado en Bolivia: Viernes Santo 3 abr). Sin actividad de commits. No es un retraso: son días no laborables.

Semana 4 — LMS, exámenes y herramientas de trading (6–10 abr)

Lun 6 abr — Reanudación tras el feriado: trabajo en curso (commits y PRs); los cierres formales se reflejan en los días siguientes.

Sin tickets cerrados (Done) ese día — reanudación tras el feriado, con el trabajo en curso ya volcado en código.

En progreso (referido en los commits del día): SD-385 (mejoras de agentes IA), SD-320 (NowPayments), SD-371 (acciones IA simultáneas), SD-365 (página de quiz final).

Commits del día (17): force-dynamic + auth guard en el layout del dashboard · componente de pregunta True/False integrado al examen · página de certificado + políticas RLS de usuario · refactor de formularios (useWatch) en DcaForm/Liquidation · comandos de PR/Slack.

Actividad: 0 done · 17 commits · 4 PRs

Mar 7 abr — Pagos (lógica de "upgrade/plan actual" con NowPayments, hot-fix en dev), cursos (página de quiz final), landing (scroll header móvil) y configuración de comandos/agentes de Claude.

Tickets: SD-332, SD-388, SD-365, SD-364, SD-424, SD-426, SD-387 · 7 done · 30 commits · 6 PRs

Mié 8 abr — Cursos/LMS y exámenes (botón "volver al dashboard", modo debug de auto-aprobado), herramientas de trading (validación de inputs y corrección de la fórmula de precio de liquidación verificada contra Binance/Bybit), pagos (NowPayments en test).

Tickets: SD-431, SD-433, SD-428, SD-429, SD-320, SD-333, SD-386, SD-427 · 9 done · 32 commits · 5 PRs

Jue 9 abr — Responsividad de auth, botón "ir al dashboard" para usuarios logueados, redirección post-compra y enfoque del curso oficial.

Tickets: SD-291, SD-335, SD-334, SD-430 · 4 done · 24 commits · 4 PRs

Vie 10 abr — LMS: corrección de bugs de quizzes (reintentos, reflejo de progreso en el sidebar) y ampliación del modo debug para gates de examen. Landing: se implementa la sección hero.

Tickets: SD-442, SD-443, SD-445, SD-446, SD-456 · 5 done · 24 commits · 4 PRs

Semana 5 — Secciones de landing, emails de confirmación y XP (13–17 abr)

Lun 13 abr — Landing: secciones stats, why learn trading y features. LMS: referencia a lección/módulo en las explicaciones de quiz al fallar. Refactor de backend (fuente única de verdad).

Tickets: SD-459, SD-468, SD-469, SD-444, SD-455, SD-458, SD-460, SD-470 · 8 done · 27 commits · 7 PRs

Mar 14 abr — Flujo de confirmación de email (plantilla de Supabase, signout tras confirmar, página de email confirmado), landing (ruta "/" que permite ver el landing, header en rutas libres, estilos de precios) y visualización de administración de XP.

Tickets: SD-485, SD-486, SD-487, SD-488, SD-496, SD-503, SD-494, SD-484 · 9 done · 25 commits · 5 PRs

Mié 15 abr — Audio con IA (ElevenLabs) de punta a punta en un día: alta de cuenta, setup, configuración de la voz "Rachel", generación de .mp3, bucket de audios en Supabase y carga del audio de la lección 1.1. Panel de configuración de XP con bonus por audio.

Tickets: SD-507, SD-508, SD-509, SD-510, SD-512, SD-515, SD-504, SD-518 · 8 done · 9 commits · 2 PRs

Jue 16 abr — Audio IA: integración de ElevenLabs, componente AudioPlayer en lecciones, generación manual y automática desde el panel de administración. LMS: UI de admin para preguntas de examen (CRUD). Migración a las firmas de revalidatePath de Next.js 16 y endurecimiento del manejo de errores.

Tickets: SD-506, SD-511, SD-528, SD-533, SD-461, SD-527, SD-513, SD-516 · 8 done · 32 commits · 5 PRs

Vie 17 abr — Landing: secciones how it works, roadmap y estilos de navbar móvil. Pagos: mejoras de idempotencia de NowPayments y prueba de punta a punta. Migración de PKs a UUID en módulos de curso (admin).

Tickets: SD-549, SD-594, SD-581, SD-588, SD-591, SD-589, SD-546 · 7 done · 21 commits · 6 PRs

Semana 6 — Marca, secciones finales del landing y mascota (20–24 abr)

Lun 20 abr — *Máximo de PRs integrados (8).* Branding: tipografía y paleta de marca en toda la app (y en el PDF del certificado / OG image). Mascota: sección de personalización + optimización del video. Landing: sección de testimonios, mejora de UX en errores 404/verificación. Herramientas: sección de trading journal.

Tickets: SD-603, SD-605, SD-604, SD-610, SD-611, SD-612, SD-602, SD-607 · 8 done · 36 commits · 8 PRs

Mar 21 abr — Landing: sección de precios y FAQ general, tarjetas de precio en móvil. Pagos: persistencia de los detalles de cancelación de Stripe.

Tickets: SD-616, SD-618, SD-617, SD-613 · 4 done · 22 commits · 7 PRs

Mié 22 abr — Landing: CTA y footer. 16 commits / 4 PRs de soporte.

Tickets: SD-626, SD-634 · 2 done · 16 commits · 4 PRs

Jue 23 abr — Landing/Cursos: página de landing completa, primera página de cursos, modo oscuro en rutas públicas (courses, pricing, tools, blog, about), navbar móvil, CRUD de imagen de curso desde el panel admin.

Tickets: SD-295, SD-653, SD-659, SD-661, SD-666, SD-655 · 6 done · 18 commits · 4 PRs

Vie 24 abr — Jornada de trabajo en curso (commits y PRs); cierres formales en los días hábiles siguientes.

Sin tickets cerrados (Done) ese día — jornada de trabajo en curso; los cierres formales caen en los días hábiles siguientes.

En progreso (referido en los commits del día): SD-681 y SD-627 (deuda técnica de proxy y de formularios de auth), SD-664 (reglas de contraseña), SD-636 (breadcrumbs en todos los flujos), SD-685 (avatares de X/Twitter en next/image), SD-658 (página 404).

Commits del día (16): preservar cookies de Supabase en redirecciones de proxy (SD-681) · limpieza de formularios de auth (SD-627) · gate de reset de contraseña con cookie de recovery (SD-664) · breadcrumbs consistentes (SD-636) · whitelisting de pbs.twimg.com (SD-685).

Actividad: 0 done · 16 commits · 4 PRs

Semana 7 — Página de cursos, animaciones y cierre (27 abr–7 may)

Lun 27 abr — Prueba de punta a punta del examen final.

Tickets: SD-680 · 1 done · 16 commits · 3 PRs

Mar 28 abr — Página de cursos completa: secciones de certificados, FAQ, CTA y outcomes.

Tickets: SD-703, SD-704, SD-705, SD-706, SD-710 · 5 done · 32 commits · 3 PRs

Mié 29 abr — Landing: secciones complementarias y testimonios en la página de precios, responsividad, variantes de fondo, mejoras de UX/UI. Legal: página de política de cookies.

Tickets: SD-712, SD-713, SD-722, SD-723, SD-745, SD-746, SD-671 · 7 done · 18 commits · 5 PRs

Jue 30 abr — *Día pico de commits del proyecto (55).* Animaciones del landing (Framer Motion): componentes reveal/reveal group y animación de las secciones hero, stats, why-learntrading, how-it-works, roadmap, testimonios, precios, FAQ, CTA, trading journal y mascota.

Tickets: SD-751, SD-752, SD-753, SD-755, SD-756, SD-757, SD-758, SD-759, SD-760, SD-761, SD-762, SD-763, SD-764 · 13 done · 55 commits · 4 PRs

Vie 1 – Dom 3 may — feriado en Bolivia (Día del Trabajo, 1 may). Sin actividad. Días no laborables.

Lun 4 may — Animaciones: página de cursos y sus secciones (outcomes, certificado). Ajustes de infraestructura de despliegue (deploy.yml, gestión de seats en Vercel).

Tickets: SD-767, SD-783, SD-784, SD-785, SD-390, SD-391 · 6 done · 23 commits · 5 PRs

Mar 5 may — Animaciones de la página de precios y de herramientas/calculadoras. LMS: tracking de "lección abierta", fix de imagen de portada de curso en el admin. Legal: estilizado de términos y condiciones.

Tickets: SD-786, SD-791, SD-792, SD-793, SD-505, SD-811, SD-803 · 7 done · 21 commits · 6 PRs

Mié 6 – Jue 7 may — Últimos retoques e integraciones de cierre del período. El 7 de mayo es el último día con actividad en el repositorio.

Sin tickets cerrados (Done) esos días — últimos retoques e integraciones de cierre del período. El 7 de mayo es el último día con actividad en el repositorio.

En progreso (referido en los commits): SD-555 (shortcodes de contenido de lección en markdown), SD-527 (quiz embebido), SD-780 (refresh estético de tokens "destructive"), SD-819 / SD-817 / SD-839 (follow-ups post-SD-802), SD-675 (exportación de datos GDPR Art. 20).

Commits del 6 may (19): fundación del plugin de shortcodes de lección · endpoint GDPR de exportación de datos (SD-675) · refresh de tokens "destructive" con verificación APCA (SD-780) · fixes de idempotencia y de seed.

Commits del 7 may (10): panel de atajos + 6 shortcuts en lección · componentes de callout y ejercicio fill-blank para lecciones · wiring de shortcodes en el MarkdownRenderer (SD-555).

Actividad: 0 done · 6 may: 19 commits / 3 PRs · 7 may: 10 commits / 1 PR

A partir del 8 de mayo: parón total. Cero commits y cero PRs en learntrading desde el 8 de mayo hasta hoy (~53 días). La causa no es el equipo: es una reasignación de proyecto (ver el informe completo).

2. Entregas por área funcional (scope)

Todo lo entregado (200 tickets Done), agrupado por área. El número es la cantidad de tickets de esa área.

#Área (scope)Período activoQué se construyó
1Landing y sitio de marketing20 mar – 5 mayLayouts base, todas las secciones del landing (hero, stats, why, features, how-it-works, roadmap, testimonios, precios, FAQ, CTA, footer), páginas de cursos/precios/tools, modo oscuro, responsividad y animaciones con Framer Motion
2Cursos / LMS25 mar – 5 mayPersistencia de cursos, lecciones premium, quizzes y exámenes (gates, reintentos, explicaciones), certificados, XP, tracking de progreso, CRUD de cursos
3Infraestructura y DevOps19 mar – 4 mayProyecto Next.js, CI, Supabase, Vercel (prod/pre-prod), dominios, Resend, protección de ramas, migraciones, Next.js 16, manejo de errores
4Autenticación y cuenta24 mar – 23 abrLogin/Signup, Google Sign-In, recuperación de contraseña, confirmación por email, perfiles, avatares, sesiones, drawer de usuario
5Pagos y suscripciones25 mar – 21 abrStripe (test, billing, cancelaciones) y NowPayments (cripto, idempotencia), tarjetas de precio, modal de pago, flujos post-compra
6Audio IA (ElevenLabs)15 – 16 abrIntegración text-to-speech: voz "Rachel", generación de .mp3, bucket de audios, AudioPlayer en lecciones y generación automática desde el admin
7Tooling IA / DevOps (Claude Code)19 mar – 13 abrComandos y agentes de Claude, revisión de PRs, *skills*, generación de tipos — productividad interna del equipo
8Herramientas de trading2 abr – 5 mayPágina de herramientas, calculadora de liquidación (fórmula verificada vs Binance/Bybit), trading journal, animaciones
9Legal y contenido29 abr – 5 mayCookies, términos y condiciones (estilizado); privacidad y disclaimer pendientes (ver §6)
10Branding y mascota2 – 30 abrTipografía y paleta de marca app-wide, personalización de mascota, video
11Panel de administración26 mar – 17 abrCuenta Google Cloud, gestión de funciones (transversal a LMS/Audio/Pagos)

Nota: 5 tickets transversales (loggers de debug, layout de dashboard, info de ruta, presentación de sprint) no se asignan a una sola área. La administración aparece además distribuida dentro de Cursos, Audio y Pagos (CRUD de exámenes, audio desde admin, billing).


🎨 Diseño y Marca (equipo de Diseño)

Entregas del equipo de Diseño en el mismo período (datos provistos por el equipo de Diseño; no provienen de Jira/GitHub):

ÁreaPeríodoQué se entregó
Identidad visual y logo15–18 marInvestigación y concepto, moodboard (dirección visual), tipografía y paleta de color, suite de logo, fotos de perfil y banners de redes
Mascota de marca19–22 marConcepto y desarrollo de la mascota, presentación del personaje
Diseño web — Home / 404 / Login23 mar – 5 abrWireframe y mockup completo del Home, banner del hero y assets (íconos y video), feature cards del Home
Diseño web — Página de Planes10–11 abrDiseño de las secciones de la página de Planes
Diseño web — Cursos + assets y redes13–30 abrDiseño completo de Cursos, certificado, banners de lecciones (Módulos 1 y 2), feature cards, set de íconos, certificado de la página de Cursos, setup de redes (Facebook, Instagram, X, TikTok), posts de lanzamiento

3. Pendientes (estado real en Jira, sin maquillar)

De los 215 tickets de la épica, 15 no están Done:

To Do (10) — gates de lanzamiento, no trabajo perdido:

TicketQué es
SD-293Actualizar API KEYS de producción para NowPayments
SD-315Organizar variables de entorno en Vercel
SD-669Página /legal/privacy (Política de Privacidad)
SD-670Página /legal/trading-disclaimer
SD-672Recolectar datos de la entidad legal del cliente para publicar T&C
SD-673Promover /legal/terms de borrador a publicado
SD-454Migrar useCourseProgress a Server Actions
SD-525Estrategia de distribución de exámenes (modos aleatorio + ponderado)
SD-369Observaciones de arquitectura
SD-483Reemplazar examen placeholder cuando llegue el contenido real

Bloqueado (2):

TicketQué esPor qué
SD-285Branding en Google Cloud Console (producción) + revisión de logoDepende de material/decisión externa
SD-517Resaltar palabras mientras suena el audioRequiere upgrade de plan de ElevenLabs (API)

No se hará (Won't Do, 3): SD-307, SD-390, SD-391 — decisiones de infraestructura descartadas (no son trabajo fallido).

Varios pendientes dependen del cliente (datos de la entidad legal para T&C — SD-672, contenido real de exámenes — SD-483, upgrade de plan de audio — SD-517), no del equipo de desarrollo.



4. 🤖 Conclusión de la IA — madurez del proyecto (análisis sincero)

Esta sección fue generada por la IA (Claude). Es una valoración honesta e independiente —no un argumento de venta—, basada en los datos reales de Jira y GitHub y en la lectura del código del proyecto. Señala tanto las fortalezas verificables como lo que aún falta.

Veredicto: LearnTrading no es un prototipo de fachada. Es un producto con **base de ingeniería real

y de nivel cercano a producción**, sobre cimientos sólidos y verificables en el código:

(RLS), migraciones versionadas y *server actions* con manejo de errores tipado. Los datos viven en una

base real, no en mocks del frontend.

imágenes de portada y audios se crean y editan desde un panel de administración con CRUD real contra

la base de datos — no está "fakeado" desde el frontend. Un administrador opera el producto sin tocar

código.

recuperación de contraseña, confirmación por email y manejo correcto de sesiones, con roles de

creador/estudiante.

cancelaciones e idempotencia probada de punta a punta.

seguimiento de progreso.

en las lecciones.

decisiones de negocio**: páginas legales (privacidad, disclaimer, T&C — requieren los datos de la entidad

legal del cliente), claves de producción de NowPayments y orden final de variables de entorno. El

resaltado de palabras durante el audio quedó bloqueado por un upgrade de plan de ElevenLabs.

Madurez estimada: MVP esencialmente completo y de calidad de producción — claramente por encima de

un *landing* con lógica simulada. El trabajo restante es de cierre de lanzamiento, no de construcción

del núcleo: con los insumos del cliente (datos legales, claves de producción) y unas pocas decisiones, el

producto es lanzable.

_— Análisis generado por Claude (IA). Sincero e independiente; basado en datos reales de Jira/GitHub y del código del proyecto._

_Fuentes: Jira épica SD-227 y GitHub swissbull-group/learntrading, extraídos en vivo el 29 jun 2026. Informe por equipo (no por persona). Nada inventado._