# Confidence rule (CA-2)

Every record's `confidence` is computed at build time by `confidenceFor()` in `build/spec.mjs`.
It is never hand-entered.

    outlets = count of distinct source outlets in `sources`
              (entries beginning with "•"; falls back to ceil(len/2) for
               records whose citation trail has no outlet bullets)
    score   = min(outlets, 5)
            + 2 if agreement_status == "agree"
            + 1 if agreement_status == "partial"

    high   : score >= 6   (well-sourced AND externally corroborated)
    medium : score 4–5
    low    : score <= 3

Rationale: the baseline citation trails list each outlet as a "•" entry followed by
its headline lines, so raw entry counts overstate sourcing. Counting outlets measures
independent documentation; the cross-dataset agreement term (CA-1) rewards records
corroborated by the academic datasets. The rule is deterministic and auditable from
the open-data files alone.
