Quick note first: I do marketing for HelloAI (tryhello.app), and this is a test I ran on its free plan. I'll show the prompt, the picture it gave me, and where it slipped.
The prompt, word for word:
Make an image: a simple sequence diagram of HTTP conditional caching. Two lanes only: Browser and Server. Four numbered arrows with SHORT labels: 1 GET /logo.png, 2 200 OK + ETag, 3 GET with If-None-Match, 4 304 Not Modified (no body). Large legible text, minimal words, flat style.
It took about a minute and returned one image (1536x1024):
What is right
The flow is the standard revalidation round trip. The browser asks for a file, the server answers 200 with an ETag, the browser asks again with If-None-Match, and the server answers 304 with no body. MDN's 304 page describes exactly this: it is sent for a conditional GET or HEAD with If-None-Match or If-Modified-Since when the condition is false, and it must not contain a body. MDN 304
The arrow directions are right, the lanes are right, and the text is large and readable, which was not a given. A different prompt I tried yesterday (a water cycle infographic) came back with garbled labels in the part I could see, so I asked for fewer words this time on purpose.
What slipped
- Step 2 reads "2-200 Ok" instead of "2 200 OK". The number and the code ran together with a hyphen.
- Step 4 lost its brackets and reads "204 Not Modified Ino body". Also look closely: it says 204, not 304. I asked for 304. That is a real error, and a nasty one, because 204 No Content is a different status (success, nothing to return) and a reader skimming the picture would learn the wrong code.
- Step 3 does not show what goes in
If-None-Match(the ETag value from step 2). I did not ask for that, so I will not count it against the output.
I only caught the 204 because I compared the picture with my own prompt. If you generate diagrams like this, check every label.
Why I am posting it anyway
A diagram you can see and fix is a better starting point than a paragraph, and the clean layout is the part that worked. But the one wrong status code in the middle is exactly the kind of error a pretty picture hides. One prompt, one run, nothing cherry-picked: this is the only image I made for this post.

Top comments (0)