A channel is a named pointer at a version. Callers ask for a channel rather than
a number, so the number can change without them.
Production
Every prompt gets production by default, and a get with no selector resolves
it. In application code, ask for nothing:
Adding a channel
Promoting to a name that does not exist yet creates it:
Now the same prompt answers differently depending on who asks:
Which suits running a new prompt against internal traffic while customers keep
receiving the version you trust.
The latest channel
latest always resolves the highest version:
It is derived from the version table rather than stored, so it cannot fall out
of step with it.
Do not point production traffic at latest. Every edit ships the moment it is
written, with no review and nothing to roll back to.
Naming
Channel names are lowercase alphanumeric and may contain _ or -, up to 36
characters. Name them after the audience, not the version: production,
staging, beta.