Score · Assess & Decide · Analysis & Finance
Score and rank causes by importance, tractability, neglectedness
A function that takes a list of candidate causes each rated on importance (scale/severity), tractability (feasibility of progress), and neglectedness (how underfunded), and returns each cause's composite priority score plus a stable descending rank.
You receive: A pure function returning each cause's composite ITN score plus a dense 1..N rank (ties broken by importance then id) and the top cause, graded on hidden cases.
Part of Pitch Investors
What's verified: Verifies the composite score and ranking are computed correctly and deterministically from the buyer's factor ratings. Does NOT judge whether the factor ratings themselves are accurate, whether the cause is genuinely high-impact in the world, or whether the ITN model is the right lens for the decision.
Opens soon
This objective is verified and ready. It opens soon, once sign-in and payments are live.
Deliverable interface
The exact vocabulary the automated check enforces: keys, tokens, entry points, and worked examples. Generated from the verification source.
{
"constants": {},
"entryName": "score_cause_priority_itn",
"expectNote": "expect is the comparison-space value (your return value goes through normalize first when one is published)",
"hiddenCaseCount": 13,
"hiddenCaseNames": [
"hd_tie_break_id",
"hd_weighted_missing_weights",
"hd_weighted_rounding",
"hd_zero_factor",
"hd_five_causes",
"gen0",
"gen1",
"gen2",
"gen3",
"gen4",
"gen5",
"gen6",
"gen7"
],
"inputKeys": [
"causes",
"id",
"importance",
"method",
"neglectedness",
"tractability",
"w_importance",
"w_neglectedness",
"w_tractability"
],
"normalizeSource": "def _normalize_score_cause_priority_itn(r):\n if not isinstance(r, dict):\n return repr(r)\n try:\n return {\"ranking\": [{\"id\": str(x[\"id\"]), \"score\": round(float(x[\"score\"]), 2),\n \"rank\": int(round(float(x[\"rank\"])))} for x in r[\"ranking\"]],\n \"topCauseId\": str(r[\"topCauseId\"])}\n except Exception:\n return repr(r)\n",
"returnShapes": [
[
"ranking",
"topCauseId"
]
],
"signature": "def score_cause_priority_itn(inp):",
"submission": "python exposing the entry function; inp is one input object; graded on held-out cases",
"tier": "calculator",
"visibleCases": [
{
"expect": {
"ranking": [
{
"id": "A",
"rank": 1,
"score": 240
},
{
"id": "B",
"rank": 2,
"score": 54
}
],
"topCauseId": "A"
},
"input": {
"causes": [
{
"id": "A",
"importance": 8,
"neglectedness": 6,
"tractability": 5
},
{
"id": "B",
"importance": 9,
"neglectedness": 3,
"tractability": 2
}
],
"method": "multiplicative",
"w_importance": 1,
"w_neglectedness": 1,
"w_tractability": 1
},
"name": "multiplicative_basic"
},
{
"expect": {
"ranking": [
{
"id": "B",
"rank": 1,
"score": 50
},
{
"id": "A",
"rank": 2,
"score": 10
}
],
"topCauseId": "B"
},
"input": {
"causes": [
{
"id": "A",
"importance": 10,
"neglectedness": 1,
"tractability": 1
},
{
"id": "B",
"importance": 2,
"neglectedness": 5,
"tractability": 5
}
],
"method": "multiplicative",
"w_importance": 1,
"w_neglectedness": 1,
"w_tractability": 1
},
"name": "multiplicative_upset"
},
{
"expect": {
"ranking": [
{
"id": "B",
"rank": 1,
"score": 100
},
{
"id": "A",
"rank": 2,
"score": 100
}
],
"topCauseId": "B"
},
"input": {
"causes": [
{
"id": "A",
"importance": 4,
"neglectedness": 5,
"tractability": 5
},
{
"id": "B",
"importance": 5,
"neglectedness": 4,
"tractability": 5
}
],
"method": "multiplicative",
"w_importance": 1,
"w_neglectedness": 1,
"w_tractability": 1
},
"name": "tie_break_importance"
},
{
"expect": {
"ranking": [
{
"id": "A",
"rank": 1,
"score": 6.4
}
],
"topCauseId": "A"
},
"input": {
"causes": [
{
"id": "A",
"importance": 8,
"neglectedness": 6,
"tractability": 4
}
],
"method": "weighted_sum",
"w_importance": 0.5,
"w_neglectedness": 0.2,
"w_tractability": 0.3
},
"name": "weighted_sum"
}
],
"vocabulary": [
"causes",
"id",
"importance",
"method",
"multiplicative",
"neglectedness",
"rank",
"ranking",
"score",
"topCauseId",
"tractability",
"unknown method: ",
"w_importance",
"w_neglectedness",
"w_tractability",
"weighted_sum"
]
}Get early access to STUD the day it goes live.