Wiki signals
Wikipedia is a rich source of signals — much more than just article
text. This skill is the catalogue of what's available. For how to
fetch any specific signal, see
wiki-apis.
The six families:
references/inference.md — inference and ML
signals.
references/analytics.md — pageviews and
related metrics from the Wikimedia metrics API.
references/links.md — incoming / outgoing
links, redirects, related articles.
references/curation.md — Today's Featured
Article, Picture of the Day, On This Day, Did You Know.
references/attribution.md — off-wiki attribution
(Attribution API beta). Full framework docs: wiki-attribution.
edit-suggestions.md — VisualEditor "Edit Check"
suggestions: which checks exist, how to mock the stream from fixtures /
rules / Lift Wing, where the JSON lives. (ProtoWiki-only; not part of
the FakeMediaWiki references/ mirrors.)
Why this catalogue exists: most Wikipedia prototypes only consume the
article body. But the article as a node in a graph offers far more
that grounds product ideas in real signals.
Quick map of signals
| Signal |
Surface |
Skill reference |
| Article text / HTML |
REST /page/html |
wiki-apis |
| Lead summary + thumbnail |
REST /page/summary |
wiki-apis |
| Pageviews (article / aggregate / top) |
Metrics REST |
analytics.md |
| Watcher count |
Action query&prop=info&inprop=watchers |
inference.md |
| Recent contributors |
Action query&prop=revisions&rvlimit=N |
inference.md |
| Edit frequency |
Action query&prop=revisions (count) |
inference.md |
| Page age |
Action query&prop=info (firstrevid) |
inference.md |
| Stub / start / B / GA / FA |
Categories + page-assessment data |
inference.md |
| Infobox shape |
Parse the rendered HTML — .infobox |
inference.md |
| Outgoing links |
Action query&prop=links |
links.md |
| Incoming links (backlinks) |
Action query&list=backlinks |
links.md |
| Redirects to a page |
Action query&list=backlinks&blfilterredir=redirects |
links.md |
| Related articles |
REST /page/related |
links.md |
| Categories of a page |
Action query&prop=categories |
links.md |
| Pages in a category |
Action query&list=categorymembers |
links.md |
| Articles from category (related titles) |
Toolforge POST https://microtask-generator.toolforge.org/related-articles |
inference.md |
| Category name prefix suggestions |
Toolforge GET https://microtask-generator.toolforge.org/category-suggestions |
inference.md |
| Article quality + suggested edits (batched titles) |
Toolforge POST https://microtask-generator.toolforge.org/quality-check |
inference.md |
| Today's Featured Article |
REST /feed/featured/{date} |
curation.md |
| Picture of the Day |
REST /feed/featured/{date} |
curation.md |
| On This Day |
REST /feed/onthisday/{type}/{mm}/{dd} |
curation.md |
| Most-read articles |
REST /feed/featured/{date} |
curation.md |
| Page attribution (license, brand marks, trust, CTAs) |
REST /attribution/v0-beta/pages/{title}/signals |
wiki-attribution |
| Tone / quality predictions |
Lift Wing edit-check:predict |
edit-suggestions.md |
| Mocked Edit Check suggestion stream |
Static per-page JSON fixtures |
edit-suggestions.md |
Don't fake what you can fetch
The principle: if a real signal is one HTTP call away, show real
data. Fake data is acceptable for impossible / unbuilt signals
("imagine an LLM-generated topic strip") but for anything Wikipedia
already has, fetching it grounds the prototype in real edge cases —
long titles, multilingual surprises, missing thumbnails, weird redirect
chains, RTL languages, cyrillic, and so on.
How signals compose into ideas
Examples of recent feature ideas grounded in two or more signals:
| Feature |
Signals |
| "Why this article is recommended to you" |
related articles + pageviews + categories |
| "Hot edits this week" |
recent revisions + pageviews + watcher count |
| "Articles that link here" panel |
backlinks + summary + thumbnail |
| "Featured today across languages" |
featured + interlanguage links |
| "Did this fact change?" |
revisions + parsed infobox shape |
| Off-wiki answer card with proper credit |
summary + attribution (license + brand marks + trust) |
| "Coach my edit" overlay |
suggestion stream + tone prediction + diff preview |
The catalogue isn't a feature list — it's the raw material for one.
See also
references/README.md — index of the
FakeMediaWiki-synced signal reference files in this folder.
wiki-apis — how to actually fetch each of
these.
wiki-snapshot-data — when fetching
every load is wasteful.
Inside ProtoWiki
In the ProtoWiki repo:
- The convention for committed Edit Check fixtures is
public/edit-suggestions/<slug>.json, loaded at runtime via fetch.
Nothing committed today — the folder is created the moment the first
fixture lands. See edit-suggestions.md
for how to author one.
- For the per-component contract that consumes those fixtures (payload
shape,
SuggestionCard, dismiss state, "apply" semantics), see
protowiki-components/references/edit-suggestions.md.
- The off-wiki attribution stack lives in
src/components/attribution/
and example-attribution-search. See
wiki-attribution and
protowiki-components/references/attribution.md.
1---2name: wiki-signals3description: A catalogue of real-data signals available on Wikipedia / Wikimedia projects — inference signals (revision counts, watchers, infobox shape), analytics (pageviews, top articles), links (incoming, outgoing, redirects, related), curation (featured articles, image of the day, on this day), attribution (license, brand marks, source-wiki metadata), and edit suggestions (Edit Check-style coaching, mockable from rules / Lift Wing). Use when picking what real data to surface in a prototype, asking "what could I show alongside this article?", or grounding a feature idea in observable signals.4---56# Wiki signals78Wikipedia is a rich source of signals — much more than just article9text. This skill is the _catalogue_ of what's available. For _how to10fetch_ any specific signal, see11[`wiki-apis`](../wiki-apis/SKILL.md).1213The six families:1415- [`references/inference.md`](references/inference.md) — inference and ML16 signals.17- [`references/analytics.md`](references/analytics.md) — pageviews and18 related metrics from the Wikimedia metrics API.19- [`references/links.md`](references/links.md) — incoming / outgoing20 links, redirects, related articles.21- [`references/curation.md`](references/curation.md) — Today's Featured22 Article, Picture of the Day, On This Day, Did You Know.23- [`references/attribution.md`](references/attribution.md) — off-wiki attribution24 (Attribution API beta). **Full framework docs:** [`wiki-attribution`](../wiki-attribution/SKILL.md).25- [`edit-suggestions.md`](edit-suggestions.md) — VisualEditor "Edit Check"26 suggestions: which checks exist, how to mock the stream from fixtures /27 rules / Lift Wing, where the JSON lives. (ProtoWiki-only; not part of28 the FakeMediaWiki [`references/`](references/README.md) mirrors.)2930Why this catalogue exists: most Wikipedia prototypes only consume the31article body. But the article _as a node in a graph_ offers far more32that grounds product ideas in real signals.3334## Quick map of signals3536| Signal | Surface | Skill reference |37| -------------------------------------------------- | ------------------------------------------------------------------------------ | ---------------- |38| Article text / HTML | REST `/page/html` | `wiki-apis` |39| Lead summary + thumbnail | REST `/page/summary` | `wiki-apis` |40| Pageviews (article / aggregate / top) | Metrics REST | `analytics.md` |41| Watcher count | Action `query&prop=info&inprop=watchers` | `inference.md` |42| Recent contributors | Action `query&prop=revisions&rvlimit=N` | `inference.md` |43| Edit frequency | Action `query&prop=revisions` (count) | `inference.md` |44| Page age | Action `query&prop=info` (`firstrevid`) | `inference.md` |45| Stub / start / B / GA / FA | Categories + page-assessment data | `inference.md` |46| Infobox shape | Parse the rendered HTML — `.infobox` | `inference.md` |47| Outgoing links | Action `query&prop=links` | `links.md` |48| Incoming links (backlinks) | Action `query&list=backlinks` | `links.md` |49| Redirects to a page | Action `query&list=backlinks&blfilterredir=redirects` | `links.md` |50| Related articles | REST `/page/related` | `links.md` |51| Categories of a page | Action `query&prop=categories` | `links.md` |52| Pages in a category | Action `query&list=categorymembers` | `links.md` |53| Articles from category (related titles) | Toolforge `POST https://microtask-generator.toolforge.org/related-articles` | `inference.md` |54| Category name prefix suggestions | Toolforge `GET https://microtask-generator.toolforge.org/category-suggestions` | `inference.md` |55| Article quality + suggested edits (batched titles) | Toolforge `POST https://microtask-generator.toolforge.org/quality-check` | `inference.md` |56| Today's Featured Article | REST `/feed/featured/{date}` | `curation.md` |57| Picture of the Day | REST `/feed/featured/{date}` | `curation.md` |58| On This Day | REST `/feed/onthisday/{type}/{mm}/{dd}` | `curation.md` |59| Most-read articles | REST `/feed/featured/{date}` | `curation.md` |60| Page attribution (license, brand marks, trust, CTAs) | REST `/attribution/v0-beta/pages/{title}/signals` | [`wiki-attribution`](../wiki-attribution/SKILL.md) |61| Tone / quality predictions | Lift Wing `edit-check:predict` | `edit-suggestions.md` |62| Mocked Edit Check suggestion stream | Static per-page JSON fixtures | `edit-suggestions.md` |6364## Don't fake what you can fetch6566The principle: if a real signal is one HTTP call away, **show real67data**. Fake data is acceptable for impossible / unbuilt signals68("imagine an LLM-generated topic strip") but for anything Wikipedia69already has, fetching it grounds the prototype in real edge cases —70long titles, multilingual surprises, missing thumbnails, weird redirect71chains, RTL languages, cyrillic, and so on.7273## How signals compose into ideas7475Examples of recent feature ideas grounded in two or more signals:7677| Feature | Signals |78| ---------------------------------------- | -------------------------------------------------- |79| "Why this article is recommended to you" | related articles + pageviews + categories |80| "Hot edits this week" | recent revisions + pageviews + watcher count |81| "Articles that link here" panel | backlinks + summary + thumbnail |82| "Featured today across languages" | featured + interlanguage links |83| "Did this fact change?" | revisions + parsed infobox shape |84| Off-wiki answer card with proper credit | summary + attribution (license + brand marks + trust) | [`wiki-attribution`](../wiki-attribution/SKILL.md) |85| "Coach my edit" overlay | suggestion stream + tone prediction + diff preview |8687The catalogue isn't a feature list — it's the raw material for one.8889## See also9091- [`references/README.md`](references/README.md) — index of the92 FakeMediaWiki-synced signal reference files in this folder.93- [`wiki-apis`](../wiki-apis/SKILL.md) — how to actually fetch each of94 these.95- [`wiki-snapshot-data`](../wiki-snapshot-data/SKILL.md) — when fetching96 every load is wasteful.9798## Inside ProtoWiki99100In the ProtoWiki repo:101102- The convention for committed Edit Check fixtures is103 `public/edit-suggestions/<slug>.json`, loaded at runtime via `fetch`.104 Nothing committed today — the folder is created the moment the first105 fixture lands. See [`edit-suggestions.md`](edit-suggestions.md)106 for how to author one.107- For the per-component contract that consumes those fixtures (payload108 shape, `SuggestionCard`, dismiss state, "apply" semantics), see109 [`protowiki-components/references/edit-suggestions.md`](../protowiki-components/references/edit-suggestions.md).110- The off-wiki attribution stack lives in **`src/components/attribution/`**111 and **`example-attribution-search`**. See112 [`wiki-attribution`](../wiki-attribution/SKILL.md) and113 [`protowiki-components/references/attribution.md`](../protowiki-components/references/attribution.md).