# Receipts

> A link that shows where a figure an agent states came from.

An agent states a figure: "revenue grew 14% last quarter". A receipt lets you check it.

When an agent calls `query` with `receipt: true`, it gets the rows and a link. The link opens a page that shows:

- the SQL it ran;
- the exact version of each table it read;
- who ran it, and its run label;
- the rows it answered.

rho's server instructions ask agents to make a receipt for each figure they state, and to put the link beside the figure.

## A receipt reads the same for good

Versions never change, so a receipt never does either. The result is kept with the receipt, so it doesn't depend on the versions being kept.

## Is it still true?

Once a table it read has a newer version, the receipt page runs the query again on the latest versions of the same tables, a table renamed since included. It says whether the answer still holds, has changed (marking the cells that differ), or no longer runs, and why.

The query runs again only when a table has a newer version, so an open link can't be used to run queries at will.

## Who can open one

Anyone with the link, without signing in, as with a public table's link. A receipt shows its result only, never the tables it read.

It stops working when revoked (from the receipt page, signed in to its workspace), and while a table it read is in the trash. Making a receipt needs a connection allowed to write.