The problem is in the definition of avoid. There was an assumption made
that the discriminant would be integral, so
any(q.divides(m) for m in avoid)
has avoid = [1048576/5764801, 8, 28, 49, 7]
If you change the definition of avoid from
avoid = [self._N, self._D] + [P[0].denominator_ideal().norm()
I ran the following code in SageMath 10.2:
sage: K. = QuadraticField(2)
sage: E = EllipticCurve([0, 60/49*a - 135/49, 0, -576/343*a + 904/343, 0]);
E
Elliptic Curve defined by y^2 = x^3 + (60/49*a-135/49)*x^2 +
(-576/343*a+904/343)*x over Number Field in a with defining polynomial x^2
- 2 with