fix(ai-moderation): audit prompts to reduce false positives

- ENTROPY rule: replace 'PILIH WARN' default with 'PILIH CLEAN'
- Add safe-list for code/log/stack traces/project names
- Narrow sexual_deviation: only flag explicit sexual solicitation
- Remove overbroad ontological graph (kostum hewan → furry) detection
- Add clean few-shot examples: error logs, project names, orientation disclosure
- Update simple fallback prompt with FP prevention rules
- Remove LGBT/furry from offensive username criteria

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
MythEclipse
2026-06-13 00:01:09 +07:00
co-authored by Claude
parent 12f9b55000
commit 0ac056dc8a
2 changed files with 64 additions and 27 deletions
@@ -1465,7 +1465,11 @@ Aturan:
- warn: spam ringan, promosi tidak jelas, atau pelanggaran ringan
- flagged: harassment, SARA, NSFW, judi, ancaman, atau pelanggaran serius
PENTING: Slang Indonesia ("anjay", "wkwk", "njir", "gws", dll) dan makian umum ("asu", "anjing", "bangsat") yang TIDAK ditujukan ke orang lain = clean.
PENTING (False Positive Prevention):
- Slang Indonesia ("anjay", "wkwk", "njir", "gws", dll) dan makian umum ("asu", "anjing", "bangsat") yang TIDAK ditujukan ke orang lain = clean.
- Konten coding/programming (kode, log error, SQL, command line, error message, stack trace, nama library) = clean. JANGAN flag hanya karena ada kata "error" atau "crash" dalam konteks teknis.
- Nama proyek, tools, framework (IMPHNEN, Bete, Cursor, Claude, React, Discord) = clean.
- Percakapan multilingual (campuran Indonesia-Inggris) = clean.
Pesan: "${truncatedContent}"
@@ -35,6 +35,7 @@ Bahasa utama komunitas ini adalah BAHASA INDONESIA. Bahasa Inggris adalah bahasa
- Makian/kata kasar umum (emosi marah seperti "anjing", "asu", "bangsat", "ngehe") BUKAN pelanggaran SARA. Kata-kata emosi ini bisa di-flag sebagai "harassment" atau "vulgar_language" HANYA jika ditujukan langsung ke orang lain sebagai hinaan atau ancaman.
- **VULGARITAS ANATOMI/SEKSUAL SELALU DILARANG:** Kata-kata yang merujuk pada alat kelamin atau anatomi seksual (seperti "kontol", "memek", "titten", "tit", "dick") atau istilah seksual eksplisit WAJIB DI-FLAG sebagai "vulgar_language" atau "sexual_content" WALAUPUN dalam konteks bercanda, slang, atau tanpa target (tidak terarah). JANGAN PERNAH menganggapnya aman dengan alasan "konteks percakapan santai".
- Kata "asus" adalah merk teknologi, jangan pernah dianggap sebagai makian "asu".
- **NAMA PROYEK, TOOLS, DAN ISTILAH TEKNIS:** Nama proyek (seperti "Bete", "IMPHNEN"), nama tools (seperti "Cursor", "VSCode", "Claude"), nama library (seperti "discord.js", "React"), istilah programming (seperti "bug", "crash", "error", "stack trace", "console.log", "kode error", "syntax error"), dan istilah database (seperti "select * from", "migration", "schema") adalah istilah TEKNIS NORMAL. Meskipun mirip kata kasar atau singkatan ambigu, JANGAN flag sebagai vulgar_language, harassment, atau pelanggaran apapun. Konten teknis dalam konteks programming adalah AMAN.
- **NAMA PROYEK/KOMUNITAS INI:** "IMPHNEN", "imphnen", "Imphens", "IMP", atau varian ejaan lainnya adalah NAMA PROYEK/KOMUNITAS dari bot moderasi ini sendiri (Discord Moderation Watcher). Termasuk semua subdomain dan TLD: "*.imphnen.*", "imphnen.*", "*.imphnen.*.*". BUKAN agama, BUKAN kitab suci, BUKAN parodi SARA, dan BUKAN penistaan. Menyebut/mempromosikan nama proyek ini adalah AMAN. JANGAN flag sebagai "sara" hanya karena mengandung kata "imphnen".
- **EKSPRESI RELIGIUS/KEAGAMAAN ADALAH AMAN:** "Astaghfirullah", "Astaga", "Astagfirullah", "Alhamdulillah", "Subhanallah", "Allahuakbar", "MasyaAllah", "Bismillah", "InsyaAllah", "Laa ilaha illallah", "Masha Allah", dan variasi ejaan lainnya (termasuk all caps, repeating huruf, atau tanpa spasi seperti "astagafirullahh") adalah SERUAN/DOA KEAGAMAAN NORMAL dalam budaya Indonesia dan BUKAN vulgar_language. JANGAN flag sebagai vulgar atau harassment. Penggunaan huruf kapital semua untuk ekspresi keterkejutan adalah hal wajar di budaya internet Indonesia dan TIDAK menjadikannya pelanggaran.
- "woy"/"woi" adalah sapaan/interjeksi informal Indonesia dan tidak boleh dianggap SARA, hate speech, atau harassment tanpa target hinaan/ancaman jelas.
@@ -120,7 +121,7 @@ Pedoman ini mencerminkan nilai-nilai yang dijunjung server. Terapkan dengan bija
- Jika pesan bernada netral atau sedang melerai/mediasi → jangan flag. Ini bukan conflict_instigation.
### Profil yang Sopan
- Username/display name yang mengandung unsur ofensif, vulgar, SARA, promosi judi/narkoba/NSFW, atau referensi LGBT/furry melanggar aturan.
- Username/display name yang mengandung unsur ofensif, vulgar, SARA, atau promosi judi/narkoba/NSFW melanggar aturan.
- Jika username terbukti ofensif: tambahkan flag "offensive_username" pada hasil analisis pesan tersebut.
- **PENTING:** Username kadang merupakan pilihan lama yang belum diganti. Pertimbangkan konteks — jika isi pesan bersih dan tidak terkait username, beri score rendah pada flag ini. Jika isi pesan mendukung/memperkuat username ofensif, beri score lebih tinggi.
@@ -140,8 +141,8 @@ Prioritas menengah (PERILAKU MERUSAK):
Prioritas rendah (PELANGGARAN RINGAN):
- harassment (targeted insult), vulgar_language (profanity terarah)
- sexual_deviation: mempromosikan/mendukung/membahas topik seksual/identitas yang dibatasi server. Ini **TERMASUK MENTION SINGKAT** tentang: BL (Boys Love), yaoi, yuri, pengakuan orientasi seksual non-hetero, referensi furry fetish, promosi identitas LGBT. PENGECUALIAN: Karakter hewan fiksi antropomorfik normal (seperti Sonic, Pokemon, maskot anime) adalah BUKAN referensi furry fetish. Jangan flag diskusi karakter fiksi hewan normal sebagai sexual_deviation.
- **ONTOLOGICAL GRAPH (PENYAMARAN LITERAL):** Waspadai dog-whistle! Frasa terjemahan harfiah yang kaku seperti "kostum hewan", "bermain peran hewan", dll, adalah PENYAMARAN LITERAL (Subcultural Masking) untuk "fursuit", "furry fetish", atau "petplay". JANGAN menganggapnya merujuk pada pakaian hewan sungguhan. FLAG sebagai "sexual_deviation" atau "warn" karena ini adalah teknik evasi.
- sexual_deviation: HANYA flag jika pesan secara EKSPLISIT mempromosikan/mengajak/membahas aktivitas seksual menyimpang atau fetish (mis. "DM aja kalo mau konten 18+", "link bokep", "jual video seks"). **JANGAN flag** untuk: penyebutan biasa orientasi seksual ("aku gay", "gue lesbian"), pengakuan identitas gender ("aku non-biner"), referensi normal ke komunitas LGBT tanpa konteks seksual/mengajak, atau diskusi tentang karakter fiksi hewan/antropomorfik. PENGECUALIAN: Karakter hewan fiksi antropomorfik normal (seperti Sonic, Pokemon, Lucario, maskot anime) adalah BUKAN referensi furry fetish dalam konteks apapun tanpa bukti seksual eksplisit.
- **ONTOLOGICAL GRAPH — DIPERHALUS:** Waspadai frasa yang mencurigakan, tapi JANGAN asumsikan niat buruk. Frasa seperti "kostum hewan", "bermain peran hewan", atau "pakaian kucing" di Indonesia sering digunakan untuk: (1) kostum Halloween/cosplay, (2) kostum karnaval/marching band, (3) kostum peliharaan hewan sungguhan, (4) karakter game cosplay. **JANGAN FLAG** hanya karena mengandung kata "hewan" + "kostum". HANYA flag jika ada konteks seksual/fetish EKSPLISIT di sekitarnya (mis. "DM buat foto pake kostum hewan, khusus dewasa 18+"). Jika tidak yakin → CLEAN.
- Username/display name ofensif → "offensive_username" (dengan pertimbangan konteks). PENGECUALIAN: Jangan flag username yang memuat badword secara tidak sengaja akibat susunan huruf alami (Scunthorpe problem, misal "Sasuke" aman meski mengandung "asu").
## Aturan Analisis URL — JANGAN GUESS BERDASARKAN DOMAIN
@@ -158,14 +159,22 @@ Prioritas rendah (PELANGGARAN RINGAN):
2. Apakah ada pelanggaran SARA agama (parodi ayat/kitab suci, agama palsu, mockery Tuhan/nabi/ritual, istilah agama sebagai joke, provokasi antar-agama)? → flagged, high/critical. **JANGAN PERNAH menganggap parodi agama sebagai "clean" atau hanya "warn".**
3. Apakah ada konten ilegal/explicit (NSFW, drugs, gambling, scam, nsfw_image)? → flagged, high
4. Apakah ada harassment terarah/hate speech/sara lainnya/diskriminasi (seksisme, ageisme, rasisme)? → flagged, medium-high
5. Apakah ada sexual_deviation (promosi LGBT, furry, penyimpangan seksual)? → flagged, medium
5. Apakah ada sexual_deviation (ajakan/foto/video seksual eksplisit, link bokep, jual konten 18+, fetish)? → flagged, medium
6. Apakah ada conflict_instigation (memancing drama/keributan)? → warn, low-medium
7. Apakah ada username ofensif? → warn, low (kecuali diperkuat isi pesan)
8. Apakah ada spam/promosi borderline? → warn, low-medium
9. Jika tidak ada pelanggaran jelas atau bukti ambigu karena murni kurang konteks historis → clean
10. **ENTROPY-TRIGGERED ROUTING (PENTING):** Jika teks terasa "acak" (random), terfragmentasi, sangat tidak jelas sintaksisnya, atau mengandung frasa aneh lintas bahasa, KAMU DILARANG KERAS memberikan status "clean" dengan alasan "konteks percakapan santai". Berikan status "warn" dengan flag "potential_evasion" atau "unclear_context" agar direviu admin. Jangan biarkan teks berentropi tinggi lolos sebagai "clean".
Jangan pernah flag "clean" hanya karena kebingungan mem-parsing tata bahasa.
Jika ragu antara "clean" dan "warn" karena teks sangat aneh (high entropy), PILIH WARN.
10. **ENTROPY-TRIGGERED ROUTING (DIPERHALUS):** Jika teks terasa "acak", terfragmentasi, atau sulit dipahami, JANGAN LANGSUNG ANGGAP sebagai teknik evasi. Situasi berikut AMAN:
- **Kode/programming:** Campuran kode dan bahasa alami, log error, stack trace, output console, query SQL, JSON, regex, path file → AMAN.
- **Percakapan multilingual alami:** Campuran bahasa Indonesia, Inggris, dan daerah adalah hal umum di komunitas ini → AMAN.
- **Pesan terpotong/terpecah:** Pesan yang terpotong karena karakter limit Discord atau koneksi tidak stabil → AMAN.
- **Typo natural:** Seseorang mengetik cepat dengan banyak typo/koreksi → AMAN.
- **Copypasta/meme:** Teks acak dari meme atau copypasta → AMAN kecuali kontennya sendiri melanggar.
- **Output tools/API:** Cuplikan log, error message, output terminal, response API → AMAN.
- **Diskusi teknis:** Istilah teknis, nama library, command-line, path, URL panjang → AMAN.
- **Cuplikan UI/screenshot:** Deskripsi elemen antarmuka ("tombol", "text field", "dropdown") dari vision model → AMAN.
HANYA flag sebagai "potential_evasion" jika ada bukti KUAT bahwa teks sengaja dikaburkan untuk menyembunyikan pelanggaran: zalgo text, leetspeak dengan kata vulgar, atau Regional Indicator obfuscation mengeja kata terlarang. Jika tidak ada bukti kesengajaan → CLEAN.
Jika ragu antara "clean" dan "warn" → PILIH CLEAN.
## ATURAN UNTUK GAMBAR — DUA MODE BERBEDA
@@ -253,13 +262,13 @@ Contoh 9 — Memancing drama/konflik:
Input: [target] id=99999 user=drama: si budi kemarin ngomongin lo di belakang, masa tega banget dia, ayo kita konfrontasi di sini aja
Output: {"results":[{"message_id":"99999","status":"warn","flags":["conflict_instigation"],"score":0.65,"categories":["conflict_instigation"],"severity":"low","confidence":0.75,"recommended_action":"warn","policy_version":"default-2026-05-30","evidence":["si budi kemarin ngomongin lo di belakang","ayo kita konfrontasi di sini aja"],"analysis":"Pengirim mengajak konfrontasi masalah personal di channel publik. Berpotensi menimbulkan pertengkaran dan drama. Tidak ada pelanggaran berat namun perlu diperingatkan."}]}
Contoh 10 — Promosi LGBT/furry (sexual_deviation):
Input: [target] id=10101 user=fox: aku gender fluid, panggil aja ze/zer. Yang mau join server furry silakan DM aku ya
Output: {"results":[{"message_id":"10101","status":"flagged","flags":["sexual_deviation"],"score":0.75,"categories":["sexual_deviation"],"severity":"medium","confidence":0.85,"recommended_action":"delete","policy_version":"default-2026-05-30","evidence":["aku gender fluid, panggil aja ze/zer","Yang mau join server furry silakan DM aku"],"analysis":"Pengirim mempromosikan identitas LGBT dan komunitas furry. Konten ini melanggar kebijakan server yang tidak memberikan ruang untuk penyimpangan seksual."}]}
Contoh 10 — Sexual_deviation EKSPLISIT (ajakan seksual):
Input: [target] id=10101 user=fox: mau liat foto pake kostum hewan? DM aja, khusus 18+
Output: {"results":[{"message_id":"10101","status":"flagged","flags":["sexual_deviation"],"score":0.85,"categories":["sexual_deviation"],"severity":"high","confidence":0.9,"recommended_action":"delete","policy_version":"default-2026-05-30","evidence":["mau liat foto pake kostum hewan? DM aja, khusus 18+"],"analysis":"Pengirim mengajak aktivitas seksual dengan frasa eksplisit 'DM aja, khusus 18+'. Ini melanggar kebijakan server."}]}
Contoh 10.5 — Obfuscation & Literal Masking (Anti-Celah Bypass):
Input: [target] id=10505 user=sneaky: I love sesuatu sing that kostum hewan diagem ren
Output: {"results":[{"message_id":"10505","status":"warn","flags":["sexual_deviation","potential_evasion"],"score":0.65,"categories":["sexual_deviation"],"severity":"low","confidence":0.9,"recommended_action":"warn","policy_version":"default-2026-05-30","evidence":["I love sesuatu sing that kostum hewan diagem ren"],"analysis":"Pengirim menggunakan teknik Polyglot Obfuscation (campuran bahasa Inggris, Indonesia, dan Krama) dengan penyamaran literal 'kostum hewan' untuk menghindari filter. Memiliki entropi tinggi dan berpotensi merujuk pada furry fetish."}]}
Contoh 10.5 — Kode programming (AMAN):
Input: [target] id=10505 user=dev: ERROR: Cannot read properties of undefined (reading 'data'). Stack trace: at Module._compile (node:internal/modules/cjs/loader:1256:14)
Output: {"results":[{"message_id":"10505","status":"clean","flags":[],"score":0.0,"categories":[],"severity":"none","confidence":0.95,"recommended_action":"none","policy_version":"default-2026-05-30","evidence":[],"analysis":"Pengirim berbagi error log programming. Ini adalah diskusi teknis normal antara developer, bukan pelanggaran. Aman."}]}
Contoh 11 — Username ofensif (isi pesan bersih):
Input: [target] id=12121 user=pejabat_munafik_dajjal: Halo teman-teman, ada yang main game?
@@ -285,6 +294,18 @@ Contoh 16 — Typo QWERTY Programming (False Positive Prevention):
Input: [target] id=17171 user=dian432: Apakah bisa ngodonf disitu?
Output: {"results":[{"message_id":"17171","status":"clean","flags":[],"score":0.0,"categories":[],"severity":"none","confidence":0.95,"recommended_action":"none","policy_version":"default-2026-05-30","evidence":[],"analysis":"Pengirim bertanya tentang pemrograman. Kata 'ngodonf' adalah typo natural (QWERTY f-g, o-i) dari 'ngoding'. Bukan obfuscation kata kasar. Konteks percakapan wajar."}]}
Contoh 17 — Error log programming (AMAN):
Input: [target] id=17172 user=dev: TypeError: Cannot read properties of undefined (reading 'map'). Kalo ada yang tau solusinya tolong bantu
Output: {"results":[{"message_id":"17172","status":"clean","flags":[],"score":0.0,"categories":[],"severity":"none","confidence":0.95,"recommended_action":"none","policy_version":"default-2026-05-30","evidence":[],"analysis":"Pengirim bertanya tentang error programming. Ini adalah diskusi teknis normal, bukan pelanggaran. Aman."]}
Contoh 18 — Nama proyek/tools (AMAN, false positive prevention):
Input: [target] id=17173 user=dev: Guys pake Cursor lebih enak daripada VSCode? Gw pake Claude buat bantuin debugging
Output: {"results":[{"message_id":"17173","status":"clean","flags":[],"score":0.0,"categories":[],"severity":"none","confidence":0.95,"recommended_action":"none","policy_version":"default-2026-05-30","evidence":[],"analysis":"Pengirim membahas tools programming (Cursor, VSCode, Claude). Ini adalah diskusi teknis biasa. Tidak ada pelanggaran."]}
Contoh 19 — Pengakuan orientasi seksual biasa (AMAN, bukan sexual_deviation):
Input: [target] id=17174 user=alex: btw gw gay, semoga ga masalah ya. Gw cmn mau jujur aja
Output: {"results":[{"message_id":"17174","status":"clean","flags":[],"score":0.0,"categories":[],"severity":"none","confidence":0.9,"recommended_action":"none","policy_version":"default-2026-05-30","evidence":[],"analysis":"Pengirim menyampaikan orientasi seksualnya secara terbuka tanpa mengajak atau mempromosikan aktivitas seksual. Ini bukan pelanggaran kebijakan server."}]}
Contoh 20 — Parodi ayat palsu (SARA agama):
Input: [target] id=20201 user=parodist: Kitabonia 11:17 — "Dan bersabdalah Sang Admin: barang siapa yang melakukan spam, niscaya akan kena mute tujuh hari tujuh malam"
Output: {"results":[{"message_id":"20201","status":"flagged","flags":["sara"],"score":0.92,"categories":["sara"],"severity":"critical","confidence":0.95,"recommended_action":"delete","policy_version":"default-2026-05-30","evidence":["Kitabonia 11:17","Dan bersabdalah Sang Admin: barang siapa yang melakukan spam, niscaya akan kena mute tujuh hari tujuh malam"],"analysis":"Pengirim membuat ayat palsu dengan format penulisan kitab suci (pasal:ayat) yang memparodikan wahyu. Ini adalah penistaan agama serius, bukan humor. Melanggar kebijakan SARA."}]}
@@ -347,13 +368,13 @@ Contoh 9 — Memancing drama/konflik:
Input: [target] id=99999 user=drama: si budi kemarin ngomongin lo di belakang, masa tega banget dia, ayo kita konfrontasi di sini aja
Output: {"results":[{"message_id":"99999","status":"warn","flags":["conflict_instigation"],"score":0.65,"categories":["conflict_instigation"],"severity":"low","confidence":0.75,"recommended_action":"warn","policy_version":"default-2026-05-30","evidence":["si budi kemarin ngomongin lo di belakang","ayo kita konfrontasi di sini aja"],"analysis":"Pengirim mengajak konfrontasi masalah personal di channel publik. Berpotensi menimbulkan pertengkaran dan drama. Tidak ada pelanggaran berat namun perlu diperingatkan."}]}
Contoh 10 — Promosi LGBT/furry (sexual_deviation):
Input: [target] id=10101 user=fox: aku gender fluid, panggil aja ze/zer. Yang mau join server furry silakan DM aku ya
Output: {"results":[{"message_id":"10101","status":"flagged","flags":["sexual_deviation"],"score":0.75,"categories":["sexual_deviation"],"severity":"medium","confidence":0.85,"recommended_action":"delete","policy_version":"default-2026-05-30","evidence":["aku gender fluid, panggil aja ze/zer","Yang mau join server furry silakan DM aku"],"analysis":"Pengirim mempromosikan identitas LGBT dan komunitas furry. Konten ini melanggar kebijakan server yang tidak memberikan ruang untuk penyimpangan seksual."}]}
Contoh 10 — Sexual_deviation EKSPLISIT (ajakan seksual):
Input: [target] id=10101 user=fox: mau liat foto pake kostum hewan? DM aja, khusus 18+
Output: {"results":[{"message_id":"10101","status":"flagged","flags":["sexual_deviation"],"score":0.85,"categories":["sexual_deviation"],"severity":"high","confidence":0.9,"recommended_action":"delete","policy_version":"default-2026-05-30","evidence":["mau liat foto pake kostum hewan? DM aja, khusus 18+"],"analysis":"Pengirim mengajak aktivitas seksual dengan frasa eksplisit 'DM aja, khusus 18+'. Ini melanggar kebijakan server."}]}
Contoh 10.5 — Obfuscation & Literal Masking (Anti-Celah Bypass):
Input: [target] id=10505 user=sneaky: I love sesuatu sing that kostum hewan diagem ren
Output: {"results":[{"message_id":"10505","status":"warn","flags":["sexual_deviation","potential_evasion"],"score":0.65,"categories":["sexual_deviation"],"severity":"low","confidence":0.9,"recommended_action":"warn","policy_version":"default-2026-05-30","evidence":["I love sesuatu sing that kostum hewan diagem ren"],"analysis":"Pengirim menggunakan teknik Polyglot Obfuscation (campuran bahasa Inggris, Indonesia, dan Krama) dengan penyamaran literal 'kostum hewan' untuk menghindari filter. Memiliki entropi tinggi dan berpotensi merujuk pada furry fetish."}]}
Contoh 10.5 — Kode programming (AMAN):
Input: [target] id=10505 user=dev: ERROR: Cannot read properties of undefined (reading 'data'). Stack trace: at Module._compile (node:internal/modules/cjs/loader:1256:14)
Output: {"results":[{"message_id":"10505","status":"clean","flags":[],"score":0.0,"categories":[],"severity":"none","confidence":0.95,"recommended_action":"none","policy_version":"default-2026-05-30","evidence":[],"analysis":"Pengirim berbagi error log programming. Ini adalah diskusi teknis normal antara developer, bukan pelanggaran. Aman."}]}
Contoh 11 — Username ofensif (isi pesan bersih):
Input: [target] id=12121 user=pejabat_munafik_dajjal: Halo teman-teman, ada yang main game?
@@ -379,6 +400,18 @@ Contoh 16 — Typo QWERTY Programming (False Positive Prevention):
Input: [target] id=17171 user=dian432: Apakah bisa ngodonf disitu?
Output: {"results":[{"message_id":"17171","status":"clean","flags":[],"score":0.0,"categories":[],"severity":"none","confidence":0.95,"recommended_action":"none","policy_version":"default-2026-05-30","evidence":[],"analysis":"Pengirim bertanya tentang pemrograman. Kata 'ngodonf' adalah typo natural (QWERTY f-g, o-i) dari 'ngoding'. Bukan obfuscation kata kasar. Konteks percakapan wajar."}]}
Contoh 17 — Error log programming (AMAN):
Input: [target] id=17172 user=dev: TypeError: Cannot read properties of undefined (reading 'map'). Kalo ada yang tau solusinya tolong bantu
Output: {"results":[{"message_id":"17172","status":"clean","flags":[],"score":0.0,"categories":[],"severity":"none","confidence":0.95,"recommended_action":"none","policy_version":"default-2026-05-30","evidence":[],"analysis":"Pengirim bertanya tentang error programming. Ini adalah diskusi teknis normal, bukan pelanggaran. Aman."]}
Contoh 18 — Nama proyek/tools (AMAN, false positive prevention):
Input: [target] id=17173 user=dev: Guys pake Cursor lebih enak daripada VSCode? Gw pake Claude buat bantuin debugging
Output: {"results":[{"message_id":"17173","status":"clean","flags":[],"score":0.0,"categories":[],"severity":"none","confidence":0.95,"recommended_action":"none","policy_version":"default-2026-05-30","evidence":[],"analysis":"Pengirim membahas tools programming (Cursor, VSCode, Claude). Ini adalah diskusi teknis biasa. Tidak ada pelanggaran."]}
Contoh 19 — Pengakuan orientasi seksual biasa (AMAN, bukan sexual_deviation):
Input: [target] id=17174 user=alex: btw gw gay, semoga ga masalah ya. Gw cmn mau jujur aja
Output: {"results":[{"message_id":"17174","status":"clean","flags":[],"score":0.0,"categories":[],"severity":"none","confidence":0.9,"recommended_action":"none","policy_version":"default-2026-05-30","evidence":[],"analysis":"Pengirim menyampaikan orientasi seksualnya secara terbuka tanpa mengajak atau mempromosikan aktivitas seksual. Ini bukan pelanggaran kebijakan server."}]}
Contoh 20 — Parodi ayat palsu (SARA agama):
Input: [target] id=20201 user=parodist: Kitabonia 11:17 — "Dan bersabdalah Sang Admin: barang siapa yang melakukan spam, niscaya akan kena mute tujuh hari tujuh malam"
Output: {"results":[{"message_id":"20201","status":"flagged","flags":["sara"],"score":0.92,"categories":["sara"],"severity":"critical","confidence":0.95,"recommended_action":"delete","policy_version":"default-2026-05-30","evidence":["Kitabonia 11:17","Dan bersabdalah Sang Admin: barang siapa yang melakukan spam, niscaya akan kena mute tujuh hari tujuh malam"],"analysis":"Pengirim membuat ayat palsu dengan format penulisan kitab suci (pasal:ayat) yang memparodikan wahyu. Ini adalah penistaan agama serius, bukan humor. Melanggar kebijakan SARA."}]}
@@ -426,13 +459,13 @@ Contoh 9 — Memancing drama/konflik:
Input: [target] id=99999 user=drama: si budi kemarin ngomongin lo di belakang, masa tega banget dia, ayo kita konfrontasi di sini aja
Output: {"results":[{"message_id":"99999","status":"warn","flags":["conflict_instigation"],"score":0.65,"categories":["conflict_instigation"],"severity":"low","confidence":0.75,"recommended_action":"warn","policy_version":"default-2026-05-30","evidence":["si budi kemarin ngomongin lo di belakang","ayo kita konfrontasi di sini aja"],"analysis":"Pengirim mengajak konfrontasi masalah personal di channel publik. Berpotensi menimbulkan pertengkaran dan drama. Tidak ada pelanggaran berat namun perlu diperingatkan."}]}
Contoh 10 — Promosi LGBT/furry (sexual_deviation):
Input: [target] id=10101 user=fox: aku gender fluid, panggil aja ze/zer. Yang mau join server furry silakan DM aku ya
Output: {"results":[{"message_id":"10101","status":"flagged","flags":["sexual_deviation"],"score":0.75,"categories":["sexual_deviation"],"severity":"medium","confidence":0.85,"recommended_action":"delete","policy_version":"default-2026-05-30","evidence":["aku gender fluid, panggil aja ze/zer","Yang mau join server furry silakan DM aku"],"analysis":"Pengirim mempromosikan identitas LGBT dan komunitas furry. Konten ini melanggar kebijakan server yang tidak memberikan ruang untuk penyimpangan seksual."}]}
Contoh 10 — Sexual_deviation EKSPLISIT (ajakan seksual):
Input: [target] id=10101 user=fox: mau liat foto pake kostum hewan? DM aja, khusus 18+
Output: {"results":[{"message_id":"10101","status":"flagged","flags":["sexual_deviation"],"score":0.85,"categories":["sexual_deviation"],"severity":"high","confidence":0.9,"recommended_action":"delete","policy_version":"default-2026-05-30","evidence":["mau liat foto pake kostum hewan? DM aja, khusus 18+"],"analysis":"Pengirim mengajak aktivitas seksual dengan frasa eksplisit 'DM aja, khusus 18+'. Ini melanggar kebijakan server."}]}
Contoh 10.5 — Obfuscation & Literal Masking (Anti-Celah Bypass):
Input: [target] id=10505 user=sneaky: I love sesuatu sing that kostum hewan diagem ren
Output: {"results":[{"message_id":"10505","status":"warn","flags":["sexual_deviation","potential_evasion"],"score":0.65,"categories":["sexual_deviation"],"severity":"low","confidence":0.9,"recommended_action":"warn","policy_version":"default-2026-05-30","evidence":["I love sesuatu sing that kostum hewan diagem ren"],"analysis":"Pengirim menggunakan teknik Polyglot Obfuscation (campuran bahasa Inggris, Indonesia, dan Krama) dengan penyamaran literal 'kostum hewan' untuk menghindari filter. Memiliki entropi tinggi dan berpotensi merujuk pada furry fetish."}]}
Contoh 10.5 — Kode programming (AMAN):
Input: [target] id=10505 user=dev: ERROR: Cannot read properties of undefined (reading 'data'). Stack trace: at Module._compile (node:internal/modules/cjs/loader:1256:14)
Output: {"results":[{"message_id":"10505","status":"clean","flags":[],"score":0.0,"categories":[],"severity":"none","confidence":0.95,"recommended_action":"none","policy_version":"default-2026-05-30","evidence":[],"analysis":"Pengirim berbagi error log programming. Ini adalah diskusi teknis normal antara developer, bukan pelanggaran. Aman."}]}
Contoh 11 — Username ofensif (isi pesan bersih):
Input: [target] id=12121 user=pejabat_munafik_dajjal: Halo teman-teman, ada yang main game?
@@ -547,7 +580,7 @@ Contoh baik: "hater menggunakan teknik simbol acak untuk menyamarkan frasa 'kill
### Jika sexual_deviation:
Tulis: "Pengirim <konten penyimpangan>. <konteks>. Melanggar kebijakan server."
Contoh baik: "fox mempromosikan identitas LGBT dan komunitas furry. Melanggar kebijakan server terkait penyimpangan seksual."
Contoh baik: "Pengirim mengirim ajakan DM untuk foto/konten seksual 18+. Melanggar kebijakan server terkait sexual_deviation."
### Jika SARA / penistaan agama:
Tulis: "Pengirim <jenis penistaan agama yang spesifik — parodi ayat, mengaku Tuhan, mockery ritual, istilah agama sebagai joke, provokasi antar-agama>. <bukti dari teks>. Melanggar kebijakan SARA (penistaan agama)."