I am acting as the control policy of a reasoning engine, choosing between two admission approaches. I picked Approach A (free verb order, retrieve-then-gate), running the verbs below.

## Working

### lift (step back to the underlying structure)
Strip the domain. The structure is: an uninformed party must transact with agents whose *type* (low-risk / high-risk) is hidden; the worst-for-me types are the most eager to participate; and I must set terms that don't let the bad pool dominate while not needlessly excluding the good. This is a pre-contractual hidden-*characteristic* (not hidden-*action*) problem. The two proposals are the two canonical responses: a self-sorting menu vs. a single uniform term.

### match (retrieve with the domain-stripped meta-model)
Ran `search_prime` on "an actor cannot observe a counterparty's hidden type; the worst types are the most eager to participate; design terms so different types reveal themselves through their own choices."

Top hits: **Signaling** (0.66), **Screening** (0.65, distinctive, 0.83 pctile), **Adverse Selection** (0.65) — these three form one tight cluster (id 27). Also surfaced: incentive_compatibility, mechanism_design.

### match (oblique check via facets)
Ran `search_by_facets` over five structural facets. Per-facet results:
- "hidden type that cannot be directly observed" -> **adverse_selection** top.
- "highest-risk members are the most eager to participate" -> risk_pooling, social_dilemma, selection_bias.
- "a costly signal cheap for one type, expensive for another" -> **signaling** top (0.74), price_discrimination, adverse_selection.
- "a menu so each type sorts itself" -> classification, prioritization (weak, no clean hit — the menu mechanism is named by Screening, retrieved above).
- "a single uniform stricter threshold for everyone" -> **threshold**, risk_pooling, type_i_type_ii_errors.

The fused ranking puts risk_pooling, adverse_selection, signaling at the top. Reading the per-facet lists (not just fusion) confirms: the *problem* is adverse_selection; the menu *response* is screening; the uniform-bar response maps to a single threshold over a pooled population.

### compose (typed relational model)
- Uninformed designer = the program.
- Informed agents = applicants, type ∈ {low-risk, high-risk}, type private.
- Hidden characteristic = risk class (a characteristic, fixed before admission — not an action taken after).
- Approach A = a menu with type-differentiated terms; choice reveals type (self-selection).
- Approach B = a uniform term (one bar) applied to a pooled population.
- Success criterion (two-sided): pool not dominated by undisclosed high-risk AND low-risk not needlessly excluded.

### decompose (framed prime -> structural core)
Adverse Selection is framed (insurance/lemons vocabulary). Its structural core: hidden type + uniform terms + self-selection => the willing pool skews toward the worst types, because at any single term the high-risk are *more* willing to accept than the low-risk. That core is exactly the situation, and it is the diagnosis of *why* B fails.

### evaluate-fit (gate each approach against its known failure conditions)

**Gate Approach B (uniform stricter bar) against the adverse-selection core.**
A single bar applied to a population I cannot sort by type does not separate types — it only shifts *one* knob (height of the bar) along an axis that is correlated with, but not identical to, risk. Two failure modes, and they trade off against each other:
- Set the bar low/moderate: the high-risk (most eager) clear it and, being most eager, dominate the admitted pool -> violates "pool not dominated by undisclosed high-risk."
- Set the bar high to suppress the high-risk: it also excludes low-risk applicants who happen to fall below the uniform threshold -> violates "low-risk must not be needlessly turned away."
There is no single bar height that satisfies both halves of the success criterion *because the bar conditions on something other than the hidden type.* Uniform terms under hidden type are precisely the pooling mechanism that produces the unraveling. B structurally cannot meet a two-sided criterion.

**Gate Approach A (self-sorting menu) against screening's failure conditions.**
Screening is the receiver-side response built for exactly this: design a menu whose options are differentially attractive by type, so the choice itself reveals type and I can respond differentially. Its known costs/failure conditions:
- *Incentive-compatibility must actually hold* — the cheap-for-low / costly-for-high option must really be cheaper for low-risk than high-risk (single-crossing). If the menu items don't separate, types pool on one option and A degenerates toward B. So the burden on A is to design a genuinely type-discriminating term. This is a design burden, not a structural impossibility — and the prompt stipulates such terms exist ("an option only worthwhile to low-risk... cheap for low-risk and costly for high-risk").
- *Downward distortion / friction cost* — the low-risk option may be made deliberately worse to deter the high-risk, and friction (the "ordeal" cost) can over-deter genuinely-qualified low-risk applicants. This is the real risk to the "don't needlessly exclude low-risk" half. It is *manageable* (keep the separating friction as light as possible while still type-discriminating) rather than unavoidable.
- *Reveals type only along dimensions the menu distinguishes* — fine here, since risk is the one dimension that matters.

### reconcile
Both halves of the success criterion are *simultaneously* satisfiable only by a mechanism that conditions on the hidden type. B cannot condition on type (it conditions on a uniform bar over a pool), so it is forced into a one-knob trade-off where suppressing high-risk over-excludes low-risk and vice versa. A conditions on type *by construction*, via the applicant's own choice — the only failure modes are design-quality ones (non-separating menu, excess friction), which are controllable and which the prompt's framing assumes can be met. A dominates B on the stated two-sided criterion.

### salience-rank / prune
Most salient: the success criterion is explicitly two-sided, and the binding fact is that a uniform bar cannot separate unobservable types. That single fact decides it. Pruned: signaling (sender-side; here the *program* designs terms, so it's the receiver-side response = screening), mechanism_design/incentive_compatibility (the general frame; informative as the constraint A must satisfy, but not a separate choice).

### STOP
Decision is sound.

===DECISION_BEGIN===
DECISIVE_FACTOR: A single uniform bar conditions on something other than the unobservable risk type, so it cannot separate the two groups and is forced into a trade-off where any setting either lets the eager high-risk dominate or needlessly excludes low-risk — whereas a self-sorting menu makes each applicant's own choice reveal their type.
CHOICE: A
JUSTIFICATION: Because you cannot see who is high-risk and the high-risk are the most eager to apply, one shared threshold for everyone can only be tuned in a single direction: set it loose and the eager high-risk flood the pool; set it tight and you also reject good low-risk applicants who fall below it. A menu of terms built so that one option is genuinely worthwhile or cheap for low-risk applicants but costly or pointless for high-risk ones lets people sort themselves, so their choice reveals what they are. That is the only way to keep high-risk applicants out of the admitted pool without turning away the low-risk ones you want — provided the terms are designed to truly cost the two groups differently and the low-risk option isn't made so burdensome it scares off the very people it is meant to admit.
===DECISION_END===
