Well, after some more experimentation, its forte seems to be as a programmer's assistant.
It's not that it writes production ready code, but asking it questions seems remarkably like interviewing a fresh graduate who shamelessly BS'es, and has some short term memory issues (like a human under stress!) but can glibly respond when you point out a mistake.
I asked it to create some Javascript classes, and when I pointed out it wasn't using the "#" to make properties private, it said that was too new to be supported. That sort of makes sense if its model is a bit out of date, but it was inconsistent - earlier it did use that syntax.
And when I questioned it, pointing out that caniuse says 93% of browsers support it, it immediately agreed, and revised the code.
It also was able to change loops using forEach() to traditional for loops, or to for...of. That sort of thing is neither creative nor especially necessary, but it reduces the friction to trying out different styles and seeing what one likes.
It doesn't seem to be very good at putting subtasks in a logical order or factoring out repeated code, but neither of those are necessary to provide ideas, and because it's not production ready code, you the human are still doing something necessary and maybe more enjoyable.
I do still feel that it's a glorified database, but at the same time it might not be unreasonable to call it as much of an advance as the first compiler was. Or maybe the relational database.
I wonder if it would work better if it incorporated its own adversarial doppelganger - evaluating each response from the opposite point of view, and then providing some of the results from both sides.
There were some results I wasn't happy with.
I asked it to base a class structure on something from a different language and environment and it pretty much made it up, and had no idea what methods were important. When I told it to remove all but the most commonly used X number of methods, it acted like it understood, but the ones it selected weren't reasonable.