how to change list of some scalars into vectors?

I have a pair of equations f= {eq1,eq2} that are (x,y) dependent. I take derivative by (x) and (y) for each equation, for example,

 Grad[f, {x, y}] . {1, 1}]  

and multiply it with a Xlist. The functions are dependent on Xlist too say {{1,2,3},{2,2,4}} For some functions (say f1) my output is listed like this

 {{12},{2}}  {{12,3,4},{21,2,3}} 

The function f1 usually is

 f1={xy+x^2,xy+y^2 }   

form. For other functions like

 f2 ={x,y^2}  

or

 f3={x+4,y-2}  

the output is

{1,{21}} {1,{2,3,4}} 

for f1 and

 {3,6} 

for f2. It causing me problems for next calculations because the output format is required to be like {{},{},{}….} etc. Looks like derivative of functions such as f2 and f3 yield constant or scalar f2 = (scalar, vector) and f3 =(scalar,scalar). How do I make scalar stay as a vector? How do I turn list for example {1,{3,4,..} or {{3,2,2},3} into {{1},{3,4,..} or {{3,2,2},{3}}? I have tried a rule method but my approach did not seems to pan out correctly,

 code /. {a_,{b_}}->{{a},{b}} 

because output of size derivative vary with list of functions and Xlist.