* fix(client): count threads, not checkpoints, in list_threads
checkpointer.list(None, limit=N) returns the newest N checkpoints across
every thread, so one long conversation filled the limit and hid the rest:
the TUI thread picker and --resume <title> only saw the latest one or two
threads. List threads through their single step -1 root checkpoint
instead, then read the latest checkpoint per returned thread.
Add sort_by="updated_at" so --continue keeps resuming the most recently
active thread rather than the most recently created one.
* test(client): pin list_threads scan cost and namespace filtering; docs
* docs(client): state list_threads cost as checkpoints loaded, not rows scanned
* docs(changelog): reference #6426
* fix(client): list threads by checkpoint write order, including branches
Discovering threads by their step -1 input checkpoint dropped Gateway
branches, which are seeded through update_state (step 0), and ordering
by checkpoint ts missed goal writes, which copy the previous ts under a
fresh checkpoint id.
Enumerate threads from the checkpoint primary-key index on SQLite and
Postgres (unwrapping the delta-history cache), falling back to one
list(None) walk for any other saver, and order by checkpoint_id, the
key LangGraph itself uses for a thread's latest checkpoint.