Files
pluriwave/openspec/changes/premium-award-ui-icons-code-review/tasks.md
T
FreeTLab c707fc9911
Build & Deploy Pluriwave / Análisis de código (push) Failing after 21s
Build & Deploy Pluriwave / Build APK + AAB release (push) Has been skipped
feat(ui): add premium PluriWave redesign
2026-05-20 18:42:22 +02:00

4.1 KiB

Tasks: premium-award-ui-icons-code-review

Fase 0 — Guardrails

  • No ejecutar build.
  • No revertir cambios ajenos.
  • Verificar estado inicial con git status --short.
  • Ejecutar baseline de tests permitido: flutter test.
  • Registrar fallos existentes antes de tocar código si los hubiera.

Fase 1 — Tokens y tema

  • Crear tests para validar tokens premium mínimos.
  • Crear lib/tema/pluriwave_tokens.dart.
  • Crear lib/tema/pluriwave_theme.dart.
  • Crear lib/tema/pluriwave_motion.dart.
  • Reemplazar ColorScheme.fromSeed genérico por tema PluriWave tokenizado.
  • Mantener Material 3, pero con identidad propia.
  • Asegurar que widgets existentes sigan usando Theme.of(context).
  • Ejecutar flutter test.

Fase 2 — Sistema de iconos

  • Definir contrato PluriIcon.
  • Definir enum/id de iconos core.
  • Implementar variantes outline, filled, activeGlow.
  • Agregar semantics labels obligatorios.
  • Reemplazar iconos de bottom navigation por PluriIcon.
  • Agregar tests de variante activa, labels semánticos, tap targets y ausencia de regresión en navegación.
  • Ejecutar flutter test.

Fase 3 — Asset pipeline

  • Persistir prompts de mockup/icon sheet en documentación del cambio.
  • Generar sheet con gutters chroma #00FF00.
  • Implementar o usar pipeline: detectar gutters, crop, chroma-to-alpha, trim, center, pad, export, contact sheet, validate.
  • Rechazar sheets con edge-touching, gutters contaminados o escala inconsistente.
  • Exportar assets finales a assets/icons/ o assets/images/.
  • Actualizar pubspec.yaml solo si hace falta declarar subcarpetas nuevas.
  • Ejecutar flutter test.

Fase 4 — Componentes premium

  • Crear PluriWaveScaffold.
  • Crear PluriGlassSurface.
  • Crear fondo premium reutilizable con ondas/global aura.
  • Refactorizar tarjeta_emisora hacia tarjeta premium tokenizada.
  • Refactorizar mini_reproductor con glass pill y estado activo.
  • Refactorizar visualizador_audio con RepaintBoundary.
  • Refactorizar ecualizador_widget con tokens y estados accesibles.
  • Agregar widget tests para componentes críticos.
  • Ejecutar flutter test.

Fase 5 — Pantallas

  • Actualizar PantallaInicio con hero global wave, tendencias y populares.
  • Actualizar PantallaBuscar con search premium, chips y stale-state guard.
  • Actualizar PantallaFavoritos con diseño reorderable.
  • Actualizar PantallaReproductor con player hero, controles premium y EQ entry point.
  • Actualizar PantallaAjustes con cards agrupadas e iconos propios.
  • Agregar/actualizar tests de pantallas existentes.
  • Ejecutar flutter test.

Fase 6 — Hardening técnico

  • Corregir listener leak en lib/app.dart: mover escucha de errorStream fuera de didChangeDependencies, guardar StreamSubscription, cancelar en dispose.
  • Agregar test que falle si se registran listeners duplicados.
  • Implementar control de stale async state en búsquedas/cargas.
  • Agregar tests de “última búsqueda gana”.
  • Implementar reorder persistente de favoritos.
  • Agregar tests de reorder exitoso, rollback ante error, no duplicados por uuid y favorito actual correcto.
  • Ejecutar flutter test.

Fase 7 — Accesibilidad y polish

  • Revisar contraste de tokens principales.
  • Asegurar labels semánticos en controles principales.
  • Asegurar tap targets mínimos 48x48.
  • Soportar reduced motion / disable animations.
  • Evitar que glow/color sea la única señal de estado.
  • Agregar tests de semantics para nav, player, favoritos y EQ.
  • Ejecutar flutter test.

Fase 8 — Persistencia SDD híbrida

  • Persistir proposal.md, spec.md, design.md, tasks.md en openspec.
  • Guardar equivalentes en Engram con topic keys:
    • sdd/premium-award-ui-icons-code-review/proposal
    • sdd/premium-award-ui-icons-code-review/spec
    • sdd/premium-award-ui-icons-code-review/design
    • sdd/premium-award-ui-icons-code-review/tasks
  • Marcar siguiente fase recomendada: sdd-verify.
  • No ejecutar build.