Skip to content
docsv0.24.0

Check

Un hecho que se comprueba en vez de recordarse. Es la unidad del tablero. Una tarjeta sin comprobación es una nota, y las notas mienten a los tres días — que es exactamente cómo se murieron los archivos que este tablero viene a sustituir. Tres cosas la definen y ninguna es opcional: qué afirma, **qué artefacto interroga** (ADR-0028), y qué la bloquea. El costo se declara aparte porque decide si el tablero es algo que alguien corre: en el slice mínimo, una sola comprobación se llevó 19.5 de los 20.3 segundos totales, y un tablero que tarda es un tablero que nadie mira.

Check::__construct()

public function __construct(string $id, string $claim, Milpa\DevTools\Board\Artifact $artifact, Closure $probe, array $needs = [], bool $human = false, Milpa\DevTools\Board\Cost $cost = Milpa\DevTools\Board\Cost::Fast):

Parameters

Parameters of __construct()
NameTypeDescription
$idstringidentificador estable; lo que otras comprobaciones nombran al depender
$claimstringlo que afirma, en la voz de quien lo lee: "plugin 0.3.0 está publicado"
$artifactArtifactqué interroga — obligatorio, es la mitad del ADR-0028
$probe\Closure(): Outcomela comprobación misma; devuelve, nunca lanza hacia afuera
$needslist<string>ids que tienen que estar `Passed` para que ésta tenga sentido
$humanboolsi sólo una persona puede cambiarlo (una llave, un secreto, un juicio)
$costCostcuánto cuesta preguntarle

Check::run()

public function run(): Milpa\DevTools\Board\Reading

Corre la comprobación en aislamiento. Cualquier cosa que escape se convierte en {@see Outcome::Unmeasured}, jamás en `Failed`: una comprobación que revienta no dice nada sobre el sujeto. Y no puede tumbar al corredor — en el slice mínimo un `exit` adentro de una prueba truncó el reporte y las seis comprobaciones que faltaban no salieron, lo cual se lee igualito que un tablero limpio.