Skip to content

PointSav Documentation

The engineering library for the PointSav platform — operating systems and services for regulated businesses that own their data, their AI, and their record-keeping outright. Where the monorepo holds the code, this wiki holds the reasoning: architecture, services, security, and the governance commitments that bind future development.

Atomicidad del buzón — Escritura exclusiva con flock e idempotencia por msg-id

Las sesiones se comunican añadiendo mensajes al principio de buzones en archivos planos situados en .agent/inbox.md y .agent/outbox.md. Los mensajes llevan un sobre YAML (from, to, re, created, status, msg-id opcional) seguido de un cuerpo de texto libre. Los mensajes más recientes aparecen al inicio, de modo que la sesión concentradora que lee una bandeja de salida ve la actividad más reciente primero.

Puntos clave

  • mailbox-prepend adquiere un bloqueo exclusivo de flock antes de cualquier lectura-modificación-escritura. Dos prepends concurrentes se serializan en lugar de competir — el llamador más lento espera hasta 30 segundos y luego procede cuando el primero libera el bloqueo.
  • Idempotencia por msg-id: si el mensaje lleva un campo msg-id:, el script analiza las primeras 200 líneas del destino en busca de una entrada existente con ese id y omite el prepend si la encuentra. Un temporizador que se activa dos veces o un operador que reintenta un script no enviará el mensaje dos veces.
  • El modo de fallo sin esta disciplina es silencioso. Un mensaje perdido simplemente nunca llega — no se muestra ningún error ni al remitente ni al destinatario. El script auxiliar existe precisamente porque la pérdida silenciosa de datos es peor que un breve retraso de serialización.
  • El script es el punto de cumplimiento. La atomicidad solo se mantiene cuando todas las sesiones y la automatización llaman a mailbox-prepend en lugar de escribir directamente en el archivo de buzón.

Prepend serializado con flock

El problema de atomicidad: dos sesiones que añaden al mismo buzón sin coordinación producen la condición de carrera clásica de leer-modificar-escribir. La sesión A lee el archivo actual, añade su mensaje y escribe de vuelta. La sesión B hace lo mismo simultáneamente. El que escribe último gana; el otro mensaje se pierde. Esto es reproducible con sub-agentes de IA en paralelo; la concurrencia entre usuarios lo hace inevitable.

El script auxiliar mailbox-prepend resuelve esto con flock. Toma la ruta del buzón de destino, deriva una ruta de bloqueo para buzones de alcance de archivo, y adquiere un bloqueo exclusivo con un tiempo de espera de 30 segundos antes de realizar la lectura-modificación-escritura. Dos llamadas simultáneas se serializan en lugar de colisionar.

Idempotencia por msg-id y la razón de la pérdida silenciosa

Una segunda salvaguarda: idempotencia por msg-id. Si el cuerpo del mensaje contiene un campo msg-id:, el script analiza las primeras 200 líneas del archivo de destino en busca de una entrada existente con el mismo id y omite la adición si la encuentra. Esto significa que un script que se reintenta — un temporizador que se activa dos veces, un operador que lo vuelve a ejecutar, un hook que falla y reintenta — no enviará el mensaje dos veces. La ventana de 200 líneas es suficientemente generosa para detectar duplicados del mismo día sin hacer el análisis costoso en archivos grandes.

Esto es un envoltorio de dos líneas alrededor de flock y grep. El modo de fallo sin él es silencioso — un mensaje perdido simplemente nunca llega, y el remitente no tiene ninguna indicación. Consolidar esta disciplina en un script compartido que tanto las sesiones como la automatización realmente llaman es más barato que construir una cola más sofisticada.

Véase también

Cite this record: /wiki/mailbox-atomicity — revision 45ad8281, last updated 25 May 2026.

Important Information

Estructura corporativa. PointSav Digital Systems ("PointSav") es actualmente un nombre comercial de Woodfine Capital Projects Inc. ("Woodfine"), con previsión de convertirse en una subsidiaria de propiedad absoluta de Woodfine tras su incorporación. PointSav no ofrece, vende ni solicita por sí mismo valor alguno. Toda oferta de valores asociada a las soluciones inmobiliarias de tenencia directa de Woodfine se realiza exclusivamente por parte de Woodfine, y únicamente por medio del Memorando de Colocación Privada aplicable.

Sin asesoramiento de inversión. El contenido de este wiki se ofrece con fines de ingeniería, operativos, de investigación y de desarrollo. Nada de lo que figura en este wiki constituye asesoramiento de inversión ni una solicitud para invertir en ninguna sociedad o solución de tenencia directa de Woodfine.

Propiedad intelectual. El nombre, el nombre comercial, el logotipo y las marcas de PointSav, junto con todos los productos, servicios y ofertas actuales y futuros de las marcas PointSav y Totebox — así como el software, el código fuente, la documentación, el sistema de diseño y todos los materiales relacionados — son propiedad de Woodfine y sus filiales, salvo los componentes identificados como de código abierto. No se otorga ningún derecho salvo el expresamente establecido en una licencia o acuerdo por escrito. El aviso de marcas completo aparece en el pie de página de cada página de este sitio.

Componentes de código abierto. Algunas partes de la plataforma se ofrecen bajo licencias de código abierto permisivas identificadas en el repositorio correspondiente. El uso de esos componentes se rige por los términos de sus respectivas licencias.

Sin garantía; uso informativo. El contenido de este wiki se ofrece únicamente con fines informativos generales y no constituye una declaración, garantía ni compromiso respecto de la funcionalidad, disponibilidad, precio o hoja de ruta de ningún producto. Algunos artículos describen características, capacidades e hitos planificados o previstos — el lenguaje como "planificado", "previsto", "objetivo", "puede" y "esperado" marca este contenido prospectivo, que está sujeto a cambios y no constituye un compromiso respecto del rendimiento futuro.

Confidencialidad. Cuando un artículo describiría un detalle operativo o de implementación no destinado a divulgación pública, ese artículo no se publica en este wiki. El contenido aquí es documentación de ingeniería de uso general, no configuración específica de clientes.

Jurisdicción. Woodfine Capital Projects Inc. está constituida en Columbia Británica, Canadá. Las referencias a la Sovereign Data Foundation en este wiki describen una iniciativa planificada o prevista únicamente, no una titular de capital actual ni un órgano de gobierno activo.

Cambios a este aviso. PointSav podrá actualizar este aviso periódicamente; rige la versión publicada en esta página.

No es un sistema de presentación de documentos. Este wiki no es un sistema de presentación de valores, un repositorio de divulgación electrónica ni un sustituto de SEDAR+ ni de ningún otro sistema de presentación regulatorio. Las presentaciones formales de valores se realizan a través del sistema de presentación regulatorio correspondiente, no a través de este wiki.

Descargo completo. Este aviso complementa, y no sustituye, el artículo completo de Avisos Legales. En caso de cualquier conflicto, prevalece el artículo de Avisos Legales.

Read the full disclaimer →