treewalk, the generative fallback
The strategy in which a chat model walks the contents and pages, used when Jev is unavailable.
treewalk is the engine's generative navigation strategy. Before navigation
moved to Jev in September 2026 it was the main strategy. It is now the
fallback.
How a walk works
A chat model gets three tools and up to eight turns:
get_document_structure()returns the contents tree: titles and page ranges, no body text.get_pages(start_page, end_page)returns the text of those pages.done(answer, cited_pages, reasoning)ends the walk with the answer and the page ranges it cites.
The model writes its answer inside the done call, so there is no separate
answer step.
When it runs
- No TypeSafe key.
judgewalkneeds Jev; without it the engine usestreewalkinstead. - Jev refuses a request. No credit, a rejected key, or an outage: the server
binary serves that query with
treewalkand logsretrieval: primary model unavailable, served by fallback. - On request.
POST /v1/answer/treewalkalways uses it, andretrieval.strategy: treewalkmakes it the default.
How it compares
treewalk makes several generative calls per question where judgewalk makes
none before the answer. In the 2026-10-08 comparison on the 3M 2018 10-K,
treewalk on glm-4.5-air answered in 7.6 s at the median against 10.5 s for
PageIndex on the same model, and PageIndex was faster on 2 of the 6 questions.
The shipped Jev path answered in 5.27 s. See
Benchmarks.
Pincites are not attached to treewalk answers; it returns cited page ranges.