Close - the GPL requires that anyone that gets the executable code be able to get the source code. It doesn’t require that Glowforge make the source code accessible to anyone else, though anyone who gets the source code could redistribute it. The GPL doesn’t specify the mechanism for getting the source code - in “the olden days” programs complied with the GPL by telling people that they could write a letter to an address, and receive a 9-track tape back with the source code in a month or two, and required the requestor covered the cost of media and shipping. These days most programs put their source in GitHub or something similar, and they do so generally before it’s formally requested, and they make it public rather than restricting to their customers, but that is not required by the GPL.
As others pointed out, it doesn’t matter how many copies of the software are distributed, or whether you call it beta or release - the legal requirement is triggered by even one copy of the firmware going to even one customer - that customer has the legal right to request the source code and redistribute it to the world.
Pragmatically, many companies delay releasing source until they feel “ready” so that’s not unusual - but if someone wanted to force the issue, the right to request the software was triggered the first time they shipped a printer to any non-employee. But that request would have to come from someone who received a Glowforge unit. IANAL, but I’d say that Glowforge is in compliance with the GPL (assuming there’s GPL’d code in the Glowforge) unless someone makes that request and is rejected.