# Citations and determinism

> What verified_by points at, what we guarantee about it, and what we do not.

## `verified_by`

Every `valid` answer carries one, in the form `chart@6baf09f0`.

It identifies **the version of the rules the output was checked against** — not the build that
produced it, not the service version. That split is the whole point. How
answers are produced may change; the version a citation identifies does not, and a
citation whose meaning moved with every release would not be worth issuing.

The hash moves when the rules move, and only then.

Store it next to the artifact. It is what lets you answer "which version of the rules was this checked against?" long after the conversation that produced it.

## What is guaranteed

**A `valid` artifact passed that version of the rules.** That is a statement about the
artifact you are holding, and it stays true forever.

**The citation is stable.** The same rules produce the same identifier. Two
artifacts carrying the same `verified_by` were held to the same rules.

**The catalogue is the contract.** An oracle in `GET /v1/oracles` is callable by
your key; a format in its `formats` is one it will accept.

## Determinism

**The same intent does not guarantee the same artifact.** The same intent can
return a different artifact. Two identical requests can return two different
valid charts, and both are correct.

**The same intent does not guarantee the same verdict.** Asking twice can return
`valid` once and `invalid` the next time. If you need a fixed artifact, store the
one you got — do not re-derive it.

**Rules can get stricter.** If they do, their hash changes, so an artifact you
already hold keeps its original citation and keeps meaning what it meant. What we
will not do is change the rules while leaving the identifier alone.

## What is not guaranteed

That an intent is satisfiable. Some are not, and `invalid` is the honest answer.

That the artifact is what you *meant*. The check confirms form, not intent — a
valid chart of the wrong column is valid.

That two oracles agree. They have different rules and are not comparable.
