diff --git a/AGENTS.md b/AGENTS.md index 77b6419..d561acb 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -25,6 +25,7 @@ 3. **No usar `.catch(() => {})`** sin loguear el error. Siempre `console.error()`. 4. **Los nombres de funciones y archivos van en español** cuando son semánticos del dominio (ej: `syncHUsToTurso` → OK, pero labels visibles van en i18n). 5. **Toda función debe tener observabilidad**: loguear entrada con `[Alpha]` + acción + datos clave, loguear errores con `[Alpha]` + descripción + error completo. Sin logs no se puede diagnosticar. +6. **IDs jerárquicos obligatorios en componentes**: todo elemento raíz de sección debe tener `id="{view}-{section}-{element}"` en kebab-case. Ej: `dashboard-stats-epics`, `login-card`, `users-table`. Permite ubicar cualquier componente por su ID sin ambigüedad. ## Sincronización entre máquinas (Mac Mini ↔ MacBook Air) diff --git a/README.md b/README.md index 8fab930..37c529c 100644 --- a/README.md +++ b/README.md @@ -87,7 +87,8 @@ kappa-hub/ 2. **KAPPA retorna tipos mixtos** — usar `String()` siempre 3. **No silenciar errores** — siempre `console.error()` 4. **Observabilidad obligatoria** — toda función debe loguear `[Alpha]` + acción + datos clave + errores completos -5. **Build verde siempre** — `bun run build` + `cargo build` sin errores +5. **IDs jerárquicos** — componentes con `id="{view}-{section}-{element}"` en kebab-case. Ej: `dashboard-stats-epics` +6. **Build verde siempre** — `bun run build` + `cargo build` sin errores ## Documentos clave diff --git a/src/views/DashboardView.vue b/src/views/DashboardView.vue index 0b6eb20..04c63fd 100644 --- a/src/views/DashboardView.vue +++ b/src/views/DashboardView.vue @@ -66,8 +66,8 @@ const statusLabel = (status: unknown) => { -