Skip to content
docsv0.24.0

DevToolsOperations

El bucle de desarrollo —andamiar y validar— como átomos, para cualquier host. ── POR QUÉ ESTO VIVE EN EL PAQUETE Y NO EN UN HOST ───────────────────────────────────────────── Porque no tienen nada de ese host. `validate` corre los dos validadores de este paquete sobre un manifiesto; `make` corre sus generadores y su verificador; `test` saca la suite del anfitrión en su propio proceso. Ninguno consulta una base, un registry ni un servicio del anfitrión — sólo la raíz del proyecto, que se inyecta. Vivían en `src/app/Operations/` del host que los estrenó, y ahí no molestaban a nadie salvo por una cosa: **el siguiente host tendría que volver a escribirlos**. Un `composer create-project` que arranca sin poder andamiar, validar ni probar nada obliga a copiar tres handlers antes de hacer la primera cosa útil, y esa copia es la que después diverge. Un host los adopta enlistando esta clase; los recibe en TODAS sus superficies, porque un átomo se declara una vez y cada projector lo materializa a su modo. ── LA POLÍTICA DE CONSENTIMIENTO VIAJA CON LA OPERACIÓN ──────────────────────────────────────── `validate` lee. `test` ejecuta el código del proyecto y lo declara `mutating` por eso, y se ofrece en la terminal, el TUI y el agente pero NO por HTTP — una petición web que dispara la suite es una superficie que nadie quiso. `make` escribe archivos y lo DECLARA, pero no exige firma: su daño ya está acotado por piezas más finas que una firma —`WriteGuard` se niega a sobrescribir salvo `--force`, un permiso que nombra el archivo, y un verify fallido borra lo recién creado—. Pedir firma para andamiar un controller convertiría la compuerta en trámite, y una compuerta que se pide siempre se aprueba sin leer. Que la política venga DECLARADA en el paquete y no la ponga cada host es el punto: dos hosts que decidieran distinto sobre la misma capacidad serían dos respuestas a una pregunta que sólo tiene una.

DevToolsOperations::operations()

public function operations(): array

The package's generate, verify, execute, and read-only introspection operations. They are rebuilt on each call rather than cached: an `Operation` is an inert, inexpensive value, while caching it would introduce an invalidation decision this provider does not need.