--- id: "0109k" title: "skill_tree: panel Dashboard con stats por dominio + XP + level" status: in-progress type: feature domain: - meta - cpp-stack scope: app-scoped priority: media depends: - "0109b" blocks: [] related: - "0109" created: 2026-05-17 updated: 2026-05-17 tags: - skill-tree - cpp - imgui - dashboard - gamification --- # 0109k — Dashboard panel Tercer panel de skill_tree (Tree + Inspector + **Dashboard**). Vista cuantitativa del arbol de habilidades, complementaria al canvas visual. ## Contenido - **HUD top**: LV global + XP total + total nodes done/planned/todo. - **Tabla por dominio** (18 filas, una por dominio canonico): - Domain - Done / Planned / Todo / Total - % completado (barra de progreso) - XP acumulado en ese dominio - Level por dominio (sqrt(xp_domain)) - **Top dominios masterizados** (top 3 por % completado). - **Dominios mas lock-loaded** (los que tienen mas locked vs unlocked — proximos en desbloquearse). - **Distribucion XP por type** (epic vs feature vs bugfix...): mini-barras. ## XP scheme Por type del issue (al completarse): - `epic` → 10 XP - `feature` → 3 XP - `infra` → 4 XP - `refactor` → 2 XP - `bugfix` → 1 XP - `chore` → 1 XP - `docs` → 1 XP - `spike` → 2 XP - `planning` → 2 XP Flows completados → 5 XP cada uno. `xp_total = sum(xp_per_done_node)`. `level = floor(sqrt(xp_total))`. Per-domain: igual pero filtrado por domain match (un nodo cuenta en cada uno de sus domain tags). ## DoD - [x] Tercer panel toggable desde menu View (Ctrl+3). - [x] HUD con LV global + XP + counts. - [x] Tabla por dominio con barras de progreso. - [ ] Distribucion XP por type (mini-bars). - [ ] Top mastered / next-to-unlock. - [ ] Refresh sincronizado con F5 del Tree.