Reading the document you are approving
The console's document viewer: what it shows, how fresh it is, and what is named rather than omitted.
The row's slug is now a link, and this chapter is the runbook for it.
-
Start the process and open
/console, exactly as in the chapter above. -
Click the stream slug in a gate row. It opens in a new tab (
target="_blank",rel="noopener"), so the queue you were reading stays where it was — go back to it by switching tabs, not by navigating back. -
The tab you land on is
/console/document/<stream>, and it is laid out in the two levels the owner asked for:- On top, the deciding pair, in this order —
_REVIEW_STATUS.md(the verdict and its conditions) then_EXEC_STATUS.md(what the executor actually did). Each is rendered as markdown: headings, paragraphs, lists, code blocks, bold, links and block quotes. The render happens in the process, in Go — the page loads no script and makes no network call, so it works on a machine with no internet. - Below it, the chain, one click away —
_MASTER_ORDER.mdand every path the record's own- artifacts:manifests declare, each a link to the same viewer. An entry the viewer cannot open (a path that leaves the stream's channel home) is listed greyed and without a link rather than dropped, so you can see that it exists and that this screen will not serve it. - A last line naming where the bytes came from — the directory that was read, whether it is the live worktree or the archived channel copy, how many files this request touched, and how many streams the record holds. Read it when a number surprises you.
- On top, the deciding pair, in this order —
-
A document that is not there is NAMED, not omitted. If a leg died before writing its
_EXEC_STATUS.md, the pane for it carries a callout with the absolute path that was looked for and the operating system's own reason (no such file or directory,permission denied). The executor wrote nothing and this screen does not show it are different facts and the screen keeps them apart. Do not read a callout as a rendering bug without checking the path it names. -
What this page shows is as fresh as the record, not as fresh as the disk. The channel home is looked up through the record, so a stream the engine has not ingested yet answers 404 naming the slug even if its worktree is on the disk in front of you. The document TEXT, once the home is known, is read from disk at request time and is therefore current. The freshness table in How fresh a read is applies to the first half and not to the second.
-
What is not here yet, deliberately: no act at the gate from this page (it is read-only, as the rest of the console is); no diff; no syntax highlighting in code blocks; no rendering of tables, images or reference links (they degrade to the document's literal text); no search; and no view of a document belonging to a stream the record does not carry.
Reading the gateway's answers
Per operation: what it answers, how fresh it is, and the field you must read before the numbers.
Metrics export: what you get
Three metrics from the record to any OTLP collector you run, the rule that governs every label on them, and the metrics a monitoring team usually asks for that this deliberately refuses.