---
title: "Verification"
description: "The eight statuses a fact can hold, what each one means, and which of them a draft is allowed to lean on."
updated: "2026-08-18"
verifiedAgainst:
  - packages/shared/src/knowledge.ts
---

Every fact carries a status. It is the answer to "how much should this be
trusted", and it is why the engine can hold an uncertain fact without treating it
as true.

| Status | Meaning |
| --- | --- |
| `candidate` | Extracted, not yet confirmed |
| `verified` | Confirmed against its source |
| `user_confirmed` | You stated or confirmed it |
| `inferred` | Derived rather than read directly |
| `stale` | Was true, and its source has not been rechecked recently enough |
| `disputed` | Two sources disagree. See [conflicts](/knowledge/freshness) |
| `superseded` | Replaced by a newer fact |
| `rejected` | Wrong, and kept so it is not extracted again |

## What this buys you

A specific claim in a draft can be traced to a fact, and that fact to a source
and a status. When something reads wrong in an article, the question "where did
that come from" has an answer.

## Confirming facts yourself

The highest confidence status is the one you set. Confirming the handful of facts
that matter most about your product, the ones that appear in every comparison
and every pricing sentence, is the single highest leverage thing you can do in
the Knowledge Engine.

## Rejecting

Rejecting a fact keeps it, marked wrong. This is deliberate: a deleted fact gets
re extracted from the same page on the next read, while a rejected one does not
come back.
