Entidadactivecreado Thu May 14#biblioteca#d1#cloudflare#haiku#observability#wiki#supercontext#workers
Descripción
bib_drift_checks es una tabla D1 (SQLite en Cloudflare) creada en la migración 0024_kind_lifecycle_drift.sql (ADR s61, 2026-05-14). Registra cada ejecución del cron de verificación de drift documental: el proceso en el que Claude Haiku compara el contenido actual de una página wiki con su(s) fuente(s) de código y determina si la página ha quedado obsoleta.
Schema
CREATE TABLE IF NOT EXISTS bib_drift_checks (
id INTEGER PRIMARY KEY AUTOINCREMENT,
slug TEXT NOT NULL,
checked_at TEXT NOT NULL DEFAULT (datetime('now')),
drift_detected INTEGER NOT NULL CHECK (drift_detected IN (0, 1)),
confidence REAL NOT NULL,
summary TEXT,
draft_slug_created TEXT, -- NULL si confidence <= 0.7 (no se crea draft)
haiku_input_tokens INTEGER,
haiku_output_tokens INTEGER,
haiku_cost_usd REAL,
FOREIGN KEY (slug) REFERENCES bib_wiki_pages(slug)
);
Columnas
| Columna | Tipo | Descripción |
|---|---|---|
id | INTEGER PK AUTOINCREMENT | Identificador de la ejecución |
slug | TEXT FK → bib_wiki_pages.slug | Página chequeada |
checked_at | TEXT (ISO-8601) | Timestamp UTC de la ejecución |
drift_detected | INTEGER (0/1) | 1 si Haiku detectó drift significativo |
confidence | REAL | Confianza del modelo (0.0–1.0) |
summary | TEXT | Resumen legible del drift detectado (o NULL) |
draft_slug_created | TEXT | Slug del draft creado si confidence > 0.7 y drift_detected = 1; NULL en caso contrario |
haiku_input_tokens | INTEGER | Tokens de entrada consumidos en la llamada |
haiku_output_tokens | INTEGER | Tokens de salida generados |
haiku_cost_usd | REAL | Coste estimado en USD de la llamada a Haiku |
Índices
CREATE INDEX idx_drift_checks_slug
ON bib_drift_checks(slug);
CREATE INDEX idx_drift_checks_checked_at
ON bib_drift_checks(checked_at);
CREATE INDEX idx_drift_checks_drift_detected
ON bib_drift_checks(drift_detected)
WHERE drift_detected = 1; -- índice parcial: solo filas con drift
Flujo de escritura
- El cron de drift (ejecutado en CF Workers) selecciona páginas
knowledge_basecuyolifecycleha superado el umbral (p. ej.refresh-30d+last_verified> 30 días atrás) o cuyoverification_pending = 1. - Para cada página seleccionada, llama a Haiku con el contenido de la página y el diff de sus
sources[]. - Haiku devuelve
drift_detected,confidenceysummary. - Si
confidence > 0.7ydrift_detected = 1: se crea una página draft y se registradraft_slug_created. - Se inserta una fila en
bib_drift_checkscon todos los campos. - Se actualiza
bib_wiki_pages.verification_pending = 0para la página.
Consideraciones de coste
El campo haiku_cost_usd permite agregar costes por página (SUM) o por período (GROUP BY strftime('%Y-%m', checked_at)). Haiku (~$0.25/M tokens input) es el modelo seleccionado para este cron por su balance coste/calidad en tareas de comparación de texto.
Migración
Introducida en migrations/0024_kind_lifecycle_drift.sql junto con las columnas kind, lifecycle y verification_pending en bib_wiki_pages.
Véase también
- [[decision—20260514—knowledge-base-vs-graph]]
- [[concept—biblioteca—supercontexto]]
- [[entity—biblioteca—table—bib-wiki-pages]]
- [[feature—biblioteca—ingest-agent]]
- [[concept—biblioteca—wiki-lifecycle]]