add generic solver_spec