// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { ScoreSource } from "./ScoreSource";

/**
 * Single contribution to a [`CandidateNote`]'s `score`. The sum of
 * every contribution's `weight` MUST equal `CandidateNote::score`,
 * so downstream tooling (explain output, future eval harnesses) can
 * reconstruct the exact rationale rather than relying on
 * human-readable `reasons` strings.
 */
export type ScoreContribution = { 
/**
 * Which scoring family produced this contribution.
 */
source: ScoreSource, 
/**
 * Field that matched, e.g. `title`, `heading`, `wikilink`,
 * `path`, `body` for [`ScoreSource::NamedMatch`]; for other
 * sources this is the configured key (`memory_type`, etc.).
 */
field: string, 
/**
 * The matched term or label (lowercased / normalized).
 */
term: string, 
/**
 * Score weight added (or subtracted) by this contribution.
 */
weight: number, };
