Saltar al contenido

Medir la superficie

La superficie de una aplicación de Tauri es enumerable, y eso es su mejor propiedad. Cómo se cuenta, qué la hace crecer, y el número que conviene vigilar en cada versión.

Los cuatro sumandos

Declarada frente a efectiva

La distinción que hace útil el ejercicio:

  • Superficie declarada es lo que tu aplicación podría exponer: todos los comandos registrados y todos los permisos que los plugins ofrecen.
  • Superficie efectiva es lo que de verdad está abierto: los comandos que una capability concede, en las ventanas donde aplica, con los ámbitos que declara.

Y hay una asimetría que conviene tener presente: si no declaras el manifiesto de la aplicación del nivel 6.3, todos tus comandos propios están en la efectiva, porque el permiso general del núcleo los cubre en bloque. Es decir: sin ese paso, declarada y efectiva coinciden para tu propio código.

Ese es, en una frase, el mejor argumento para declararlo.

Contarla

Un procedimiento de diez minutos, repetible:

Shell
# 1 · tus comandosgrep -c '#\[tauri::command\]' -r src-tauri/src# 2 · los permisos concedidos, uno por líneacat src-tauri/capabilities/*.json | grep -o '"[a-z-]*:[a-z-]*"' | sort -u# 3 · qué comandos concede cada permisocd src-tauri && cargo tauri permission ls

El paso 3 es el que da la sorpresa: un permiso «por defecto» de un plugin corriente puede conceder cinco o seis comandos, y algunos no son los que uno esperaría. Ejecutarlo una vez cambia la percepción de cuánta superficie tiene el proyecto.

Y el cuarto sumando se cuenta a ojo: cuántos destinos distintos permite tu política de contenido.

Las cuatro formas de crecer sin decidirlo

El subcomando que instala un plugin. Añade el permiso por defecto —nivel 9.3— y el permiso por defecto es el conjunto cómodo, no el mínimo.

Un comando nuevo. Sin manifiesto de aplicación, entra en la superficie efectiva el mismo día que se escribe, sin tocar ningún fichero de permisos.

Un ámbito que se ensancha para arreglar algo. «No me deja leer ese fichero» se resuelve ampliando el ámbito, casi siempre más de lo necesario, y nadie lo estrecha después.

Una excepción en la política de contenido. Se añade un dominio para una integración y se queda.

Las cuatro comparten la misma forma: crecer es fácil y no lo revisa nadie; encoger es incómodo y no lo pide nadie. De ahí el número.

El número

Escribe estas cuatro cifras en tu documentación y revísalas en cada versión:

TXT
comandos propios expuestos:        ..comandos de plugins concedidos:    ..ámbitos declarados, y su anchura:  ..destinos externos permitidos:      ..

No hay un valor correcto: el valor es la tendencia. Un proyecto donde esas cifras suben cada versión está ampliando su superficie sin decidirlo, y eso es exactamente lo que la revisión del nivel 33 tiene que cazar.