which generated questions are worth asking?

A model can write forty plausible questions about any brand in one call. That part is cheap and nobody's advantage. What decides whether the questions are worth a round is what happens next, and all of it is pure functions: no model, no network, no money. The rule is not that a model may not write the questions. The rule is that nothing it wrote is trusted.

which gates run, and in what order?

Four, cheapest and most certain first, and the first one a candidate trips is the reason recorded. That ordering is part of the contract rather than an accident of implementation, so it is tested.

Shape: a candidate carries its source page and a verbatim quote from it, or it is not a candidate. Name: a question containing a tracked brand name is dropped, because it is answered with the name whatever the model knows, so it measures its own echo. One such question inflated a real headline by ten points before this gate existed.

Evidence: the quote has to appear in the page the candidate cites as a literal substring, checked page by page, because a quote lifted from one page and filed under another is a real quote and a false citation. A model that invents a quote fails here and cannot route around it. Duplicate: near-identical candidates collapse. This one is a heuristic and is labelled as such wherever it appears, since a Jaccard threshold is a judgement call and the other three are not.

what happens to a candidate that fails?

It is returned with the gate that stopped it and a reason. A candidate that vanishes silently is indistinguishable from one that was never generated, and the difference is the whole audit trail.

what does the evidence gate not prove?

It establishes that the quote is real. It does not establish that the question follows from it, and a model holding the page in its context can pair a genuine quote with an unrelated question. That gap is closed downstream rather than here: a question that has nothing to do with the site measures nothing, and the measurement gate drops it as barren.

how many draws decide a question?

The smallest number at which a clean sweep clears the floor, derived rather than set: 2 draws at a floor of 0.3, 4 at 0.5, 6 at 0.6 and 12 at 0.75. The verdict is three-valued, and blind to the subject's own rate on purpose.

what does it export?

Every public name in lulumelon.mirror.screen that its source says something about, with the first paragraph of what it says.

normalise(text) ± Case-folded, punctuation-free, single-spaced.
Candidate ± One generated question, with the page it claims to come from.
Rejection ± A candidate that did not survive, and what stopped it.
screen(candidates, *, pages, detect_names, duplicate_threshold=DEFAULT_DUPLICATE_THRESHOLD) ± Run every gate, keep what survives, and say why the rest did not.
stable_ids(kept, previous, prefix='p') ± Keep the id of a question whose text has not changed.
minimum_draws(floor, confidence=0.95, cap=MAX_DERIVED_DRAWS) ± Smallest k at which a clean sweep clears floor.
PromptScreen ± One candidate, asked for real, and what its draws decided.
verdict_for(rival_hits, draws, floor, confidence=0.95) ± Three-valued, and blind to the subject's own rate on purpose.
screen_by_discrimination(observations, *, floor, confidence=0.95) ± Score every candidate from its own draws.
pool_variance(observations, confidence=0.95) ± The variance split across the whole candidate pool.

which commands reach it?