All rules

One item given different values in different files

cross-doc-fact-conflicton by defaultJapanese / English

The same item (a fee, a deadline, a contact) given different values in two files

Example

Flagged
# Questions Monthly fee: $15
What chaff prints
3:14 "Monthly fee" is $15 here, but $12 in 2 other files checked with it (as in a.md)
Fixed
# Questions Monthly fee: $12
What chaff prints
no finding
The file checked together with it (a.md). The flagged and the fixed text are each compared with it
# Pricing Monthly fee: $12

How to fix

Check which value is right and correct the other. If they are values of different things (another plan, another release), say so in the item name ("Pro plan monthly fee").

Why it matters

A manual or a bundle of documents repeats the same items, such as a fee, a version, a deadline or a contact address, on page after page. When a value changes and one page is missed, the pages disagree and the reader cannot tell which to trust. Across the files given together, values written as "Item: value" or "The item is value", and table cells, are read; a file that gives the same item name (case and width aside) a different value in the same unit is pointed out. Email addresses and versions of three parts or more (2.4.1, v3) are read as values too. chaff does not decide which is right; it points at the value fewer files give.

What it does not flag

A file that gives an item two or more values is not counted (it is a list, such as a fee per plan, or a conflict within the file, which fact-conflict reports). An item whose values split three or more ways across the files is read as a list and left alone. Values in different units, record fields (the same name at the start of many lines), and values followed by a condition ("$12 per seat") are not compared.

Turning it off or relaxing it

Silence this one spot (in the document)
<!-- stet: cross-doc-fact-conflict — reason -->
Relax it for the team (the reason is kept as a comment in chaff.yaml)
npx chaffjs relax cross-doc-fact-conflict --why "reason"
Turn it off for the team (chaff.yaml)
rules: cross-doc-fact-conflict: off
Technical details
Layer
L3
Status
stable
Severity
warning
Languages
Japanese and English
Suited to
business, technical, blog, legal, docs, academic, literature, speech
Reads from the document
quantities, documents

Levels

Set a level for this rule under rules in chaff.yaml. With nothing set, it runs at the level its genre gives it (see By genre below).

normalwarning
relaxedinfo

This rule has no limit to count to. A level sets how a finding is marked: relaxed keeps the finding and marks it a step lower.

By genre

Runs by default in
technical/spec, technical/readme, blog/tech, blog/essay, blog/owned-media, business/proposal, business/report, business/email, business/press-release, business/meeting-notes, legal/contract, legal/statute, legal/judgment, legal/patent, docs/manual, docs/faq, docs/glossary, academic/paper, literature/fiction, literature/essay, literature/poetry, literature/play, speech/address, speech/transcript

Genres

Message

"{label}" is {value} here, but {other} in {count} other files checked with it (as in {example})

This page is built from the rule's definition file:packages/chaff/rules/cross-doc-fact-conflict.yaml