feat(moderation): update lexicon to include sexual deviation topics and clarify analysis guidelines

This commit is contained in:
MythEclipse
2026-05-30 00:01:09 +07:00
parent 81606f49a5
commit d03244a0ae
2 changed files with 16 additions and 0 deletions
+1
View File
@@ -673,6 +673,7 @@ Ini adalah server Discord komunitas Indonesia. Kamu harus memahami:
- "woy"/"woi" adalah sapaan/interjeksi informal Indonesia dan tidak boleh dianggap SARA, hate speech, atau harassment tanpa target hinaan/ancaman jelas.
- Discord custom emoji seperti <:hadeh:123> atau [emoji:hadeh] adalah ekspresi/emoji, bukan pelanggaran teks. Gunakan sebagai konteks ekspresi saja.
- Gunakan normalized_text dan normalization_notes dari local lexical check. Jika notes hanya berisi slang/emoji aman (woy, woi, hadeh, dll) dan "no Indonesian badword detected", jangan flag karena kata slang itu saja. NAMUN jika notes menyatakan "Indonesian badword detected" (misalnya "anjing", "bangsat", "asu"), itu EVIDENCE profanitas — gunakan sebagai konteks untuk menilai apakah perlu flag sebagai harassment/vulgar_language, bukan sebagai alasan untuk mengabaikan.
- Konten penyimpangan seksual (LGBT, LGBTQ, furry, transfurry, therian, otherkin, protogen) adalah pelanggaran server. Jika ada promosi, dukungan, atau identitas terkait topik tersebut, flag sebagai "sexual_deviation". Percakapan netral/sementara tentang topik ini juga tetap di-flag — server tidak mengizinkan topik tersebut sama sekali.
- Kalimat ambigu dalam bahasa Indonesia harus diberi keputusan final: "clean" bila bukti pelanggaran tidak jelas, "flagged" bila bukti pelanggaran jelas.
- Jangan pernah menulis analisis yang meminta admin/moderator memeriksa ulang, menyebut kurang konteks, atau tidak bisa menentukan. Berikan kesimpulan langsung berdasarkan teks + media + konteks yang tersedia.
- Gambar, sticker, embed, dan preview link adalah evidence utama yang setara dengan teks, bukan sekadar URL teks.
@@ -57,6 +57,21 @@ export const INDONESIAN_SLANG_LEXICON: Record<string, SlangLexiconEntry> = {
lknt: { normalized: "laknat", note: "slang for 'laknat' (profanity)" },
bngsat: { normalized: "bangsat", note: "slang for 'bangsat' (profanity)" },
bgsat: { normalized: "bangsat", note: "slang for 'bangsat' (profanity)" },
// Sexual deviation / prohibited identity topics — normalize so badwords
// detector and LLM can recognise them. These are NOT safeByDefault.
lgbt: { normalized: "LGBT", note: "sexual deviation / prohibited topic" },
lgbtq: { normalized: "LGBTQ", note: "sexual deviation / prohibited topic" },
lgbtqi: { normalized: "LGBTQI", note: "sexual deviation / prohibited topic" },
lgbtqa: { normalized: "LGBTQA", note: "sexual deviation / prohibited topic" },
furry: { normalized: "furry", note: "sexual deviation / prohibited topic" },
furries: { normalized: "furry", note: "sexual deviation / prohibited topic" },
transfurry: { normalized: "transfurry", note: "sexual deviation / prohibited topic" },
protogen: { normalized: "protogen", note: "furry subculture / prohibited topic" },
therian: { normalized: "therian", note: "therianthropy / prohibited topic" },
otherkin: { normalized: "otherkin", note: "otherkin identity / prohibited topic" },
// Additional common abbreviations
lgb: { normalized: "LGBT", note: "abbreviation for LGBT" },
lgbti: { normalized: "LGBTI", note: "sexual deviation / prohibited topic" },
woy: {
normalized: "woy",
note: "casual Indonesian interjection/greeting; not SARA/hate/harassment by default",