# Publicacion
## Objetivo
`face_verification_core` debe poder publicarse como crate Rust independiente y
ser consumido por `face_liveness_kit` sin rutas locales de desarrollo.
## Estrategia Recomendada
1. Publicar este repo como crate `face_verification_core` en crates.io.
2. En el wrapper Rust de `face_liveness_kit`, depender de una version:
```toml
[dependencies]
face_verification_core = "0.1"
```
3. Para desarrollo local, usar overrides fuera del paquete publicado.
Ejemplo local permitido, solo si no se sube a pub.dev:
```toml
[patch.crates-io]
face_verification_core = { path = "../../face_verification_core" }
```
Ese override debe vivir en configuracion local o en un workspace privado, no en
el `Cargo.toml` publicado dentro del paquete Flutter.
## Que No Debe Publicarse
- Rutas absolutas del ordenador del desarrollador.
- Dependencias `path` que apunten fuera del paquete Flutter.
- Referencias a proyectos privados como requisito de compilacion.
- Configuracion que haga que un usuario de pub.dev necesite replicar la
estructura local de carpetas.
## Checklist Antes De Pub.dev
- `face_liveness_kit` no contiene rutas absolutas.
- `face_liveness_kit` no contiene dependencias `path` externas en manifiestos
publicados.
- El wrapper nativo/WASM usa una version publicada o codigo vendorizado.
- Los modelos, si se incluyen, tienen licencias documentadas.
- `flutter pub publish --dry-run` pasa en una copia limpia.