Marco de Cumplimiento — Público y Verificable

Compliance by Design

TriaCR fue construido desde el primer commit bajo un modelo de compliance, auditabilidad, trazabilidad, privacidad y gobernanza por diseño. Esta página documenta de forma pública y verificable nuestras prácticas.

🏥 Plataforma Nacional de Ensayos Clínicos · Costa Rica 📋 14 normas no negociables 🔒 Blockchain-anchored audit trail 👤 Human-in-the-loop obligatorio
Documento verificable · Compliance by Design
Cada versión de esta página tiene un hash SHA-256 registrado en el audit trail inmutable de TriaCR
v1.00.20260513.001 · SHA-256: calculando...

Qué es TriaCR

TriaCR es una plataforma de evidencia asistida por IA para investigación clínica. Su posicionamiento regulatorio es preciso e intencional:

❌ TriaCR NO es:
  • 🚫 AI diagnosis engine
  • 🚫 Autonomous clinical decision system
  • 🚫 Autonomous trial enrollment engine
  • 🚫 Medical advice platform
✅ TriaCR ES:
  • ✅ AI-assisted research evidence platform
  • ✅ Human-supervised pre-evaluation system
  • ✅ Governed longitudinal evidence platform
  • ✅ Validated research workflow system

14 Normas No Negociables

La plataforma cumple con 14 frameworks regulatorios de forma no negociable. Ninguna funcionalidad puede activarse que viole cualquiera de estas normas.

#01 · NACIONAL CR
Ley 9234
Regulación de investigación biomédica en seres humanos. Consentimiento Art.18, confidencialidad Art.24, CLOBI Art.30.
✅ Implementado
#02 · NACIONAL CR
Ley 8968
Protección de la persona frente al tratamiento de sus datos personales. SHA-256 para PII, derechos ARCO, registro Proarc.
✅ Implementado
#03 · ICH
ICH GCP E6(R3)
Buenas Prácticas Clínicas Internacionales. Audit trail §5.18, consentimiento §4.8, Trial Master File §8, roles investigadores.
✅ Implementado
#04 · FDA
21 CFR Part 11
Registros y firmas electrónicas. Audit trail inmutable, timestamps, TLS 1.3, firmas electrónicas §11.50, acceso controlado §11.10.
✅ Implementado
#05 · DATA INTEGRITY
ALCOA+
Attributable, Legible, Contemporaneous, Original, Accurate + Complete, Consistent, Enduring, Available. Todo cambio documentado.
✅ Implementado
#06 · VALIDATION
GAMP 5
Good Automated Manufacturing Practice. Categoría 4 del software. IQ/OQ/PQ, system_validation table, revalidación periódica.
✅ Implementado
#07 · INTEROPERABILITY
HL7 FHIR R4
Fast Healthcare Interoperability Resources. Exportación ResearchStudy, ResearchSubject, Consent, QuestionnaireResponse.
✅ En implementación
#08 · TERMINOLOGY
SNOMED CT
Systematized Nomenclature of Medicine. Binding de slots a códigos SNOMED. Ruteo semántico en RAG. Datos longitudinales.
✅ Implementado
#09 · TERMINOLOGY
LOINC
Logical Observation Identifiers Names and Codes. Variables clínicas medibles. Binding de mediciones a códigos LOINC.
✅ Implementado
#10 · TERMINOLOGY
ICD-10
International Classification of Diseases. Diagnósticos en eventos longitudinales. Criterios de exclusión codificados.
✅ Implementado
#11 · AI ETHICS
WHO AI Ethics
Principios éticos de IA en salud de la OMS. Todo output AI etiquetado. Human-in-the-loop obligatorio. AI nunca es autoridad final.
✅ Implementado
#12 · AI GOVERNANCE
OECD AI Principles
Transparencia, rendición de cuentas, robustez, equidad, privacidad, supervisión humana y bienestar. Log de cumplimiento OECD.
✅ Implementado
#13 · DATA STANDARDS
OMOP CDM v5.4
Observational Medical Outcomes Partnership. Tablas reales: person, visit_occurrence, condition_occurrence, drug_exposure, measurement.
✅ Implementado
#14 · PHARMACOVIGILANCE
WHO PV Standards
Farmacovigilancia WHO. Safety signals, CIOMS Form I, E2B(R3), notificación a autoridades. Tabla safety_signals.
✅ Implementado

10 Principios Fundamentales

Estos principios son arquitectónicos — afectan cada decisión de diseño, no son capas adicionales.

P1
Human-in-the-loop obligatorio
Todo output AI entra a human_review_queue. Ninguna decisión clínica puede marcarse como final sin que un investigador haya aprobado. SLA: 24h máximo.
P2
AI nunca es autoridad final
El campo is_final_decision en ai_outputs no puede ser true sin human_reviewed_by. Constraint a nivel de BD.
P3
Toda decisión auditable
Audit trail inmutable con 9 campos obligatorios: who, what, when, before, after, why, source, version. Anclado en hash-chain + AWS QLDB.
P4
Toda evidencia con provenance
Todo chunk puede responder: de dónde salió, quién lo aprobó, cuándo, qué versión es, qué source y qué pipeline lo originó. Tabla evidence_provenance.
P5
Versionado obligatorio
Chunks, embeddings, prompts, protocolos, reglas, RAG datasets, configuraciones, workflows. Formato: v1.00.YYYYMMDD.NNN.
P6
Todo acceso trazable
Tabla access_log y admin_sessions. Cada login, consulta y operación queda registrada con timestamp, IP hash, y user agent hash.
P7
Privacy by Design
CERO PII almacenado. Solo subject_uid (UUID v4). La tabla subject_registry tiene constraint que rechaza patrones de email o cédula.
P8
Todo workflow reconstruible
Tablas workflow_definitions, workflow_steps y workflow_executions. Cada ejecución tiene un execution_log append-only.
P9
AI output identificable
Etiquetas obligatorias en ai_outputs.ai_label: AI_GENERATED, AI_ASSISTED, PRE_EVALUATION_ONLY, REQUIRES_HUMAN_REVIEW.
P10
Integridad longitudinal
Tabla longitudinal_events inmutable con sequence_number garantizado. NUNCA se pierde fecha de evento, orden temporal ni relación farmacológica.

Arquitectura por Capas

Las 7 capas están estrictamente separadas. Nunca se mezcla AI generation con source evidence ni human approvals.

A
Data Layer
PostgreSQL (Supabase) — 57 tablas, RLS, schemas triacr + omop. Datos primarios de estudios, sesiones, subjects.
Implementado
B
Longitudinal Evidence Layer
longitudinal_events, cohort_definitions, subject_registry. Timeline inmutable por subject_uid. OMOP CDM v5.4.
Implementado
C
RAG Layer
source_documents, rag_chunks, rag_embeddings (pgvector), rag_dataset_versions. Retrieval con provenance completa.
En implementación
D
Workflow Layer
workflow_definitions, workflow_steps, workflow_executions. Cada flujo es reconstruible desde el execution_log.
Implementado
E
AI Interaction Layer
ai_outputs con labeling obligatorio, prompt_versions versionados, OECD AI compliance log. Motor: Vitia (RAG) + Rasa (fallback).
Implementado
F
Audit Layer
audit_trail_log (inmutable) + admin_action_log (ALCOA+) + blockchain_anchors (hash-chain) + AWS QLDB. Toda operación registrada.
Implementado
G
Human Review Layer
human_review_queue, investigator_comments (firmados 21 CFR 11.50), system_roles (8 roles ICH GCP). Obligatorio para toda decisión final.
Implementado

Blockchain e Inmutabilidad

TriaCR implementa inmutabilidad en tres capas independientes.

⛓️ Hash-Chain Local (PostgreSQL)

Cada inserción en audit_trail_log genera automáticamente un anchor en blockchain_anchors vía trigger. Cada anchor encadena el hash del registro con el hash anterior, creando una cadena criptográfica verificable.

chain_hash[N] = SHA256(chain_hash[N-1] + record_hash[N] + source_table + source_record_id + timestamp)

GENESIS → SHA256(...) → SHA256(...) → SHA256(...) → SHA256(...) → [current]

Verificación: GET /rest/v1/triacr.v_blockchain_integrity → integrity_status IN ('INTACT','GAP_DETECTED')
Evento clínicoINSERT en audit_trail_log
Trigger autofn_auto_anchor_audit()
Hash cálculoSHA256(prev+current)
blockchain_anchorschain_hash almacenado
AWS QLDBqldb_document_id (pendiente)

AWS QLDB (Quantum Ledger)

Ledger criptográfico administrado por AWS. Inmutable por definición de arquitectura — ningún usuario, ni AWS, puede modificar registros sin dejar evidencia. Cada documento tiene un digest verificable.

Ledger: triacr-ledger · us-east-1
Norma: 21 CFR Part 11 §11.10(e) · ALCOA+
Estado: ⚠️ Crear en AWS Console

Contratos de Integridad

Las restricciones de inmutabilidad están implementadas a nivel de base de datos mediante constraints y triggers que son independientes de la capa de aplicación. No pueden desactivarse vía API.

Tablas inmutables: audit_trail_log, admin_action_log, protocol_versions, longitudinal_events
Mecanismo: PostgreSQL BEFORE UPDATE/DELETE TRIGGER → RAISE EXCEPTION

Matriz de Implementación

Estado actual de implementación por componente y norma.

ComponenteNormas cubiertasTablas/FuncionesEstado
Audit Trail Inmutable21 CFR Part 11ALCOA+ICH GCP 5.18audit_trail_log, fn_protect_audit_log✅ Live
Blockchain Hash-ChainALCOA+21 CFR Part 11blockchain_anchors, anchor_to_chain()✅ Live
AWS QLDB Ledger21 CFR Part 11ALCOA+triacr-ledger · us-east-1⏳ Crear
8 Roles RegulatoriosICH GCP 4.1Ley 9234system_roles, Cognito Pool✅ Live
Privacy by DesignLey 8968HIPAAGDPRsubject_registry, SHA-256 PII✅ Live
AI Output LabelingWHO AI EthicsOECD AIai_outputs, human_review_queue✅ Live
Human-in-the-loopWHO AI EthicsICH GCPhuman_review_queue, trigger auto✅ Live
Versionado de ProtocolosALCOA+ICH GCP 6.0protocol_versions (append-only)✅ Live
SNOMED/LOINC/ICD-10 BindingsSNOMED CTLOINCICD-10snomed_bindings, loinc_bindings, icd10_bindings✅ Live
OMOP CDM v5.4 RealOMOP CDMHL7 FHIR R4omop.person/visit/condition/drug/measurement✅ Live
Longitudinal EventsOMOP CDMICH GCPlongitudinal_events (inmutable)✅ Live
PharmacovigilanceWHO PVICH E2Asafety_signals, CIOMS Form I⚠️ Parcial
RAG LayerICH GCPALCOA+rag_chunks, rag_embeddings (pgvector)⚠️ En implementación
GAMP 5 ValidationGAMP 521 CFR Part 11system_validation (IQ/OQ/PQ)📋 Pendiente
CLOBI/IRB ApprovalLey 9234 Art.30Registro ante CLOBI📋 Pendiente

Formato de Versionado

Todos los artefactos versionados usan un formato estándar consistente.

v{major}.{minor:02d}.{YYYYMMDD}.{seq:03d}

Ejemplo: v1.00.20260513.001 — Major 1, Minor 00, Fecha 13 mayo 2026, Secuencia 001

Aplica a: chunks, embeddings, prompts, protocolos, RAG datasets, fine-tuning datasets, configuraciones AI, workflows, reglas de elegibilidad. Implementado en función triacr.generate_version_code().

Contacto Regulatorio

🏥 Investigación Clínica

Para consultas sobre protocolos activos, criterios de elegibilidad o participación en estudios.

estudios@triacr.org
🔒 Privacidad y Datos

Ejercicio de derechos ARCO (Ley 8968 CR), consultas sobre tratamiento de datos, solicitudes de eliminación.

privacidad@triacr.org
📋 Cumplimiento Regulatorio

Auditores CLOBI, monitores CRO, autoridades regulatorias. Acceso al portal de cumplimiento documentado.

compliance@triacr.org