Skip to content

What a report contains

Every section below appears in every report, in this order. The list is not a mock-up — it is taken from an actual pipeline run, so the ordering and the section names are exact.

Why there is no specimen report here. A report is a document about a person. We will not publish a real one — the only complete run is the author’s own history — and a report about an invented person would invite exactly the reading this tool refuses: treating generated prose about a fictional subject as evidence of what it can tell you about a real one.

What is worth showing is the contract: what a report must carry, and which automated check refuses to render it otherwise. That part holds no matter whose history goes in.

The structure

A safety notice, when one is needed

Prepended only when the report needs it. Two different cases: a report that surfaces your own writing about self-harm gets a supportive note and crisis links before you reach it; a report that failed its check gets a warning saying so. This is not decorative — the panel does block reports, and a blocked one is refunded rather than delivered.

Enforced by: A four-vendor judge panel that reads the finished report, not the draft behind it.

Title, date range, session count

always present
Which corpus this is and what span it covers, so a report can never be read against the wrong period.

What this is

always present
The standard disclaimer, verbatim, first: not a diagnosis, not medical advice, most findings have ordinary explanations, talk to a professional rather than to this document.

Enforced by: Rendered from a fixed template, not written per report — it cannot be softened for a particular reader.

Summary

always present
A few lines on the corpus as a whole, plus the count of markers extracted, patterns formed, and how many survived the adversarial review. Where a corpus is too small to support a claim, this section says so instead of producing one.

Patterns that might be worth noticing

always present
The body of the report. Zero patterns is a valid and common outcome. Each one carries, in this order:

The pattern, with a confidence tier and a maturity label

Confidence comes from how much evidence actually supports it. Maturity is currently Bootstrap on every finding in every report — theoretically motivated, not validated against chat data — and it says so on the finding rather than in a footnote.

What we observed

The observation stated as a relationship across conversations, not a summary of one message. A pattern that a keyword search could have found is cut before this stage.

Evidence

Direct quotes with a date, a session id, and a message index — enough to open your own export and find the original. Quotes are checked against the cited message, so a genuine quote attached to the wrong conversation fails.

Enforced by: A traceability gate (no finding renders without ≥1 citation) and a fabrication gate (every quote must be a substring of the message it cites).

Why this might matter

The case for taking the pattern seriously, stated plainly enough to disagree with.

A more everyday explanation

The ordinary reading, generated as part of the finding rather than bolted on afterwards. Most of what this tool flags has one.

Enforced by: A gate that refuses to render a finding with no benign interpretation attached.

What a reviewer argued, and the answer to it

An independent model from an unrelated vendor is instructed to refutethe finding and defaults to refuted unless the evidence forces otherwise. Its strongest objection is printed whether it won or lost, alongside the synthesizer’s reply — followed by a line telling you to read the two together and that you may side with the reviewer.

If this concerns you

One concrete, non-clinical thing to notice next time. Never advice, never a recommendation to seek treatment for something.

What this report cannot tell you

always present
The structural blind spots, restated inside the document so they travel with it if it is read on its own months later.

What the extractor is known to miss

always present
Named marker types the extraction model scores poorly on. This matters because absence reads as a finding: “this never appears” and “we cannot see this” produce identical-looking output, and only one is about you.

Enforced by: Per-type recall is measured and disclosed; the corpus-level pass may not make claims about a type whose recall is below the floor.

How much of your history was read

always present
Coverage: how many sessions and messages went through, and any slices that failed. Sampling is disclosed rather than assumed.

On what is missing from the corpus

always present
What the corpus-level pass could and could not conclude from absences — including refusing to conclude anything when the corpus is too small.

Appendix: the evidence

always present
Every marker behind every pattern, so the report can be audited rather than trusted.

What it will not contain

The measured limits on how well any of this works — including the run-to-run agreement numbers and the blind spot we found in our own extractor — are on the limits page. It is the more useful page of the two.