| name | vault-relations-strategy |
| description | Estrategia para emitir edges tipados en vault/relations/ — cuándo crear un fichero de edge vs. anotar en pending-relations.md |
| metadata | {"tipo":"decision"} |
Regla
Solo se emite un fichero de edge cuando existe evidencia directa en código (import, llamada HTTP con URL hardcoded/env, uso de cliente). Si la dependencia se sospecha por lógica arquitectónica pero no hay línea de código que la confirme, se anota en vault/meta/pending-relations.md y no se crea fichero de edge.
Por qué
gv.py validate verifica wikilinks y frontmatter; un edge inventado con from/to no respaldados por código produce wikilinks rotos o falla de validación. La cautela mantiene validate en exit 0 y el grafo honesto.
Cómo aplicar
- Evidencia suficiente:
from server.map_utils import, httpx.Client(base_url=MCP_SERVER_URL), from agent.agent import.
- Evidencia insuficiente: "probable que X llame a Y dado que sus nombres sugieren acoplamiento", "el server-core tool
get_game_map probablemente usa server-map internamente".
- Ruta de pending:
vault/meta/pending-relations.md (requiere frontmatter type: meta).
- Un edge por fichero, una sola dirección; si la relación es mutua, dos ficheros.
relation_type debe ser uno de: grpc, http, kafka, db, code, secret, apm, other. Solo other con justificación explícita.
Evidencia de origen
Tarea 06 (plan/task/06.md): server-core → server-map (code) sospechado pero no emitido por ausencia de from server.map_utils import en entrypoints de server-core; docs → server-core (other) descartado por ser dependencia de documentación, no ejecutable. Ambos anotados en vault/meta/pending-relations.md.