SV Documentación de laboratorios
Abrir Playground · Panel de pruebas

DOCUMENTACIÓN / CONTRATO EXPERIMENTAL 0.2

Contrato experimental 0.2

Estado de ejecución

24 PASS · 0 FAIL · 0 ERROR · 0 BLOCKED. Repetición #9 correcta: 23 comprobaciones de fase 0.2 y un control, más 17 testigos iniciales y 7 comprobaciones del controlador. La ejecución #8 conserva un ERROR A04 por carrera de limpieza; la corrección está documentada y probada. Las garantías completas y el enlace con SV permanecen abiertos. La mención a candidato corresponde al estado de entrada del documento. Consultar resultados por testigo.

Fecha: 6 de septiembre de 2026. Estado de entrada: candidato implementado pendiente de ejecución. Sede: laboratorio-de-infraestructura-SV/, rama lab/infraestructura-sv-2026-09-06 del repositorio privado SV-matematica-semantica-cuaternaria.

1. Identidad, precedente y alcance

Sucesor experimental del contrato 0.1. Conserva íntegros el prototipo anterior, los registros 000–006 y el incumplimiento A05 documentado en registro 005, corte a70998393c0d8194ad9d828639f7cc46eda6d5d1. La fuente nueva reside en prototipo-v02/; sus comprobadores, en herramientas/fase02.py.

Se aplica el reparto de responsabilidades de los Pilares y restricciones de diseño, §§2, 4–7 y 10, y del acta de arquitectura de software del mismo corte; registros RETP-2026-072/073. Las elecciones concretas de bus, frontera, anfitrión e integración siguen abiertas. Esta realización no modifica ese reparto ni demuestra propiedades del núcleo.

Objeto: probar transporte subordinado, compromiso de una fila SQLite, control local independiente del bus y límites materiales acotados. No contiene sv_core, IR, álgebra, células de dominio, agentes materiales ni consejo de IA. Todas las entradas y credenciales son sintéticas. La versión 2 del mensaje no es una versión de ABI SV.

2. Componentes y autoridad

ComponenteRealizaciónPoder y límite
Cliente de datosProceso Rust; clave de firma de datosSella una petición experimental. No firma control válido. No demuestra consentimiento humano.
BusProceso Rust con UID nobody y no-new-privsTransporta bytes cifrados; puede alterarlos, descartarlos, repetirlos o bloquearlos. No posee claves ni estado protegido.
Receptor de datosTCP local; cuatro atenciones simultáneasVerifica sobre y firma; aplica contrato y precondiciones; compromete en SQLite.
Receptor de controlSocket Unix bajo directorio 0700 y socket 0600; dos atencionesComparte el estado del receptor; exige firma distinta. Consulta, cancela o revoca. Es local al equipo receptor.
Controlador de ensayoPython y credenciales ficticiasPrepara entradas, provoca fallos y consulta SQLite independientemente del bus. Pertenece al perímetro confiable.

El control separado es una hipótesis arquitectónica sometida a prueba, no una garantía ya adquirida. No establece gestión de claves por participante, control remoto, separación respecto de root, kernel o hipervisor, ni independencia frente a una caída total del receptor. El mismo fallo del sistema operativo o del almacenamiento puede afectar a ambos planos.

3. Mensajes y ligaduras

Request contiene exactamente version=2, target=synthetic-ledger, id no vacío de hasta 100 bytes y una operation de variante cerrada. Campos extra y duplicados se rechazan por deserialización estricta.

VarianteCampos propiosCanal y firma
effectrevision, effect de hasta 65.536 bytesTCP; clave de datos
cancelrequest_id, request_digest de 32 bytesSocket local; clave de control
statusrequest_id, request_digest de 32 bytesSocket local; clave de control
revokeNingunoSocket local; clave de control

La huella del sujeto es SHA-256 de la serialización tipada de la petición de efecto completa. Incluye versión, destino, identidad, revisión y contenido. La firma Ed25519 cubre la petición completa con contexto exclusivo de versión 2. AES-256-GCM cifra petición y respuesta con contextos AAD diferentes; conserva el modelo criptográfico experimental y las dependencias de 0.1. Un recibo firmado se liga a la huella de la petición que responde, incluida una petición de control.

La serialización tipada del protocolo no acredita la serialización canónica SV. El cifrado usa nonces aleatorios; no se exige igualdad de bytes del transporte cifrado ni se introduce aleatoriedad en una semántica nuclear.

4. Estados observables y transacciones

SituaciónRespuesta auténticaEfecto permitido
Petición de efecto válida, revisión coincidente y capacidadCOMMITTEDUna fila y avance de revisión dentro de la misma transacción
Mismo identificador y mismo contenido ya comprometidosALREADY_COMMITTEDNinguno nuevo
Identificador comprometido con contenido distintoID_CONFLICTNinguno
Revisión distinta de la vigenteREVISION_CONFLICTNinguno
Cancelación del sujeto exacto anterior al compromisoCANCELLEDSe conserva una marca de cancelación; su posterior entrega no ejecuta el efecto
Cancelación del sujeto exacto posterior al compromisoALREADY_COMMITTEDNo revierte ni borra el efecto
Consulta sin efecto ni cancelación del sujeto exactoNOT_FOUNDNinguno; no promete que una entrega futura no ocurra
Revocación global de esta instalación ficticiaREVOKEDImpide nuevas admisiones de efectos; no borra los anteriores
Capacidad de registros agotadaLIMITNinguno nuevo; reintentos de estados existentes siguen consultables
Transacción de escritura no obtenida durante 250 msBUSY, revisión ausenteNo se declara cancelación ni compromiso
Sin recibo completo y verificadoEstado desconocido para el clienteNo equivale a éxito, cancelación, U o ausencia de efecto

La marca de cancelación se liga al par identificador–huella, incluso si todavía no llegó la petición. Cancelar otra huella del mismo identificador no cancela el contenido legítimo. La autoridad de control puede reservar hasta 64 marcas en esta instalación; no se presume un régimen de gobierno real.

Deduplicación, comprobación de revisión y revocación, consulta de cancelación, efecto y avance de revisión se resuelven con transacción SQLite IMMEDIATE, WAL y synchronous=FULL. El compromiso de esa transacción es el punto de orden material del ensayo. Una operación posterior no invalida retrospectivamente una anterior. La revocación tiene precedencia sobre la respuesta a entregas de efecto; la consulta de control conserva visibilidad del efecto ya registrado.

Las barreras before-tx y before-commit existen únicamente en variantes de ensayo declaradas, bajo el directorio protegido. La primera ocurre después de verificar la firma; la segunda, dentro de la transacción y antes del compromiso. Expiran a los cinco segundos y no pueden activarse mediante el mensaje. Permiten observar carreras concretas; no constituyen causalidad general ni rendimiento ordinario.

5. Plazos y consumo

Criterios físicos de esta tanda: recibo legítimo autenticado en no más de dos segundos junto a una conexión lenta; cuatro lectores sin completar cerrados en no más de 2,5 segundos observados desde su apertura, incluyendo margen de planificación externo de 0,5 segundos. No son un SLO de producción ni una tolerancia de reproducción semántica.

6. Oráculos y aceptación

La primera tanda de 17 testigos vuelve a ejecutarse sobre 0.1. NA05-baseline exige que el nuevo criterio positivo detecte en ese binario el incumplimiento conocido; un PASS del control significa defecto detectado y conserva observed_compliance=FAIL.

Un PASS de A05-positive exige conjuntamente recibo verificado, estado COMMITTED, tiempo dentro del límite, exactamente un efecto independiente y reintento ALREADY_COMMITTED. La mera ausencia del patrón anterior no basta.

La matriz MAPA_PROTOTIPO_0_2.md vincula obligaciones y casos. Todos deben producir su resultado esperado; FAIL, ERROR, ausencia de ejecución y bloqueo no cuentan como superación. Una construcción correcta tampoco acredita seguridad. Los resultados finales se incorporan con su propio registro, sin modificar el 005.

7. Dependencias y terceros

Servicios, API remotas y conectores externos requeridos durante la ejecución del prototipo: cero. Datos viajan por TCP local; control por socket local; persistencia por SQLite incorporado. No se añade una dependencia Cargo respecto de 0.1.

Las siete dependencias directas conservadas cumplen funciones locales: aes-gcm (cifrado), ed25519-dalek (firma), rand (nonces y credenciales ficticias), sha2 (huellas), serde y serde_json (contrato estricto), rusqlite (transacción). Se fijan mediante Cargo.lock; no se confunden bibliotecas locales con servicios de terceros. La lista transitiva exacta y sus identidades residen en el archivo de bloqueo; fijarlas no constituye auditoría de su seguridad.

GitHub Actions, las descargas del compilador y el registro de paquetes son dependencias de construcción y ensayo en este entorno, no del funcionamiento del prototipo construido. Pages es la superficie documental. No se incorpora autenticación comercial, servicio de mensajería, base de datos remota, telemetría externa ni API de IA. La elección definitiva de componentes y licencias sigue pendiente para una distribución de producción.

8. Condición de salida de esta fase

La fase entrega contrato, fuentes, matriz de pruebas, ejecución identificada, evidencia preservada y proyección pública concordante. Su dictamen se limita a la realización y al adversario ensayados. Las tres garantías completas, la arquitectura definitiva, el contrato F, K2, la ABI y el cierre nuclear no se dan por resueltos por una tanda correcta.