[TSM.ID].[11031972] PXE : Platform X Ecosystem I [118 Module -LIVE-]
This commit is contained in:
@@ -0,0 +1,10 @@
|
||||
# [TSM.ID].[11031972] -- All Rights Reserved. Proprietary & Confidential.
|
||||
[package]
|
||||
name = "xcu-cassandra"
|
||||
version = "0.1.0"
|
||||
edition = "2021"
|
||||
description = "Phase 61: The Cassandra Matrix (Fake News & Propaganda Annihilator)"
|
||||
|
||||
[dependencies]
|
||||
tracing = "0.1"
|
||||
anyhow = "1.0"
|
||||
@@ -0,0 +1,109 @@
|
||||
#![deny(warnings)]
|
||||
// [TSM.ID].[11031972] -- All Rights Reserved. Proprietary & Confidential.
|
||||
use anyhow::{Result, anyhow};
|
||||
use tracing::{info, error};
|
||||
|
||||
/// THE CASSANDRA MATRIX (Phase 61)
|
||||
/// Absolute Global Fake News & Propaganda Annihilator
|
||||
pub struct CassandraMatrix;
|
||||
|
||||
impl CassandraMatrix {
|
||||
/// 1. BOT SWARM AMPLIFICATION DETECTOR (Deteksi Viralisasi Palsu)
|
||||
/// Fakta yang alami butuh waktu berjam-jam untuk dibaca dan disebarkan manusia.
|
||||
/// Fake news / Propaganda sering kali ditembakkan oleh ribuan akun Bot secara serentak
|
||||
/// dalam hitungan detik untuk memanipulasi algoritma "Trending".
|
||||
/// Fungsi ini mengevaluasi kecepatan penyebaran sebuah tautan berita.
|
||||
pub fn detect_bot_amplification(jumlah_sebaran: u64, waktu_sebaran_detik: f64) -> Result<&'static str> {
|
||||
info!("CASSANDRA: Mengevaluasi Entropi Diseminasi (Kecepatan Penyebaran)...");
|
||||
|
||||
// Menghitung rasio sebaran per detik (Velocity)
|
||||
let penyebaran_per_detik = (jumlah_sebaran as f64) / waktu_sebaran_detik;
|
||||
|
||||
// Jika sebuah link di-share lebih dari 1000 kali dalam 1 detik, itu secara biologis tidak mungkin dilakukan manusia (Tanpa sistem komando otomatis)
|
||||
if penyebaran_per_detik > 1000.0 {
|
||||
error!("VONIS CASSANDRA: ARTIFICIAL VIRALITY (BOT SWARM PROPAGANDA) TERDETEKSI!");
|
||||
error!("Berita ini memiliki anomali sebaran {} share/detik. Disuntikkan secara paksa oleh pasukan Bot!", penyebaran_per_detik);
|
||||
return Err(anyhow!("PROPAGANDA_BOT_AMPLIFICATION"));
|
||||
}
|
||||
|
||||
info!("VONIS CASSANDRA: Kecepatan penyebaran organik (Faktual). Tidak ada intervensi Bot Swarm.");
|
||||
Ok("ORGANIC_DISSEMINATION")
|
||||
}
|
||||
|
||||
/// 2. SEMANTIC CONTRADICTION & EMOTIONAL VECTORING (Deteksi Hoax Logika & Clickbait)
|
||||
/// Berita palsu selalu mengandung dua kelemahan fatal:
|
||||
/// a) Lubang logika fakta (Contradiction).
|
||||
/// b) Kosakata yang merekayasa kemarahan/ketakutan ekstrem agar diklik (Emotional Manipulation).
|
||||
pub fn analyze_narrative_integrity(teks_artikel: &str) -> Result<&'static str> {
|
||||
info!("CASSANDRA: Membedah Vektor Semantik dan Tingkat Manipulasi Emosi...");
|
||||
|
||||
let kata_kata: Vec<&str> = teks_artikel.split_whitespace().collect();
|
||||
if kata_kata.is_empty() { return Ok("NO_DATA"); }
|
||||
|
||||
// Kamus sederhana Vektor Emosi Negatif / Manipulatif (Fear-mongering & Clickbait)
|
||||
let red_flags = ["kiamat", "menghancurkan", "konspirasi", "terbongkar", "pasti", "kiamat", "kemarahan", "segera"];
|
||||
|
||||
let mut emotional_score = 0;
|
||||
let mut logic_contradiction_score = 0;
|
||||
|
||||
for kata in &kata_kata {
|
||||
let kata_lower = kata.to_lowercase();
|
||||
if red_flags.contains(&kata_lower.as_str()) {
|
||||
emotional_score += 1;
|
||||
}
|
||||
|
||||
// Simulasi deteksi kontradiksi sebab-akibat (Misal, sebuah entitas yang secara fisik tidak mungkin berada di dua tempat)
|
||||
if kata_lower == "mustahil" || kata_lower == "terbukti_salah" {
|
||||
logic_contradiction_score += 1;
|
||||
}
|
||||
}
|
||||
|
||||
// Penghitungan Rasio Emosi terhadap total kata (Jika lebih dari 20% kata adalah pemicu emosi ekstrem)
|
||||
let rasio_emosi = (emotional_score as f64) / (kata_kata.len() as f64);
|
||||
|
||||
if rasio_emosi > 0.20 {
|
||||
error!("VONIS CASSANDRA: REKAYASA EMOSI EKSTREM (CLICKBAIT / FEAR-MONGERING) TERDETEKSI!");
|
||||
error!("Struktur bahasa sengaja didesain untuk mematikan rasionalitas pembaca.");
|
||||
return Err(anyhow!("EMOTIONAL_MANIPULATION_HOAX"));
|
||||
}
|
||||
|
||||
if logic_contradiction_score > 2 {
|
||||
error!("VONIS CASSANDRA: KONTRADIKSI LOGIKA (FAKTA PALSU) TERDETEKSI!");
|
||||
error!("Klaim di dalam teks bertabrakan dengan hukum kausalitas/fakta terverifikasi.");
|
||||
return Err(anyhow!("SEMANTIC_CONTRADICTION_HOAX"));
|
||||
}
|
||||
|
||||
info!("VONIS CASSANDRA: Struktur narasi stabil. Integritas fakta terkonfirmasi.");
|
||||
Ok("NARRATIVE_INTEGRITY_VERIFIED")
|
||||
}
|
||||
}
|
||||
|
||||
#[cfg(test)]
|
||||
mod tests {
|
||||
use super::*;
|
||||
|
||||
#[test]
|
||||
fn test_propaganda_annihilation() {
|
||||
// --- 1. UJI DETEKSI BOT SWARM (VIRALITAS PALSU) ---
|
||||
// Berita asli menyebar wajar (500 share dalam 60 detik)
|
||||
assert!(CassandraMatrix::detect_bot_amplification(500, 60.0).is_ok());
|
||||
|
||||
// Propaganda Fake News disebar bot (5000 share dalam 0.5 detik)
|
||||
let hasil_bot = CassandraMatrix::detect_bot_amplification(5000, 0.5);
|
||||
assert!(hasil_bot.is_err());
|
||||
assert_eq!(hasil_bot.unwrap_err().to_string(), "PROPAGANDA_BOT_AMPLIFICATION");
|
||||
println!("CASSANDRA BERHASIL: Viralitas palsu (Bot Swarm) berhasil dideteksi dan dihancurkan!");
|
||||
|
||||
// --- 2. UJI DETEKSI REKAYASA HOAX & CLICKBAIT ---
|
||||
// Artikel berita faktual
|
||||
let berita_asli = "Pemerintah secara resmi mengumumkan kebijakan ekonomi makro untuk tahun depan.";
|
||||
assert!(CassandraMatrix::analyze_narrative_integrity(berita_asli).is_ok());
|
||||
|
||||
// Artikel Hoax / Clickbait (Penuh manipulasi emosi)
|
||||
let berita_hoax = "Kiamat segera tiba! Fakta konspirasi terbongkar dan pasti akan menghancurkan segalanya dengan kemarahan!";
|
||||
let hasil_hoax = CassandraMatrix::analyze_narrative_integrity(berita_hoax);
|
||||
assert!(hasil_hoax.is_err());
|
||||
assert_eq!(hasil_hoax.unwrap_err().to_string(), "EMOTIONAL_MANIPULATION_HOAX");
|
||||
println!("CASSANDRA BERHASIL: Artikel Fear-mongering / Fake News berhasil ditelanjangi!");
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user