In an attempt to error-trap a 3-D DSolve solution, resorted to an eccentric circle flat model (analog to non-geodesic circles on a sphere), for which the following is an abridged code :
Clear["`.*"]; a = 1; ri = 1; thi = 0; zi = 0.; phi = 0.; smax = 38.;
sii = Pi/3.; slp = .2; EccenCirc = {(SI'[s] + Sin[SI[s]]/R[s]) == slp/a, R'[s] == Cos[SI[s]], TH'[s] == Sin[SI[s]]/R[s], R[0] == ri,TH[0] == 0., SI[0] == sii}; NDSolve[EccenCirc, {SI, R, TH}, {s, 0, smax}];
{si[t_], r[t_], th[t_]} = {SI[t], R[t], TH[t]} /. First[%];
Plot[{si[s], r[s], th[s]}, {s, 0, smax}, GridLines -> Automatic]
disk = ParametricPlot[{r[s] Cos[th[s] + v], r[s] Sin[th[s] + v]}, {s, 0, smax}, {v, 0, 2 Pi}, PlotLabel -> SPH, PlotStyle -> {Thick, Pink}];
fila = ParametricPlot[{r[s] Cos[th[s]], r[s] Sin[th[s]]}, {s, 0, smax}, PlotLabel -> ECCEN_CIRC, PlotStyle -> {Thick, Blue}];
smll = Show[{disk, fila}, PlotRange -> All, Axes -> None, Boxed -> False, PlotLabel -> "ECCEN_CIRC"]
soln = DSolve[EccenCirc, {SI, R, TH}, s]
which also fails to define $ (SI, R, TH)$ in terms of arclength (OK with NDSolve) but at least serves as an error trap.
An error message " Solve was unable to solve the system with inexact coefficients or the system obtained by direct rationalization of inexact numbers present in the system. Since many of the methods used by Solve require exact input, providing Solve with an exact version of the system may help ".
So thanks again in advance for help with an exact Mathematica system.