<summary>Read a Campaign Flow node's "went through" history: prospects who held a position on
`node_id` and have since advanced off it, newest visit first — the same per-node History
list the Flow node-detail panel renders on node-click. Use it to answer "who passed
through the connect step", "who has already been through step 2", or to see where a node's
past occupants moved on to. This is the history counterpart to get_campaign_flow's live
`current` occupancy count; for who rests on a node *now*, filter query_prospects on
`current_node_id` instead. Pass any of the user's campaigns; not limited to the agent in
context.
Reads the append-only position log directly, so an `off_sequence` node id a later flow
edit dropped still returns its history. A node no one has moved off — including the start
node, which stores no position rows of its own — comes back empty.</summary>
<returns>
<description>Dict with node_id, count, and prospects array. `count` is how many prospects went through and
moved on in total (independent of `limit`/`offset`, so the page count is
ceil(count / limit)); `prospects` is the requested page, newest visit first, each
{id, name, email, linkedin_url, provider_id, current_node_id, visited_at} —
`current_node_id` is the node they rest on now, `visited_at` the ISO time they last
held `node_id`.</description>
</returns>