{"block_close_oss.c33fd1fe9c":"Comunidad y ecosistema","open-source-selvedge.hero-broker.no":"No","open-source-selvedge.a5e3c573e9":"Compila cargas de trabajo BNN de Kera para el runtime de Selvedge.","open-source-selvedge.d5f412e831":"Kera","open-source-selvedge.fe0a091fdb":"Productos","open-source-selvedge.7dfa2cfe61":"Procedencia de eventos con cadena de hash para eventos del sistema.","open-source-selvedge.1aa2f31ee7":"Ledger","open-source-selvedge.6cc3364a24":"Evidencia de ejecución","open-source-selvedge.ff130daae8":"Certificados de prueba de razonamiento, no transcripciones de ejecución.","open-source-selvedge.df84637182":"AION","open-source-selvedge.d5d6e83bf2":"Seguir explorando","open-source-selvedge.75e393a1ac":"Explorar el proyecto","open-source-selvedge.f9743247fa":"Leer la documentación","open-source-selvedge.ef0fd4ccef":"Inspeccionar el registro de ejecución","open-source-selvedge.e971b9cac2":"Selvedge se publica en la cuarta ronda del programa de lanzamiento de la fundación, después de Knot y Ledger. Una vez publicado, prueba un módulo WASM en un sandbox y reproduce el sobre de prueba por ti mismo.","open-source-selvedge.aa91c05f23":"Verifica el resultado, no el código","open-source-selvedge.90e40d5043":"Empezar","open-source-selvedge.de6848949f":"Selvedge","open-source-selvedge.650fabe787":"Código abierto","open-source-selvedge.0a2d263d08":"OSS / Selvedge","open-source-selvedge.9e2fe6d1ab":"Sandbox de denegación por defecto","open-source-selvedge.6b5eb5323e":"Denegación por defecto","open-source-selvedge.9940fac0fc":"Superficie de ejecución de herramientas del Model Context Protocol.","open-source-selvedge.d19313d340":"Servidor de agentes","open-source-selvedge.bb1d021694":"Ed25519 sellado, transcripción SHA3-256, verificación sin conexión.","open-source-selvedge.1ee471ad95":"Sobre de prueba","open-source-selvedge.7e4e340a74":"Redes neuronales binarias de IR de grafo, JIT e intérprete.","open-source-selvedge.0743169b8b":"Motor Kera","open-source-selvedge.90ba359bc5":"Runtime de modelo de componentes, host WASI 0.2 Preview 2.","open-source-selvedge.90aecd8ec1":"Motor Wasmtime","open-source-selvedge.ed07ad60bf":"Superficie verificada","open-source-selvedge.8ec9f20dc2":"QUÉ SE INCLUYE","open-source-selvedge.efe0c41bcb":"KERA","open-source-selvedge.4e946026a7":"WASM","open-source-selvedge.8e4939f0ca":"RUST 2024","open-source-selvedge.c968638a6e":"TRANSCRIPCIÓN SELLADA","open-source-selvedge.201a4da5a0":"Selvedge ejecuta código no confiable dentro de un sandbox con límites de capacidades y registra la ejecución en una transcripción sellada. El aislamiento limita lo que el código puede tocar; la transcripción muestra lo que realmente sucedió y se puede reproducir para revisión.","open-source-selvedge.3ca6c6a37b":"Determinista por defecto","open-source-selvedge.a55e5a1229":"Capacidades limitadas","open-source-selvedge.fca77b7e3a":"La ruta de ejecución sellada","open-source-selvedge.8faedce292":"Cuatro runtimes","open-source-selvedge.2adb968c4a":"Mismo sobre","open-source-selvedge.0bf361df63":"Servidor del Model Context Protocol para herramientas de agentes.","open-source-selvedge.21593b807a":"MCP","open-source-selvedge.1df8dd458e":"Runtime de agente de larga duración con cola.","open-source-selvedge.329cb8b6ba":"Servicio","open-source-selvedge.8b3b7e65eb":"build, verify, run, replay. Compatible con CI.","open-source-selvedge.700b401ca5":"CLI","open-source-selvedge.fb075836bd":"Vinculado a tu aplicación como crate.","open-source-selvedge.0fd17b94c9":"Integrado","open-source-selvedge.3512486e9f":"Dónde se ejecuta Selvedge","open-source-selvedge.d53f3da0a7":"POSTURA","open-source-selvedge.f28d7de3d9":"REGULADO","open-source-selvedge.a21096cb07":"RUNTIME BNN","open-source-selvedge.0fcaf629eb":"PLUGINS","open-source-selvedge.32e4cd84f3":"HERRAMIENTAS DE AGENTES","open-source-selvedge.78a8dfaf02":"Las herramientas de agentes, los plugins de terceros, la inferencia BNN de Kera y el trabajo con datos regulados entran todos por el mismo límite controlado. Cada runtime produce el mismo sobre de evidencia sellado, por lo que los cambios de despliegue no cambian la historia de auditoría.","open-source-selvedge.e9f7d0cf54":"cumple con cargas de trabajo reguladas","open-source-selvedge.8d5a043fd8":"Dónde el código no confiable","open-source-selvedge.14a29ba383":"Casos de uso","open-source-selvedge.f86aae8de8":"La ruta crítica se mantiene con vanilla","open-source-selvedge.224a8949e8":"Arranque en frío, la victoria principal","open-source-selvedge.36998c51d5":"Hash de transcripción, SIMD.","open-source-selvedge.41366a8f09":"1 a 3 us","open-source-selvedge.01dbc6d47c":"SHA3-256, 1 KB","open-source-selvedge.bd0fbf08cc":"Firma Ed25519 5-15 us, verificación 15-30 us.","open-source-selvedge.1f3e8a79be":"10 a 20 us","open-source-selvedge.671d8813b1":"Creación de prueba AION","open-source-selvedge.9f10fa1bbe":"Arranque del proceso incluido, 8-9 veces más rápido.","open-source-selvedge.4258dd2386":"1,58 a 1,70 ms","open-source-selvedge.919b634e80":"CLI en frío, Kera JIT","open-source-selvedge.2d3bb21f5e":"Módulo de cómputo, frente a 1187-1494 us en vanilla.","open-source-selvedge.bd8403776f":"15 a 21 us","open-source-selvedge.cbb71692d2":"Arranque en frío, API","open-source-selvedge.6cd2cd614d":"De BENCHMARKS.md","open-source-selvedge.48109cc196":"BANCO DE PRUEBAS SELVEDGE","open-source-selvedge.d9074c5c77":"CRITERIO","open-source-selvedge.7084ceb2f1":"AION 10-1000x","open-source-selvedge.b0437f28f6":"KERA JIT EN CALIENTE 2x","open-source-selvedge.65e2c56be9":"EN FRÍO 62-243x","open-source-selvedge.928af32bc7":"Selvedge Wasmtime arranca de 62 a 243 veces más rápido que Wasmtime vanilla a nivel de API. La contrapartida honesta es la ruta en caliente: vanilla mantiene la llamada repetida de 22 ns, y el modelo de componentes que produce el transcript corre más lento allí. Kera JIT es 2 veces más rápido en caliente para trabajo de grafos. Las cifras provienen de BENCHMARKS.md del repositorio.","open-source-selvedge.da589b16da":"Elige el runtime según la carga de trabajo","open-source-selvedge.c296a030fe":"El arranque en frío es la ventaja","open-source-selvedge.63c9045599":"Rendimiento","open-source-selvedge.7b63c4cb70":"Concedido por llamada","open-source-selvedge.abf0c49614":"Denegación por defecto","open-source-selvedge.cce9f81b05":"Cada decisión de puerta se registra y se aplica hash.","open-source-selvedge.5bcd602254":"Transcript","open-source-selvedge.7dc2595377":"max_execution_time_ns, separado del fuel.","open-source-selvedge.e909add520":"Límite de tiempo real","open-source-selvedge.214f86c442":"max_memory_bytes, 256 MiB por defecto, techo de 4 GiB.","open-source-selvedge.89095dddd2":"Límite de RAM","open-source-selvedge.0f69ea8c8d":"max_instructions, el agotamiento detiene la carga de trabajo limpiamente.","open-source-selvedge.7171161439":"Presupuesto de cómputo","open-source-selvedge.71f2051042":"Reloj, aleatorio, sistema de archivos, red, entorno, stdio, proceso, personalizado. Denegación por defecto.","open-source-selvedge.ca09c54bff":"Capacidades","open-source-selvedge.f767a4311b":"Protecciones por ejecución","open-source-selvedge.369abb529c":"NIVELES DE POLÍTICA","open-source-selvedge.64269f9bd2":"TIME","open-source-selvedge.f4b1c471ce":"MEMORIA","open-source-selvedge.d8a8b58d7f":"FUEL","open-source-selvedge.1a8d3ca502":"Un conjunto de capacidades de denegación por defecto controla cada llamada al host en ocho dominios WASI. Los límites de recursos en memoria, fuel y tiempo acotan el comportamiento descontrolado. Cada decisión de puerta y lectura de recursos está en el transcript.","open-source-selvedge.770a668e0e":"Límites de recursos. Auditoría","open-source-selvedge.8a54e91228":"Capacidades","open-source-selvedge.bb9cf14180":"Política","open-source-selvedge.26fe8fb85c":"Recibos frente a afirmaciones","open-source-selvedge.e08283960c":"Verifica, no confíes","open-source-selvedge.82de28b689":"Necesitas evidencia criptográfica de lo que hizo la carga de trabajo, no confianza en el runtime.","open-source-selvedge.858b0d2d19":"Confía en el runtime, no en la carga de trabajo","open-source-selvedge.ba959133c8":"Permitir sistema de archivos, denegar red, pero sin registro por llamada en el rastro de auditoría.","open-source-selvedge.ff6fdd664b":"Permitir o denegar de forma general","open-source-selvedge.f58bb04b13":"FP y tiempo real se filtran. La reproducción produce aproximadamente la misma salida, no exactamente.","open-source-selvedge.a1d55a1dad":"La reproducción se desvía","open-source-selvedge.f7afaaab99":"sin recibo","open-source-selvedge.4677f31dd1":"Un sandbox detiene la fuga. No demuestra que la carga de trabajo se comportó correctamente dentro.","open-source-selvedge.6f3134b990":"La contención no es corrección","open-source-selvedge.782cef5501":"Cuatro brechas estructurales","open-source-selvedge.056dcf1841":"POR QUÉ LOS SANDBOX FALLAN","open-source-selvedge.f1358eac2f":"POLÍTICA GENERAL","open-source-selvedge.2bf9ef4df8":"NONDETERMINISTA","open-source-selvedge.1c613acc7e":"SIN PRUEBA","open-source-selvedge.d38e80798b":"Los sandbox convencionales evitan que el código malo escape. No producen un registro de lo que el código realmente hizo dentro. Cuando un auditor pregunta, la respuesta es una afirmación, no evidencia.","open-source-selvedge.61920a517c":"No demuestran","open-source-selvedge.5a88fbb30e":"Los sandbox contienen","open-source-selvedge.8a9400005c":"Un sandbox no explica la ejecución","open-source-selvedge.7c46a5978b":"Selvedge captura exactamente lo que se ejecutó, de entrada a salida, cada llamada al host sellada.","open-source-selvedge.3e663e9467":"Selvedge es transcript de ejecución","open-source-selvedge.a5be60731e":"Ledger registra lo que ocurrió en un sistema. Selvedge registra qué código se ejecutó.","open-source-selvedge.2c3e446b87":"Ledger es procedencia de eventos","open-source-selvedge.de792742e8":"AION emite certificados sobre pasos de resolución, no sobre ejecuciones completas.","open-source-selvedge.ced73ef9a5":"AION es prueba de razonamiento","open-source-selvedge.0d9a7a065c":"Cómo se diferencia Selvedge de AION y Ledger","open-source-selvedge.d7ffcdc87b":"Las mismas entradas más el mismo sobre significan la misma salida, siempre.","open-source-selvedge.7d8134cc1f":"Reproducción idéntica byte a byte","open-source-selvedge.75fcf02b02":"Una época fija y un PRNG ChaCha20 con semilla reemplazan el tiempo del host y la entropía.","open-source-selvedge.92a47286b6":"Reloj virtual, RNG con semilla","open-source-selvedge.13c1f9cde6":"El cálculo interno, el almacenamiento y la acumulación usan representaciones binarias, enteras, de punto fijo o adaptativas enteras/de punto fijo. El punto flotante solo se acepta en un límite externo declarado y se convierte explícitamente antes de comenzar el trabajo interno; no hay respaldo interno de punto flotante. El reloj virtual permanece fijo, por lo que la reproducción produce los mismos bytes.","open-source-selvedge.a33c607874":"Sin flotantes internos, sin relojes","open-source-selvedge.81ec58648a":"Ejecución determinista por defecto","open-source-selvedge.4b447f3a6e":"El verificador reproduce sin conexión con los bytes del módulo y el sobre únicamente.","open-source-selvedge.17d120d8bb":"Reproducible","open-source-selvedge.6e95469aa0":"Firma ed25519 sobre la raíz del sobre. No prosa.","open-source-selvedge.6e3665d85f":"Firmado","open-source-selvedge.bc61f0c3fe":"Cada llamada al host se incluye en el hash de la cadena. Las ediciones rompen la cadena.","open-source-selvedge.aa5cba1a92":"Encadenado por hash","open-source-selvedge.04c7525615":"Por qué la transcripción es diferente de un registro","open-source-selvedge.6db180787e":"Mismo flujo en cada ejecución. La reproducción es mecánica.","open-source-selvedge.69aca853c2":"Prueba AION","open-source-selvedge.ff8fc1c58a":"Sello","open-source-selvedge.0ae62541bc":"Cadena SHA3","open-source-selvedge.873507a022":"Hash","open-source-selvedge.b1b392607d":"Ejecutar","open-source-selvedge.3e3f943d84":"Capacidades fijadas","open-source-selvedge.ddcb77ff76":"Cargar","open-source-selvedge.71faf343ce":"Transcripción de ejecución","open-source-selvedge.952be7ff16":"Prueba AION emitida, firmada con ed25519, sobre listo para enviar.","open-source-selvedge.be1a4b336f":"Cada llamada al host y su resultado se incluyen en el hash de una cadena SHA3-256.","open-source-selvedge.83dcc459e8":"Wasmtime o Kera se ejecuta dentro del sandbox de denegación por defecto.","open-source-selvedge.1a5c8788b4":"Módulo cargado, capacidades fijadas, límites de recursos aplicados.","open-source-selvedge.25ec589727":"Selvedge ejecuta código WASM o Kera dentro de un sandbox de denegación por defecto, incluye cada llamada al host en el hash de una cadena de transcripción SHA3-256 y envuelve el resultado en un sobre de prueba AION firmado. El sobre se reproduce sin el sandbox original.","open-source-selvedge.fa84feaccb":"Una transcripción sellada","open-source-selvedge.62ee5ca76d":"Cuatro etapas","open-source-selvedge.a5a88d36d1":"Lo que produce Selvedge","open-source-selvedge.db2f804f0c":"Los datos salen de Europa","open-source-selvedge.8799dc7cf1":"Computadoras que posees","open-source-selvedge.1d197d39c5":"Dónde se ejecuta","open-source-selvedge.79073eaaf2":"Países Bajos","open-source-selvedge.44ab85a252":"Origen","open-source-selvedge.f1be77358f":"Evidencia, no una promesa","open-source-selvedge.df5248d3cd":"La respuesta de auditoría","open-source-selvedge.6eef664840":"Ninguno","open-source-selvedge.a95380913a":"Servicio externo requerido","open-source-selvedge.eba5db6f23":"Bloqueo de proveedor","open-source-selvedge.4ce8c39ddd":"Dónde encontrarlo","open-source-selvedge.3229609e15":"Modelo de ejecución","open-source-selvedge.cba0624eb5":"Hoja de adquisición","open-source-selvedge.101226ec7a":"Lo que ahorra y reduce riesgos","open-source-selvedge.7a0848ede3":"Ver el límite de ejecución","open-source-selvedge.c01c519a99":"Selvedge es un sandbox WebAssembly determinista para código no confiable. Su manifiesto de permisos y su transcripción sellada se ejecutan en hardware que controlas, por lo que una contraparte puede reproducir el registro en su propia máquina y una disputa se convierte en una consulta en lugar de una solicitud de garantía.","open-source-selvedge.27e446d5a9":"Conserva una transcripción sellada","open-source-selvedge.e1cb220703":"Ejecuta código no confiable","open-source-selvedge.6ec18dcb30":"Selvedge","open-source-selvedge.993a665d35":"Al mando","open-source-selvedge.c1df7f8f11":"Tú permaneces","open-source-selvedge.f3101e3bb1":"En una computadora en casa","open-source-selvedge.7cb07d3c00":"Puede ejecutarse","open-source-selvedge.576347ec82":"Europa","open-source-selvedge.15edfb4da4":"Hecho en","open-source-selvedge.dd80c16201":"La misma respuesta, siempre","open-source-selvedge.d7e70b6e08":"La misma pregunta","open-source-selvedge.12fee4f639":"Así que nada puede ser falsificado","open-source-selvedge.4c10b31d42":"Sella","open-source-selvedge.dcd11694fe":"Un recibo de cada paso","open-source-selvedge.2ab05d7411":"Escribe","open-source-selvedge.527d86ed84":"Mantiene el trabajo en un rincón seguro","open-source-selvedge.ca032b5844":"Mantén el código dentro de los límites, mantén el registro","open-source-selvedge.ce2cddc0bb":"Un ayudante cuidadoso","open-source-selvedge.f8c94a3b4b":"Qué es","open-source-selvedge.704869f20f":"En palabras sencillas","open-source-selvedge.21e83f6c44":"Lee la pequeña historia","open-source-selvedge.06c805023d":"Mira lo que hizo el código","open-source-selvedge.d346a6159d":"Selvedge pone un programa que no elegiste en una sala sin internet, sin ruta a tus archivos y sin nada que aprender sobre tu máquina. Deja un recibo que dice qué volvió y qué se le permitió hacer al programa, para que puedas comprobar una afirmación posterior en lugar de fiarte de la palabra de alguien.","open-source-selvedge.a1301435db":" escribe todo lo que hace","open-source-selvedge.5bd50e406e":"Un ayudante cuidadoso que","open-source-selvedge.279245bb2e":"Estilo AION, sellado con ed25519","open-source-selvedge.5f174de1cc":"Prueba","open-source-selvedge.ff5b90620f":"SHA3-256 por llamada al host","open-source-selvedge.98e2d78aaa":"Por defecto, no opcional","open-source-selvedge.2956ef9ad6":"Determinismo","open-source-selvedge.cd95bf50b6":"Host de componentes Wasmtime","open-source-selvedge.b3776d63ad":"Backends","open-source-selvedge.2da600bf94":"Versión","open-source-selvedge.f187484f8c":"Rust (Edición 2024)","open-source-selvedge.89b86ab0e6":"Idioma","open-source-selvedge.942587e61e":"Ficha del proyecto","open-source-selvedge.d4a74b503a":"Leer la documentación","open-source-selvedge.a42a770d90":"Selvedge ejecuta código que no escribiste en un host de componentes WebAssembly sin red, sistema de archivos, entorno ni reloj en movimiento. Cada ejecución completada devuelve un registro que otra parte puede reproducir, y un informe de ejecución que indica qué se le permitió hacer al código. Publicado bajo Apache 2.0.","open-source-selvedge.92ec8c4f54":"responsabilidad segura","open-source-selvedge.722d7084a5":"Código no confiable","open-source-selvedge.3b6a6a049d":"en espacio aislado","open-source-selvedge.7d5b92b8a7":"CAP-SET","open-source-selvedge.0e2f3c1696":"FUEL","open-source-selvedge.a266fe9c4d":"MEMORIA","open-source-selvedge.5888675d99":"TIME","open-source-selvedge.7dd251bbda":"AUDIT","open-source-selvedge.76b5a35739":"lib","open-source-selvedge.99bb884017":"cli","open-source-selvedge.348c658682":"svc","open-source-selvedge.10182ab855":"mcp","open-source-selvedge.4bec5a51a3":"WASM","open-source-selvedge.a21dedb8ad":"KERA","open-source-selvedge.37c66a2cfc":"AION","open-source-selvedge.53f13ae99e":"MCP","open-source-selvedge.5d0b2f6bd4":"OBSERVADO","open-source-selvedge.35e0d0360a":"LIVE","open-source-selvedge.0f4b423c4b":"MEDIDO","open-source-selvedge.6e10953f3e":"OPEN","open-source-selvedge.rebuild-h1-lead":"Ejecuta código que no escribiste.","open-source-selvedge.rebuild-h1-accent":"Una sala con un recibo.","open-source-selvedge.rebuild-business-h1-lead":"Ejecuta código no confiable en hardware que controlas.","open-source-selvedge.rebuild-business-h1-accent":"Un espacio aislado WebAssembly determinista.","open-source-selvedge.close.github":"Pregunta por el lanzamiento","open-source-selvedge.source.access":"Publica en la cuarta ronda","open-source-selvedge.close.title":"Verifica el resultado","open-source-selvedge.close.titleAccent":"no el código","open-source-selvedge.close.panel.title":"Lo que puedes comprobar tú mismo","open-source-selvedge.close.panel.tag":"RUNTIME","open-source-selvedge.close.panel.row.0.label":"Licencia","open-source-selvedge.close.panel.row.0.value":"Apache 2.0","open-source-selvedge.close.panel.row.1.label":"Ejecución","open-source-selvedge.close.panel.row.1.value":"Denegación por defecto","open-source-selvedge.close.panel.row.2.label":"Determinismo","open-source-selvedge.close.panel.row.2.value":"Por defecto, no opcional","open-source-selvedge.close.panel.row.3.label":"Transcripción","open-source-selvedge.close.panel.row.3.value":"SHA3-256 por llamada al host","open-source-selvedge.close.panel.foot":"La publicación está prevista en rondas quincenales. El repositorio y su documentación se publican juntos.","oss-selvedge-business-glyph.fef8e889dc":"Política de ejecución","oss-selvedge-business-glyph.6b5eb5323e":"Denegación predeterminada","oss-selvedge-business-glyph.4ce8c39ddd":"Dónde encontrarlo","oss-selvedge-business-glyph.eba5db6f23":"Bloqueo del proveedor","oss-selvedge-business-glyph.6eef664840":"Ninguno","oss-selvedge-business-glyph.a95380913a":"Servicio externo","oss-selvedge-business-glyph.a92831c31f":"Fabricado en los Países Bajos","oss-selvedge-business-glyph.47deeb13b4":"Se ejecuta en ordenadores que usted posee","oss-selvedge-business-glyph.71aec0536c":"Los datos permanecen en Europa","oss-selvedge-business-glyph.8ac7aa173f":"Qué incluye","oss-selvedge-business-glyph.5c75fc26b6":"Control y evidencia","oss-selvedge-business-glyph.df5248d3cd":"La respuesta de la auditoría","oss-selvedge-business-glyph.74f39697ac":"Antes","oss-selvedge-business-glyph.b407dd020f":"Una promesa en un documento","oss-selvedge-business-glyph.4f1d10b8b9":"Con Selvedge","oss-selvedge-business-glyph.62d62865a8":"Evidencia sellada","oss-selvedge-consumer-glyph.088aa1c6a5":"Se quedó en la esquina segura","oss-selvedge-consumer-glyph.cc8e3cba23":"Hizo solo lo que pediste","oss-selvedge-consumer-glyph.f87dcfd005":"Anotó cada paso","oss-selvedge-consumer-glyph.ce2cddc0bb":"Un ayudante cuidadoso","oss-selvedge-consumer-glyph.0b5703d2a7":"La esquina segura","oss-selvedge-consumer-glyph.135207e95b":"Hace un pequeño trabajo, aquí, y en ningún otro lugar.","oss-selvedge-consumer-glyph.0ed7e2fe52":"Lo que hizo, por escrito","oss-selvedge-consumer-glyph.2b11f0b541":"Sellado, para que nada pueda cambiarse","oss-selvedge-hero-glyph.85be9bda9e":"Verificación de AION superada.","oss-selvedge-hero-glyph.8fff039853":"YES","oss-selvedge-hero-glyph.c5616cf985":"Firma válida:","oss-selvedge-hero-glyph.9e84fd1870":"El resumen coincide:","oss-selvedge-hero-glyph.ae05be9259":"Transcripción guardada en:","oss-selvedge-hero-glyph.7d1f8eca4c":"Instrucciones:","oss-selvedge-hero-glyph.1611baddbd":"2 097 152 bytes","oss-selvedge-hero-glyph.b6d31df01c":"Memoria:","oss-selvedge-hero-glyph.d1fd5a4123":"Uso de recursos:","oss-selvedge-hero-glyph.80e5667a3d":"Ejecución completada correctamente en 18,4 ms","oss-selvedge-hero-glyph.ebece295c6":"cadena de transcripción, sha3-256","oss-selvedge-hero-glyph.859e2c0cd0":"tiempo 5000 ms","oss-selvedge-hero-glyph.6137065f69":"combustible 50 M","oss-selvedge-hero-glyph.489a5f61f6":"mem 256 MiB","oss-selvedge-hero-glyph.70049344a2":"política: denegación por defecto","oss-selvedge-hero-glyph.9b97280973":"Determinista:","oss-selvedge-hero-glyph.0642f22885":"Motor:","oss-selvedge-hero-glyph.8116c74b17":"Artefacto en ejecución:","oss-selvedge-hero-glyph.9f85876f55":"Wasmtime, modelo de componentes","page-breadcrumb.c766e66518":"Miga de pan","page-toc.7e439c353e":"En esta página","section_st_a1_display-split.7c9a7c0610":"Detalle","section_st_f1_cta-dark.90e40d5043":"Empezar","selvedge-rebuild.why":"Por qué","selvedge-rebuild.state.depth-3":"Profundidad 3","selvedge-rebuild.state.depth-1":"Profundidad 1","selvedge-rebuild.state.leaf":"Hoja","selvedge-rebuild.state.path":"Ruta","selvedge-rebuild.state.root":"Raíz","selvedge-rebuild.state.proof":"Prueba","selvedge-rebuild.instrument.first-check":"Primera comprobación","selvedge-rebuild.instrument.last-check":"Última comprobación","selvedge-rebuild.e4117a549a":"La sala, el recibo y la lista son toda la promesa.","selvedge-rebuild.e04c2bbabb":"Una lista, no una estimación.","selvedge-rebuild.f4a910b306":"Encontrar y corregir","selvedge-rebuild.d7231e00d3":"El código se lleva con cada ejecución.","selvedge-rebuild.de97a98b3b":"Cada recibo","selvedge-rebuild.4fb8981886":"Un resumen identifica la compilación.","selvedge-rebuild.280587dbfc":"Artefacto exacto","selvedge-rebuild.94bce13433":"de un recibo a cada trabajo","selvedge-rebuild.d8ad44b2fd":"El rastro hacia atrás","selvedge-rebuild.66d0398793":"ENCONTRADO, NO ADIVINADO","selvedge-rebuild.f64f81f133":"CADA TRABAJO","selvedge-rebuild.cd30789775":"UN CÓDIGO","selvedge-rebuild.36d917a683":"Aquí llega como una lista. Cada trabajo que usó el programa defectuoso lo identifica por código, fecha y una breve lista de permisos, para que puedas ver qué se vio afectado y hasta dónde pudo llegar. Si las personas que lo crearon ya no son de confianza, la retirada se aplica en un intervalo de actualización fijo, no cuando caduca un certificado. El software se publica bajo la licencia Apache 2.0.","selvedge-rebuild.12399078d5":"La versión habitual de esta conversación es una estimación. Alguien calcula qué versión probablemente se ejecutaba, en qué días, para qué personas, y la respuesta llega como un rango con una advertencia. Eso deja los hechos necesarios para delimitar una corrección como una reconstrucción, no como un registro. La corrección comienza con una lista que se puede comprobar.","selvedge-rebuild.0ccfcd0de4":"Qué cambia","selvedge-rebuild.664ca13427":"Cada trabajo registra un código corto para el programa exacto que hizo el trabajo. No su nombre, no su número de versión, el programa en sí, de modo que dos compilaciones que comparten nombre tengan códigos diferentes. Si ese programa resulta defectuoso, el código es cómo se encuentra cada trabajo que tocó.","selvedge-rebuild.7e5bd67fe6":"y cada trabajo que tocó","selvedge-rebuild.b27d103669":"Un código identifica el programa","selvedge-rebuild.332f693bb9":"Cuando algo sale mal","selvedge-rebuild.e7dceacc68":"Cuando algo sale mal, un código identifica el programa.","selvedge-rebuild.9c9d8ebf4c":"Comienza con la misma forma limpia.","selvedge-rebuild.363b82b08d":"Trabajo dos","selvedge-rebuild.5e92b89d0f":"Nada heredado.","selvedge-rebuild.747a74c704":"Sala nueva","selvedge-rebuild.bbd11eef60":"Cerrada con su registro.","selvedge-rebuild.e429b951d7":"Trabajo uno","selvedge-rebuild.129567cb21":"antes, durante y después","selvedge-rebuild.456de19ceb":"Tres salas","selvedge-rebuild.164f8ae614":"NADA COMPARTIDO","selvedge-rebuild.16d6f8e910":"CADA VEZ","selvedge-rebuild.09d2a97782":"SALA NUEVA","selvedge-rebuild.fb65ff4141":"El programa en sí se carga de nuevo cada vez desde su propio código, y el recibo lleva un código para ese código, de modo que lo que se ejecutó hoy es demostrablemente lo que se ejecutó el mes pasado. Nada se acumula entre medias para que nadie tenga que preocuparse después.","selvedge-rebuild.b0f5fcfbc7":"Una sala Selvedge nueva cuesta tan poco que una por trabajo es asequible, así que no hay que compartir nada. Si algo necesita realmente transferirse, se entrega a propósito y aparece en el registro como algo que se entregó.","selvedge-rebuild.46cfb3934a":"En la práctica","selvedge-rebuild.ff26c0ce98":"Cada trabajo recibe una sala nueva. Nada de la anterior está en ella: sin notas sobrantes, sin trabajo a medias, sin memoria de quién lo pidió. Suena obvio y normalmente no es cierto, porque mantener una sala en pie es más barato que construir una nueva, así que la mayoría de los sistemas conservan la sala y la reutilizan.","selvedge-rebuild.7f6bde3487":"para que el siguiente trabajo lo encuentre","selvedge-rebuild.0813f2a065":"No se deja nada atrás","selvedge-rebuild.e0a28255b6":"Entre un trabajo y el siguiente","selvedge-rebuild.ddf86350ec":"Una sala nueva está lista para el siguiente trabajo.","selvedge-rebuild.47d52db543":"Resumen de política y fecha.","selvedge-rebuild.d8c67f88b7":"Lista de capacidades con nombre.","selvedge-rebuild.8d71e4a6c8":"Lo que estaba permitido","selvedge-rebuild.1be6bb3160":"Salida, resultado y uso de recursos.","selvedge-rebuild.7661e6591f":"Lo que ocurrió","selvedge-rebuild.5354effb89":"un recibo, dos preguntas","selvedge-rebuild.bf7aa926cc":"Dos mitades","selvedge-rebuild.8719258390":"ANOTADO","selvedge-rebuild.d45d38b1c1":"LO QUE PODÍA","selvedge-rebuild.103f9176a0":"LO QUE HIZO","selvedge-rebuild.fc09104420":"No encontrar nada es una evidencia débil, porque depende de cuánto buscó alguien y cuánto tiempo tuvo antes de la reunión. Una lista de dos permisos es una evidencia sólida, porque no había nada más que encontrar.","selvedge-rebuild.e7e3ece016":"Cambia lo que ocurre cuando haces una pregunta más tarde. En lugar de que alguien revise lo que hizo el programa e informe de que no encontró nada preocupante, la lista de permisos está ahí mismo, y es corta.","selvedge-rebuild.74365019ac":"La mayoría de los registros te dicen lo que hizo un programa. Un recibo de Selvedge también dice lo que se le permitió hacer, que es algo distinto y más útil. Un programa al que nunca se le permitió acercarse a tus archivos no puede haber estado cerca de tus archivos, y eso queda registrado tanto si alguien estaba mirando en ese momento como si no.","selvedge-rebuild.b418919876":"lo que hizo y lo que pudo hacer","selvedge-rebuild.f0ba8e6e92":"Cada recibo tiene dos mitades","selvedge-rebuild.a9fe3bc508":"Permiso, por escrito","selvedge-rebuild.76194111ba":"Un código no es una copia del programa; nombra la cosa exacta que se ejecutó.","selvedge-rebuild.17cabedb50":"La lista indica dónde.","selvedge-rebuild.67452c68d0":"Los códigos difieren","selvedge-rebuild.c1c7f44d1c":"El comportamiento se repitió.","selvedge-rebuild.0407e20f79":"Los códigos coinciden","selvedge-rebuild.90586d801f":"Mismos ajustes y artefacto.","selvedge-rebuild.dba9e64b97":"Ejecutar mañana","selvedge-rebuild.bd7b414b53":"Entrada, sala y recibo.","selvedge-rebuild.c941dde6f2":"Ejecutar hoy","selvedge-rebuild.7b1c52fa95":"lo que te dice la segunda ejecución","selvedge-rebuild.bebe96c4de":"Una prueba, dos resultados","selvedge-rebuild.e1c7f38f86":"PUEDES COMPROBARLO","selvedge-rebuild.b00a146670":"MISMA RESPUESTA","selvedge-rebuild.64ee12f3fd":"MISMO MOMENTO","selvedge-rebuild.698a936171":"También cierra un pequeño truco. Un programa que puede leer el reloj puede comportarse de una manera antes de una fecha límite y de otra después, y nadie notaría la diferencia. Un reloj que nunca se mueve no puede ser observado, así que no hay nada sobre lo que comportarse de manera distinta.","selvedge-rebuild.d722dbffa2":"Te ofrece una prueba que puedes hacer tú mismo. Si algo parece mal, ejecútalo de nuevo con la misma entrada. Si la respuesta es la misma, el programa se comporta correctamente y el problema está en otro sitio. Si es diferente, algo ha cambiado, y la comparación indica qué parte.","selvedge-rebuild.750c2096f3":"Por qué importa","selvedge-rebuild.7768a95a4a":"La mayoría de los programas dan respuestas ligeramente diferentes cada vez, porque miran el reloj, usan un poco de azar o notan lo ocupada que está la máquina. Un programa que se ejecuta en Selvedge no puede hacer nada de eso. El reloj interno está fijo y nunca se mueve, y cualquier cosa aleatoria comienza desde el mismo número en cada ejecución. Pregunta dos veces, obtén la misma respuesta.","selvedge-rebuild.00bc249842":"y comprueba si sigue coincidiendo","selvedge-rebuild.1797b92182":"Ejecútalo de nuevo mañana","selvedge-rebuild.0d971150f5":"La misma respuesta dos veces","selvedge-rebuild.0ce33bc17c":"Ejecútalo de nuevo mañana y comprueba si sigue coincidiendo.","selvedge-rebuild.780591dd40":"El trabajo se plegó junto.","selvedge-rebuild.b454191161":"Ejecutar código","selvedge-rebuild.0d36ec2dc8":"Capturado y con huella digital.","selvedge-rebuild.c35f4d270f":"Respuesta devuelta","selvedge-rebuild.12f6bce42d":"Salida impresa","selvedge-rebuild.e45f48ada6":"y un código para cada uno","selvedge-rebuild.96a145870f":"Dos cosas","selvedge-rebuild.4056de166c":"AMBAS CON HUELLA DIGITAL","selvedge-rebuild.3736161d33":"DEVUELTO","selvedge-rebuild.07d3782dee":"IMPRESO","selvedge-rebuild.7362fe572e":"Es la misma idea que un sello en un sobre, y hace más. Un sello te dice que la carta fue abierta. Esto te dice qué página cambió, y sigue funcionando cuando la carta ha sido copiada una docena de veces desde entonces. Cada lector obtiene la misma respuesta del registro copiado.","selvedge-rebuild.7ffcd03942":"Ese código es lo que hace que una discusión posterior sea corta. Si alguien te muestra una respuesta que un programa dio el pasado marzo y quieres saber si es la respuesta que realmente salió, comparas los códigos. Coinciden o no, y no hay nada intermedio que discutir.","selvedge-rebuild.940394c7d2":"Cuando el trabajo está hecho, dos cosas salen de la sala: cualquier cosa que el programa imprimió mientras trabajaba, y la respuesta que calculó. Nada más. Ambas llevan huella digital a la salida, lo que significa que se crea un código corto a partir de ellas, y el código cambia por completo si cambia una sola letra.","selvedge-rebuild.690d8dd7a6":"y ambas llevan huella digital","selvedge-rebuild.72f4db7882":"Dos cosas vuelven","selvedge-rebuild.1251cc0dd7":"Lo que vuelve","selvedge-rebuild.8d77e5771a":"La siguiente pregunta útil es qué vuelve.","selvedge-rebuild.ec6f32ee39":"Sin entorno.","selvedge-rebuild.a6252b6690":"Tus datos","selvedge-rebuild.fb9f6423d9":"Sin directorio.","selvedge-rebuild.f1096a5b4c":"Tus archivos","selvedge-rebuild.4c4c583f2e":"Sin conexión.","selvedge-rebuild.66c06c11d1":"Internet","selvedge-rebuild.ac8e062358":"Una ranura, un trabajo.","selvedge-rebuild.bb7841ee3e":"Tu programa","selvedge-rebuild.8b493952a7":"y lo que no está","selvedge-rebuild.4d26f69b94":"Qué hay en la sala","selvedge-rebuild.660cea3ce9":"UNA RANURA","selvedge-rebuild.f1818b9fef":"NADA QUE LEER","selvedge-rebuild.98a2180aec":"SIN SALIDA","selvedge-rebuild.663ab35faf":"Así que no dependes de que alguien haya pensado en todo de antemano. Esa es la parte que suele fallar, y falla silenciosamente, meses después, de una manera que nadie nota hasta que alguien más lo señala. Una lista corta y explícita hace visible un permiso que falta antes de que se convierta en un problema.","selvedge-rebuild.0e9905b668":"La razón por la que ayuda no es que el programa esté siendo observado cuidadosamente. Es que no hay nada en la sala que pueda salir mal. Un programa no puede enviar tus datos a ningún sitio si no hay salida para enviarlos, y no puede leer tus fotos si la puerta hacia ellas nunca se construyó.","selvedge-rebuild.22ccf30775":"Los programas que no escribiste terminan ejecutándose en tu ordenador todo el tiempo: un complemento, un plugin, algo que un asistente decidió usar para responder a tu pregunta. Selvedge pone ese programa en una sala propia. Desde dentro no hay internet, no hay forma de llegar a tus archivos y no hay nada que aprender sobre tu máquina.","selvedge-rebuild.9e56594623":"y nada más en absoluto","selvedge-rebuild.6b5631ed3a":"Una habitación con una ranura","selvedge-rebuild.704869f20f":"En palabras sencillas","selvedge-rebuild.160543d3ec":"Una habitación también se puede explicar con palabras sencillas.","selvedge-rebuild.6e66049bd0":"Cadena de decisiones y cinco operaciones.","selvedge-rebuild.140855a7dd":"Auditoría y ruta del agente","selvedge-rebuild.be90f07014":"Prueba fuera del operador.","selvedge-rebuild.c3f6368941":"Registro de transparencia","selvedge-rebuild.4402f8d6f4":"Admisión y dirección de contenido.","selvedge-rebuild.1fd6a805da":"Registro","selvedge-rebuild.943a71d70f":"Contención y ejecución determinista.","selvedge-rebuild.0a771c36be":"Sandbox","selvedge-rebuild.493bbfc72f":"el límite, la evidencia, la entrega","selvedge-rebuild.6311787659":"Lo que contiene el conjunto","selvedge-rebuild.c968638a6e":"APACHE 2.0","selvedge-rebuild.d0158524ed":"TU HARDWARE","selvedge-rebuild.cfd1b83141":"UN CONJUNTO DE COMPONENTES","selvedge-rebuild.2c4db760cf":"El resto del coste es el que la contratación suele olvidar: lo que ocurre cuando un proveedor cambia las condiciones o deja de responder. El conjunto de componentes se publica bajo Apache 2.0, los artefactos son archivos con dirección de contenido, los registros son archivos y la verificación se ejecuta en la máquina de la otra parte, así que una salida es una copia, no una migración.","selvedge-rebuild.c69320538d":"El coste recurrente de una ejecución se mide, no se presupuesta: de 5,26 a 6,06 microsegundos por llamada a través del límite y mucho menos de un milisegundo para levantar una instancia nueva, en un Intel i9-13900KF con compilación de lanzamiento, optimización de tiempo de enlace completa y Rust 1.85.0. Eso es todo lo que cuesta el registro en tiempo de ejecución.","selvedge-rebuild.59bd1ff6f9":"Cuánto cuesta","selvedge-rebuild.662cd46273":"Selvedge es un conjunto de componentes que cubre el runtime del sandbox, el registro de artefactos, el registro de transparencia, la pista de auditoría encadenada por hash y la interfaz que usa un agente para llegar a una herramienta. Se ejecuta en hardware que tú controlas. Nada externo se interpone en el camino de una ejecución: ni cuenta, ni clave retenida por un proveedor, ni servicio que tenga que responder para que un trabajo termine.","selvedge-rebuild.9ce257fa8d":"y se ejecuta en tu hardware","selvedge-rebuild.b1c3183260":"Una cadena de herramientas, no cuatro","selvedge-rebuild.dea6811b37":"Lo que reemplaza","selvedge-rebuild.86c78780e9":"Una cadena de herramientas, en hardware propio, es el cierre comercial.","selvedge-rebuild.b742347ca6":"Detener o mostrar su historial.","selvedge-rebuild.80b0178666":"Cancelar / procedencia","selvedge-rebuild.2976625857":"Ejecutar dentro de la habitación.","selvedge-rebuild.c65605adf5":"Invocar","selvedge-rebuild.084d82061e":"Admitir el artefacto.","selvedge-rebuild.fd6c3ebf7b":"Instalar","selvedge-rebuild.820fa7ff41":"Buscar una capacidad con nombre.","selvedge-rebuild.4827ea2271":"Descubrir","selvedge-rebuild.38025e67e1":"una única puerta para las herramientas de agentes","selvedge-rebuild.41cb4bf6dc":"Cinco operaciones","selvedge-rebuild.3501cb4872":"SIN APROBACIONES","selvedge-rebuild.9054eecb7b":"PROCEDENCIA BAJO DEMANDA","selvedge-rebuild.0cd0da7fef":"UNA SOLA PUERTA","selvedge-rebuild.e088784883":"Después, se puede solicitar la procedencia de lo que se ejecutó, y esa es la parte que merece la pena diseñar un proceso en torno a ella: la dirección propia del artefacto, si su firma se mantiene, el certificado presentado con él, la política bajo la que se ejecutó y dónde se ha ejecutado antes. Esos datos siguen disponibles cuando una ejecución debe comprobarse más tarde. Se pueden comprobar sin confiar en la persona que la ejecutó.","selvedge-rebuild.c3c0f81705":"Los controles aquí no son aprobaciones, porque una aprobación necesita a alguien despierto. Son la forma de la puerta. Una herramienta se descubre, se instala y se invoca a través de una única interfaz de cinco operaciones, así que cada llegada es el mismo tipo de evento, y la comprobación que rechaza una capacidad es la que atraviesa cualquier otra ejecución, no un segundo mecanismo escrito especialmente para agentes.","selvedge-rebuild.896b2f37be":"El mecanismo","selvedge-rebuild.122ebb7a98":"Un asistente que trabaja en una tarea puede decidir que necesita una capacidad que no tiene, encontrar una y empezar a usarla dentro de un único trabajo que nadie está observando. No hubo paso de contratación ni revisión, porque no hubo momento para incluir ninguno. Selvedge es el límite por el que el asistente tiene que pasar, y el informe al final nombra qué herramienta llegó, qué se le permitió y qué hizo.","selvedge-rebuild.deeaa912ba":"y ya está dentro","selvedge-rebuild.767c396612":"Nadie eligió esta herramienta","selvedge-rebuild.d368c82df4":"Cuando quien llama es un modelo","selvedge-rebuild.ee26c4f440":"Cuando quien llama es un modelo, una única puerta mantiene legible la llegada.","selvedge-rebuild.9faf774569":"Aplicar la política de tarifas.","selvedge-rebuild.ee1acfa55e":"Autenticación","selvedge-rebuild.9bbe32214f":"Inspeccionar el registro de ejecución.","selvedge-rebuild.78590ea6e5":"Límite de recursos","selvedge-rebuild.ed9390115c":"Reintentar con la espera indicada.","selvedge-rebuild.f4544d56bb":"Error de obtención","selvedge-rebuild.1455a7acb3":"Abrir el circuito.","selvedge-rebuild.f06cb33ba6":"Discrepancia de hash","selvedge-rebuild.1be73b4878":"la recuperación viaja con el fallo","selvedge-rebuild.5dacd1167d":"Un código, un siguiente paso","selvedge-rebuild.3ac9292cf3":"SIN ANÁLISIS DE REGISTROS","selvedge-rebuild.93aaff4907":"RECUPERACIÓN INDICADA","selvedge-rebuild.dbba85fbb0":"CÓDIGOS ESTABLES","selvedge-rebuild.3b6e2d01ab":"Cuando se rechaza una capacidad, el mensaje enumera los tipos que habrían sido válidos, que es la diferencia entre una tarde de adivinanzas y un cambio de una línea. Un error que nombra su propia solución es la documentación más barata que nadie haya escrito. La corrección es entonces explícita.","selvedge-rebuild.1fb184edcf":"La estrategia de recuperación es lo que separa casos que parecen idénticos en un panel a las dos de la madrugada. Un hash que no coincide no es transitorio, así que reintentar es tiempo perdido, y la estrategia asociada dice abrir el circuito en lugar de volver a intentarlo. Una obtención fallida es transitoria y dice reintentar.","selvedge-rebuild.2f6a307ba7":"Para operadores","selvedge-rebuild.0a5279b594":"La documentación operativa falla cuando tiene que escribirse a partir del texto de los registros, porque el texto de los registros cambia sin que nadie lo considere un cambio. Los fallos de Selvedge llevan un código estable, y un runbook que nombra el código sigue siendo correcto a través de una actualización que reformula todos los mensajes de paso. Cuando el código lleva una estrategia de recuperación, el runbook no tiene que adivinarla.","selvedge-rebuild.664b90089f":"es un error con un runbook","selvedge-rebuild.c69f009f72":"Un error con un código","selvedge-rebuild.d8bf8f167e":"Operabilidad","selvedge-rebuild.b4986d7d25":"Una sala nueva cada vez es lo que hace que esta evidencia sea asequible.","selvedge-rebuild.05f9859c50":"Eliminación rutinaria, sin script sorpresa.","selvedge-rebuild.9e0dece16b":"Extremo lejano","selvedge-rebuild.7ba8dfa987":"Profundidad fija detrás del actual.","selvedge-rebuild.b850e7b847":"Archivos antiguos","selvedge-rebuild.e4eb2b5e27":"Último hash trasladado.","selvedge-rebuild.55e313d20f":"Costura","selvedge-rebuild.4e5fd99150":"Un objeto por línea.","selvedge-rebuild.2c44db0063":"Archivo actual","selvedge-rebuild.8dae783204":"cuando un archivo cambia","selvedge-rebuild.888fb4bc11":"Qué permanece y qué se mueve","selvedge-rebuild.1191de056a":"RETROCESO","selvedge-rebuild.d47c87e179":"TOKENS CON HASH","selvedge-rebuild.eac901cef2":"RETENCIONES DE ROTACIÓN","selvedge-rebuild.f7e2e2ba8c":"Los intentos fallidos están limitados a cinco por minuto y se ralentizan con un retraso que se duplica de uno, dos, cuatro y ocho segundos, y un cliente que falla veinte veces en diez minutos se bloquea en lugar de ralentizarse. Eso convierte un ataque de adivinación en una tasa en lugar de un resultado, y convierte un informe de incidente en un gráfico que nadie tiene que interpretar.","selvedge-rebuild.6736e35335":"El otro fallo silencioso son las credenciales en una copia de seguridad. Los tokens de autenticación se someten a hash con argon2id antes de almacenarse, por lo que un archivo copiado o una imagen de memoria capturada no contiene nada que pueda presentarse como token. La copia de seguridad puede revisarse o restaurarse sin convertirse en una fuga de credenciales.","selvedge-rebuild.cac3da045e":"Cómo se mantiene","selvedge-rebuild.652f961a36":"El volumen lo gestiona Selvedge en lugar de un script que alguien recuerda escribir. El registro se rota cuando el archivo supera un tamaño, una profundidad fija de archivos antiguos queda detrás, y cada rotación elimina el del extremo lejano. Aquí lo que queda aún se verifica desde su propio ancla, y lo que se fue es visible como una interrupción.","selvedge-rebuild.62615faf30":"y la cadena lo sobrevive","selvedge-rebuild.d4854c73b7":"La rotación conserva la evidencia","selvedge-rebuild.d821e71a5b":"Retención y acceso","selvedge-rebuild.5dee0013ab":"La retención es una política, pero la cadena debe sobrevivirla.","selvedge-rebuild.8d847cbbe6":"El registro aún contiene el árbol antiguo.","selvedge-rebuild.0ea7b95eab":"Consistencia","selvedge-rebuild.526411c35f":"La raíz y el tamaño del árbol.","selvedge-rebuild.8639df5c74":"Cabecera de árbol firmada","selvedge-rebuild.b67622bea2":"La ruta de inclusión.","selvedge-rebuild.61922ee14e":"Hashes hermanos","selvedge-rebuild.11deeeb03e":"Lo que se admitió.","selvedge-rebuild.2df596d9d9":"Resumen del artefacto","selvedge-rebuild.26ef63813e":"después de que llegue un artefacto","selvedge-rebuild.e33d42e6b6":"Lo que un cliente conserva","selvedge-rebuild.da6c5f785f":"UNA DIRECCIÓN","selvedge-rebuild.50419b986e":"DEMOSTRABLE FUERA","selvedge-rebuild.80e513b0ff":"SOLO ADICIÓN","selvedge-rebuild.82c17b3462":"La otra mitad no necesita ninguna decisión. Una dirección de contenido identifica un artefacto desde la compilación hasta el registro y la ejecución, lo que convierte un retiro en algo que se lleva a cabo en lugar de anunciarse, y un firmante retirado tiene efecto en un intervalo de actualización en lugar de en una fecha de caducidad.","selvedge-rebuild.0e322153c8":"Publicar el registro es una decisión que se toma una vez, y donde se ha tomado, su cooperación no forma parte de la verificación de nadie. Verifican la presencia y el crecimiento contra una raíz que usted publicó, en su propia máquina, en el momento que elijan. La raíz original sigue siendo el punto de referencia público.","selvedge-rebuild.fab7e71c01":"La garantía","selvedge-rebuild.7b85ff0b6e":"La debilidad de todo registro que una organización guarda sobre sí misma es que la organización lo guarda. El registro de transparencia de Selvedge elimina esa objeción para una pregunta estrecha: qué entró. A un cliente se le puede entregar una prueba de que un artefacto específico está en el registro, y una prueba de que el registro solo ha crecido desde la última vez que miró. La inclusión y la integridad de solo adición son, por tanto, verificables sin confiar en el operador.","selvedge-rebuild.66229e2d58":"sin que se dé por sentado","selvedge-rebuild.2cc484ffbc":"Demostrar lo que admitió","selvedge-rebuild.4f9007e629":"Evidencia que no posee","selvedge-rebuild.cdcfb6c3c1":"El registro dice qué llegó. El registro de transparencia permite que otra persona lo verifique.","selvedge-rebuild.2a95479d68":"Llevado con el artefacto.","selvedge-rebuild.5f174de1cc":"Prueba","selvedge-rebuild.f1f0ddab0b":"Elegible para el tipo.","selvedge-rebuild.0449e1003d":"Espacio de nombres","selvedge-rebuild.2e26c5d52d":"Bytes mágicos, no una etiqueta.","selvedge-rebuild.e00ac23f2a":"Tipo","selvedge-rebuild.54e0cdb26f":"Longitud correcta, hexadecimal y presente.","selvedge-rebuild.47fdd58bee":"Resumen","selvedge-rebuild.409fa246aa":"y una respuesta en cada extracción","selvedge-rebuild.112b824580":"Cuatro comprobaciones en la puerta","selvedge-rebuild.1858ed0f91":"RESÚMENES OCI","selvedge-rebuild.0a6780b777":"TOKENS REQUERIDOS","selvedge-rebuild.67bf2475b1":"El acceso es una lista de tokens que emites y retiras, almacenados con hash argon2id, de modo que un archivo copiado o una imagen de memoria no contenga nada presentable. Los intentos fallidos se limitan a cinco por minuto con una demora que se duplica, y un cliente que falle veinte veces en diez minutos queda bloqueado por completo. El límite permanece visible en el registro del intento.","selvedge-rebuild.86269212e3":"Una dirección de contenido identifica un artefacto desde la publicación hasta la extracción y el registro de ejecución. Esa dirección hace que su procedencia sea verificable: qué compilación, cuándo se admitió, bajo qué espacio de nombres, qué despliegue la extrajo y cuántas veces se ejecutó. La misma dirección responde a cada una de esas preguntas después, sin un segundo índice que mantener sincronizado.","selvedge-rebuild.3d5033cca6":"Selvedge incluye un servidor de registro, de modo que el lugar donde aterrizan los artefactos de terceros es un servicio en tu propio hardware, no una cuenta con otra empresa. Escucha en una dirección pública solo cuando la autenticación por token está activada, comprueba cuatro cosas en cada publicación y responde a las extracciones con los resúmenes SHA-256 que ya usa el ecosistema, mientras almacena todo internamente con SHA3-256.","selvedge-rebuild.224f72415e":"un registro que tú operas","selvedge-rebuild.bbd6ef38ef":"Los proveedores publican en","selvedge-rebuild.a0a03c8fd1":"Dónde llegan los artefactos","selvedge-rebuild.d1e24e5a34":"Un resultado es más fácil de defender cuando el lugar donde entró es tuyo.","selvedge-rebuild.1111b73a8f":"Pregunta qué entrada vio el invitado.","selvedge-rebuild.4bed336194":"Salida","selvedge-rebuild.d7f27a4216":"Inspecciona la ruta de código o la compilación del host.","selvedge-rebuild.0b645d1b65":"Combustible","selvedge-rebuild.de86466d91":"Mismo perfil determinista.","selvedge-rebuild.c7f73bb54d":"Configuración","selvedge-rebuild.36ffeb1c8a":"El mismo código significa una comparación significativa.","selvedge-rebuild.c6fe330e04":"Artefacto","selvedge-rebuild.02be99bd8d":"y qué significa después","selvedge-rebuild.a53a08f8c4":"Qué se movió","selvedge-rebuild.bc2cb603df":"O EL CAMPO","selvedge-rebuild.4b885b786e":"MISMO REGISTRO","selvedge-rebuild.ba9ebe1f95":"MISMA ENTRADA","selvedge-rebuild.50479df67b":"Con dos registros, la respuesta llega esa misma tarde y nombra un campo, no a una parte, así que equivocarse cuesta lo que debe y acertar casi no cuesta nada. Eso pertenece al contrato antes de la primera disputa, no se descubre durante una. Ambas partes pueden repetir esa comprobación sin otra reunión.","selvedge-rebuild.db0ac7feb8":"Una respuesta mecánica cambia quién asume el coste del argumento. Una cifra en disputa hoy gasta una semana de dos equipos comparando sistemas que nunca fueron comparables, y suele terminar en un crédito de buena voluntad, porque nadie puede demostrar qué lado se equivocó y alguien tiene que cerrar el ticket. Ningún equipo puede producir una cifra que la otra parte esté obligada a aceptar.","selvedge-rebuild.8134cbe2c9":"Una contraparte dice que la cifra que le dieron es incorrecta. Tú tienes tu ejecución y ellos la suya. Comparar los dos registros de Selvedge es mecánico: la comparación recorre los campos e informa de cada diferencia con lo esperado y lo recibido, de modo que la conversación comienza sobre qué campo difiere, no sobre de quién es el sistema.","selvedge-rebuild.415a27590d":"campo por campo, no discutido","selvedge-rebuild.651b2f8627":"Dos registros comparados","selvedge-rebuild.a9cce5b9fe":"Un resultado en disputa","selvedge-rebuild.7c918d0343":"Un resultado en disputa es lo siguiente: dos registros, comparados campo por campo.","selvedge-rebuild.b457d4d9d3":"Memoria máxima, tiempo e instrucciones.","selvedge-rebuild.1e23ac57dd":"Cifras de recursos","selvedge-rebuild.f6c680ffb5":"La configuración vigente.","selvedge-rebuild.b44f987ea4":"Hash del motor","selvedge-rebuild.ca1f09eab2":"La política que los concedió.","selvedge-rebuild.945db98b77":"Resumen de la política","selvedge-rebuild.be7bd7e933":"Capacidades nombradas por la ejecución.","selvedge-rebuild.f761a72878":"Lista concedida","selvedge-rebuild.8be583ccfd":"respondidas desde un documento","selvedge-rebuild.abfa32a842":"Cuatro preguntas","selvedge-rebuild.80935eb972":"DATED","selvedge-rebuild.c3cb9355f8":"POLÍTICA EN EJECUCIÓN","selvedge-rebuild.506221fd52":"CONCEDIDO, LISTADO","selvedge-rebuild.4d5c5b7775":"El mismo informe incluye los resúmenes de los certificados verificados y lo que la ejecución consumió en memoria máxima, tiempo de procesador e instrucciones. La pregunta de seguimiento siempre es qué usó realmente, y esa respuesta ya está en la página, no con un segundo equipo que trabaja con otro reloj y otra definición del incidente. Permite una respuesta directa mientras la evidencia sigue fresca.","selvedge-rebuild.06d0c87ca8":"Eso convierte un argumento en una consulta. Un regulador que pregunta si un componente podría haber llegado a los registros de clientes obtiene una respuesta con fecha, no una garantía sobre la intención. Responde una pregunta histórica concreta: ¿este componente nombrado, en esta ejecución, tenía una ruta a esos registros? La respuesta no depende de que alguien recuerde después la intención del proveedor.","selvedge-rebuild.5c82441a97":"El registro","selvedge-rebuild.6cdd02da63":"La pregunta incómoda después de un incidente rara vez es qué hizo el software. Es qué se le permitió hacer, y en la mayoría de los entornos esa respuesta se ensambla a partir de archivos de configuración, historial de despliegues y la memoria de alguien. Cada ejecución de Selvedge produce un informe que nombra las capacidades que se le concedieron, la política que las concedió y un hash de la configuración vigente.","selvedge-rebuild.020ea9fcbe":"y qué se le permitió","selvedge-rebuild.cd553c8839":"Cada ejecución dice qué hizo","selvedge-rebuild.5e367f020e":"La pregunta después de un incidente","selvedge-rebuild.f2edf768d8":"Un registro convierte la pregunta del proveedor en una consulta.","selvedge-rebuild.0c347f9e0f":"Sin bloque de entorno ni argumentos.","selvedge-rebuild.c701ab1556":"¿Hereda nuestro acceso?","selvedge-rebuild.f2df9d1888":"No se abre ningún directorio.","selvedge-rebuild.e98ce49657":"¿Puede dejar un archivo?","selvedge-rebuild.99436e239e":"Sin red presente por defecto.","selvedge-rebuild.1c017e2833":"¿Puede enviar datos?","selvedge-rebuild.68b0d04e37":"Solo mundos declarados y capacidades nombradas.","selvedge-rebuild.fd5147edb1":"¿Qué puede tocar?","selvedge-rebuild.51992f6040":"escrito como cuatro respuestas","selvedge-rebuild.7bcd533661":"El peor caso","selvedge-rebuild.80b36fb606":"DECLARADO","selvedge-rebuild.a419f58f13":"PEOR CASO PEQUEÑO","selvedge-rebuild.be725ffbc0":"NADA QUE ALCANZAR","selvedge-rebuild.eb3afa60c4":"Un componente que nunca pidió nada más allá de su entrada y su salida se describe por completo en una línea, y nadie tiene que mantener esa línea para que siga siendo cierta dentro de un año. Eso es lo que lo hace utilizable en un documento que alguien firma.","selvedge-rebuild.86f054031c":"Esto cambia la forma de la conversación con el proveedor. La pregunta deja de ser si la ingeniería del proveedor es sólida, algo que no puedes verificar y que ellos no pueden demostrar, y pasa a ser qué se le concedió al artefacto, que está escrito sobre la marcha.","selvedge-rebuild.1debddb64e":"El código que llega de un proveedor o de un colaborador externo se ejecuta en Selvedge sin conexión de red, sin directorio abierto para él, sin entorno que leer y sin argumentos. No se le impide acceder a esas cosas mediante una regla que alguien tenga que mantener. No están ahí. La consecuencia para una evaluación de riesgos es que el peor caso es lo bastante pequeño como para escribirlo en una frase.","selvedge-rebuild.6be7d30a6b":"en una habitación vacía","selvedge-rebuild.6df473a455":"Un artefacto malo aterriza","selvedge-rebuild.e948526d56":"Cuál es el peor caso","selvedge-rebuild.0b8ad471af":"La siguiente pregunta es hasta dónde puede llegar el peor caso.","selvedge-rebuild.a02a250db5":"Seleccionado en el momento del trabajo.","selvedge-rebuild.c257ef4501":"Elegido por el agente","selvedge-rebuild.cf63b964fc":"Nadie en la sala lo eligió.","selvedge-rebuild.2054305e05":"Dependencia transitiva","selvedge-rebuild.cdf3fea97a":"Otra persona controla el lanzamiento.","selvedge-rebuild.8cbf4d00a5":"Dependencia directa","selvedge-rebuild.b71aa2a2b1":"Un equipo puede revisarlo.","selvedge-rebuild.1ea8c912d2":"Escrito aquí","selvedge-rebuild.332edb5a4d":"y cuándo lo leyó alguien por última vez","selvedge-rebuild.66cd35e493":"Cuatro formas de llegar","selvedge-rebuild.9520a29c14":"UN REGISTRO","selvedge-rebuild.2271914641":"EL ALCANCE SE DECIDE PRIMERO","selvedge-rebuild.e07e85e80d":"NO REVISIÓN","selvedge-rebuild.8d05721c00":"Selvedge trabaja con las dos cosas que sobreviven a eso: el alcance decidido antes de que llegue el código y el registro conservado después de que se vaya. Ambos están disponibles el día en que un proveedor envía algo que nadie en el edificio ha abierto. Es una evidencia que alguien puede conservar de forma independiente.","selvedge-rebuild.d0d23ca94c":"Cada control en esta área asume un momento en el que una persona podría haber mirado. La revisión de adquisiciones lo asume. La revisión de código lo asume. Una herramienta seleccionada por un agente mientras se ejecuta elimina ese momento por completo, y lo hace para las cargas de trabajo que crecen más rápido.","selvedge-rebuild.560556f058":"Dependencias que nadie ha leído, plugins de proveedores, integraciones que se actualizan según su propio calendario, y ahora herramientas elegidas por un modelo en el momento en que se ejecuta. Revisar todo eso nunca fue realista. Selvedge cambia la pregunta de si el código es confiable a qué puede alcanzar el código y qué puedes decir al respecto después a alguien fuera de tu edificio.","selvedge-rebuild.0d07a7b2f6":"y nadie aquí lo leyó","selvedge-rebuild.546fb9cede":"No escribiste la mayor parte","selvedge-rebuild.55874251d8":"El valor predeterminado que nadie eligió","selvedge-rebuild.82b00203b9":"Lo que los seis tienen en común es que un extraño puede verificar la ejecución que produjeron.","selvedge-rebuild.8f4639c201":"Sellado salvo que se declare.","selvedge-rebuild.a6a6318544":"GPU","selvedge-rebuild.c99a2bcf3e":"Observar","selvedge-rebuild.316ccc52a4":"No puede señalar a otro proceso.","selvedge-rebuild.6f8e6cc6ac":"Su propia vida útil","selvedge-rebuild.30fd44bcfe":"La clave permanece fuera.","selvedge-rebuild.a7f47e6eb3":"Operaciones, no claves","selvedge-rebuild.f685d27aeb":"Una ventana, no un sistema de archivos.","selvedge-rebuild.ff764e20d1":"Por prefijo","selvedge-rebuild.e160d76fcb":"Una herramienta sin nombre no existe aquí.","selvedge-rebuild.f1aae84762":"Solo llamadas con nombre","selvedge-rebuild.07e959a70b":"y lo que cuesta preguntar","selvedge-rebuild.665388e0b3":"Seis mundos","selvedge-rebuild.06348a4532":"NOMBRADO POR LÍNEA","selvedge-rebuild.afe70011f9":"PREGUNTAR, NO ALCANZAR","selvedge-rebuild.1013aec36c":"SEIS MUNDOS","selvedge-rebuild.60562d5b0b":"También significa que el registro de una ejecución es legible sin conocer el componente. Cada línea nombra el mundo a través del cual pasó la llamada, por lo que una ejecución que tocó dos mundos tiene cuatro que están demostrablemente vacíos, y un revisor puede establecerlo a partir del registro en lugar del código fuente. Los seis mundos se distribuyen bajo Apache 2.0, por lo que el límite en el que se basa un revisor es uno que pueden leer por sí mismos.","selvedge-rebuild.63f511d5c2":"Una única capacidad llamada external sería más simple de implementar e inútil para razonar, porque concederla no le dice nada a un revisor. Seis mundos significa que una concesión es una frase que alguien puede leer: este componente puede llamar a dos herramientas con nombre, leer un prefijo y nada más. También fija el límite que un operador puede conceder. Ese límite es visible en el recibo.","selvedge-rebuild.819cfda982":"El acceso externo de un componente son seis mundos con nombre: tool, storage, crypto, process, observe y gpu. Cada uno se declara antes del inicio; un mundo no declarado está ausente del entorno. Por lo tanto, una concesión nombra una operación y su límite, no una vaga promesa de acceso externo. El recibo registra esas concesiones por línea, por lo que un revisor puede ver qué mundos permanecieron vacíos sin leer la configuración del host.","selvedge-rebuild.cd867e3f2c":"y sin forma de ir más allá","selvedge-rebuild.06850e8469":"Seis mundos desde los que preguntar","selvedge-rebuild.09d7280b63":"Toda la superficie de capacidades","selvedge-rebuild.4e01209ac7":"Lo que deja la pregunta más simple: ¿qué puede pedir realmente un componente?","selvedge-rebuild.8539c9a9d8":"i9-13900KF, Rust 1.85.0, fat LTO.","selvedge-rebuild.07dc1b32f0":"Máquina con nombre","selvedge-rebuild.04f0c3f5a6":"Bien por debajo de un milisegundo.","selvedge-rebuild.c79e051c62":"Sandbox nuevo","selvedge-rebuild.46e30f38ba":"22 a 27 nanosegundos.","selvedge-rebuild.aff4ba3800":"Incrustación pura","selvedge-rebuild.7d8c6afdf3":"5.26 a 6.06 microsegundos.","selvedge-rebuild.a4d57a9359":"Límite acotado","selvedge-rebuild.122385cbbe":"medido en una máquina con nombre","selvedge-rebuild.224d7c9838":"Qué cuesta y qué compra","selvedge-rebuild.cc282eac1e":"INICIO EN SUBMILISEGUNDOS","selvedge-rebuild.9a1cbd0dc8":"LLAMADA DE 6 MICROSEGUNDOS","selvedge-rebuild.66b7fb60dc":"Lo que recupera el coste está al otro extremo. Una instancia nueva se levanta en mucho menos de un milisegundo en ese hardware, así que una sala por solicitud es asequible, no un lujo reservado para trabajos por lotes. Nada se traslada entre ejecuciones, y el grupo que las atiende adquiere y libera una ranura en tiempo constante.","selvedge-rebuild.6d37e34f65":"Medido en un Intel i9-13900KF, compilación de lanzamiento con optimización de tiempo de enlace completa, Rust 1.85.0, cien muestras por cifra tras un calentamiento de tres segundos. El conjunto de pruebas comparativas se incluye con el proyecto y fija la versión de todo lo que compara, por lo que los números se pueden reproducir en tu propia máquina.","selvedge-rebuild.5b487a198c":"La medición","selvedge-rebuild.ce2547f5f6":"La llamada acotada dentro del proceso cuesta de 5,26 a 6,06 microsegundos. Una incrustación simple cuesta de 22 a 27 nanosegundos. La diferencia es la comprobación de importación, los relojes sustituidos y el recibo, con un precio por llamada. Esas cifras provienen de una compilación de lanzamiento tras el calentamiento, no una promesa sobre cada host. El conjunto de pruebas comparativas tiene una versión fijada y se incluye con el proyecto, por lo que una contraparte puede repetir la comparación en su propia máquina.","selvedge-rebuild.eb0bea042b":"y este es el número","selvedge-rebuild.80244c6031":"El límite tiene un precio","selvedge-rebuild.59f208dd86":"Medido, con las condiciones","selvedge-rebuild.1c554966f5":"Todo eso sigue siendo tu propio archivo en tu propio disco, así que entrega el cheque a otra persona.","selvedge-rebuild.1abf201fe1":"Lo que el registro admitió o retiró.","selvedge-rebuild.c4a1e99a74":"Artefacto entró o salió","selvedge-rebuild.99dc0fd69a":"Cuando se rechazó a un cliente.","selvedge-rebuild.14681ed6ee":"Tasa o tamaño cumplido","selvedge-rebuild.da84e101f9":"Qué límite terminó qué ejecución.","selvedge-rebuild.c7deb27f03":"Presupuesto agotado","selvedge-rebuild.dfd95f1763":"Política, artefacto, motivo y comprobaciones.","selvedge-rebuild.de43b346ca":"Capacidad denegada","selvedge-rebuild.0860379105":"decisiones, no llamadas","selvedge-rebuild.770ce14a0d":"De qué trata una entrada","selvedge-rebuild.d302fd1542":"ROTACIÓN","selvedge-rebuild.736d1d19bd":"LA CADENA SOBREVIVE","selvedge-rebuild.0f26f75355":"UNA LÍNEA, UN HASH","selvedge-rebuild.4fd6822dee":"Ese es el tipo de registro que merece la pena verificar, porque es el tipo del que cualquiera discute. Nadie discute que se entró en una función. Discuten si un componente debería haber tenido permiso para acercarse a un registro de cliente en primer lugar, y eso es una línea en este archivo con un hash a cada lado. La decisión queda disponible para un revisor posterior.","selvedge-rebuild.52fc58dd92":"Ocho tipos de entradas entran, y cada uno de ellos es una decisión, no una llamada. Una entrada de aplicación de política lleva el identificador de política, el resumen del artefacto, el resultado, el motivo de una denegación y la lista de capacidades comprobadas para llegar a ella. Admisión, ejecución iniciada, ejecución completada, violación de límite de recursos, límite de tasa, límite de tamaño y extracción de artefacto completan el resto.","selvedge-rebuild.dc375c42ba":"El archivo de auditoría es un objeto por línea. Cada línea calcula el hash de su propio contenido junto con el hash anterior; elimina una y todos los hashes posteriores dejan de coincidir. La rotación lleva el último hash al siguiente archivo como ancla. Las entradas describen decisiones como aplicación de política, admisión, finalización de ejecución, límites de tasa o tamaño y una extracción de artefacto. Un revisor posterior puede preguntar por qué se rechazó una ejecución, no solo si se produjo una llamada.","selvedge-rebuild.dfc80074cc":"así que una eliminación se nota","selvedge-rebuild.69fcfe76f1":"Cada línea contiene el último","selvedge-rebuild.aee1333814":"El archivo de auditoría","selvedge-rebuild.5a622af936":"La misma disciplina, aplicada a las decisiones que alguien discutirá más tarde.","selvedge-rebuild.fb3c095122":"Una raíz en un tamaño pasado.","selvedge-rebuild.a6b6f9fa4d":"¿Cuál era la raíz?","selvedge-rebuild.9410fb5d00":"Una cabecera de árbol firmada.","selvedge-rebuild.25c2799dca":"¿Cuál es la raíz?","selvedge-rebuild.37a62a6d90":"Una prueba de consistencia entre tamaños de árbol.","selvedge-rebuild.39a9a225ab":"¿Ha cambiado?","selvedge-rebuild.13d3c8a85e":"Un camino corto del artefacto a la raíz.","selvedge-rebuild.0791d2b497":"¿Está dentro?","selvedge-rebuild.7729d17652":"sin confiar en su operador","selvedge-rebuild.12b003c6ac":"Cuatro preguntas que responde","selvedge-rebuild.e533871af4":"CABECERA FIRMADA","selvedge-rebuild.e9912b4293":"CONSISTENCIA","selvedge-rebuild.830294fe4a":"PRUEBA DE INCLUSIÓN","selvedge-rebuild.15627b2116":"La eliminación es lo que la forma hace caro. Saca una entrada y todas las pruebas que alguien tenga sobre esa parte del árbol dejarán de verificarse, en su máquina, sin que nadie tenga que estar mirando. Esa propiedad es lo que un cliente compra cuando pide una prueba de inclusión en lugar de una captura de pantalla.","selvedge-rebuild.0986321b82":"Un cliente conserva la raíz que le entregaron, y toda afirmación posterior sobre el registro debe coincidir con la raíz que ya tiene en sus manos. Nada en esa comprobación implica a quien gestiona el registro. El cliente conserva esa evidencia de forma independiente, por lo que la comprobación sigue siendo posible incluso cuando el operador no tiene nada que añadir.","selvedge-rebuild.af125678b5":"Cada artefacto admitido se añade a un árbol de Merkle: las hojas usan el prefijo 0x00 y los nodos internos 0x01. La inclusión en un registro de un millón de entradas requiere veinte hashes, por lo que un cliente puede comprobarlo en su propia máquina. Una cabecera de árbol firmada fija la raíz en un tamaño, mientras que las pruebas de consistencia muestran que las raíces posteriores la extienden en lugar de reemplazarla. El operador aporta la evidencia; el cliente realiza la comprobación.","selvedge-rebuild.85aa50a3b8":"a alguien fuera de él","selvedge-rebuild.6f39cde263":"El registro se demuestra a sí mismo","selvedge-rebuild.0a295dee94":"El registro de solo añadidura","selvedge-rebuild.e77dce4f9b":"Admitir un artefacto es una cosa. Demostrar después que lo admitiste es otra.","selvedge-rebuild.86aa1f5eed":"Viene con el artefacto y se reproduce en la verificación.","selvedge-rebuild.343cb675ac":"Espacio de nombres elegible para este tipo.","selvedge-rebuild.709a23220f":"Nombre","selvedge-rebuild.f8123c295a":"Primeros cuatro bytes, nunca un nombre de archivo.","selvedge-rebuild.fc92e820c6":"Longitud correcta, hexadecimal y presente.","selvedge-rebuild.6e105ad7a3":"y dónde se lee la prueba","selvedge-rebuild.1618f58781":"Qué se comprueba en un envío","selvedge-rebuild.e185f9f7d4":"PRUEBA PRESENTE","selvedge-rebuild.e4360fc330":"BYTES MÁGICOS","selvedge-rebuild.6d4b74c092":"LOOPBACK O TOKENS","selvedge-rebuild.33e95b7d0e":"La prueba en sí se reproduce donde se verifica el artefacto, lo que mantiene la puerta rápida y pone el núcleo donde tiene tiempo para trabajar. La puerta decide identidad y elegibilidad en trabajo constante por envío; el núcleo decide la verdad. Por lo tanto, una prueba lenta no puede convertirse en una razón para admitir un artefacto antes de que se haya comprobado.","selvedge-rebuild.175ed9b192":"Si se inicia el registro en una dirección que no sea de bucle local con la autenticación por token desactivada, se niega a arrancar. Si se activa la autenticación con una lista de tokens vacía, también lo rechaza. La implementación insegura no está disponible en lugar de estar desaconsejada, por lo que un error de configuración se manifiesta como un error de inicio inmediato.","selvedge-rebuild.fc1d256e62":"El registro determina el tipo a partir de los primeros cuatro bytes del artefacto, no de su extensión ni de su manifiesto. Su resumen debe ser válido y estar presente, su espacio de nombres debe ajustarse a ese tipo, y debe ir acompañado de una prueba. El servicio también rechaza un inicio inseguro en una dirección que no sea de bucle local sin autenticación por token, y rechaza una lista de tokens vacía cuando la autenticación está habilitada. La identidad, la forma y la prueba se comprueban antes de almacenar nada.","selvedge-rebuild.027f67dd55":"antes de almacenar nada","selvedge-rebuild.3d6b6cb540":"Un push se comprueba de cuatro maneras","selvedge-rebuild.583ed36f97":"Control de admisión","selvedge-rebuild.1914cd4ce8":"La puerta decide qué entra; el núcleo decide qué es verdad.","selvedge-rebuild.b69c347e7f":"Cada paso recibe un veredicto.","selvedge-rebuild.c0f85d6679":"Replay","selvedge-rebuild.f97399239c":"Analizado en el núcleo.","selvedge-rebuild.cdde4f20ba":"Pasos","selvedge-rebuild.c318427ef6":"Analizado solo después de que encaje.","selvedge-rebuild.6f95f40eae":"Archivo de cláusulas","selvedge-rebuild.1e9e6eecd0":"Comparado con el límite antes del análisis.","selvedge-rebuild.a97f5adbde":"Tamaño declarado","selvedge-rebuild.1f9c89d51e":"cada uno comprobado, ninguno asumido","selvedge-rebuild.e619c9a6b2":"Cuatro cosas en torno a una prueba","selvedge-rebuild.7fa302aed3":"TAMAÑO PRIMERO","selvedge-rebuild.8a20135ce2":"REPRODUCIDO","selvedge-rebuild.24704c8edc":"LRAT Y ALETHE","selvedge-rebuild.29f977d6d0":"El trabajo se centró en lo que lo rodea. Las raíces de confianza se mantienen explícitamente en lugar de heredarse de cualquier almacén que la máquina tenga, la revocación lleva un intervalo de actualización para que una retirada llegue sin esperar a una fecha de caducidad, y un token de marca de tiempo tiene su propia firma comprobada antes de que se crea su hora. Las firmas de Cosign se verifican contra una clave y una firma en base64, por lo que los artefactos firmados en el ecosistema más amplio llegan ya comprobables.","selvedge-rebuild.f0f219cc1b":"Un certificado de Selvedge es deliberadamente pequeño. Es una firma Ed25519 sobre una clave pública, un emisor, un sujeto y los dos extremos de una ventana de validez, por lo que no hay nada en él que deba extraerse de un formato que controle otra persona. Su función sigue siendo limitada: decir qué emisor firmó qué sujeto durante qué período, sin pedir a un verificador que desempaquete un documento amplio primero. Sigue siendo legible para un verificador independiente. Su alcance no se deja a la inferencia.","selvedge-rebuild.f626b7a7da":"Bajo la superficie","selvedge-rebuild.776d70676a":"Una prueba adjunta a un artefacto es una afirmación hasta que Selvedge la reproduce. Las pruebas LRAT y Alethe se analizan y comprueban paso a paso mediante un núcleo de pruebas, con un límite de tamaño aplicado antes de que comience el análisis. Las raíces de confianza, la actualización de revocación y las firmas de marca de tiempo se comprueban alrededor de ese núcleo, mientras que las firmas de Cosign se verifican contra su clave y firma proporcionadas. El límite sigue siendo lo suficientemente pequeño para que un verificador independiente lo inspeccione.","selvedge-rebuild.438689443c":"y reproducido paso a paso","selvedge-rebuild.1ed9eb8043":"La prueba se vuelve a comprobar","selvedge-rebuild.77b6e89fee":"Pruebas y certificados","selvedge-rebuild.36ad1e8721":"La discusión se centra mucho más a menudo en el documento de la derecha, y ambos provienen de una misma ejecución.","selvedge-rebuild.36c042f601":"La salida, el error y el valor devuelto completan el registro.","selvedge-rebuild.43708b1ad0":"Flujos capturados","selvedge-rebuild.ae61a28e3a":"Cuánto trabajo se consumió.","selvedge-rebuild.ed58f29743":"Instrucciones","selvedge-rebuild.918feb5b79":"Qué perfil determinista se aplicó.","selvedge-rebuild.e5b7649e03":"Qué componente exacto se ejecutó.","selvedge-rebuild.60697a86b4":"Bytes del artefacto","selvedge-rebuild.a49fe57a20":"y sobre qué se toma cada uno","selvedge-rebuild.aeb0956f38":"Cuatro de los siete","selvedge-rebuild.07519769df":"TAMAÑO CONSTANTE","selvedge-rebuild.f9c0b723ec":"HASHES, NO REGISTROS","selvedge-rebuild.7531a92ec1":"SIETE CAMPOS","selvedge-rebuild.c35ff8c3a0":"El informe de ejecución establece qué se le permitió a la ejecución. Nombra las capacidades concedidas, la política que las concedió, los certificados que se verificaron, un hash de la configuración vigente y lo que la ejecución consumió en memoria máxima, tiempo de procesador e instrucciones. Esas dos preguntas siempre llegan juntas después de un incidente, y Selvedge las responde con dos documentos en lugar de uno que deba hacer ambas cosas.","selvedge-rebuild.b0b2377aff":"El registro establece si esto volvió a ocurrir, y es el documento que la gente espera estar discutiendo. En la práctica, discuten sobre el otro. Permite que un lector posterior pregunte si el mismo artefacto, entradas y configuración produjeron el resultado de nuevo. Esa es una pregunta histórica sobre el evento. El informe de ejecución responde a la otra pregunta: qué se le permitió hacer a la ejecución cuando ocurrió.","selvedge-rebuild.e88ce1c6ea":"Siete campos regresan de una ejecución completada y ninguno es prosa: resúmenes del artefacto y la configuración, instrucciones consumidas, resúmenes de la salida y del valor devuelto, y una huella del almacén que combina el trabajo con los flujos capturados. Sigue siendo pequeño tanto si la salida es una línea como un gigabyte. El informe de ejecución complementario registra capacidades, política, certificados, configuración y uso máximo de recursos, de modo que la misma ejecución responde tanto a qué ocurrió como a qué se le permitió hacer.","selvedge-rebuild.a219a2c15d":"y un informe demuestra el permiso","selvedge-rebuild.7eaab205c1":"Un registro demuestra la repetición","selvedge-rebuild.13380a7edb":"Dos documentos por ejecución","selvedge-rebuild.4077f0afa7":"Una comparación solo es tan buena como el registro que la respalda, así que lea lo que contiene el registro.","selvedge-rebuild.39f8833993":"Deje de leer; el resto es ruido.","selvedge-rebuild.c0084eb27a":"No es el mismo programa","selvedge-rebuild.64bc44871e":"Las ejecuciones no estaban configuradas de manera similar.","selvedge-rebuild.36e1b53299":"No comparable","selvedge-rebuild.9fc1d0cf34":"Mismo trabajo, bytes diferentes de salida.","selvedge-rebuild.d136230733":"El resultado cambió","selvedge-rebuild.6aee5fae01":"Un recuento diferente es una ruta de código diferente.","selvedge-rebuild.de89199753":"El trabajo cambió","selvedge-rebuild.95e99b8668":"por el campo en el que aterriza","selvedge-rebuild.1f218ead06":"Lo que te dice una diferencia","selvedge-rebuild.d5cf7685a8":"SIN VEREDICTO","selvedge-rebuild.d5a9df81ba":"ESPERADO Y OBTENIDO","selvedge-rebuild.ed299cc67f":"CAMPO POR CAMPO","selvedge-rebuild.a526ac7e2e":"Por eso la entrada está fijada y viaja con el artefacto. Esa es una línea en un procedimiento, y es la línea que decide si una comparación cierra un argumento o abre otro. Le da a la contraparte los mismos bytes para volver a ejecutar, sin tener que acordar primero qué entrada quería decir la comparación.","selvedge-rebuild.6615580bdf":"La lista nombra el campo que se movió, y el campo decide el diagnóstico. Solo el combustible es una ruta de código diferente. Combustible y salida juntos es un invitado que leyó algo que el otro no. Un resumen de configuración que difiere significa que las dos ejecuciones nunca fueron comparables, y un resumen de artefacto que difiere significa que nunca fueron el mismo programa.","selvedge-rebuild.8c8effaa95":"Selvedge recorre dos registros campo por campo y acumula cada diferencia con los valores esperados y reales. Combustible diferente y salida diferente son problemas diferentes, y la lista indica cuál tienes. No reduce un desajuste a una etiqueta de aprobado o fallido: un resumen de configuración identifica una configuración distinta, mientras que un resumen de artefacto identifica programas distintos. Solo el combustible apunta a un cambio de ruta; combustible más salida apunta a un invitado que leyó un valor diferente. El resultado le da a una contraparte una comprobación concreta siguiente en lugar de una discusión sobre un booleano.","selvedge-rebuild.646770fca0":"de los campos que se movieron","selvedge-rebuild.e6e4d5cded":"La reproducción devuelve una lista","selvedge-rebuild.c81ee5ef6b":"Dos ejecuciones, comparadas","selvedge-rebuild.66a522b7c5":"Por eso «¿se reprodujo?» obtiene una respuesta mejor que sí.","selvedge-rebuild.d76c40f0ce":"Copiar al escribir rápido o primer toque fijado.","selvedge-rebuild.f2c61a30e9":"Inicialización de memoria","selvedge-rebuild.c5abd185c9":"Detectado por velocidad o fijado por portabilidad.","selvedge-rebuild.72afcd7b6b":"Elección de instrucciones vectoriales","selvedge-rebuild.12d9267ba1":"Fuerte y barato, desde una semilla.","selvedge-rebuild.de76cb3681":"Ambas secuencias aleatorias","selvedge-rebuild.aa0c86bf67":"Época fija, el primero de enero de 2024.","selvedge-rebuild.be2bae9c5e":"Reloj de pared","selvedge-rebuild.76249575a8":"(eliminado, o decidido una vez)","selvedge-rebuild.32684a6c6c":"Fuentes de deriva","selvedge-rebuild.d5b4ab5d99":"PORTÁTIL POR ELECCIÓN","selvedge-rebuild.73b7c15756":"UNA SEMILLA","selvedge-rebuild.e5599ca3ea":"RELOJ FIJO","selvedge-rebuild.3228959407":"La configuración de determinismo incluye una comprobación que indica cuál de los dos tienes, por lo que la portabilidad es una decisión con una respuesta impresa en lugar de algo que se descubre cuando la reproducción de una contraparte no coincide. Fijar cuesta las unidades vectoriales más amplias en las máquinas que las tienen, y ese es todo el intercambio.","selvedge-rebuild.95523f0e77":"Dos ajustes deciden si el mismo artefacto toma el mismo camino a través del procesador en la máquina de otra persona: cómo se seleccionan las instrucciones vectoriales y cómo se inicializa la memoria. Detecta lo que tiene la máquina y la ejecución es más rápida. Fija ambos y la ejecución es portátil. Un verificador posterior necesita ese camino fijo.","selvedge-rebuild.b679796146":"Selvedge elimina fuentes de variación: un reloj fijo el 1 de enero de 2024 y ambas secuencias aleatorias sembradas desde un valor. El registro contiene un resumen de esa configuración, no los valores extraídos. Las instrucciones vectoriales y la inicialización de memoria también son elecciones explícitas: detéctalas por velocidad o fíjalas por portabilidad. Un verificador puede leer el hash del perfil y saber si se esperaba que una reproducción siguiera el mismo camino de máquina antes de comparar la salida.","selvedge-rebuild.0a6cfc8fac":"no es un ajuste para activar","selvedge-rebuild.1fd189502e":"El determinismo es resta","selvedge-rebuild.a7c3ed1772":"Resta, no configuración","selvedge-rebuild.0c47ffb9bb":"Un recuento de instrucciones solo significa algo si las instrucciones fueron las mismas dos veces.","selvedge-rebuild.adebd97359":"El combustible consumido se puede restar entre ejecuciones.","selvedge-rebuild.a2daaab559":"Cifra posterior","selvedge-rebuild.3d67ae7992":"El trabajo, en lugar de un reloj de pared, es el límite.","selvedge-rebuild.de6412fbe8":"Presupuesto de cero","selvedge-rebuild.15dcfdda9a":"La carga no mueve un recuento.","selvedge-rebuild.2202f5e805":"Mismo punto de parada","selvedge-rebuild.60440bc65a":"Contado mientras el invitado se ejecuta; cuando se agota, la ejecución termina.","selvedge-rebuild.63309fc99a":"Presupuesto de instrucciones","selvedge-rebuild.9bb4b0c4cd":"y qué compra el conteo","selvedge-rebuild.4f84d48da3":"Un límite","selvedge-rebuild.34b96ad39f":"IGUAL EN CUALQUIER CPU","selvedge-rebuild.c314cfa17b":"NO SEGUNDOS","selvedge-rebuild.62e2ede50f":"INSTRUCCIONES","selvedge-rebuild.d1536b89dd":"Las instrucciones consumidas son una propiedad de la ejecución. La cifra está en el registro, se puede restar, y una diferencia de ocho en nueve mil millones es lo primero que vale la pena mirar cuando dos ejecuciones no coinciden. Esa es toda la razón para contar trabajo en lugar de tiempo: el número sobrevive a la máquina en la que se tomó. Una nueva ejecución en otro hardware devuelve el mismo recuento o nombra el campo que se movió.","selvedge-rebuild.7aff67a600":"Un recuento también es una cifra que dos partes pueden confrontar. El tiempo transcurrido es una propiedad de la máquina que resultó estar libre, y nada útil se sigue de una diferencia en él. Mide la disponibilidad en el host, no el trabajo realizado por el invitado. El recuento, en cambio, describe trabajo que se puede comprobar de forma independiente.","selvedge-rebuild.72426f8729":"El tiempo transcurrido permite que el mismo artefacto pase en una máquina inactiva y falle en una ocupada. Selvedge limita una ejecución por el recuento de instrucciones gastado por el invitado, por lo que la carga no cambia ni la respuesta ni el punto en el que se detiene. El presupuesto se carga al trabajo del invitado en lugar de a la programación del host. Un tiempo de espera aún puede proteger una llamada de host bloqueada, pero no es la señal de reproducibilidad; el recuento de instrucciones registrado lo es.","selvedge-rebuild.8afbc5d594":"y el combustible mide el programa","selvedge-rebuild.03b2c4da91":"Una fecha límite mide un host","selvedge-rebuild.21a2c5f1aa":"Lo que realmente detiene una ejecución","selvedge-rebuild.1a78f4b9ca":"Una ejecución que no pide nada aún puede no terminar, y eso necesita un límite diferente.","selvedge-rebuild.4a92056b30":"Solo porque el comodín está escrito.","selvedge-rebuild.98f3f99f4d":"La misma importación con comodín","selvedge-rebuild.aca85a73fa":"Rechazado en lugar de asumido como inofensivo.","selvedge-rebuild.e4b5b433a2":"Una importación que nada clasifica","selvedge-rebuild.15c54f0161":"Reconocido pero ausente de la política. Se detiene aquí.","selvedge-rebuild.f998b59fb9":"Una interfaz de socket","selvedge-rebuild.b0449a2f1e":"Nombrada en la política y proporcionada por el host.","selvedge-rebuild.83ae8486f7":"Los flujos estándar","selvedge-rebuild.a46cc41ece":"una política, cuatro respuestas","selvedge-rebuild.161836a8f2":"Cuatro solicitudes","selvedge-rebuild.366a00a60f":"FALLA CERRADO","selvedge-rebuild.4d3b321af0":"COMPROBADO PRIMERO","selvedge-rebuild.063d13205c":"IMPORTACIONES DECLARADAS","selvedge-rebuild.0727104688":"En Selvedge el caso desconocido falla cerrado, y la única forma de abrirlo es un comodín que esté en la política como entrada propia. Un permiso que no decidiste no está disponible, y un permiso que sí decidiste es legible para quien lea la política el próximo año sin tener que reconstruir el razonamiento. Esa entrada es revisable, y eliminarla cierra el caso de nuevo.","selvedge-rebuild.4adda50d9a":"El caso desconocido es donde los entornos de ejecución suelen ceder. Una solicitud no reconocida se deja pasar con el razonamiento de que probablemente sea inofensiva, y así es como llega una capacidad que nadie eligió, que nadie posee y que nadie puede fechar. Un límite solo sigue siendo inteligible cuando se cierra en ese caso preciso.","selvedge-rebuild.2b1f8f5acb":"Un artefacto que le pide la red a Selvedge nunca se inicia. Cada importación declarada se recorre antes de la instanciación desde los tres constructores de instancia; una importación fuera de la política lo detiene todo, y una importación que ninguna política puede clasificar falla en modo cerrado a menos que se haya concedido un comodín a propósito. El recorrido ocurre antes de que se ejecute cualquier constructor de módulo, por lo que una importación denegada no puede filtrar una instancia parcial. La política de importación es, por tanto, una condición de inicio revisable, no un filtro de ejecución de mejor esfuerzo.","selvedge-rebuild.c701cfb7bc":"se rechaza, no se deja pasar","selvedge-rebuild.11f61b8cea":"Una importación que no puede clasificar","selvedge-rebuild.e8f740737e":"Antes de la instanciación","selvedge-rebuild.dcd4ba984c":"Una habitación vacía es la mitad. También algo tiene que rechazar antes de que comience el código.","selvedge-rebuild.0e3f683921":"Sin directorio, socket, variable ni argumento.","selvedge-rebuild.b31a999e3e":"Todo lo demás","selvedge-rebuild.b6f2a8aafd":"Los bytes del llamador, o un flujo cerrado.","selvedge-rebuild.ed8d995cba":"Entrada estándar","selvedge-rebuild.619f80b0f4":"El mismo tratamiento. No se escribe nada en otro lugar.","selvedge-rebuild.be84302eb7":"Error estándar","selvedge-rebuild.28c9b400a8":"Capturado, digerido y devuelto con la ejecución.","selvedge-rebuild.f0c190c767":"Salida estándar","selvedge-rebuild.80384c78ce":"y lo que no está ahí para cruzar","selvedge-rebuild.fbda0b5df6":"Lo que cruza la pared","selvedge-rebuild.f317e1836d":"SIN ENTORNO","selvedge-rebuild.772e054092":"SIN ARCHIVOS","selvedge-rebuild.61176d0dd1":"SIN RED","selvedge-rebuild.a4a4906f32":"La sustracción se mantiene firme. No hay sistema de archivos que conceder ni red que retener, así que el peor caso depende de la forma del anfitrión, no de que alguien mantenga una lista correcta. Una política de Selvedge que construyas tú mismo comienza con una lista de capacidades vacía y determinismo requerido, y la habitación que describe es la que obtienes.","selvedge-rebuild.d987579a1c":"Una lista de permisos es algo que alguien mantiene, y todo lo mantenido se desvía. Una versión abre un directorio para un diagnóstico, el diagnóstico termina en verano, la entrada le sobrevive, y dos años después nadie puede decir qué depende de ella. Esa historia es lo que un recibo preserva para una revisión posterior.","selvedge-rebuild.a97c12e865":"Pregunta qué puede alcanzar un componente dentro de Selvedge y la respuesta son tres flujos: salida estándar, error estándar y entrada estándar cuando el llamador la proporciona. No se abre ningún directorio, socket, variable de entorno ni lista de argumentos; el anfitrión no tiene ninguna ruta de código que abra uno.","selvedge-rebuild.d9a7d95854":"y no hay un cuarto","selvedge-rebuild.dcfbae366b":"Un invitado recibe tres flujos","selvedge-rebuild.fbadde4854":"Lo que se le entrega a un invitado","selvedge-rebuild.fallback-record":"registro","selvedge-rebuild.fallback-check":"verificación","selvedge-rebuild.illustrative":"ILUSTRATIVO","selvedge-rebuild.declared":"declarada","selvedge-rebuild.recorded":"registrada","selvedge-rebuild.banner.eng-unchecked.kicker":"Lo que significa una aprobación","selvedge-rebuild.banner.eng-unchecked.title":"Cada afirmación se prueba","selvedge-rebuild.banner.eng-unchecked.body":"Un artefacto puede llevar afirmaciones sobre sí mismo: un resumen de firma, un resumen de certificado, un resumen de política. Cada uno es una promesa de que algo se verificó, y cada uno necesita material antes de poder verificarse en absoluto. Selvedge insiste en ese material. Un artefacto que hace referencia a un resumen de firma se verifica una vez que se proporcionan la firma separada y la clave. Uno que hace referencia a un resumen de certificado se verifica una vez que hay un verificador de cadena para leerlo. Uno que hace referencia a un resumen de política se verifica en la ruta consciente de la política que lo produjo.","selvedge-rebuild.banner.eng-unchecked.instrument-header":"Material de verificación","selvedge-rebuild.banner.eng-unchecked.instrument-tag":"Requerido","selvedge-rebuild.banner.eng-unchecked.verdict-label":"Resultado de la aprobación","selvedge-rebuild.banner.eng-unchecked.item-1-label":"Resumen de firma","selvedge-rebuild.banner.eng-unchecked.item-1-body":"Firma separada y clave.","selvedge-rebuild.banner.eng-unchecked.item-2-label":"Resumen de certificado","selvedge-rebuild.banner.eng-unchecked.item-2-body":"Verificador de cadena.","selvedge-rebuild.banner.eng-unchecked.item-3-label":"Resumen de política","selvedge-rebuild.banner.eng-unchecked.item-3-body":"Ruta consciente de la política.","selvedge-rebuild.banner.eng-unchecked.item-4-label":"Artefacto + ajustes","selvedge-rebuild.banner.eng-unchecked.item-4-body":"Verificado en cada ejecución.","selvedge-rebuild.banner.eng-unchecked.verdict":"Una aprobación cubre cada afirmación en el artefacto.","selvedge-rebuild.banner.eng-unchecked.footline":"Por eso una aprobación de Selvedge significa lo mismo para la parte que la recibe.","selvedge-rebuild.banner.eng-handover.kicker":"Quién tiene la evidencia","selvedge-rebuild.banner.eng-handover.title":"Entregas cuatro cosas","selvedge-rebuild.banner.eng-handover.body":"Una segunda parte que verifica una ejecución de Selvedge necesita cuatro cosas: los bytes del artefacto, la entrada que se le dio a esos bytes, los ajustes de determinismo que usó la ejecución y el registro que produjo. Los cuatro son archivos. Los cuatro viajan por cualquier medio que ustedes dos ya usen, y ninguno es una credencial, una licencia o un punto final.","selvedge-rebuild.banner.eng-handover.instrument-header":"Entrega para reproducción","selvedge-rebuild.banner.eng-handover.instrument-tag":"Sin conexión","selvedge-rebuild.banner.eng-handover.verdict-label":"Reproducción independiente","selvedge-rebuild.banner.eng-handover.item-1-label":"Bytes del artefacto","selvedge-rebuild.banner.eng-handover.item-1-body":"Lo que se ejecutó.","selvedge-rebuild.banner.eng-handover.item-2-label":"Entrada proporcionada","selvedge-rebuild.banner.eng-handover.item-2-body":"Sobre lo que se ejecutó.","selvedge-rebuild.banner.eng-handover.item-3-label":"Ajustes","selvedge-rebuild.banner.eng-handover.item-3-body":"Cómo se ejecutó.","selvedge-rebuild.banner.eng-handover.item-4-label":"Tu registro","selvedge-rebuild.banner.eng-handover.item-4-body":"Qué comparar.","selvedge-rebuild.banner.eng-handover.verdict":"Su máquina, su comparación, su lista.","selvedge-rebuild.banner.eng-handover.footline":"Cuatro archivos, y la parte que duda de ti es la parte que comprueba.","selvedge-rebuild.banner.biz-blind.kicker":"Por qué se transfiere un resultado de prueba","selvedge-rebuild.banner.biz-blind.title":"No puede saberlo","selvedge-rebuild.banner.biz-blind.body":"El software que puede ver su entorno puede comportarse de forma diferente en él. Un componente que lee la fecha puede comportarse de una manera antes de un límite y de otra después. Uno que lee el nombre de la máquina puede ser cuidadoso en un entorno de prueba y descuidado en producción. Uno que puede ver lo cargada que está la máquina puede tomar un atajo solo cuando es poco probable que alguien esté midiendo. Eso es lo que hace que una prueba de aceptación sea algo que superaste una vez, no algo que sabes.","selvedge-rebuild.banner.biz-blind.instrument-header":"Límite neutral respecto al proveedor","selvedge-rebuild.banner.biz-blind.instrument-tag":"Mismas condiciones","selvedge-rebuild.banner.biz-blind.verdict-label":"Resultado transferible","selvedge-rebuild.banner.biz-blind.compare-left":"Sin dependencia retenida","selvedge-rebuild.banner.biz-blind.compare-right":"Límite visible","selvedge-rebuild.banner.biz-blind.item-1-label":"Sin cuenta","selvedge-rebuild.banner.biz-blind.item-1-body":"Se ejecuta en tu hardware.","selvedge-rebuild.banner.biz-blind.item-2-label":"Sin clave de proveedor","selvedge-rebuild.banner.biz-blind.item-2-body":"Nada retenido para ti.","selvedge-rebuild.banner.biz-blind.item-3-label":"Sin red oculta","selvedge-rebuild.banner.biz-blind.item-3-body":"Sin vía de exfiltración.","selvedge-rebuild.banner.biz-blind.item-4-label":"Un informe fechado","selvedge-rebuild.banner.biz-blind.item-4-body":"El permiso está por escrito.","selvedge-rebuild.banner.biz-blind.verdict":"Un resultado de prueba se transfiere porque el límite es el mismo.","selvedge-rebuild.banner.biz-blind.footline":"La evidencia es útil para alguien que no estaba en la sala.","selvedge-rebuild.banner.biz-fresh.kicker":"Por qué el aislamiento es asequible","selvedge-rebuild.banner.biz-fresh.title":"Una sala nueva cada vez","selvedge-rebuild.banner.biz-fresh.body":"El aislamiento suele racionarse. Montar un entorno limpio cuesta lo suficiente como para reservarlo para trabajos por lotes, y todo lo interactivo comparte un proceso de larga duración donde el residuo de un trabajo es la condición inicial del siguiente. Esa es una decisión de coste, y casi siempre se presenta como una arquitectura.","selvedge-rebuild.banner.biz-fresh.instrument-header":"Secuencia de sala nueva","selvedge-rebuild.banner.biz-fresh.instrument-tag":"Por solicitud","selvedge-rebuild.banner.biz-fresh.verdict-label":"Conclusión operativa","selvedge-rebuild.banner.biz-fresh.item-1-label":"Arranque en frío","selvedge-rebuild.banner.biz-fresh.item-1-body":"Submilisegundo.","selvedge-rebuild.banner.biz-fresh.item-2-label":"Una solicitud","selvedge-rebuild.banner.biz-fresh.item-2-body":"Una sala.","selvedge-rebuild.banner.biz-fresh.item-3-label":"Sin arrastre","selvedge-rebuild.banner.biz-fresh.item-3-body":"Nada compartido por defecto.","selvedge-rebuild.banner.biz-fresh.item-4-label":"Un registro","selvedge-rebuild.banner.biz-fresh.item-4-body":"La entrega es explícita.","selvedge-rebuild.banner.biz-fresh.verdict":"El aislamiento es asequible cuando la sala es barata.","selvedge-rebuild.banner.biz-fresh.footline":"Un proveedor no puede heredar la sala de ayer.","selvedge-rebuild.banner.con-code.kicker":"Qué contiene el recibo","selvedge-rebuild.banner.con-code.title":"Un código no es una copia","selvedge-rebuild.banner.con-code.body":"Un recibo que demostrara qué salió de tu carta tendría que contener la carta, y esa es la parte sobre la que la gente pregunta con toda razón. Selvedge no guarda ninguna copia. Lo que guarda es un código corto calculado a partir del contenido, y el cálculo solo funciona en una dirección.","selvedge-rebuild.banner.con-code.instrument-header":"Libro de recibos","selvedge-rebuild.banner.con-code.instrument-tag":"Reproducible","selvedge-rebuild.banner.con-code.verdict-label":"Qué demuestra","selvedge-rebuild.banner.con-code.item-1-label":"El artefacto","selvedge-rebuild.banner.con-code.item-1-body":"Qué programa.","selvedge-rebuild.banner.con-code.item-2-label":"La entrada","selvedge-rebuild.banner.con-code.item-2-body":"Qué vio.","selvedge-rebuild.banner.con-code.item-3-label":"La configuración","selvedge-rebuild.banner.con-code.item-3-body":"Qué se fijó.","selvedge-rebuild.banner.con-code.item-4-label":"El recibo","selvedge-rebuild.banner.con-code.item-4-body":"Qué comparar.","selvedge-rebuild.banner.con-code.verdict":"Un código corto nombra la ejecución; no pretende ser la fuente.","selvedge-rebuild.banner.con-code.footline":"El objeto útil es lo bastante pequeño para entregarlo.","selvedge-rebuild.internal-numeric":"El cálculo interno, el almacenamiento y la acumulación utilizan representaciones binarias, de enteros, de punto fijo o adaptativas de enteros/punto fijo. El punto flotante solo se acepta en un límite externo declarado y se convierte explícitamente antes de que comience el trabajo interno. No hay alternativa interna de punto flotante.","selvedge-rebuild.banner.eng-unchecked.title-accent":"antes de que se dé un aprobado","selvedge-rebuild.banner.eng-unchecked.body-second":"Pídele a Selvedge que verifique sin el material y el error nombra exactamente lo que falta, lo que convierte un artefacto no verificable en una solicitud de la única cosa que lo resolvería. El efecto práctico es que un resultado verde de Selvedge lleva su significado completo dondequiera que viaje: cada afirmación que hace el artefacto fue probada, con las mismas herramientas, contra material que alguien realmente proporcionó.","selvedge-rebuild.banner.eng-handover.title-accent":"y la comprobación es suya","selvedge-rebuild.banner.eng-handover.body-second":"Ellos ejecutan la reproducción en su propia máquina con su propia compilación de las herramientas, y lo que vuelve es su lista de campos que difieren, no tu garantía sobre la ejecución. Nada en ese camino necesita una cuenta, una clave que nosotros tengamos o un servicio nuestro al que se pueda acceder, por lo que la comprobación funciona durante una interrupción, en una red aislada y años después de la ejecución que resuelve. Eso es lo que hace que un registro de Selvedge valga la pena citarlo en un contrato: la parte que desconfía de ti es la parte que lo verifica.","selvedge-rebuild.banner.biz-blind.title-accent":"que se está probando","selvedge-rebuild.banner.biz-blind.body-second":"Un componente que se ejecuta en Selvedge no tiene nada que leer. El reloj que se le da nunca se mueve de un instante fijo. No hay entorno, ni argumentos, ni red ni directorio, por lo que no hay nombre de máquina, ni etiqueta de despliegue ni forma de saber si esta es la cuarta ejecución o la primera. El comportamiento aún puede depender de la entrada, que es exactamente por qué la entrada es lo que fijas y entregas. Lo que no puede depender es de la fecha, el host o la ocasión, por lo que una ejecución que se comportó en aceptación se comporta igual en noviembre en el hardware de otra persona.","selvedge-rebuild.banner.biz-fresh.title-accent":"porque una sala es barata","selvedge-rebuild.banner.biz-fresh.body-second":"Levantar una instancia nueva de Selvedge tarda mucho menos de un milisegundo en la máquina donde el proyecto hace las mediciones, lo que sitúa una por petición dentro del presupuesto de casi cualquier cosa interactiva. Nada se transmite entre ellas salvo que se entregue deliberadamente, y lo que se entrega aparece en el registro como algo que se entregó. La versión comercial de esa frase es corta: el error de un trabajo es el error de un trabajo, y el radio de la explosión es una sala que ya no existe.","selvedge-rebuild.banner.con-code.title-accent":"de la cosa de la que procede","selvedge-rebuild.banner.con-code.body-second":"El mismo contenido siempre produce el mismo código, así que el código basta para demostrar que nada ha cambiado. El código no se puede convertir de nuevo en el contenido, así que no revela nada sobre cuál era el contenido. Una ejecución sobre un informe de doscientas páginas deja un registro del mismo tamaño que una ejecución sobre una sola línea, y ningún registro contiene una palabra de aquello de lo que trataba. Puedes conservarlo durante una década, o entregárselo a alguien que no tiene permiso para leer el documento, y no revelar nada en absoluto.","selvedge-rebuild.banner.eng-record.kicker":"Lo que queda después de la ejecución","selvedge-rebuild.banner.eng-record.title":"El proceso se ha detenido","selvedge-rebuild.banner.eng-record.title-accent":"el registro sigue respondiendo","selvedge-rebuild.banner.eng-record.body":"Una ejecución completada debería dejar algo más que un indicador de éxito. Selvedge vincula el artefacto, la entrada, los ajustes de determinismo y el trabajo medido con las salidas que se obtuvieron. El registro es un conjunto de campos, no un relato en prosa escrito después del evento.","selvedge-rebuild.banner.eng-record.body-second":"Una segunda máquina puede reproducir el mismo material y comparar el registro campo por campo. Si el artefacto, los ajustes, el número de instrucciones o la salida difieren, el desacuerdo tiene un lugar con nombre en lugar de una afirmación general de que la ejecución no se pudo reproducir.","selvedge-rebuild.banner.eng-record.instrument-header":"Recibo de ejecución","selvedge-rebuild.banner.eng-record.instrument-tag":"Campo por campo","selvedge-rebuild.banner.eng-record.verdict-label":"Comprobación de reproducción","selvedge-rebuild.banner.eng-record.item-1-label":"Artefacto + entrada","selvedge-rebuild.banner.eng-record.item-1-body":"El material que entró.","selvedge-rebuild.banner.eng-record.item-2-label":"Ajustes de determinismo","selvedge-rebuild.banner.eng-record.item-2-body":"Las condiciones fijadas para la ejecución.","selvedge-rebuild.banner.eng-record.item-3-label":"Instrucciones consumidas","selvedge-rebuild.banner.eng-record.item-3-body":"El trabajo medido.","selvedge-rebuild.banner.eng-record.item-4-label":"Resúmenes de salida","selvedge-rebuild.banner.eng-record.item-4-body":"Los valores que se comparan.","selvedge-rebuild.banner.eng-record.verdict":"Cuando una reproducción diverge, el registro señala el campo donde ocurrió.","selvedge-rebuild.banner.eng-record.footline":"La evidencia sigue siendo útil después de que el proceso que la produjo haya desaparecido.","selvedge-rebuild.banner.biz-transfer.kicker":"Lo que sobrevive a un cambio de proveedor","selvedge-rebuild.banner.biz-transfer.title":"Conserva el resultado aceptado","selvedge-rebuild.banner.biz-transfer.title-accent":"sin conservar al proveedor","selvedge-rebuild.banner.biz-transfer.body":"Un resultado de aceptación se vuelve frágil cuando solo el proveedor puede reproducirlo. La cuenta, el servicio y el banco de pruebas interno pasan entonces a formar parte de la evidencia, incluso si el contrato dice que el software en sí es portable.","selvedge-rebuild.banner.biz-transfer.body-second":"Selvedge hace concreto el traspaso. Conserva el artefacto, las capacidades permitidas, los ajustes de ejecución fijados y el registro resultante. Un proveedor sustituto o un revisor independiente puede reproducir esos archivos en su propia máquina sin pedir al proveedor original que reabra nada.","selvedge-rebuild.banner.biz-transfer.instrument-header":"Traspaso independiente","selvedge-rebuild.banner.biz-transfer.instrument-tag":"Sin servicio retenido","selvedge-rebuild.banner.biz-transfer.verdict-label":"Límite comercial","selvedge-rebuild.banner.biz-transfer.item-1-label":"Artefacto aceptado","selvedge-rebuild.banner.biz-transfer.item-1-body":"Los bytes exactos que pasaron.","selvedge-rebuild.banner.biz-transfer.item-2-label":"Conjunto de permisos","selvedge-rebuild.banner.biz-transfer.item-2-body":"El límite dentro del cual se ejecutó.","selvedge-rebuild.banner.biz-transfer.item-3-label":"Paquete de reproducción","selvedge-rebuild.banner.biz-transfer.item-3-body":"Archivos que el comprador puede conservar.","selvedge-rebuild.banner.biz-transfer.item-4-label":"Comparación independiente","selvedge-rebuild.banner.biz-transfer.item-4-body":"No se requiere cuenta de proveedor.","selvedge-rebuild.banner.biz-transfer.verdict":"La evidencia cambia de manos sin crear una nueva dependencia.","selvedge-rebuild.banner.biz-transfer.footline":"La parte que recibe el resultado también recibe los medios para comprobarlo.","slv-visuals.chrome-meta":"ejecutar registro","slv-visuals.661f13bc63":"COMPROBADO","slv-visuals.bd63dd7336":"declarado, acotado, registrado","slv-visuals.ac7ff256a6":"SEL","slv-visuals.44fd37f1ed":"Este mundo está sellado porque no fue declarado.","slv-visuals.74140b3eb3":"La operación cruza la sala mientras la clave permanece fuera.","slv-visuals.a95af2a207":"Un prefijo de ruta es visible; esto es una ventana, no un sistema de archivos.","slv-visuals.5265953d8b":"Hay dos herramientas nombradas; una herramienta sin nombre no tiene apertura.","slv-visuals.43dd7aa30b":"La lista concedida está fechada en el informe, por lo que la revisión se convierte en una consulta.","slv-visuals.bcaf2f4bea":"La capacidad fue denegada antes de la ejecución, con un código estable para el runbook.","slv-visuals.f712baba7f":"El combustible y la salida se movieron: pregunte qué entrada recibió realmente el invitado.","slv-visuals.f4435747db":"El combustible se movió mientras la salida se mantuvo: inspeccione la compilación del host o la ruta de código.","slv-visuals.e18ddd4366":"Sin hallazgos. Fijar renuncia a unidades vectoriales más amplias, y la portabilidad ahora es una lectura.","slv-visuals.f1a5ccbfac":"Dos hallazgos: la selección de vectores y la inicialización de memoria dependen del host.","slv-visuals.interaction.choices":"Opciones visuales de Selvedge","slv-visuals.interaction.sequence":"Secuencia de Selvedge","slv-visuals.interaction.worlds":"Mundos de capacidad de Selvedge","slv-visuals.interaction.tree":"Árbol de prueba de inclusión de Selvedge","slv-visuals.fallback-hash":"hash","slv-visuals.fallback-fact":"hecho","slv-visuals.control.detect":"detección-ajustada","slv-visuals.control.pinned":"fijado","slv-visuals.control.fuel":"combustible movido","slv-visuals.control.output":"combustible + salida movidos","slv-visuals.control.policy":"política denegada","slv-visuals.control.allowed":"política permitida","slv-visuals.control.tool":"herramienta","slv-visuals.control.storage":"almacenamiento","slv-visuals.control.crypto":"criptografía","slv-visuals.control.observe":"observar","toc-rail.f5cbdf6bfb":"Contenido"}
