pub fn appraise(
causal_degree: u8,
good_outcome: bool,
voluntary: bool,
has_capacity: bool,
culpable_mind: bool,
) -> MoralAppraisalExpand description
Appraise moral responsibility. Blame/praise require a non-zero causal_degree, a voluntary
act, and has_capacity (the §18 capacity gate carries into moral responsibility — an agent
who lacked capacity or acted involuntarily is EXCUSED). good_outcome sets the valence;
blame additionally requires a culpable_mind (intent or recklessness — a mere accident with a
bad outcome is excused). Degree scales with the agent’s causal share.