pub async fn run(
config: &Config,
session: &mut Session,
restore: &RestoreRegistry,
) -> FinalOutcomeExpand description
Runs the full triage loop, populating the caller-owned session so the
report stays rich even if the run is interrupted or panics. Returns the
FinalOutcome. Destructive actions register inverse ops on restore; the
caller drains it on every terminal path.