Paul thank you for the detailed reply! I am a bit new to creating problems in WebWork and still fumbling my way around.
You are right that this particular example does not need any persistence. This is a first proof of concept test to see how inserting Desmos graphs into WebWork works. There are definitely more complicated examples that could use a persistent state. For example, a problem where the student is give 3 points and asked to find the equation of the quadratic that passes through those points could use Desmos as a workspace and answerbox, allowing the student to see how their proposed solution compares to the points they are given. Persistence would enable the student to come back later if they get stuck and see equations they had tried. Although I am probably going to use Desmos heavily for simple problems, like this one, that just need a graph because it is easy to setup Desmos and the zoom & tracing features are really nice for students.
It is interesting that you needed to covert to a string for Desmos to like your example. Mine works fine with the formula. Could the quotes around what is being passed make the difference? Your code looks like "y=$fstring" while mine is 'y=$f' with just single quotes.
You are right about the PDF hardcopy. I haven't looked into what I need to do for that.
Also, thanks for catching that I was using the 0.4 API. For some reason that came up first in my search and I just never switched the problem when I found the updated API.