  We propose a new practical adaptive refinement strategy for $hp$-finite
element approximations of elliptic problems. Following recent theoretical
developments in polynomial-degree-robust a posteriori error analysis, we solve
two types of discrete local problems on vertex-based patches. The first type
involves the solution on each patch of a mixed finite element problem with
homogeneous Neumann boundary conditions, which leads to an ${\mathbf
H}(\mathrm{div},\Omega)$-conforming equilibrated flux. This, in turn, yields a
guaranteed upper bound on the error and serves to mark mesh vertices for
refinement via D\"orfler's bulk-chasing criterion. The second type of local
problems involves the solution, on patches associated with marked vertices
only, of two separate primal finite element problems with homogeneous Dirichlet
boundary conditions, which serve to decide between $h$-, $p$-, or
$hp$-refinement. Altogether, we show that these ingredients lead to a
computable guaranteed bound on the ratio of the errors between successive
refinements (error reduction factor). In a series of numerical experiments
featuring smooth and singular solutions, we study the performance of the
proposed $hp$-adaptive strategy and observe exponential convergence rates. We
also investigate the accuracy of our bound on the reduction factor by
evaluating the ratio of the predicted reduction factor relative to the true
error reduction, and we find that this ratio is in general quite close to the
optimal value of one.
