pub(crate) fn resolve_role(
role: DictateRole,
pin: ModelSpec,
configured: Option<&str>,
installed: &[InstalledModel],
pick: Option<ActiveChoice>,
) -> RoleResolutionExpand description
One role’s model, from the config key when set, else the runtime pick, else the compiled pin.
The rows are passed in rather than read here, because the boot reads them from the store this process owns and a bench reads a copy of one it does not; both then answer the role the same way.