InverseVettingService

Runs check 1 of leaf-probe §LPD-13 off the GUI thread and records each verdict.

In the namespace construct::eval. Declared in src/libs/libconstruct/construct/eval/InverseVettingService.hpp.

Detailed description

One per process, as SdfShaderForge is: a verdict is a fact about a definition revision, not about a document, so every document and the batch renderer read the same InverseVerdicts.

Where the check runs

With setBatchQueue(): each check is a `construct/inverse_vetting` job that InverseVettingWorker (Pooled) runs on the shared batch pool. Without one (a test, a headless tool): this service's private pool. Never on the calling thread. The job carries a copy of the definition, so an edit in the editor meanwhile cannot race the check.

A job that leaves the queue before it runs (a removal, a cleared queue, a queue swapped out) runs on the private pool instead, as SdfShaderForge heals its jobs. A revision is requested once, so a lost check would never run again.

In this section