/cartographer
Mapea un dominio o flujo solicitado a símbolos verificados, invariantes y pruebas en .ramos/maps/<flow>.md (≤120 líneas) usando git, rg y ast-grep, con consultas opcionales a GitNexus verificadas contra HEAD.
npx skills@latest add luci-efe/skills -s cartographer- OrientarEtapa
- 04 El contexto continúa · 01 ObservableMétodo
- .ramos/
maps/ <flow>.mdArtefacto / salida producida
Usar cuando
Cuando necesitas mapear un dominio o flujo de ejecución a código real antes de planear o editar.
Soporte y adaptadores
- Instrucciones usables en cualquier arnés
Árbol de decisión
- 01→ fresh | stale | absent/
1. Verificar frescura de índice y árbol
Acotar a un solo <flow> (nunca un DOMAIN_MAP.md de todo el repo). Ejecutar cartographer.mjs status; si devuelve status: "blocked", resolver primero la herramienta faltante (nunca un baseline vacío)
unindexed | blocked - 02→ Símbolos verificados + live_line
2A–2B. Rama GitNexus fresco o stale-overlay
Si está fresco y limpio, consultar procesos/
llamadores en GitNexus; si está desactualizado o cruza archivos sucios, verificar con ast-grep dentro de ±3–20 líneas y marcar "stale_overlay": true - 03→ mode: baseline (rg + ast-grep)
2C. Rama baseline sin estado (rg + ast-grep)
Cuando GitNexus está ausente/
sin índice o un símbolo no se verifica, rastrear 1–3 saltos con rg literal y ast-grep estructural (--pattern); nunca ejecutar gitnexus analyze en automático - 04→ .ramos/
3. Escribir corte acotado del flujo
Escribir .ramos/
maps/ <flow>.md (estrictamente ≤120 líneas) con Encabezado, Puntos de entrada y cadena de llamadas, Estado e invariantes, Pruebas y ## Unknowns / not covered maps/ <flow>.md
Requisitos y comandos de instalación
- gitrequerido · ramas baseline y gitnexus
gitbrew install git - rgrequerido · rama baseline
rgbrew install ripgrep - ast-greprequerido · rama baseline
ast-grepbrew install ast-grep - gitnexusopcional · rama gitnexus
gitnexusnpm i -g gitnexusopcional · licencia PolyForm Noncommercial, verificar antes de uso comercial
Criterios de completitud
- .ramos/
maps/ <flow>.md existe, tiene estrictamente ≤120 líneas y mapea un solo flujo acotado (nunca un DOMAIN_MAP.md estático de todo el repositorio). - Cada símbolo e invariante cita un path:line verificado en el árbol de trabajo vivo (live_line cuando stale_overlay es true).
- Incluye una sección explícita ## Unknowns /
not covered para bordes dinámicos no resueltos, servicios externos no indexados o ramas sin pruebas. - Si faltan herramientas requeridas (git, rg, ast-grep), devuelve status: "blocked" con los comandos de instalación (código 2); nunca ejecuta gitnexus analyze, setup ni clean en automático.