Files
context-manager/docs/LOG.md

3.1 KiB

Schema LOG

Log inmutable de mensajes del sistema TZZR.

Tabla 1: log.messages

Registra todos los mensajes entre usuarios y agentes IA.

Campo Tipo Descripción
id BIGSERIAL Índice incremental
hash CHAR(64) SHA256 único del mensaje
session_hash CHAR(64) SHA256 de la sesión
thread_hash CHAR(64) SHA256 del hilo (nullable)
owner_id CHAR(64) Emisor del mensaje (→ ply)
players_id CHAR(64)[] Receptores (→ ply)
master_player CHAR(64) Líder/coordinador (→ ply, nullable)
role TEXT Rol del emisor
content TEXT Contenido del mensaje
attachments JSONB Adjuntos
prev_hash CHAR(64) Hash mensaje anterior (cadena integridad)
hashtags CHAR(64)[] Etiquetas (→ hst)
flag_id CHAR(64) Jurisdicción (→ flg, nullable)
master_item_id CHAR(64) Item principal (→ itm, nullable)
item_id CHAR(64)[] Items relacionados (→ itm)
loc_id CHAR(64) Ubicación (→ loc, nullable)
ambient JSONB Contexto ambiental (nullable)
created_at TIMESTAMPTZ Timestamp

Tabla 2: log.message_refs

Relaciona cada mensaje con su contexto y conocimiento.

Campo Tipo Descripción
id BIGSERIAL Índice incremental
message_hash CHAR(64) Mensaje que se envía
ref_hash CHAR(64) Referencia (mensaje, registro contable, secretaría)
ref_type ENUM context, accountant, secretary
position INT Orden de la referencia
thread_hash CHAR(64) Hilo (nullable)

Tipos de referencia

  • context: Mensajes anteriores incluidos como contexto
  • accountant: Registros de libros contables (conocimiento)
  • secretary: Registros de secretaría (conocimiento)

Inmutabilidad

Ambas tablas:

  • INSERT: Permitido
  • UPDATE: Bloqueado por trigger
  • DELETE: Bloqueado por trigger

Cadena de integridad

msg1.hash = SHA256(msg1)
msg2.prev_hash = msg1.hash
msg2.hash = SHA256(msg2)
...

Primer mensaje de sesión: prev_hash = NULL

Índices

log.messages

  • session_hash - Mensajes de una sesión
  • thread_hash - Mensajes de un hilo
  • owner_id - Mensajes enviados por
  • master_player - Mensajes con líder
  • prev_hash - Cadena de integridad
  • created_at - Orden cronológico
  • hashtags (GIN) - Búsqueda por etiquetas
  • players_id (GIN) - Búsqueda por receptores
  • item_id (GIN) - Búsqueda por items
  • flag_id - Filtrar por jurisdicción
  • loc_id - Filtrar por ubicación

log.message_refs

  • message_hash - Referencias de un mensaje
  • ref_hash - Uso de una referencia
  • ref_type - Filtrar por tipo
  • thread_hash - Referencias de un hilo

Relaciones externas (Sistema de Componentes TZZR)

  • owner_id, players_id, master_playerply (Players)
  • hashtagshst (Hash Semantic Tagging)
  • flag_idflg (Flags/Jurisdicciones)
  • master_item_id, item_iditm (Items)
  • loc_idloc (Locations)
  • ref_hash (context) → log.messages
  • ref_hash (accountant) → libros contables
  • ref_hash (secretary) → registros secretaría