Evidence methodology

How candidate incidents become public evidence

The dashboard documents online gender-based violence through a controlled publishing pipeline: platform records are collected, deduplicated, classified, reviewed, and only then represented as anonymized aggregate evidence.

01

Ingest

Configured X, YouTube, Apify Instagram/TikTok, and supplemental Apify X sources collect candidate platform records.

02

Prepare

Raw records are normalized, deduplicated, and kept out of public views while the backend decides whether they become review candidates.

03

Score

Classification proposes relevance, category, summary, and confidence. Records below 30% relevance are not promoted to the review queue.

04

Review

Threshold processing and authenticated analyst actions decide whether candidates are approved, rejected, or returned to pending review.

05

Publish

Only approved public-platform candidates are included in anonymized aggregate APIs and dashboard charts.

Public data boundary

Public APIs use approved public candidates only. They exclude validation-only records and never expose raw post text, handles, URLs, exact coordinates, city or LGA details, reviewer notes, or private operational metadata.

Review and threshold validation

Classifier outputs are decision support. High-confidence candidates can be approved through threshold processing, while lower-confidence candidates remain available for authenticated analyst review.

Prototype status

This implementation can read from the OGBV API when it is configured, with static demo fallback for local walkthroughs.

Publishing thresholds

Current backend values used by classification and review threshold processing.

Loading backend thresholds

Ingestion sources

Source lanes that feed candidate evidence before deduplication and classification.

X

Canonical recent search plus optional Apify-backed enrichment.

YouTube

Search-driven ingestion from configured active sources.

Instagram/TikTok

Apify dashboard ingestion for public aggregate candidates after review.

Apify validation

Validation-only records are excluded from public aggregate endpoints.

Review states and actions

Authenticated review state controls what can reach public aggregate reporting.

new

Collected

A candidate exists but has not completed the reviewer workflow.

triaged

Triaged

Classification has supplied decision-support metadata.

pending_review

Pending review

The candidate remains available for authenticated analyst action.

approved

Approved

The candidate can contribute to public aggregate metrics if it is from a public dashboard platform.

rejected

Rejected

The candidate is excluded from public aggregates and retained only as operational review state.

Authenticated reviewer actions

Reviewer and admin workspaces can change status or metadata without changing what the public page exposes.

Approve

Marks a candidate as approved and sets the approval timestamp for aggregate eligibility.

Reject

Requires a rejection reason and removes the candidate from public aggregate eligibility.

De-approve

Returns an approved candidate to pending review when a previous decision needs correction.

Category override

Lets analysts replace the model category with a configured taxonomy category.

Reviewer note

Stores internal review context for authenticated users only; it is never shown publicly.

Safety handling by data class

Public and internal surfaces intentionally show different levels of detail.

Incident counts

Public
Approved aggregate counts only
Admin
Aggregate counts plus review status context

Supports public accountability without exposing individual records.

Geography

Public
State or coarse labels
Admin
Reviewer caution with restricted operational context

Precise location can increase survivor or target risk.

Raw post content

Public
Never shown
Admin
Restricted authenticated review detail only

Avoids replaying abuse or exposing identifying language.

Handles, URLs, identifiers

Public
Never shown
Admin
Avoided unless required for authenticated operations

Prevents re-identification and re-targeting.

Reviewer notes

Public
Never shown
Admin
Authenticated review/admin users only

Operational context belongs to internal users.

Apify validation-only rows

Public
Excluded
Admin
May appear in operational review analysis

Validation records are not public dashboard evidence.