For staff: the review queue and what approving publishes
What a reviewer decides, what happens the instant they press approve, and the actions that cannot be undone.
The four roles
| Role | What it can do | Who holds it today |
|---|---|---|
| Super admin | Everything. | All fifteen live staff accounts. |
| Editor | Read the console, and create, edit, delete and publish content. It cannot restore a deleted record, cannot see staff or roles, cannot change settings and cannot send a newsletter. | Nobody. |
| Viewer | Read everything except staff accounts and roles. | Nobody. |
| Partner Acces | Manage staff, decide review candidates, send newsletters. It does not carry the general read capability. | Nobody. The spelling of its label is as stored. |
The review queue
Connectors read published sources on a schedule and stage what they find as candidates. A candidate is not a record and is not public. The queue at /admin/ai/ingestion/queue is where a person decides which candidates become records.
The queue is ordered oldest first by when the candidate was staged, and it can be filtered by source. A filter goes into the address, so a narrowed queue can be shared or bookmarked.
What to read on a candidate before deciding
- What would be written, field by field, in editable controls. Correcting a field here is recorded as a correction: the line above the decision buttons changes from "No corrections. Approving now counts towards this source's precision." to naming the field you changed.
- Where it came from: the source, its legal note, and the run that fetched it.
- The raw payload, as the source sent it.
- What it might duplicate.
- A confidence panel, drawn as a meter with three lists.
- The documents block, which is the one that decides whether the published record will carry files.
The four refusals the queue makes for you
| Situation | What the queue does |
|---|---|
| The candidate is below the confidence floor | Approve is disabled. To proceed you must tick a box saying you are approving on your own authority, and then type a reason, which goes into the audit trail beside the score and against your name. |
| The candidate duplicates a live record | Approve is disabled and the alert names the live record. There is no way to do this in a batch: it is a decision taken one record at a time. |
| The candidate's deadline has already passed | A warning appears reading "This closed before you got to it", and approve stays enabled, deliberately. Publishing an expired call for the record is a legitimate choice; publishing one by accident is not. |
| You press reject with an empty note | It refuses: "Say why. The reason is the record." A rejection with a reason keeps the candidate in the queue, marked, so the source can be measured on it. |
The documents block, and its states
This block decides what a member will see on the published page, so its wording is precise and the distinctions are real. The two that must never be confused are "Whether this notice has documents is not established", meaning nobody has looked, and "The notice itself lists no documents", meaning somebody looked and there were none.
Silence in our record is not an absence at the source. A member reading the published page sees the consequence of this block: see Reading a tender properly.
Publishing and unpublishing an existing record
- Open the record in the console and use the actions menu.
Unpublishmakes it a draft again. The toast reads "This record is a draft again, so the public site no longer shows it."- Its attached documents go with it. A document address on an unpublished record answers 404 Not Found, not 403, so that it never reveals whether a document id exists on a record nobody may see.
Publishputs both back. The toast reads "Published. The change is in the audit trail."
Fields you may edit and fields you may not
Everything is in the audit trail
Creates, updates, publishes and unpublishes all write an entry at /admin/activity naming your account, your role and the time. An update expands to a table of Field, Before and After, with an empty value rendered as the word empty rather than as a blank cell.
A rejection is in the audit trail and deliberately not in the review history, because it produced no record.
CMS pages, which behave differently
Checked against this platform on 7 September 2026. If this page disagrees with your screen, your screen is right: this is how the page gets corrected.