Saltar a contenido

Politica de Gobernanza de Datos — Sherlock-docs v1.0

Sistema: Sherlock-docs v1.0 Entidad: Centro de Servicios Judiciales de Bello, Antioquia Marco normativo: Ley 1581 de 2012, Decreto 1377 de 2013, CONPES 3975, Acuerdo PCSJA24-12243 Fecha: 2026-03-06 Version: 1.0 (Borrador tecnico — requiere revision juridica) Referencia interna: GOB-09


1. Proposito y Alcance

1.1 Proposito

Esta politica establece las directrices para la gestion integral de los datos dentro del sistema Sherlock-docs, garantizando su calidad, integridad, disponibilidad, trazabilidad y proteccion a lo largo de todo su ciclo de vida.

El objetivo es asegurar que los datos personales y judiciales tratados por el sistema cumplan con:

  • Ley 1581 de 2012 (Habeas Data): Principios de finalidad, libertad, veracidad, transparencia, acceso restringido, seguridad y confidencialidad
  • CONPES 3975 (Politica Nacional de IA): Gobernanza de datos en sistemas con componentes de inteligencia artificial
  • Acuerdo PCSJA24-12243: Lineamientos del Consejo Superior de la Judicatura para uso de herramientas IA en la Rama Judicial

1.2 Alcance

Esta politica aplica a:

  • Todos los datos procesados, almacenados y consultados por Sherlock-docs
  • Todos los componentes del sistema: OCR, NER, deteccion de duplicados, base de datos, cache, logs y auditoria
  • Todos los operadores y funcionarios del CSJ Bello que interactuan con el sistema
  • Todo el ciclo de vida del dato: desde el ingreso del documento hasta su eliminacion

1.3 Exclusiones

No aplica a datos gestionados fuera del sistema (archivos fisicos, otros sistemas judiciales, correo electronico institucional).


2. Clasificacion de Datos

2.1 Datos publicos

Datos de libre acceso cuya divulgacion no compromete derechos fundamentales.

Dato Ejemplo Fuente
Radicado 2026-00123 Documento / Acta de reparto
Juzgado Juzgado Primero Civil Municipal de Bello Documento / Acta de reparto
Tipo de proceso tutela, habeas_corpus, desacato Clasificacion del sistema
Numero de acta 001-2026 Acta de reparto
Estado del documento pending, processed, validated Sistema
Fecha de radicacion 2026-03-06 Documento
Metadatos de procesamiento Tiempos OCR/NER, motor utilizado, confianza Sistema

2.2 Datos privados

Datos personales cuyo tratamiento requiere base legal (funcion publica judicial) y medidas de proteccion.

Dato Ejemplo Base legal
Nombre demandante Juan Perez Lopez Funcion publica judicial
Nombre demandado EPS Salud Total Funcion publica judicial
Cedula (CC/CE/NIT) 1.234.567.890 Funcion publica judicial
Correo electronico usuario@correo.com Funcion publica judicial
Direccion demandante Calle 50 #45-12, Bello Funcion publica judicial
Direccion demandado Carrera 70 #20-30, Medellin Funcion publica judicial
Coordenada / Secuencia anterior Referencia interna CSJ Funcion publica judicial

2.3 Datos sensibles

Datos que pueden revelar aspectos intimos del titular y cuyo tratamiento inadecuado puede generar discriminacion (Art. 5, Ley 1581/2012).

Dato Riesgo Mitigacion
Contenido completo de la tutela (campo content) Puede incluir datos de salud, religion, orientacion sexual, situacion economica, discapacidad Procesamiento 100% local, sin APIs externas, acceso restringido
Hechos narrados por el accionante Informacion medica, diagnosticos, tratamientos Almacenamiento en servidor local, cifrado en transito (HTTPS)
Pretensiones Pueden revelar condiciones de vulnerabilidad Logs sin contenido sensible, auditoria de accesos (GOB-06)

Nota: El tratamiento de datos sensibles se justifica en el ejercicio de la funcion publica judicial (Art. 6, Ley 1581/2012). No se requiere autorizacion explicita del titular cuando el tratamiento obedece a una finalidad historica, estadistica o cientifica, o cuando se trata de datos publicos por mandato legal.


3. Mapa de Datos

3.1 Base de datos principal — data/database/sherlock.db

Tabla Columnas Tipo de datos Descripcion
documents 33 columnas Publicos + Privados + Sensibles Tabla principal: metadatos, entidades NER, texto OCR, flags de secciones
corrections 6 columnas Privados Historial de correcciones: campo, valor original, valor corregido, responsable, fecha
processing_stats 12 columnas Publicos Metricas de rendimiento: tiempos OCR/NER/dedup, versiones modelo (GOB-07)
audit_events 8 columnas Publicos Eventos de auditoria: usuario, accion, recurso, detalles, IP, fecha (GOB-06)
logs 13 columnas Publicos Logs de aplicacion: nivel, modulo, mensaje, excepcion, timestamps
documents_fts 9 campos indexados Publicos + Privados Indice FTS5 para busqueda de texto completo (virtual table)

3.1.1 Detalle de documents (33 columnas)

Categoria Columnas
Identificacion id, file_path, file_name, file_hash, file_size_bytes
Clasificacion document_type, status, is_manual_entry
Contenido sensible content (texto OCR completo)
Entidades NER (privados) demandante, demandado, cedula, correo, direccion_demandante, direccion_demandado
Datos procesales (publicos) radicado, juzgado, fecha_documento, numero_acta, hora_radicacion
Formato CSJ secuencia_anterior, coordenada
Deteccion has_provisional_measure, provisional_keywords, has_hechos, has_pretensiones
Metadatos observaciones, etiquetas, imported_at, processing_cancelled_at
Timestamps created_at, updated_at

3.1.2 Configuracion de la base de datos

Parametro Valor Justificacion
Motor SQLite 3.x Despliegue local sin servidor externo
Modo journal WAL (Write-Ahead Logging) Mejor rendimiento de lectura concurrente
Foreign keys Habilitadas Integridad referencial entre tablas
Indices 15 indices (11 en documents + 4 en audit_events) Consultas eficientes

3.2 Cache — data/cache/

Archivo Contenido Tipo de datos Persistencia
tfidf_vectorizer.pkl Modelo TF-IDF entrenado Derivado (no personal) Rebuild automatico cuando >10% docs nuevos
tfidf_matrix.npz Matriz TF-IDF de documentos indexados Derivado (vectores numericos) Incremental (transform + vstack)
minhash_index.pkl Firmas MinHash para dedup rapido Derivado (hashes) Persistente, rebuild con vectorizer

Nota de seguridad: Los archivos de cache contienen representaciones numericas derivadas del texto. No es posible reconstruir el texto original a partir de estos vectores, pero un atacante con acceso podria usarlos para calcular similitudes. El acceso al directorio data/ debe estar restringido.

3.3 Archivos temporales — data/uploads/

Contenido Tipo de datos Persistencia
PDFs subidos pendientes de procesamiento Sensibles (documento original) Eliminados tras procesamiento o cancelacion (HAL-01)
Archivos de acta de reparto Publicos Eliminados tras extraccion de datos

3.4 Logs — logs/

Archivo Contenido Tipo de datos Retencion
sherlock_docs.log Logs de aplicacion (INFO+) Publicos (no contiene datos personales) 30 dias, rotacion automatica
Tabla logs en BD Logs de aplicacion (INFO+) Publicos Misma retencion que BD

Politica de logging: Los logs registran operaciones y errores del sistema, nunca el contenido de los documentos ni datos personales de los titulares. Los campos registrados son: timestamp, nivel, modulo, funcion, linea, mensaje tecnico, excepcion.

3.5 Tabla audit_events (GOB-06)

Accion registrada Datos capturados
document.process ID documento, motor OCR, tiempo
document.validate ID documento, campos corregidos
document.search Criterios de busqueda (sin resultados)
document.export Rango de fechas, cantidad exportada
document.delete ID documento
user.login / user.logout ID usuario, IP

4. Roles y Responsabilidades

4.1 Responsable del tratamiento

Campo Valor
Entidad Centro de Servicios Judiciales de Bello, Antioquia
Tipo Persona juridica de derecho publico
Responsabilidad Define las finalidades y medios del tratamiento de datos personales en el sistema
Obligaciones Garantizar los derechos ARCO, implementar medidas de seguridad, atender reclamos

4.2 Encargado del tratamiento — Operadores del sistema

Rol Responsabilidad Acciones permitidas
Operador de registro Procesar y validar documentos recibidos Subir PDFs, ejecutar OCR/NER, corregir entidades, aprobar registro
Operador de consulta Buscar y consultar documentos registrados Busqueda por radicado/cedula/nombre, ver detalle, exportar Excel
Coordinador CSJ Supervision operativa y administrativa Todas las anteriores + revision de estadisticas + gestion de usuarios

Principio de minimo privilegio: Cada operador debe tener acceso unicamente a las funcionalidades necesarias para su labor. La implementacion tecnica de roles esta prevista en GOB-05 (autenticacion con streamlit-authenticator y bcrypt).

4.3 Oficial de proteccion de datos

Campo Estado
Designacion [Pendiente — a designar por el CSJ Bello]
Funciones Supervisar cumplimiento de la politica, atender solicitudes de titulares, realizar auditorias periodicas, reportar incidentes
Reporte Directamente al Coordinador del CSJ Bello

Recomendacion: Conforme al Art. 23 de la Ley 1581/2012, se recomienda designar formalmente un oficial de proteccion de datos que supervise el cumplimiento de esta politica.

4.4 Administrador de TI

Responsabilidad Detalle
Infraestructura Mantenimiento del servidor VPS, Docker, backups
Seguridad Actualizaciones de SO, certificados HTTPS, firewall
Monitoreo Revision de logs, espacio en disco, disponibilidad
Acceso Gestion de credenciales de despliegue (GHCR, EasyPanel)

4.5 Matriz RACI

Actividad Coordinador CSJ Operador Oficial PDP Admin TI
Definir politicas de datos R/A I C I
Procesar documentos I R I -
Validar entidades NER I R I -
Atender solicitudes ARCO A R R I
Realizar backups I - - R/A
Auditar uso del sistema C I R/A C
Gestionar incidentes de seguridad A I R R
Mantener infraestructura I - - R/A

R = Responsable, A = Aprueba, C = Consultado, I = Informado


5. Ciclo de Vida del Dato

5.1 Diagrama de flujo

Ingreso          Procesamiento       Validacion        Almacenamiento     Consulta          Eliminacion
  |                   |                  |                   |                |                  |
  v                   v                  v                   v                v                  v
[PDF subido]  -> [OCR + NER]     -> [Operador         -> [BD SQLite      -> [Busqueda       -> [Segun TRD
 o Excel          Extraccion         revisa y            + FTS5             por radicado,      Rama Judicial]
 importado]       automatica         corrige             + Cache TF-IDF]    cedula, nombre]
                                     entidades]

5.2 Detalle por etapa

Etapa 1: Ingreso

Aspecto Detalle
Fuentes Carga de PDF (upload), importacion desde Excel, registro manual
Validaciones Tipo de archivo (.pdf, .xlsx), tamano maximo, hash SHA-256 para unicidad
Almacenamiento temporal data/uploads/ — eliminado tras procesamiento o cancelacion
Auditoria Evento document.upload registrado en audit_events
Gate pre-OCR Deteccion de duplicados exactos por hash SHA-256 + file_size antes de OCR

Etapa 2: Procesamiento

Aspecto Detalle
OCR Tesseract (primario) o PaddleOCR (documentos degradados), hibrido PDF nativo + OCR
NER Ensemble de 5 extractores (Marker, SpaCy, Regex, Address, Contact) + 4 validadores
Deteccion Medida provisional, secciones (hechos, pretensiones), duplicados (MinHash + TF-IDF + Entity)
Datos generados Texto OCR (content), entidades extraidas, flags de deteccion, metricas de rendimiento
Auditoria Evento document.process con metricas de tiempo y motor utilizado
Trazabilidad modelo Version SpaCy, motor OCR y configuracion dedup registrados en processing_stats (GOB-07)

Etapa 3: Validacion

Aspecto Detalle
Responsable Operador humano (nivel de autonomia IA: nulo)
Acciones Revisar y corregir entidades NER, asignar radicado y juzgado (campos manuales)
Trazabilidad Cada correccion registrada en tabla corrections (valor original, corregido, fecha)
Auditoria Evento document.validate con campos modificados
Aviso IA Banner "Datos asistidos por IA — verificar antes de guardar" (GOB-01)

Etapa 4: Almacenamiento

Aspecto Detalle
Persistencia SQLite WAL mode, foreign keys habilitadas
Indexacion FTS5 para busqueda full-text (9 campos), indices B-tree (hash, status, tipo, radicado, cedula, correo)
Cache TF-IDF incremental para deteccion de duplicados
Integridad Hash SHA-256 por documento, ON DELETE CASCADE en correcciones y stats
Backup Segun politica de la entidad (responsabilidad Admin TI)

Etapa 5: Consulta

Aspecto Detalle
Metodos Busqueda por radicado, cedula, nombre, texto libre (FTS5), filtros combinados
Exportacion Excel (.xlsx) con filtro por rango de fechas
Historial Consulta de documentos previos del mismo accionante (cedula, correo, nombre)
Auditoria Evento document.search y document.export registrados

Etapa 6: Eliminacion

Aspecto Detalle
Criterio Segun Tablas de Retencion Documental (TRD) de la Rama Judicial
Procedimiento Ver seccion 7 de este documento
Auditoria Evento document.delete registrado con ID del documento
Cascada ON DELETE CASCADE elimina correcciones y stats asociadas

6. Politica de Retencion

6.1 Documentos judiciales

Tipo de dato Ubicacion Retencion Fundamento
Documentos procesados (tabla documents) BD SQLite Segun TRD de la Rama Judicial Acuerdo PSAA06-3547 y actualizaciones
Correcciones (tabla corrections) BD SQLite Misma retencion que el documento asociado Trazabilidad de cambios
Metricas de procesamiento (processing_stats) BD SQLite Misma retencion que el documento asociado Auditoria de rendimiento

Nota: Las Tablas de Retencion Documental (TRD) de la Rama Judicial definen plazos especificos por serie documental. El CSJ Bello debe consultar las TRD vigentes para determinar los plazos aplicables a cada tipo de documento. Tipicamente, los expedientes de tutela se conservan entre 5 y 20 anos segun la serie.

6.2 Datos de auditoria

Tipo de dato Ubicacion Retencion Fundamento
Eventos de auditoria (audit_events) BD SQLite Minimo 2 anos PCSJA24-12243 Art.12, buenas practicas
Logs de aplicacion (tabla logs) BD SQLite 1 ano Soporte tecnico y debugging
Logs de aplicacion (archivo) logs/sherlock_docs.log 30 dias con rotacion automatica Espacio en disco, suficiente para diagnostico

6.3 Datos temporales y derivados

Tipo de dato Ubicacion Retencion Mecanismo de limpieza
PDFs subidos pendientes data/uploads/ Hasta procesamiento o cancelacion safe_delete_temp() automatico (HAL-01)
Actas de reparto temporales data/uploads/ Hasta extraccion de datos Limpieza en validate.py y manual_entry.py
Cache TF-IDF data/cache/ Indefinida (se reconstruye automaticamente) Rebuild cuando >10% docs nuevos
Cache MinHash data/cache/ Indefinida (se reconstruye automaticamente) Rebuild con vectorizer

6.4 Backups

Aspecto Directriz
Frecuencia Segun politica del area de TI del CSJ Bello
Medio Almacenamiento local de la entidad (no cloud externo)
Retencion de backups Segun TRD de la Rama Judicial
Responsable Administrador de TI
Cifrado Recomendado para medios extraibles

7. Procedimiento de Eliminacion

7.1 Eliminacion de documentos individuales

  1. Solicitud: El Coordinador del CSJ autoriza la eliminacion conforme a las TRD
  2. Verificacion: Confirmar que el plazo de retencion ha sido cumplido
  3. Ejecucion: Eliminar el registro de la tabla documents
  4. Cascada automatica: Las tablas corrections y processing_stats se eliminan automaticamente (ON DELETE CASCADE)
  5. FTS5: Los triggers de la base de datos actualizan automaticamente el indice de busqueda
  6. Auditoria: El evento document.delete queda registrado en audit_events
  7. Cache: Se reconstruye el indice TF-IDF en el siguiente ciclo de deteccion de duplicados

7.2 Eliminacion masiva (purga por fecha)

  1. Autorizacion: Requiere aprobacion escrita del Coordinador del CSJ y del Oficial de Proteccion de Datos
  2. Backup previo: Realizar copia de seguridad completa de la base de datos antes de la purga
  3. Ejecucion: Eliminar documentos cuya created_at exceda el plazo de retencion aplicable
  4. Verificacion: Confirmar la eliminacion y la integridad de los datos restantes
  5. Rebuild cache: Reconstruir indices TF-IDF y MinHash tras la purga
  6. Acta: Documentar la purga en acta firmada con fecha, rango eliminado y cantidad de registros

7.3 Eliminacion de archivos temporales

Escenario Mecanismo Automatico
PDF procesado exitosamente safe_delete_temp() tras pipeline Si
Procesamiento cancelado safe_delete_temp() en cancelacion Si
Acta de reparto procesada Limpieza en paginas validate/manual_entry Si
Archivos huerfanos en data/uploads/ Revision periodica manual No

Recomendacion: Implementar una tarea programada (cron) que elimine archivos en data/uploads/ con mas de 24 horas de antiguedad.

7.4 Eliminacion segura

  • Los archivos eliminados por safe_delete_temp() utilizan os.remove() (eliminacion logica del sistema operativo)
  • Para eliminacion segura de medios fisicos (disco duro del servidor), aplicar procedimientos de borrado seguro conforme a la politica del area de TI
  • La base de datos SQLite utiliza el comando VACUUM para recuperar espacio tras eliminaciones masivas

8. Controles de Acceso

8.1 Autenticacion (GOB-05)

Aspecto Estado Detalle
Mecanismo Planificado streamlit-authenticator con bcrypt
Almacenamiento de credenciales Planificado Hash bcrypt en configuracion local
Sesiones Planificado Token de sesion con expiracion configurable
Intentos fallidos Planificado Bloqueo temporal tras N intentos

Estado actual: La autenticacion (GOB-05) esta en proceso de implementacion. Mientras tanto, el acceso al sistema se restringe mediante controles de red (acceso solo desde la red interna del CSJ o VPN institucional).

8.2 Autorizacion

Nivel Permisos Usuarios
Operador Subir, procesar, validar, buscar, exportar Funcionarios de registro
Coordinador Todo lo anterior + estadisticas + gestion de configuracion Coordinador CSJ
Administrador Todo lo anterior + gestion de usuarios + acceso a logs Area de TI

8.3 Controles tecnicos implementados

Control Descripcion Referencia
Proteccion SQL injection Whitelist de campos validos, parametros preparados SEC-06
Proteccion XSS HTML escape en todas las salidas de la GUI SEC-07
Docker non-root Contenedor ejecuta como usuario sin privilegios (UID 1000) SEC-15
HTTPS Certificado TLS via EasyPanel/Let's Encrypt Infraestructura
WAL mode Previene corrupcion por accesos concurrentes BD
Foreign keys Integridad referencial entre tablas BD
Validacion de inputs Sanitizacion de cedula, validacion de fechas, tipos de archivo SEC-08, IMP-01, IMP-02

8.4 Controles organizativos

Control Responsable Frecuencia
Revision de logs del sistema Administrador de TI Semanal
Revision de eventos de auditoria Oficial de Proteccion de Datos Mensual
Cambio de credenciales Coordinador CSJ Trimestral
Revision de politicas Oficial de Proteccion de Datos Anual
Capacitacion a operadores Coordinador CSJ Al ingreso + anual

9. Respuesta ante Incidentes de Datos

9.1 Tipos de incidentes

Tipo Ejemplo Severidad
Acceso no autorizado Login con credenciales comprometidas Alta
Perdida de datos Corrupcion de la base de datos sin backup reciente Alta
Fuga de datos Acceso externo al servidor por vulnerabilidad Critica
Alteracion indebida Modificacion de entidades sin autorizacion Media
Indisponibilidad Servidor caido por mas de 4 horas Media

9.2 Protocolo de respuesta

  1. Deteccion: Identificar el incidente via logs, auditoria o reporte de usuario
  2. Contencion: Aislar el componente afectado (suspender acceso si es necesario)
  3. Evaluacion: Determinar alcance, datos afectados y numero de titulares impactados
  4. Notificacion: Informar al Coordinador del CSJ, al Oficial de Proteccion de Datos y, si aplica, a la SIC (Art. 17, Ley 1581/2012)
  5. Remediacion: Aplicar correccion, restaurar backup si es necesario
  6. Documentacion: Registrar el incidente, causas, acciones tomadas y lecciones aprendidas

10. Metricas y Monitoreo

10.1 Indicadores de gobernanza de datos

Indicador Meta Frecuencia de medicion
Documentos sin validar (status processed) < 5% del total Semanal
Tasa de correcciones NER Tendencia decreciente Mensual
Eventos de auditoria registrados vs operaciones 100% Mensual
Archivos temporales huerfanos 0 Semanal
Espacio en disco utilizado < 80% capacidad Semanal
Tiempo desde ultimo backup < 24 horas Diario

10.2 Herramientas de monitoreo

Herramienta Uso
Pagina de Estadisticas (GUI) Volumenes, tiempos promedio, distribucion por tipo
Tabla audit_events Trazabilidad de acciones
Tabla processing_stats Rendimiento del pipeline por documento
Logs rotativos Diagnostico tecnico

11. Documentos Relacionados

Documento Referencia Contenido
Politica de Tratamiento de Datos Personales docs/governance/POLITICA_TRATAMIENTO_DATOS.md Derechos ARCO, finalidades, medidas de seguridad
Evaluacion de Impacto IA docs/governance/EVALUACION_IMPACTO_IA.md Analisis de riesgos del sistema de IA
Ficha Tecnica (Model Card) docs/governance/MODEL_CARD.md Especificaciones de los modelos de IA
Plan de Pruebas Manuales planning_15_.../01_PLAN_PRUEBAS_MANUALES.md Procedimientos de prueba de seguridad

12. Aprobaciones

Rol Nombre Firma Fecha
Coordinador CSJ Bello _____ _ _
Oficial de Proteccion de Datos _____ _ _
Administrador de TI _____ _ _
Area Juridica CSJ _____ _ _

Este documento es un borrador tecnico preparado por el equipo de desarrollo. Debe ser revisado, completado y aprobado por el area juridica del Centro de Servicios Judiciales de Bello antes de su aplicacion.

Referencias: Ley 1581 de 2012, Decreto 1377 de 2013, CONPES 3975, Acuerdo PCSJA24-12243 Version: 1.0 (Borrador) — 2026-03-06