refactor: prefers concrete over partly generic types context in provide_condition.rb