1. Character inspection
The first pass identifies Unicode and whitespace issues. It does not apply writing-pattern rules or infer authorship. Selected actions reconstruct a new sanitized string after confirmation.
2. Versioned pattern analysis
The approved local ruleset scans the sanitized copy. Each detector is configured as data rather than prose inside a component, so the same text and ruleset version always produce the same result.
3. Deterministic harmonization
The local provider proposes only configured, reversible edits. Names, dates, numbers, currencies, URLs, email addresses, quotations, citations, identifiers, acronyms, and code are treated as protected atoms.
4. Validation and scoring
Every candidate is checked for protected-fact changes and rescanned. Candidates that increase the score are rejected by default. The user chooses which valid edits to apply, then runs a final scan and exports the result.
Rule governance
The protected admin console compares MediaWiki revision IDs, stores source snapshots, stages changes, runs fixtures, and requires explicit publication. A source update never silently replaces production rules.