Sunday, 25 October 2026Simple, factual answers about India

Daily Current Affairs & Trending Topics — Explained Simply

Latest

Admin Note — Moderation and Approval

This page is for information only. There is no approve button on this page, so that no one without access can publish content. Approval and rejection are done only by changing flags directly in the database.

Automated moderation (v1 scorer)

Every new question, answer and discussion comment is scored by inc/moderation.php — a deterministic, rules-based scorer that runs offline in PHP. Honest note: it does not call any external AI API. It is the v1 automated-moderation layer; a future version may replace it with a real model API.

It scores: spam keywords/phrases, number of links, contact solicitation (phone / WhatsApp / Telegram), promotional link patterns, ALL-CAPS shouting, excessive emojis/symbols, very short gibberish / repeated characters / repeated words, and duplicate or near-duplicate text.

To tune: edit the weights and keyword list in inc/moderation.php (constants MOD_REJECT_AT / MOD_PENDING_AT), then re-run the test cases in README.md.

What stays pending

Manual steps

  1. Open the SQLite database on the server: sqlite3 data/indiaask.sqlite
  2. View pending content:
    SELECT id, title, status FROM posts WHERE status='pending';
    SELECT id, post_id, author, substr(body,1,80) FROM answers WHERE status='pending';
    SELECT id, post_id, author, substr(body,1,80) FROM comments WHERE status='pending';
  3. After checking, approve only correct, original, policy-compliant content:
    UPDATE posts SET status='published' WHERE id=123;
    UPDATE answers SET status='approved' WHERE id=45;
    UPDATE comments SET status='approved' WHERE id=67;
  4. View auto-rejected items (never approve these from this list without re-checking — they were rejected for a scored reason):
    SELECT id, item_type, author, score, reasons FROM rejected_items ORDER BY id DESC;
    To delete a wrong item: DELETE FROM answers WHERE id=45;

Rule: never approve abusive, misleading, defamatory, copyrighted or rumour-spreading content.