Documentación / Uso / Fixtures
Fixtures
Un fixture es un snapshot guardado del ecosistema. Pásalo con --fixture para ejecutar sin Raven: en pruebas, máquinas sin conexión y CI.
Terminal
kedgeway diagnose ./my-contract --fixture snapshot.jsonEstructura
| Campo | Tipo | Notas |
|---|---|---|
observedAt | string | Obligatorio. Cuándo se tomó el snapshot, en ISO 8601. |
sorobanSdk.currentMajor | integer o null | Obligatorio. Con null, los hallazgos de soroban-sdk pasan a SDK_UNKNOWN. |
sorobanSdk.deprecatedVersions | string[] | Obligatorio. Versiones listadas como obsoletas. Solo se comparan sus majors. |
sorobanSdk.source | string | Obligatorio. Se muestra como fuente en los hallazgos. |
jsSdk.currentVersion | string o null | Obligatorio. Con null, los hallazgos de JavaScript pasan a JS_SDK_UNKNOWN. |
jsSdk.source | string | Obligatorio. |
protocolCurrent | number o null | Opcional. Por defecto es null. |
notes | array | Obligatorio, puede estar vacío. Cada elemento tiene title, url y snippet (todos strings). |
degraded | string[] | Opcional. Por defecto está vacío. Cada entrada se convierte en un hallazgo DATA_DEGRADED. |
Ejemplo completo
Terminal
{
"observedAt": "2026-11-11T22:00:57Z",
"sorobanSdk": {
"currentMajor": 28,
"deprecatedVersions": ["21.0.0", "20.5.0"],
"source": "snapshot saved from Software Versions page"
},
"jsSdk": {
"currentVersion": "<current @stellar/stellar-sdk version>",
"source": "snapshot saved from Software Versions page"
},
"protocolCurrent": null,
"notes": [
{ "title": "Upgrade notes", "url": "https://example.com/notes", "snippet": "Short excerpt." }
],
"degraded": []
}Un archivo que no coincide con esta estructura hace que la ejecución termine con 1 y un mensaje. Los fixtures no se actualizan solos: el ecosistema avanza y tu fixture no.