Larastan Level 9 Certified
Explorar Manual Técnico →
Inicio Módulos & Capacidades Seguridad & ISO 27001 Calidad L9 Arquitecturas Roadmap Documentación Oficial
Auditoría de Código y Tipado Estático Estricto

Certificación Larastan Nivel 9

En el desarrollo empresarial no hay lugar para errores en tiempo de ejecución. Mañuti Framework es sometido a la revisión más rigurosa de PHPStan / Larastan sobre PHP 8.5, garantizando cero deuda técnica y consistencia matemática en cada capa.

0
Errores Reportados
Nivel 9
Máxima Rigurosidad
100%
Strict Types (PHP 8.5)
0%
Baseline Bypasses
manuti-core-ci — phpstan analyse --level=9
PHP 8.5.12 · Larastan 3.x

# Ejecutando análisis estático sobre el árbol completo del framework...

$ ./vendor/bin/phpstan analyse --level=9 --memory-limit=2G

Note: Using configuration file /var/www/manuti/phpstan.neon.

342/342
100%
[OK] No errors found.
Nivel Analizado 9 (Extremo)
Archivos Escaneados 342 Clases
Tiempo de Ejecución 4.82s
Memoria Consumida 114.5 MB
Reporte Larastan


Proceso de Blindaje Progresivo

De Nivel 0 a Nivel 9: El Estándar Mañuti

Cada nivel de Larastan introduce reglas progresivamente inflexibles. Así fue auditada y superada cada fase en el código fuente de Mañuti.



NIVEL 0 ✓ Certificado 100%

Sintaxis, Clases y Conteo de Parámetros

Qué evalúa: Clases inexistentes, llamadas a métodos ausentes en $this y cantidad incorrecta de argumentos pasados.

Cumplimiento Mañuti: Autoloading PSR-4 riguroso, inyección explícita de dependencias en Service Providers y eliminación de fachadas no registradas.
NIVEL 1 ✓ Certificado 100%

Variables No Definidas y Alcance Léxico

Qué evalúa: Variables posiblemente no asignadas en bifurcaciones condicionales (if/else) y propiedades huérfanas.

Cumplimiento Mañuti: Inicialización estricta en constructores. Adopción de DTOs inmutables para el intercambio de datos entre capas.
NIVEL 2 ✓ Certificado 100%

Comprobación de Métodos y Docblocks Reales

Qué evalúa: Métodos invocados sobre cualquier expresión y coherencia entre los tipos de los bloques PHPDoc y las clases físicas.

Cumplimiento Mañuti: Purga de docblocks genéricos. Todos los métodos documentan exactamente sus contratos de interfaz.
NIVEL 3 ✓ Certificado 100%

Contratos de Retorno y Asignación Tipada

Qué evalúa: El valor devuelto por cada función debe coincidir sin excepciones con su firma de retorno declarada.

Cumplimiento Mañuti: Uso de tipos de retorno nativos de PHP 8.5 (: void, : JsonResponse, : bool) en controladores y acciones.
NIVEL 4 ✓ Certificado 100%

Detección de Código Muerto (Dead Code)

Qué evalúa: Sentencias lógicas siempre ciertas o falsas, chequeos instanceof redundantes y código inalcanzable.

Cumplimiento Mañuti: Eliminación de condiciones defensivas superfluas. El código se ejecuta con latencia mínima sin evaluar ramas muertas.
NIVEL 5 ✓ Certificado 100%

Tipos Estrictos en Parámetros y Funciones

Qué evalúa: Validación rigurosa de tipos al pasar argumentos. Prohíbe pasar cadenas numéricas donde se espera un entero estricto.

Cumplimiento Mañuti: Encabezado obligatorio declare(strict_types=1); en cada archivo PHP de la aplicación.
NIVEL 6 ✓ Certificado 100%

Genéricos en Colecciones y Tipado Universal

Qué evalúa: Prohibido omitir tipos en arrays o colecciones iterables. Exige definición precisa de llaves y valores.

Cumplimiento Mañuti: Inclusión de genéricos Collection<int, Usuario> y arrays fuertemente tipados en Eloquent.
NIVEL 7 ✓ Certificado 100%

Manejo Seguro de Tipos de Unión (Union Types)

Qué evalúa: Si una variable es TipoA|TipoB, no se puede invocar un método que no exista en ambos sin validar previamente.

Cumplimiento Mañuti: Reducción de tipo (*type narrowing*) explícito mediante instanceof antes de procesar adaptadores tri-motor.
NIVEL 8 ✓ Certificado 100%

Blindaje Contra Nullables (Null-Safety Total)

Qué evalúa: Prohíbe acceder a propiedades o métodos de variables que puedan ser nulas (Objeto|null) sin comprobación previa.

Cumplimiento Mañuti: Operador Nullsafe ?->, métodos deterministas findOrFail() y aserciones explícitas.
NIVEL 9 (CÚSPIDE) Cero Asunciones sobre Tipos
✓ Máxima Certificación Lograda

Erradicación Absoluta de Operaciones sobre 'mixed'

En el Nivel 9 de PHPStan, el pseudo-tipo mixed es considerado tóxico si no se valida de forma explícita. No se puede llamar a un método, acceder a una propiedad, iterar o pasar una variable de tipo mixed a otra función sin haber restringido previamente su tipo exacto en tiempo de ejecución.

// Estándar de Ingesta Mañuti en Nivel 9:

$payloadId = $request->input('id'); // Tipo: mixed

Usuario::find($payloadId); // ❌ ERROR FATAL en Nivel 9

if (!is_string($payloadId) && !is_int($payloadId)) {

throw new InvalidArgumentException('ID inválido');

}

Usuario::findOrFail($payloadId); // ✓ 100% Certificado y Type-Safe

Diff de Código Nivel 9


Pipeline de CI/CD

Código diseñado para resistir las condiciones más extremas

La certificación Larastan Nivel 9 forma parte integral del ecosistema de ingeniería de Mañuti junto a nuestras 7 arquitecturas de infraestructura y pruebas de benchmarking con k6.

Despliegue Rápido con Docker

Clona el repositorio base, extrae la imagen de producción precompilada y levanta el ecosistema completo (SQL, MongoDB, MinIO y Redis):

# 1. Clonar repositorio y extraer código fuente
$ git clone https://github.com/activemediacdmx/Manuti.git manuti-app && cd manuti-app
$ id=$(sudo docker create ghcr.io/activemediacdmx/manuti:latest)
$ sudo docker cp $id:/var/www/html ./src && sudo docker rm -v $id
$ sudo chown -R 1000:1000 src
# 2. Preparar logs y levantar infraestructura
$ mkdir -p logs/{nginx,mysql,redis,mongo,minio,php} && sudo chmod -R 777 logs
$ sudo docker compose up -d
# 3. Inicializar bases de datos
$ sudo docker compose exec -u www-data web01 php artisan key:generate
$ sudo docker compose exec -u www-data web01 php artisan migrate --seed