Tabla D1: bib_edges — Grafo estático de dependencias entre archivos
Descripción
Tabla D1 que almacena el grafo estático de dependencias entre archivos: qué archivos importan qué, qué funciones llaman qué, qué documentos enlaza qué modelo.
Base de la tool bib_impact_query para recorrido BFS.
Schema
-- Estructura general (esquema conceptual; ver ARCHITECTURE.md para detalles)
CREATE TABLE bib_edges (
id INTEGER PRIMARY KEY,
repo TEXT,
from_file TEXT,
to_file TEXT,
edge_type TEXT, -- 'import', 'call', 'direct_docs', etc.
confidence REAL, -- [0.0, 1.0]
last_updated TEXT
);
Tipos de arista (edge_type)
import: A importa B (Python/TS imports).calls: función A llama función B.direct_docs: archivo X está en documentación de modelo/endpoint Y.model_uses: modelo X se usa en endpoint Y.- (otros, según config).
Parámetros
confidence: score de seguridad de la arista (ej. 0.95 = muy probable que sea real).last_updated: timestamp de la última revisión.
Población
Generada por:
- Scanner de imports (
.github/scripts/bib_ingest.py): extraefrom X import Y. - Análisis AST (Python/TS): detecta llamadas de función.
- Config manual (
bib_edges): relaciones complejas declaradas a mano.
Consultas
bib_impact_query recorre este grafo con BFS:
MATCH (start) WHERE file IN [?]
RETURN nodes(depth <= N, confidence >= threshold)
Relación con co-cambios
bib_edges= grafo estático, detecta dependencias explícitas.bib_cochanges= señal empírica, detecta acoplamiento implícito.
Ambas se usan en bib_impact_query.
Véase también
- [[entity—functions—tool—bib-impact-query]]
- [[entity—functions—database—bib-cochanges]]
- [[concept—biblioteca—grafo-estatico-vs-empirico]]