Each Refract event describes what changed at a revision boundary. Events are deterministic — the same input always produces the same output. Events chain into claim-state timelines across revisions — see Temporal Model for how events form replayable history.
Edit summary matches one of six default patterns: revert…, undid revision, rvv, rollback, restore…, [[WP:ROLLBACK]]. A bare "rv" or "undo" does not match
edit_cluster_detected
3+ edits within a configurable time window (default: 1 hour). The fact's detail gives revisions, editors (a count of unique editors; no identities recorded), window_ms and single_editor
An edit_cluster_detected event spans the cluster: fromRevisionId is its first revision and toRevisionId its last. --cluster-window sets the window in minutes.
Article revision has a nearby talk page revision (default: 7 days before, 3 days after)
talk_thread_opened
New discussion thread created on talk page
talk_thread_archived
Thread closed/archived
talk_reply_added
Reply posted in an existing thread
talk_activity_spike
Talk page edits exceed 3x the moving average on a given day
refract analyze and refract export read the ten talk-page edits that precede the last analyzed revision and emit all five events from them. Thread events cover the talk edits made since the first analyzed revision; their revision IDs are talk-page revisions. The CLI looks for spikes among the ten talk-page edits that precede the last analyzed revision, within the seven days before it, so most runs emit none. --spike-factor sets the multiplier. A spike event names a day, not a revision pair: both revision IDs are 0.