Publication, Correction and Right-of-Reply Policy
1. Why a mechanism is not a policy
Trooth already has the mechanism. /network/dispute records a challenge from anyone, notifies the company when the page is claimed, and lets an operator settle the case. The database enforces the part that matters: the application role holds insert rights on the dispute table and no read policy at all, so a company cannot read, edit, close or erase a dispute filed against its own page. That is good engineering and it is already shipped.
What did not exist until this document is the policy the mechanism enforces. How long a contested fact stays published, what evidence closes a case, who decides, and what a reader sees while a case is open are all questions the code does not answer and cannot.
A dispute process without a published policy is a suggestion box. This document makes it a commitment.
2. The defect this policy exposed, and its close
This section shipped on 4 September 2026 naming a live defect. The dispute-filed email told a company:
Until this is settled the fact stays published and carries a dispute mark, because quietly removing a contested claim would be its own kind of lie.
and the page rendered no mark. Trooth was telling companies in writing that something appeared on their page that did not appear.
Closed 6 September 2026. Option A in section 6 was built. disputeSummaryForDomain() in lib/disputes.ts returns the open count, the kinds, the date of the oldest open case and the fixed fact labels, carrying no filer identity and no complaint text, and components/network/dispute-notice.tsx renders it on /network/<domain> and /network/company/<slug>. A dispute may only name a fact from the closed vocabulary in lib/dispute-facts.ts, validated on write, and the page renders the fixed phrase rather than anything a filer typed, because a public mark a stranger can word is a defacement tool.
The section is kept rather than deleted. A policy that erases the defect it was written to expose teaches the reader that its history is edited, which is the opposite of what this document is for.
One deviation is on the record. Section 6 preferred a narrow row-security read policy over the system connection, because a privileged connection on a public path is the failure mode ADR-003 exists to prevent. The shipped read uses the system connection. It is bounded to a per-domain summary, it returns no row content, and it fails to zero rather than to an error, but it is not the option this policy named. Either the narrow policy replaces it or section 6 is amended to explain why the bound is sufficient. Until one of those happens this paragraph stands.
3. What is published, and on what basis
| Basis | What it means | Where it appears |
|---|---|---|
| Witnessed | Trooth observed it directly, at a recorded time | Any profile |
| Verified | A second independent source agrees | Any profile |
| Declared | The company said it. Attributed to them | Any profile |
| Inferred | Derived from observations, marked as derived | Any profile |
| Unknown | Not established either way. Never rendered as no | Any profile |
| Unavailable | A source could not be reached | Any profile |
| Stale | Established once, now past its freshness window. Never rendered as wrong | Any profile |
| Conflicting | Two sources disagree and neither is resolved | Any profile |
Witnessed results appear only where a company has connected its own systems. An unclaimed listing carries factual identity and an outside-in observation, and never a score, a rank or a comparative judgment.
4. The right to challenge
Who may file. Anyone. No account, no relationship with Trooth, and no standing requirement. A company challenging a fact about itself, a customer challenging a fact about a vendor, and a member of the public who noticed something wrong are all treated identically.
What may be challenged. Any published fact, including its basis. "This is witnessed and it should be declared" is a valid challenge.
What filing costs. Nothing, and it never affects the witnessed record. Filing a dispute does not change what was observed and withdrawing one does not either.
What filing does not do. It does not remove the fact. A fact under challenge stays published, marked, until the case is settled. Quietly removing a contested claim would let anyone erase an unwelcome finding by objecting to it, which would make every remaining fact worth less.
5. Timetable
These are commitments, not aspirations, and they are the operative content of this policy.
| Stage | Commitment |
|---|---|
| Receipt | On-screen immediately, naming the address that will respond |
| Company notified | Within one business day, where the page is claimed |
| First substantive response | Within 10 business days of filing |
| Settled, straightforward case | Within 15 business days |
| Settled, case requiring a re-read of a source | Within 30 business days |
| Outcome communicated | To the filer and the company, in the same message text |
Where a case will exceed 30 business days, both parties are told before day 30, with the reason and a revised date. A case is never closed for age. Nothing is settled by nobody answering.
6. What a reader sees while a case is open
A fact under challenge is marked as contested and carries the date the challenge was filed. It is not hidden, not softened, and not removed.
This was a promise the email made and the page did not keep. It is kept now. An open case renders a notice on the public profile naming what is contested and how long it has been open, drawn from the fixed vocabulary and never from filer prose. A resolved case leaves the notice; the record of the challenge and its outcome is part of what the page says.
Two ways existed to make the sentence true. Option A, wire the mark, was the right end state and is what shipped. Option B, change the sentence, would have edited lib/email/corporate.ts so the email claimed no mark; it was the one-line removal of a false statement and it was not needed, because A landed inside two days.
The architectural consequence named here was that app_rw has no read policy on network_disputes by design, so a public page cannot reach the table through the application role. The two candidates were a narrow policy exposing only the existence of an open case for a domain, and resolving the mark through a privileged connection on a cached server render. This policy preferred the narrow one. The implementation took the second. Section 2 records that deviation and what closes it.
7. What closes a case
A case is settled by a Trooth operator. Never by the company the fact concerns, and never by the party that filed. Both would make the outcome worth nothing, and the database enforces the first.
| Outcome | When it applies | What happens to the fact |
|---|---|---|
| Corrected | The fact was wrong | Replaced with the correct fact, and the change is timestamped |
| Upheld | The fact was right | Stays published, mark removed, outcome recorded |
| Reclassified | The fact was right, the basis was wrong | Stays, with its basis changed |
| Withdrawn | Trooth cannot substantiate it | Removed, and the removal is recorded |
| Superseded | The underlying reality changed during the case | Re-read, published fresh, dated |
Anything Trooth cannot substantiate is withdrawn. The burden sits with the publisher, which is the correct place for it, and it does not shift because a challenge was filed late or awkwardly.
The outcome text is written once and sent verbatim to both parties. It is stored and never overwritten: a case settles once, and a second attempt to settle the same case is refused rather than rewriting history.
8. Right of reply
Separate from a correction, and available whether or not a case was filed.
A company may submit a response to any observation on its listing. An accepted response is displayed alongside the observation, not instead of it, and is attributed to the company. Trooth does not edit responses for content.
A correction changes what is published because it was wrong. A reply leaves the observation standing and adds the company's account of it. A company that disagrees with a fact Trooth has upheld has the reply, and the reply is not a consolation prize. It is on the page, in the company's own words, next to the finding.
Trooth declines a reply only where it names an identifiable individual, contains unlawful material, or is not about the observation it attaches to. A declined reply is explained.
9. Escalation
A party that believes a case was settled wrongly may ask for it to be reopened once, in writing, stating what was not considered. A reopened case is settled by a different reviewer where one exists.
Today no second reviewer exists. Trooth has one person. This is recorded rather than dressed up: at present, escalation means the same person looking again with the new material in front of them, and both parties are told that. When a second person joins, this section takes effect as written without further amendment.
10. Records
Every case is retained with its filing, its notifications, its outcome and its timestamps, whether it was upheld, corrected or withdrawn.
Records of withdrawn and corrected facts are retained, not deleted. The point of a correction record is to show what the page used to say. A correction history that can be erased is not a correction history.
Aggregate statistics are published annually: cases filed, cases by outcome, and median time to settle. Individual cases are not published, and the filer's identity is never published.
Revision note. Revised 4 September 2026. Two passages referred to a score. Trooth does not compute or publish a score; a Trust Profile reports what was witnessed and how many checks passed out of how many ran. No right or obligation was narrowed, and the correction is recorded under our publication and correction policy.
11. Contesting a claim
Sections 4 through 10 govern a challenge to a fact. This section governs a challenge to the claim itself: the assertion that the person holding a page is entitled to hold it.
A claim is granted on witnessed control of the primary domain, which is the right primitive and settles the ordinary case. It does not settle every case. A contractor with temporary DNS access, a lapsed domain acquired by someone new, an acquisition where both sides believe they own the record, and an employee publishing without the authority to publish are all situations in which a claim is technically witnessed and substantively wrong.
Who may contest. Anyone who can be reached at the company's domain, and any person or entity named on the page. A contest is filed at trooth.co/network/dispute under company details.
What unseats a claim. Evidence of authority beats evidence of access. Domain control alone does not defeat a sitting claim, because the sitting claim already has it. What defeats it is a signed statement from a named officer of the company, corporate filings showing the entity and its officers, or a demonstrated transfer of the domain's registrant. Trooth does not adjudicate ownership between two parties who both hold corporate evidence; where the dispute is a genuine ownership dispute, publication is suspended and the page shows that it is suspended and why.
What happens while it is open. The page stays up and carries the contest, on the same terms as any other open case. Publishing continues to be blocked for the contested account: no new declared facts and no new documents while the contest is open. Witnessed reads continue, because they are Trooth's own observations and are not the claimant's to pause.
Timetable. Acknowledgement within one business day. A decision, or a stated reason for needing longer, within 10 business days. A suspension decision is immediate where the evidence on its face shows the sitting claim is not authorised.
Who decides. Trooth decides, and says so on the page. A decision names what evidence was weighed and does not name the person who filed. The outcome is written into the record; both parties are told; and the losing party may re-file once with new evidence.
The bias, stated. Where the evidence is genuinely balanced, Trooth suspends rather than picks. A page that is temporarily unavailable is a small harm. A page that says the wrong company is standing behind a record is the harm this whole network exists to prevent.