Mejores Prácticas de Rust para Solana
Hábitos que mantienen los programas de Solana seguros, baratos de ejecutar y fáciles de auditar. Repasa esta lista antes del despliegue en mainnet y durante la revisión del código.
Busca en todas las páginas de la documentación
Hábitos que mantienen los programas de Solana seguros, baratos de ejecutar y fáciles de auditar. Repasa esta lista antes del despliegue en mainnet y durante la revisión del código.
ProgramError en lugar de entrar en pánico. Falla limpiamente con códigos decodificables.LEN y verifica data_len() en tiempo de ejecución. Evita escrituras parciales y pánicos de análisis.msg! y el formato de cadenas en las rutas de producción. Los logs son costosos.cargo tree para dependencias que no sean no_std. Mantiene los binarios compilando y pequeños.Clippy cubre los modismos de Rust; esta lista es específica de seguridad y operaciones de Solana.
Muchas reglas se aplican a ambos; nativo requiere aplicación manual.
Al menos un camino feliz y uno de fallo por instrucción.
Cuando el perfilado muestra que la deserialización domina la CU.
Enfócate primero en la validación, aritmética, CPI y firma de PDA.
Sigue siendo importante: los clientes y los indexadores dependen de errores estables.
Sí, el diseño consistente ayuda a los revisores.
Requerido para nativo; generar a partir de la IDL de Anchor cuando sea posible.
cargo build-sbf en cada PR.
Recomendado para pruebas de integración rápidas con el comportamiento de Agave 4.1.1.
Versiona la IDL y las tablas de errores con el ID del programa desplegado.
Publica hashes de compilación verificables con el despliegue.
Versiones de la pila: Esta página fue escrita para Agave 4.1.1, Solana CLI 3.0.10, Anchor 0.32.1, anchor-lang 0.32.1, Rust 1.91.1, @solana/kit 7.0.0, Surfpool 0.12.0, y LiteSVM 0.6.x.
Revisado por Chris St. John·Última actualización: 16 jul 2026