The provider session each listed run is being driven in on the device that answered, for the runs where there is one.
The same fact [RunExecution::session] carries about a single run, and deliberately not a header field for the same reason: a header is what a run means on every device, and which session is driving it here is execution state (D3, D15). The listing carries it so a surface that draws every run - the Agents navigator - can put a run's session underneath the run without one GET /v1/runs/{run} per row.
Absent for a run between attempts, for a run that has ended, and for every run another device is executing. #[serde(default)], so a listing from a worker that predates the field reads as no session known rather than failing to decode.
documents
object
The Run document each listed run is registered as.
A run is a document in the workspace's manifest, and deleting one is that document going into the workspace's bin like every other document in Koru - which is a manifest edit, and the manifest belongs to the window rather than to this worker. So the listing says which document each run is, and the window that asks for a run to be deleted has the id it needs to move it.
#[serde(default)], so a listing from a worker that predates the field reads as no documents named rather than failing to decode.
The runs of this workspace that are in the trash, newest deletion first. Absent from runs: a trashed run is not a run you are looking at any more, and the Agents navigator stops listing it the moment it goes.