mirror of
https://origin.cursor.com/mrdevmx/panels.git
synced 2026-10-09 10:43:18 +00:00
No description
<!-- CURSOR_AGENT_PR_BODY_BEGIN -->
## Problema
Tras iniciar sesión en producción (`panels.mrdev.mx`), el panel mostraba "No se pudo cargar el panel" con:
`TypeError: Cannot read properties of undefined (reading 'filter')`
## Causa
La API devuelve respuestas con envelope RPC (`{ ok, code, data, message, layer }`), pero pantallas legacy como el dashboard esperaban shape plano (`workers`, `projects`, etc.). Al asignar `workers.value = w.workers`, el valor quedaba `undefined` y los `.filter()` en computed fallaban.
## Solución
- Normalizar respuestas en `useApi` con `unwrapApiPayload()` para compatibilidad con pantallas existentes
- Endurecer `index.vue` con arrays por defecto y manejo de errores en carga
- Rediseñar la pantalla de error global: mensaje "¡Oops! Algo falló", código de error, resumen legible y detalle técnico colapsable
## Deploy
Reconstruir y desplegar `web-panel`. Si las migraciones `027`/`028` no están en prod, aplicar `./db/update.sh core iam`.
<!-- CURSOR_AGENT_PR_BODY_END -->
<div><a href="https://cursor.com/agents/bc-eeec3b5c-f789-43e8-a353-0755e4706377?cursor_ref=pr_footer&cursor_cta=open_in_web"><picture><source media="(prefers-color-scheme: dark)" srcset="https://cursor.com/assets/images/open-in-web-dark.png"><source media="(prefers-color-scheme: light)" srcset="https://cursor.com/assets/images/open-in-web-light.png"><img alt="Open in Web" width="114" height="28" src="https://cursor.com/assets/images/open-in-web-dark.png"></picture></a> <a href="https://cursor.com/background-agent?bcId=bc-eeec3b5c-f789-43e8-a353-0755e4706377&cursor_ref=pr_footer&cursor_cta=open_in_cursor"><picture><source media="(prefers-color-scheme: dark)" srcset="https://cursor.com/assets/images/open-in-cursor-dark.png"><source media="(prefers-color-scheme: light)" srcset="https://cursor.com/assets/images/open-in-cursor-light.png"><img alt="Open in Cursor" width="131" height="28" src="https://cursor.com/assets/images/open-in-cursor-dark.png"></picture></a> </div>
|
||
|---|---|---|
| .github/workflows | ||
| api | ||
| db | ||
| docs | ||
| overlays | ||
| scripts | ||
| tmp/pdfs | ||
| web | ||
| web-panel | ||
| web-saas | ||
| .dockerignore | ||
| .env.example | ||
| .gitignore | ||
| docker-compose.yml | ||
| Dockerfile.api | ||
| Dockerfile.migrate | ||
| Dockerfile.provision | ||
| Dockerfile.web-panel | ||
| Dockerfile.web-saas | ||
| package.json | ||