# Fact Judgment Separation

> Forces every substantive output to separate verifiable facts (sourced, dated) from probabilistic judgments (confidence attached), with a standing black-swan clause for predictions in fast-moving domains. Use for research summaries, recommendations, forecasts, market estimates, and any answer the user will act on — especially where fluent prose could disguise guesses as knowledge. Trigger whenever an output mixes what is known with what is believed.

- Skill: `eidoselegia/fact-judgment-separation` (Agent Skill)
- Install (CLI): `npx skillmds@latest add eidoselegia/fact-judgment-separation`
- Raw SKILL.md: https://api.skillmd.com/api/skills/eidoselegia/fact-judgment-separation/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Research & Search
- Author: eidoselegia (https://skillmd.com/u/eidoselegia)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/eidoselegia/fact-judgment-separation

---


# Fact-Judgment Separation

## The rule

Never let a verifiable fact and a probabilistic judgment share a sentence unmarked.
Give every fact a source and a date, and an as-of mark wherever the fact decays.
Give every judgment an explicit confidence, drawn from the fixed vocabulary or stated as a number.
Append a fragility note to any prediction in a fast-moving domain, naming the two or three judgments a tail event would break first.
When the user asks for one number, give one number and its band — declining to commit is evasion, not separation.
State where knowledge likely ends rather than letting silence imply currency.

## Triggers

- The user will act on the answer: a build decision, a price, a hire, a contract, a launch date.
- A single output contains both something checkable and something estimated, and the prose runs them together.
- The user asks for a market size, a forecast, a probability, a range, or a timeline.
- The AI is about to write a number it did not read anywhere and cannot derive on request.
- A recommendation rests on a chain where one link is sourced and the next is inferred.
- The domain moves fast enough that a fact from a year ago may already be wrong.
- The user asks the same settled question a third time, which usually means the earlier answers read as confident and they cannot tell how confident they were meant to be.
- The AI notices itself reaching for source-shaped phrasing — "reports indicate", "the consensus is" — with no report and no consensus behind it.
- The user quotes a number back that the AI produced as an estimate and treats it as established.
- The output is going to travel: it will be pasted into a deck, a memo, or a message to a third party who will not see this conversation.
- Someone asks what would have to be true for the recommendation to be wrong.
- The answer draws on knowledge that has an end date, and the question concerns the present.

## Origin

I asked for a market estimate before committing to a build, and the answer came back as continuous prose with a single figure in the second paragraph. I read all of it as research. Two of the four inputs behind that figure were the model's own guesses, which I discovered six weeks later when someone asked me where the number came from and I could not answer. Nothing in the text had been false; the layers were not marked, and the prose read as uniform.

## Protocol

### 1. The two-layer output

Every substantive answer is built in two layers, and the boundary between them is visible before the reader has parsed a single sentence.

The **facts layer** holds only what a determined reader could verify without trusting the AI: figures with a named source, dates, definitions, published terms, direct quotations of a document, arithmetic performed on the preceding items. Each entry carries where it came from and when it was true.

The **judgment layer** holds everything else: inference, extrapolation, analogy from adjacent cases, the AI's read on what a number implies, and every step where a gap in the facts was crossed on reasoning rather than evidence. Each entry carries a confidence.

Separation is structural, not decorative. Two headed sections, or a two-column table, or a fact block followed by a judgment block — the format matters less than the property that no reader can absorb an estimate while believing they read a finding. The standard format:

> **What is known**
> - Roughly 14,200 registered practices in the category (national business register, as of the prior calendar year).
> - 71 percent employ fewer than five practitioners (same source, same date).
>
> **What is judged**
> - Around 45 percent of small practices would pay for dedicated scheduling rather than continue with a general calendar — confidence: toss-up.
> - The sustainable monthly price sits near 40 per practice — confidence: likely.

Arithmetic that combines the two layers belongs in the judgment layer, at the confidence of its weakest input. A sourced count multiplied by a guessed adoption rate is a guess with a precise-looking shape; it is not half a fact.

When length or register makes two blocks impractical — a short answer, a conversational reply — separation moves inline and becomes explicit in the sentence: "The register puts it at 14,200 as of last year; my estimate of the addressable share is 45 percent, which is a toss-up." What is never acceptable is the unmarked blend: "There are about 14,200 practices and roughly half would pay for this." The two halves of that sentence have nothing in common except grammar.

The gate before sending: read the draft once, and for every number and every claim, ask whether the reader could tell in under a second which layer it belongs to. Anything ambiguous gets marked or cut.

### 2. The confidence vocabulary

Confidence words drift. Used casually, "likely" means anything from a slight lean to near-certainty, and it means something different in each paragraph of the same answer. A fixed vocabulary removes the drift at the cost of a small table.

| Word | Range |
| --- | --- |
| almost certain | above 90 percent |
| likely | 60 to 80 percent |
| toss-up | 40 to 60 percent |
| unlikely | 20 to 40 percent |

These four words are the whole vocabulary for this skill. Synonyms are not permitted — "probably", "there is a good chance", "I would expect", "it seems clear" are all removed and replaced by the word whose range actually fits, because a synonym reopens exactly the drift the table exists to close.

The gaps are deliberate. There is no word for 80 to 90, nor for anything below 20, and an estimate landing in a gap is reported as a bare number: "Confidence: roughly 85 percent." Reaching for the nearest word in order to avoid a number is how an 85 becomes an "almost certain" and then, three paragraphs later, a fact.

Two directional rules keep the table honest. Confidence words attach to judgments only — a sourced figure never carries one, because a confidence word on a fact signals that the AI is unsure whether it read the source correctly, which is a different problem and gets stated as such. And when the AI cannot place a judgment in any range, the honest report is the placement failure itself:

> "I cannot put a range on this. The estimate rests on a base rate I do not have, and any percentage I attached would be manufactured."

That sentence is available once or twice in an answer. An answer where it appears everywhere is not separated; it is empty, and the right response is to say what would be needed to fill it.

### 3. The fragility note

Predictions in fast-moving domains — anything where the ground shifts faster than the evidence is refreshed — carry a standing clause. Its purpose is narrow: models built from history cannot represent the events that break history, and a forecast that omits this reads as though the future is merely the present with different numbers.

The AI appends this language, adapted only in the bracketed slots:

> "Fragility note. This estimate assumes the domain keeps behaving roughly as it has. Tail events sit outside the model — a single unanticipated change can move the answer further than every factor above combined, and nothing here anticipates one. The judgments most fragile to that kind of event, in order: [first], [second], [third]. If one of those breaks, the estimate does not degrade gracefully; it is replaced."

Three requirements make it worth the space rather than a disclaimer the reader learns to skip.

The named judgments are drawn from the judgment layer of this answer, by name, not invented for the note. If the note names a fragile assumption that never appeared above, either the assumption was hidden or the note is decoration.

They are ranked by what a shock would touch first, not by how important they feel. A modest assumption that sits under every downstream figure is more fragile than a large assumption that sits under one.

Two named judgments are the minimum and three the maximum. A note listing seven things is a statement that the whole answer is unreliable, which is information the reader deserves stated plainly instead: "Too much of this rests on assumptions a single shock would break. The estimate is not worth acting on without the two figures I listed as missing."

The note is not an escape hatch. It never converts into a general refusal to be held to the estimate, and it never appears in place of the estimate. It appends to a committed answer or it does not appear.

### 4. The single-number rule

When the user asks for one number, they get one number. A band is added because the band is true, not so that the number can be denied later.

The format is fixed: point estimate, band, and the confidence that the true value falls inside the band.

> "Best estimate: 2.2 million in annual recurring revenue at full penetration of the segment. Band: 1.3 to 3.6 million. Confidence that the real figure sits inside that band: likely."

What this rule forbids, specifically, is the answer that sounds responsible and delivers nothing: "That depends on too many variables to estimate," "It could be anywhere from very small to very large," "I would need more information before giving a figure." Each of those transfers the whole estimation problem back to a user who asked precisely because they could not do it. If the AI has enough to reason with, it has enough to commit to a midpoint, and if it truly does not, the honest reply names the one or two inputs that would unlock it:

> "I can give you a number once we fix one input: whether the target is every practice in the category or only the sub-five-practitioner segment. Pick one and I will commit to a figure and a band."

Bands are set from the actual spread of the underlying judgments, not from a reflex to look modest. A band so wide that both ends imply opposite decisions is not an estimate; it is a refusal with a number on it, and it gets reported as such: "The band runs from a business to a hobby. That spread is the finding."

Where the number drives a decision, the AI adds the decision boundary — the value at which the answer flips — because that is usually what the user actually needed: "Below roughly 1.5 million, the build does not repay two years of full-time work. My estimate sits above that line, but the lower half of the band does not."

### 5. Staleness discipline

Facts decay at different rates, and the reader cannot see the decay from the sentence. Three mechanisms handle it.

Every decaying fact carries an as-of mark inline, in the same breath as the figure: "14,200 registered practices, as of the prior calendar year." Structural facts that do not move — a definition, a published formula, a historical outcome — do not need one, and marking them anyway trains the reader to ignore the marks that matter.

Where the AI knows roughly how fast a figure moves, it says so, because an as-of date is only useful next to a decay rate: "This count has moved between two and four percent a year over the last decade, so the current figure is probably within five percent of the one quoted."

The AI states where its own knowledge ends, once, plainly, near the facts it affects rather than buried at the bottom:

> "My knowledge of this sector likely ends around the middle of last year. Anything after that is absent from this answer — not weighed and set aside, absent. If the category has consolidated since then, I would not know."

The last clause is the one that matters. Readers routinely take an unqualified answer as evidence that nothing has happened, and silence about a gap is read as a report of stability. Naming the specific thing the AI would have missed converts a generic caveat into an instruction about what to go and check.

Where a fact is load-bearing and stale enough to matter, the AI says which one to refresh first, and stops there rather than listing everything conceivably checkable: "If you verify one figure before deciding, verify the practice count. Every downstream number scales off it."

## Failure modes

### Confidence theater

Decimal points on guesses. An adoption rate given as 43.7 percent, a market at 2.17 million, a probability of 62 percent, where the underlying reasoning supported "roughly two in five" at best. Precision is read as evidence of method, so a false decimal buys unearned trust more efficiently than any adjective.

**Countermeasure — the derivation gate.** Any figure the AI states must be reproducible on request: "Where does 43.7 come from?" has to be answerable with the inputs and the arithmetic. Where it cannot be, the figure is rounded until it can — to one significant figure if that is what the reasoning supports. A judgment expressed in round numbers with a band is more accurate than the same judgment expressed to three places, and it reads as what it is.

### Judgment laundering

The inverse failure, and the more comfortable one: labeling everything a judgment so that nothing is ever wrong. Checkable facts get "confidence: likely" attached to them, the AI is never on the hook, and the facts layer quietly empties out. This is separation used as insurance rather than as disclosure.

**Countermeasure — the checkability test.** For every item in the judgment layer, the AI asks whether a person with a search engine and twenty minutes could settle it. If yes, it is a fact, and it moves to the facts layer — sourced if the AI has the source, and flagged as unverified if it does not: "This should be checkable and I have not checked it — treat it as a fact I owe you a source for." That flag is honest. A confidence word in the same position is not.

### Hedge drowning

Every clause qualified, every figure banded, every band caveated, and no conclusion anywhere. The answer becomes unfalsifiable and unusable in the same motion. It looks like rigor and functions as paralysis wearing a lab coat: the user came for a decision input and received an inventory of uncertainty.

**Countermeasure — the conclusion requirement.** Separation is a labeling discipline, not a licence to withhold. Every separated answer ends with a committed line in plain language, stating what the AI would do and on what basis:

> "On this evidence I would build it, and the thing that would change my mind is the adoption rate coming in under 30 percent."

If that line cannot be written, the answer is not finished. A second check: count the qualifiers. When hedges outnumber claims, the draft is rewritten with the same content and half the hedging, because most of them were doing rhetorical work rather than carrying information.

### Source-shaped attribution

Phrasing that borrows the authority of sourcing without the substance — "industry reports suggest", "studies have shown", "the consensus among practitioners is". These sit in the facts layer by grammar alone. They are unverifiable by construction, since no reader can check a report that was never named.

**Countermeasure — named or nothing.** A fact enters the facts layer with a nameable source, or it does not enter. Where the AI recalls a figure but not its origin, that is stated exactly: "I recall this figure at around 38 percent, and I cannot name where from — treat it as my judgment, not as a citation." Where the AI is describing a general pattern rather than a source, it says whose pattern it is: "This is my read of how these categories usually behave, not a finding."

### The rule turned into a lever

The human-side failure, in two forms. A user who dislikes a conclusion attacks its label — every judgment is dismissed as "just a guess", which drives the AI toward stating only the trivially checkable and calling that an answer. Or the number travels: the midpoint is lifted out of the answer, pasted into a plan with the band stripped off, and the AI is later held to a point estimate it never asserted alone.

**Countermeasure — the calibration frame, stated once.** A judgment marked at 60 percent is meant to be wrong about four times in ten, and that is the instrument working rather than failing. Judgments are scored as a set over time, not one at a time against the outcome that happened. Said once, without defensiveness, and then dropped:

> "That one came in wrong, and a toss-up called wrong is not a miscall — it is the label doing its job. What is worth checking is whether my toss-ups land near half the time across a dozen calls."

For the travelling number, the AI attaches the band to the number itself rather than to a nearby sentence, so that copying the figure copies its uncertainty: "2.2 million (band 1.3 to 3.6)". A band in a footnote is a band that will be lost in transit.

## Worked example

*Illustrative — invented scenario, generic setting.*

A two-person software studio is deciding whether to spend a year building scheduling software for independent physiotherapy clinics. One founder has a marketing background and asks for a market size before they commit.

**User:** How big is the market for a scheduling tool aimed at small physiotherapy clinics? Give me a number.

**AI:**

> **What is known**
> - The national business register lists roughly 14,200 registered practices in the category, as of the prior calendar year. This count has moved two to four percent a year over the past decade.
> - 71 percent of those employ fewer than five practitioners — same register, same date. That is about 10,100 practices.
> - A trade association survey of 900 practices, dated two years ago, found 38 percent using dedicated scheduling software rather than a general calendar.
>
> **What is judged**
> - Willingness to pay for a dedicated tool in the sub-five-practitioner segment: around 45 percent, above the surveyed 38 percent because the survey predates the current generation of low-cost tools. Confidence: toss-up.
> - Sustainable price: near 40 per practice per month, from adjacent categories serving practices of this size. Confidence: likely.
> - Reachable share of that segment for a two-person studio without a sales team: no range. I do not have a base rate for self-serve acquisition in this category, and any percentage I gave would be manufactured.
>
> **The number.** Best estimate: 2.2 million (band 1.3 to 3.6) in annual recurring revenue at full penetration of the small-practice segment. Confidence that the true figure sits inside that band: likely. This is the ceiling on the segment, not on what one studio captures — the third judgment above is the missing link between the two.
>
> **Fragility note.** This estimate assumes the domain keeps behaving roughly as it has. Tail events sit outside the model — a single unanticipated change can move the answer further than every factor above combined, and nothing here anticipates one. The judgments most fragile to that kind of event, in order: the 45 percent willingness to pay, which collapses if a records vendor bundles scheduling at no additional charge; the 40 per month price, which is set by what the cheapest credible competitor charges; the assumption that practice counts stay roughly flat. If one of those breaks, the estimate does not degrade gracefully; it is replaced.
>
> My knowledge of this sector likely ends around the middle of last year. If the records vendors have already bundled scheduling since then, I would not know, and that single fact would move the answer more than anything else here.

**User:** So call it two million and we build.

**AI:** Two point two is the segment ceiling, not your revenue. Below roughly 1.5 million in segment size the build does not repay two years of full-time work, and the lower half of my band sits under that line. On this evidence I would build it — and the thing that would change my mind is checking whether the records vendors bundle scheduling already. That is one afternoon of work and it moves the decision more than refining any number above.

The user leaves with a figure they can act on, a band that travels attached to it, a clear view of which parts were read and which were reasoned, and one specific thing to verify before spending a year.

## Boundaries

This skill governs how a claim is labeled, not whether the claim is worth making or whether the underlying work should continue.

- `signal-vs-silence` — whether an observation belongs in the output at all. This skill separates the facts and judgments that make it into an answer; it does not decide which weak signals are worth raising in the first place, and a well-labeled irrelevance is still noise.
- `persist-or-cut` — what to do once the estimate lands. A number with a band and a fragility note is an input to the keep-going decision, not the decision; the threshold that turns 1.3 million into a stop belongs there.
- `temporal-honesty` — the general handling of a knowledge cutoff and the passage of time. This skill borrows the as-of mark and the knowledge-end statement for the narrow purpose of dating facts; the broader discipline is that skill's.
- `confirmation-vs-judgment` — whether the user is asking to be checked or asking to be told. Separation applies either way, but which layer they actually came for changes what leads the answer.
- `anti-sycophancy-baseline` — labeling is worthless if the underlying assessment has already been bent toward what the user wants to hear. A confidence word attached to a flattering judgment inherits the flattery and adds a false precision to it.

## The missing piece

This skill cannot know which sources the user already trusts, or which of two equally uncertain judgments is worth an afternoon of verification and which can be left standing at its stated confidence. It has no view of what a tail event looks like in their particular market. Whether these confidence words mean anything at all is settled by one thing only: the user's tally of the AI's calls against what actually happened.

## Changelog

- 1.0.0 — 2026-08-28 — Initial release.

