test-ffi-surface

por nvidia

Construye y prueba la superficie FFI de NeMo Relay; utilízala para cambios en crates/ffi, generación de cabeceras o validación orientada a ABI

npx skills add https://github.com/nvidia/nemo-relay --skill test-ffi-surface

Build And Test FFI Surface

Companion Guidance

Use karpathy-guidelines alongside this skill for implementation or review work. Keep changes scoped, surface assumptions, and define focused validation before editing.

Use this skill when the change is primarily in crates/ffi, the generated header, or ABI-facing behavior consumed by Go or external native callers.

Default Path

  1. Rebuild the FFI crate in release mode so the shared library and header stay in sync.
  2. Run cargo fmt --all because FFI work is Rust work.
  3. Run just test-rust.
  4. Run cargo clippy --workspace --all-targets -- -D warnings.
  5. Check the generated header diff when any exported symbol or type changed.
  6. If downstream consumers changed too, run their binding-specific skills next.

Common Commands

# Rebuild the shared library with the repo wrapper used by FFI consumers
just build-go

# Required Rust validation
cargo fmt --all
just test-rust
cargo test -p nemo-relay-ffi
cargo clippy --workspace --all-targets -- -D warnings

# Review header drift if the FFI surface changed
git diff -- crates/ffi/nemo_relay.h

When To Escalate

  • If Go behavior changed, also use test-go-binding.
  • If the FFI change reflects shared runtime semantics rather than a pure bridge change, also use validate-change.

References

  • crates/ffi/Cargo.toml
  • crates/ffi/build.rs
  • crates/ffi/cbindgen.toml
  • crates/ffi/nemo_relay.h
  • just build-go
  • .pre-commit-config.yaml
  • README.md
  • validate-change

Más skills de nvidia

compileiq-debug
nvidia
Úsalo cuando algo esté mal: Search() se cuelga, todas las evaluaciones devuelven INVALID_SCORE, las puntuaciones no mejoran, cada configuración devuelve el mismo número, errores de ptxas…
create-github-pr
nvidia
Crear solicitudes de extracción de GitHub usando la CLI gh. Usar cuando el usuario quiera crear un nuevo PR, enviar código para revisión o abrir una solicitud de extracción. Palabras clave de activación -…
nemoclaw-maintainer-cross-issue-sweep
nvidia
Escanea otros issues abiertos para encontrar aquellos que un PR dado también podría corregir o romper accidentalmente. Genera oportunidades de corrección adyacente y riesgos de contradicción con archivo:línea…
fhir-basics
nvidia
Enseña a los agentes cómo funcionan las APIs de FHIR R4, qué recursos están disponibles, cómo consultarlos con parámetros de búsqueda y cómo analizar correctamente todos los formatos de respuesta…
compileiq-validate-result
nvidia
Usar DESPUÉS de que una Búsqueda haya finalizado y ANTES de reclamar cualquier aceleración o enviar un ACF. Carga el CSV de dump_results, extrae los mejores K candidatos (de un solo objetivo)…
changelog-audit
nvidia
Auditar el CHANGELOG.md de Warp antes de un lanzamiento: recuperar entradas perdidas, ordenar por impacto en el usuario, refinar el lenguaje de las entradas, ajustar saltos de línea y (en modo rama de lanzamiento) incrementar comparación…
maintain-dynamic-plugins
nvidia
Mantener los cargadores de plugins dinámicos de NeMo Relay, manifiestos, SDKs nativos de Rust, protocolo de trabajador gRPC, SDK de trabajador Python, documentación, pruebas y cobertura del flujo de trabajo de lanzamiento
dgx-diagnose
nvidia
Diagnostica problemas comunes de la DGX Station GB300: fallos de CUDA, direccionamiento incorrecto de GPU, errores de contenedores vLLM/SGLang, problemas de estado MIG, errores de NVLink/Fabric Manager,…