Skip to content

Moderation gap: /api/index exposes abusive titles in public index #14

Description

@LynnColeArt

Observation

This looks like another content moderation gap. The public endpoint https://halupedia.com/api/index appears to return titles that include abusive or derogatory terms.

Why this is happening

The endpoint currently returns article-index entries from KV as-is and does not check the latest article moderation status before serializing results. If an entry is pending moderation or has not yet been removed in a sweep, it can still be visible in the index list.

Impact

  • Offensive content is visible in a public API response.
  • The list surface amplifies exposure compared to single-page rendering.
  • Moderation becomes reactive (visible first, removed later) for /api/index.

Suggested fix

  1. Filter /api/index items against article_moderation status before returning each page.
  2. Keep pagination behavior (cursor, total) consistent after filtering.
  3. Optionally add a stricter allow/sensitivity policy for index exposure if this endpoint is public.
  4. Include this in the broader security hardening checklist with expected behavior.

Related context

This is related to issue #12 and the moderation request in #13 (offensive /gas-the-jews/ content path).

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions