candidate_screen
The screen that runs before the pitch rather than after it: the caller's own declared candidate programmes, put through an ordered routing of steps, under one receipt. The steps are ordered and the order is not a preference, because each one decides whether the next is worth running at all. At your volume, is the thing you want to compare measurable. Does a published effect for this mechanism exist, and does its interval cross no effect. Does the movement survive the mean coming back and the competing event, both, because a step carrying two checks where only one can bite is a step carrying one. Is there a money path, and what kind of money is it. Each step routes into the estimator that already answers it, and this tool computes none of those figures itself. A step that was refused carries that estimator's own refusal verbatim, so a reader can see which step stopped and why rather than being handed a screen with a gap in it. Nothing is scored and nothing is ranked. The result is a partition of a set the caller declared, grouped by the step each candidate died at, and an argument key asking for a score, an order, a weighting, a composite or a recommendation across candidates is refused by name at any depth rather than dropped. Scoring a caller's candidates against each other is the per-provider league table this world refuses, reached one layer up. A provider identifier used as a candidate key is refused for the same reason, before anything is read. A boundary is not a plan. Where the caller declares their own line, each step reports the distance from it rather than only the side of it, because the distance is what says whether a candidate is one design change away or three. Where no line is declared, no distance is served and the absence is served as an absence: this world holds no threshold and picking one would be it choosing the caller's conclusion. A refusal comes back with somewhere to go. Each kind of death names the redesign move that repairs it, the step it repairs, and how many changes it takes, because a redesign taking one change and a redesign taking two are different proposals. A move is offered only after the screen has been re-run at what the caller declared for it, so an offer is a re-screened offer rather than advice. Everything read here is declared by the caller except the published effects, which come from this world's own effect corpus. The counts, the variance, the line, the periods, the mechanism and what any move would cost are all the caller's, and the answer says so beside every figure.
Use this form for new arguments. Follow concrete links for known values. Fetch-only readers may be unable to submit new URLs.
Exact input contract
{
"additionalProperties": false,
"properties": {
"candidates": {
"description": "The programmes to screen. Each is screened on its own and never against another, and the answer groups them by the step each died at.",
"items": {
"additionalProperties": false,
"properties": {
"before_and_after": {
"description": "Step three's input: the mean of the pool, the mean of what was selected out of it, the movement observed afterwards, and the two periods' own counts. Both halves of step three read it.",
"type": "object"
},
"candidate": {
"description": "The caller's own name for the programme, carried onto its result so the partition can be read back.",
"type": "string"
},
"effects": {
"description": "Step two's rows, each naming an outcome and an arm this world's effect corpus carries. Where a review published a row whose interval crosses no effect and a row whose interval includes it, both are declared, because the second is the row a vendor would not show.",
"items": {
"type": "object"
},
"type": "array"
},
"measure": {
"description": "Step one's input, as measure_reliability takes it: the counts the rate was computed from and the variance of the true rates across the providers being compared. This world ships no default for that variance; hospital_variance is where a measured one comes from and declaring your own is legitimate as long as the answer says you declared it.",
"type": "object"
},
"mechanism": {
"description": "Step four's claim about how the money is supposed to work, named from the closed vocabulary savings_methodology reads. The caller declares it and no sentence is parsed for it.",
"enum": [
"unit_cost_reduction",
"utilisation_reduction",
"demand_redirection",
"avoidance_of_future_cost",
"overpayment_recovery",
"adherence_improvement"
],
"type": "string"
},
"moves": {
"description": "The redesign moves this candidate declares, keyed by move name, each carrying what that move has to declare for the screen to be re-run at it. A move nothing was declared for is named as a move and is not offered.",
"type": "object"
},
"ranges": {
"description": "A range over one of step one's declared inputs, keyed by the input's name, so a verdict can be read as the point at which it changes. Only step one's inputs may be ranged, because it is the only step whose verdict turns on a continuous declared quantity.",
"type": "object"
},
"reliability_threshold": {
"description": "The line the caller has adopted for step one. This world holds none and refuses to pick one, so declaring it is what turns the step's boundary into a distance.",
"type": "number"
},
"variance_distribution": {
"description": "A declared distribution over one of step one's inputs rather than a point. A screen with no simulation runtime attached serves no share of draws and no substitute for one, and says so rather than filling the field.",
"type": "object"
}
},
"type": "object"
},
"type": "array"
},
"move_costs": {
"description": "What each named move costs, keyed by move name, as a figure the caller declares. This world does not know what a change costs anybody, and a move name outside the vocabulary is refused rather than mapped to the nearest one.",
"type": "object"
},
"sweep": {
"additionalProperties": false,
"description": "A sweep over one of step one's inputs, applied across the candidates, naming the input to move and the grid to move it over.",
"properties": {
"from": {
"description": "The low end of the grid, as the caller declares it.",
"type": "number"
},
"input": {
"description": "Which declared input the sweep moves. All three are step one's, because the other steps turn on categorical facts their own estimators serve rather than on a continuous declared quantity.",
"enum": [
"between_provider_variance",
"numerator",
"denominator"
],
"type": "string"
},
"points": {
"description": "How many points to evaluate across it. The estimator is re-entered at each, so the answer is the same on every run: there is no draw and no seed here.",
"type": "number"
},
"to": {
"description": "The high end of the grid.",
"type": "number"
}
},
"required": [
"input"
],
"type": "object"
}
},
"required": [
"candidates"
],
"type": "object"
}