2. FETCH -- Pull the *full text of that section's subtree from the DoclingDocument.
3. ATTEMPT -- LLM tries to answer from the section text. Returns {can_answer: bool, response: str}.
can_answer = true
can_answer = false
return answer
4. ITERATE -- go back to SELECT, with the visited section excluded.
Notice what's not in this picture: no chunker, no embedding model, no vector store, no top-k.
The "index" is a markdown outline of the document with one summary per section, generated once offline.
AI text/layout recreation from video frame; verify against source image.