executing-plans
executing-plans
Use when executing an implementation plan in the current session as the implementer yourself — your human partner chose inline execution, or no subagent tool is available
audit-icon-pipelineDetectar glyphs faltantes, iconos y variantes HD comparando registros contra archivos de mapeo de glyphs, directorios de iconos y manifiestos. Reporta brechas para habilidades, agentes y equipos en todas las paletas.
Independent GitHub snapshot · Automated classification · Original documentation governs
Detectar glyphs faltantes, iconos ausentes y manifiestos desactualizados comparando registros contra archivos de mapeo de glyphs, directorios de iconos y manifiestos. Produce un informe estructurado de brechas que cubre habilidades, agentes y equipos.
skill, agent, team o all (predeterminado: all)cyberpunk — la paleta de referencia)Recopilar todos los IDs de entidades de los registros fuente de verdad.
skills/_registry.yml — extraer todos los IDs de habilidades en todos los dominiosagents/_registry.yml — extraer todos los IDs de agentesteams/_registry.yml — extraer todos los IDs de equiposEsperado: Tres listas de IDs de entidades con conteos que coinciden con total_skills, total_agents, total_teams.
En caso de fallo: Si un archivo de registro no existe, reportar la ruta y omitir ese tipo de entidad.
Recopilar todos los IDs de entidades mapeados desde los archivos de mapeo de glyphs.
viz/R/glyphs.R — extraer todas las claves de la lista SKILL_GLYPHSviz/R/agent_glyphs.R — extraer todas las claves de la lista AGENT_GLYPHSviz/R/team_glyphs.R — extraer todas las claves de la lista TEAM_GLYPHSEsperado: Tres listas de IDs mapeados.
En caso de fallo: Si un archivo de glyphs no existe, reportarlo y marcar todas las entidades de ese tipo como no mapeadas.
Calcular la diferencia entre IDs del registro e IDs mapeados.
registry_skill_ids - mapped_skill_idsregistry_agent_ids - mapped_agent_idsregistry_team_ids - mapped_team_idsEsperado: Listas de IDs de entidades que existen en los registros pero no tienen funcion de glyph mapeada.
En caso de fallo: Si el calculo de diferencia falla, verificar que los formatos de ID coincidan entre el registro y los archivos de glyph (p. ej., guiones vs guiones bajos).
Comprobar que los glyphs mapeados tienen archivos de icono renderizados correspondientes.
viz/public/icons/<palette>/<domain>/<skillId>.webpviz/public/icons/<palette>/agents/<agentId>.webpviz/public/icons/<palette>/teams/<teamId>.webpviz/public/icons-hd/ con la misma estructuraEsperado: Listas de entidades con glyphs pero sin iconos renderizados (estandar y/o HD).
En caso de fallo: Si el directorio de iconos no existe, el pipeline aun no se ha ejecutado — reportar todos como faltantes.
Comparar conteos del manifiesto contra conteos del registro.
viz/public/data/icon-manifest.json — contar entradasviz/public/data/agent-icon-manifest.json — contar entradasviz/public/data/team-icon-manifest.json — contar entradasEsperado: Los conteos del manifiesto coinciden con los conteos del registro. Las discrepancias indican manifiestos desactualizados.
En caso de fallo: Si los archivos de manifiesto no existen, el pipeline de datos necesita ejecutarse primero (node build-data.js && node build-icon-manifest.js).
Walk viz/public/icons*/ and flag WebP files whose <palette>/<domain>/<skillId> triple does not appear in icon-manifest.json.
find viz/public/icons* -name "*.webp"<domain>/<id> from its path<domain>/<id> has an entry in icon-manifest.json# Quick orphan count per palette
node -e "
const fs = require('fs');
const manifest = JSON.parse(fs.readFileSync('viz/public/data/icon-manifest.json'));
const ids = new Set(manifest.map(e => e.domain + '/' + e.id));
const orphans = require('child_process')
.execSync('find viz/public/icons -name \"*.webp\"').toString().trim().split('\n')
.filter(p => { const parts = p.split('/'); const id = parts.slice(-2).join('/').replace('.webp',''); return !ids.has(id); });
console.log('Orphans:', orphans.length);
orphans.forEach(p => console.log(' ', p));
"
Expected: Zero orphans. Any orphans indicate skills re-homed to a different domain without cleanup.
On failure: Delete orphans manually — they have no corresponding manifest entry and will not be served.
Producir un resumen estructurado.
=== Icon Pipeline Audit ===
MISSING GLYPHS (no glyph function):
Skills: 5 missing — [list]
Agents: 2 missing — [list]
Teams: 0 missing
MISSING ICONS (glyph exists, no rendered WebP):
Standard (512px): 3 skills, 1 agent
HD (1024px): 8 skills, 3 agents, 1 team
STALE MANIFESTS:
icon-manifest.json: 320 entries vs 326 registry (stale)
agent-icon-manifest.json: 66 entries vs 66 registry (OK)
team-icon-manifest.json: 15 entries vs 15 registry (OK)
Esperado: Un informe de brechas completo con pasos de accion concretos.
En caso de fallo: Si todas las verificaciones pasan con cero brechas, reportar "Pipeline completamente sincronizado" como resultado positivo.
create-skill), los mapeos de glyph pueden usar claves en snake_case — asegurar que la comparacion normalice los formatosicons-hd/) — no confundir con los iconos estandarbuild.sh creates icons at the new path but does NOT delete the old path — always run Step 6 orphan check after any domain migration