I take it back, it's a sky130 .gds the gates are explicitly in there
The tools can definitely recognize static logic gates purely from the topology (nothing special in the GDS needed). I don't know that I've tested it for anything more complicated, but as you've pointed out, if the hierarchy is in the GDS it's trivial to recover
In fact if you have the sky130 libraries installed (it's where I'm working) you can get a spice netlist out of it in about 10 seconds - really they should have flattened it
That would have added a definite layer of complexity, but really just a token/cpu drain on the puzzle solver. Had they done that, I would have had Claude write a "gds matcher" that took the gds files of the sky std-cell lib, and located matches in the full gds, and produced a hierarchical def. It would have taken me 5 minutes to describe it to Claude/GPT (which they ok'd for "tool creation"). So it adds a lot of cost to solve the puzzle, but no real complexity. I'm glad they didn't flatten it.