I ran into a problem when using Gurobi that the feasibility cuts did not work because the primal solution of a subproblem was infeasible, but dual_status of this problem returned NO_SOLUTION. If I tried to solve the same problem with HiGHS, the feasibility cuts worked. I think inside the _check_termination_status function, if feasibility_cuts==true, then we should also check the dual_status and throw an error if if returns no solution.