Cuotas de almacenamiento y límites de subida: la evidencia necesita un contador
Cómo el almacenamiento por tenant, los avisos, el bloqueo de subidas y la purga reservada al propietario evitan que documentos y fotos se conviertan en una factura silenciosa.
La evidencia de ITAD pesa en archivos: fotos, certificados, documentos firmados, informes, adjuntos de soporte, paquetes de evidencia. El almacenamiento no puede ser invisible para siempre. En algún momento, la plataforma tiene que saber cuánto usa un tenant y qué pasa al llegar al límite.
Qué cuenta
El uso de almacenamiento de un tenant cubre los archivos operativos en Supabase Storage: documentos, fotos, firmas, evidencia y subidas relacionadas. Los avatares van aparte. El uso se agrega por tenant, para que los límites de paquete y las vistas de almacenamiento de admin hablen del mismo número. El paquete fija la cuota —0 GB en free, 5 GB en starter, 25 GB en professional, ilimitado en enterprise— y un admin de plataforma puede sobrescribirla por tenant cuando el contrato dice otra cosa.
Avisos
La plataforma compara uso y cuota de forma programada y manda un aviso de almacenamiento cuando un tenant cruza el 80, el 90 y el 100 por ciento, una vez por umbral. Eso les da a los admins tiempo para revisar el uso, subir de paquete o limpiar errores legítimos. La evidencia no debería fallar porque nadie vio parpadear el contador.
Bloqueo de subidas
Cuando un tenant supera la cuota, las subidas nuevas se bloquean en las rutas protegidas con el nombre de bloqueo storage_limit_exceeded. El bloqueo es explícito: el usuario ve que el problema es el almacenamiento, y no un fallo de subida misterioso. Los fallos de subida misteriosos son la forma en que a las colas de soporte les salen dientes.
Vista de admin
/admin/storage le da al personal de plataforma la foto entre tenants: bytes totales y número de documentos, número de tenants, uso por tenant con edición de cuota en GB, los archivos más grandes, un desglose por tipo de archivo, un resumen de buckets y una proyección de crecimiento y coste. Los ajustes de almacenamiento viven en la misma página: tamaño máximo de archivo en MB, caducidad de las URL firmadas, tipos MIME permitidos y los TTL de fotos, documentos, evidencia y archivos ESG. La salud del almacenamiento lista registros de documento sin enlazar, archivos huérfanos y archivos que faltan, cargando filas en pasos acotados de hasta 200, y una acción de limpieza retira esas tres categorías de escombros. Los ajustes de facturación del tenant muestran el contexto de paquete de cara al tenant. Juntos conectan el almacenamiento técnico con los límites comerciales sin convertir cada PDF en un debate financiero.
La purga
Por tenant hay una acción de “Purgar almacenamiento”, y es una herramienta real de baja de cliente, no un marcador de posición. Solo la puede ejecutar un propietario de plataforma; cualquier otro rol de plataforma recibe un rechazo del servidor y no se borra nada. El diálogo carga primero una vista previa de exactamente qué se iría —registros de documento sin enlazar, registros de archivos que faltan y objetos huérfanos, con sus recuentos—, luego pide el nombre exacto de la organización, y solo activa el botón rojo cuando hay algo que purgar y el nombre coincide. Los documentos con un registro de negocio vivo no se cuentan y no se tocan: la purga retira escombros de almacenamiento, no evidencia. El resultado se escribe en la auditoría de actividad en modo fail-closed, con los recuentos; si no se puede escribir el registro, la purga no ocurre. No hay deshacer. Vista previa, nombre, botón, fila. En ese orden, siempre.