Wikipedia Publisher
Use a conservative workflow. Prefer publishable drafts over impressive drafts.
Default workflow
-
Collect evidence first
- Gather independent secondary coverage before writing.
- Separate independent sources from primary/company sources.
- Do not treat the subject's own site as proof of notability.
- Run
scripts/citation_fetch_enricher.pyfirst when URLs are bare, weak, or missing metadata. - Run
scripts/source_hygiene.pyandscripts/notability_score.pyearly.
-
Decide the safest target
- Prefer
User:sandbox orDraft:namespace for new articles. - Use mainspace only when the article is already established or the user explicitly wants that path and the sourcing is strong.
- For conflict-of-interest situations, prefer sandbox + disclosure-minded language.
- Prefer
-
Write plain, non-promotional prose
- State what the subject is, why it received coverage, and what reliable sources say.
- Attribute claims when needed: "According to X..." or "Coverage in Y described..."
- Avoid mission-language, puffery, rankings, and unverified superlatives.
- If a paragraph smells like PR, run
scripts/coi_rewrite.pyand then edit manually.
-
Run a risk pass before publishing
- Check tone with
scripts/coi_tone_lint.py. - Check citation/source mix with
scripts/source_hygiene.py. - Check likely rejection risk with
scripts/deletion_risk_check.py. - Use
scripts/citation_normalizer.pyto clean weak references. - Remove unsupported claims, crowded lists, and anything sourced only to the subject.
- Make sure the lead can stand on independent sources alone.
- Check tone with
-
Publish conservatively
- Save to sandbox/draft first unless there is a good reason not to.
- Use
scripts/sandbox_publish.py --dry-runbefore live save. - Use a factual edit summary.
- Verify the live page after save.
Writing rules
- Prefer independent news/features/books over press releases, directories, or the company site.
- Keep claims proportional to source strength.
- Use primary sources for routine facts only: founding date, location, official name, contact details, basic product list.
- Avoid these unless clearly and independently sourced:
- "leading", "world-class", "premier", "innovative", "trusted"
- "official" except when it is structurally true and relevant
- unsourced rankings, market leadership, customer counts, geographic scale, or awards
- Do not pad new articles with trivia or exhaustive project catalogs.
- When in doubt, shorten.
Article shape for company/org drafts
Use this default structure unless the sourcing suggests otherwise:
- Lead
- History
- Operations or Products/Services
- Reception / Coverage / Major projects (only if independently notable)
- See also
Skip sections that cannot be supported cleanly.
Sandbox-first publishing pattern
When the user wants a new page:
- Draft locally in
.wikior.md. - Convert to clean MediaWiki markup if needed.
- Save to
User:<name>/<topic>orDraft:<topic>. - Fetch the saved page and inspect the rendered result.
- Only then discuss moving toward mainspace.
Wikidata pattern
For Wikidata work:
- confirm an item does not already exist
- collect minimally sufficient identifiers and statements
- prefer low-controversy statements first: instance of, country, official website, inception, founders
- cite every claim you can
- avoid copying marketing copy into descriptions or aliases
- use
scripts/wikidata_helper.pyfor a clean starter bundle
Red flags that should slow you down
Read references/red-flags.md when any of these appear:
- only primary or affiliated sources
- article reads like PR
- many claims use the same weak source repeatedly
- the user wants direct mainspace publication for their own company/client
- notability seems to rest on routine business coverage or local mentions
Helpful resources
scripts/source_hygiene.py— classify citations as independent, primary, press-wire, directory, or review-neededscripts/notability_score.py— rough article-viability scoring from the citation mixscripts/coi_tone_lint.py— lightweight tone/source risk checker for draftsscripts/deletion_risk_check.py— heuristic rejection/deletion-risk checkerscripts/citation_fetch_enricher.py— fetch live metadata from URLs and suggest richer cite templatesscripts/citation_normalizer.py— suggest cleaner cite templates and missing metadatascripts/coi_rewrite.py— rewrite PR-ish text into more neutral attributed prosescripts/sandbox_publish.py— sandbox/draft publishing helper for MediaWiki APIscripts/wikidata_helper.py— starter statement generator for Wikidata itemsreferences/red-flags.md— quick safety checklist for companies, people, and organizationsreferences/workflow.md— recommended script order and interpretationreferences/citation-guidelines.md— citation cleanup guidance
Output preferences
When showing a proposed edit:
- start with the target page title
- show the lead first
- summarize major sourcing assumptions
- call out any unsupported or COI-sensitive areas plainly
- recommend sandbox/draft vs mainspace explicitly