Volver a la wiki

Bibliotecario-Lint automatizado (Supercontexto Fase 5)

Bibliotecario-Lint automatizado · Supercontexto Fase 5

Qué es

El Bibliotecario-Lint es la capa de mantenimiento pasivo y activo de la wiki Supercontexto de CreaRack Pro. Introducida en la Fase 5 del Supercontexto (2026-04-22), detecta automáticamente problemas de calidad en las páginas wiki sin intervención humana:

ProblemaDetecciónCoste LLM
Stale — página sin last_verified reciente (> N días)Query D1 sobre last_verified0
Orphan — página sin backlinks ni referencias de códigoQuery D1 sobre related + bib_edges0
Broken sources — archivo code referenciado que ya no existe en GitHubGitHub Contents API0
Contradicción semántica — dos páginas de la misma community dicen cosas incompatiblesHaiku (Claude 3 Haiku) por par~$0.002/par

Componentes

Tools MCP nuevos

GitHub Actions

WorkflowFicheroFrecuenciaObjetivo
Bibliotecario-Lint (diario).github/workflows/wiki-lint.ymlcron: "30 4 * * *"lint_bulk + contradictions incremental
Bibliotecario-Lint Consolidación (semanal).github/workflows/wiki-lint-consolidation.ymlcron: "0 3 * * 0"contradictions full pairwise, todos los pares de cada community

Ambos workflows operan en dry_run por defecto — solo reportan. Para aplicar cambios se lanza workflow_dispatch con apply=true.

Skill de Claude

.claude/skills/wiki-lint-review/SKILL.md — skill conversacional activable con /wiki-lint-review o frases como “¿qué tal está la wiki?”. Orquesta wiki_lint_bulk + wiki_lint_contradictions en dry_run y presenta una tabla de resultados al usuario.


Arquitectura de detección de contradicciones

bib_wiki_pages (active, community_id NOT NULL)
        │
        ▼ agrupar por community_id
  [community A]  [community B]  ...
        │
        ▼ generar pares (N×N-1/2)
  incremental → solo pares con ≥1 page reciente (<recent_days)
  full        → todos los pares
        │
        ▼ fetchSnippet (GH Contents API, cache en memoria)
  fragmento ≤2000 chars por page
        │
        ▼ Haiku prompt
  verdict: "contradict" | "complementary" | "unrelated"
        │
        ▼ si contradict + dry_run=false
  INSERT bib_wiki_contradictions (idempotente por pair_ordenado + subject)

Idempotencia: el par se ordena alfabéticamente ([a.slug, b.slug].sort()) antes de insertar, evitando duplicados al cambiar el orden de iteración.


Tabla D1: bib_wiki_contradictions

CampoTipoDescripción
page_a_slugTEXTSlug de la primera página (ordenado asc)
page_b_slugTEXTSlug de la segunda página
claim_aTEXTCita literal de A (≤500 chars)
claim_bTEXTCita literal de B (≤500 chars)
subjectTEXTTema sobre el que se contradicen (≤200 chars)
statusTEXTopen | resolved

Configuración y límites de coste

ParámetroDefault diarioDefault semanalPropósito
stale_days60—Umbral de staleness
limit200—Max pages a escanear en bulk
recent_days7—Ventana incremental
max_pairs_per_community10 (diario)20 (semanal)Protege coste Haiku
max_total_pairs40 (diario)200 (semanal)Hard cap global

Coste estimado lint diario (incremental, 40 pares): ~$0.08. Lint semanal (full, 200 pares): ~$0.40.


Artefactos de ejecución

Los workflows suben artifacts a GitHub Actions:


Relación con otras fases del Supercontexto

FaseNombreRelación
Fase 1-4Bibliotecario-Ingest, Curator, etc.Producen las pages que Lint monitoriza
Fase 5Bibliotecario-LintEsta feature
Futurawiki_resolve_contradictionTool aún no implementado para resolver contradicciones

Véase también

Subir