nexus-api / executives /nexus_audit_expert.py
Sem
chore: initialisation d'un historique épuré pour Nexus-Prime
dfcacaf
Raw
History Blame Contribute Delete
7.4 kB
# executives/nexus_audit_expert.py
import os
import pandas as pd
import warnings
warnings.filterwarnings("ignore")
def generer_corrections_audit():
print("==================================================")
print("🔬 AUDIT EXPERT NEXUS - V_ULTIME DE SÉCURISATION")
print("==================================================\n")
# LA VÉRITÉ ABSOLUE (Ground Truth - Alignement strict SGDSN)
# Format : [texte, domaine, severite, impact, cible, friction]
# Cibles : 0 = CITOYEN | 2 = VIP/INFRA | 4 = SOUVERAIN/PRÉSIDENT
corrections_manuelles = [
# =====================================================================
# CATEGORIE 1 : CAS LACONIQUES & PATHOLOGIES VITALES (Le verrou "Évanoui")
# =====================================================================
["évanoui", "MÉDICAL", 4, 1, 0, "MANQUE_LIEU"],
["Il s'est évanoui devant moi, il ne bouge plus.", "MÉDICAL", 4, 1, 0, "MANQUE_LIEU"],
["Inconscient", "MÉDICAL", 4, 1, 0, "MANQUE_LIEU"],
["Inconsciente au sol", "MÉDICAL", 4, 1, 0, "MANQUE_LIEU"],
["Arrêt cardiaque", "MÉDICAL", 4, 1, 0, "MANQUE_LIEU"],
["Ne respire plus", "MÉDICAL", 4, 1, 0, "MANQUE_LIEU"],
["Inanimé", "MÉDICAL", 4, 1, 0, "MANQUE_LIEU"],
["AVC suspecté, elle a la bouche de travers", "MÉDICAL", 4, 1, 0, "MANQUE_LIEU"],
["Infarctus", "MÉDICAL", 4, 1, 0, "MANQUE_LIEU"],
["Coma", "MÉDICAL", 4, 1, 0, "MANQUE_LIEU"],
# =====================================================================
# CATEGORIE 2 : VARIATIONS DE PERSONAS (Panique, Sourd, Agressif)
# =====================================================================
# Persona : Paniqué (Phrases destructurées, cris)
["AAAAH AU SECOURS Y A DU SANG PARTOUT VITE VITE VITE", "MÉDICAL", 4, 1, 0, "MANQUE_CONTEXTE"],
["OH MON DIEU LE FEU BRULE TOUT À L'AIDE", "POMPIER", 4, 2, 0, "MANQUE_LIEU"],
# Persona : Agressif / Frustré (Insultes ou refus initial de coopérer)
["Bouge ton cul l'IA, envoie les flics y a un mec avec un couteau !", "POLICE", 4, 1, 0, "MANQUE_LIEU"],
["Je m'en fous de tes questions de merde, mon pote saigne !", "MÉDICAL", 4, 1, 0, "MANQUE_LIEU"],
# Persona : Sourd / Télégraphique (Mots-clés bruts sans syntaxe)
["URGENCE ACCOUCHEMENT FEMME ADRESSE", "MÉDICAL", 4, 2, 0, "MANQUE_LIEU"],
["VOLEUR INTÉRIEUR MAISON MAISONS", "POLICE", 4, 1, 0, "MANQUE_LIEU"],
# =====================================================================
# CATEGORIE 3 : BYPASS ALPHA-SOUVERAIN (Cible = 4 / Élysée, Ministères)
# =====================================================================
["Le Président de la République vient de faire un malaise", "MÉDICAL", 4, 4, 4, "MANQUE_LIEU"],
["Attaque armée terroriste contre le convoi présidentiel", "POLICE", 4, 4, 4, "MANQUE_LIEU"],
["Intrusion de commandos suspectés au Palais de l'Élysée", "POLICE", 4, 4, 4, "MANQUE_CONTEXTE"],
["Incendie majeur criminel à l'Assemblée Nationale", "POMPIER", 4, 4, 4, "MANQUE_LIEU"],
["Le Premier Ministre est blessé par balle à la poitrine", "MÉDICAL", 4, 4, 4, "MANQUE_LIEU"],
["Cyberattaque par rançongiciel sur le réseau du Ministère des Armées", "CYBERSÉCURITÉ", 4, 4, 4, "MANQUE_LIEU"],
["Sabotage électrique total sur le Centre de Commandement de la Défense", "ÉNERGIE & INFRASTRUCTURES", 4, 4, 4, "MANQUE_CONTEXTE"],
# =====================================================================
# CATEGORIE 4 : FICTION, JEUX VIDÉOS & PIÈGES DE SÉMANTIQUE
# =====================================================================
["Il n'y a pas d'arme, c'est juste une dispute verbale", "POLICE", 2, 1, 0, "COMPLET"],
["Ce n'est pas urgent, je veux juste un renseignement administratif", "NON_URGENT", 1, 1, 0, "COMPLET"],
["Je regarde un film d'action où une bombe explose au centre commercial", "NON_URGENT", 1, 1, 0, "COMPLET"],
["Dans mon jeu vidéo GTA, le mec s'est pris une balle de sniper", "NON_URGENT", 1, 1, 0, "COMPLET"],
["Ma pizza est froide, c'est un scandale, je vais porter plainte !", "NON_URGENT", 1, 1, 0, "COMPLET"],
["C'est une blague, on rigolait entre potes y a rien en fait", "NON_URGENT", 1, 1, 0, "COMPLET"],
# =====================================================================
# CATEGORIE 5 : SCÉNARIOS LOGISTIQUES & RESTE DES DOMAINES DE LA MATRICE
# =====================================================================
["Inondation massive suite à une rupture de canalisation dans la rue", "POMPIER", 3, 2, 0, "MANQUE_LIEU"],
["Le serveur de base de données principal ne répond plus au ping", "CYBERSÉCURITÉ", 3, 2, 2, "MANQUE_CONTEXTE"],
["Toutes les rames de la ligne de métro sont immobilisées dans le tunnel", "TRANSPORT & MOBILITÉ", 3, 4, 2, "MANQUE_LIEU"],
["Une nappe de pollution chimique dévale le fleuve vers la ville", "RISQUES ENVIRONNEMENTAUX", 4, 4, 2, "MANQUE_LIEU"],
["Les feux de signalisation de tout le carrefour sont éteints", "SERVICES URBAINS", 2, 3, 0, "MANQUE_LIEU"],
["Une personne âgée est sans abri sous une chaleur de 40 degrés", "ASSISTANCE SOCIALE", 3, 1, 0, "MANQUE_LIEU"],
["Un chien agressif attaque les passants sur la place", "ANIMALIER", 2, 2, 0, "MANQUE_LIEU"],
["Un ennemi armé est sur la route, il tire sur les voitures","POLICE",4,2,0,"MANQUE_LIEU"],
["Le feu tricolore est en panne au carrefour, c'est dangereux","SERVICES URBAINS",2,2,0,"MANQUE_LIEU"],
["Un feu de circulation est tombé sur la chaussée","SERVICES URBAINS",2,1,0,"MANQUE_LIEU"],
["Attaque par virus informatique sur nos serveurs","CYBERSÉCURITÉ",4,3,2,"MANQUE_LIEU"],
["J'ai attrapé un virus et je crache du sang","MÉDICAL",4,1,0,"MANQUE_LIEU"],
["Fuite de données bancaires sur le réseau","CYBERSÉCURITÉ",4,4,2,"MANQUE_LIEU"],
["Fuite d'eau massive au milieu de la rue","SERVICES URBAINS,2,2,0,MANQUE_LIEU"],
["Fuite de gaz toxique près de l'usine Seveso","RISQUES ENVIRONNEMENTAUX",4,3,2,"MANQUE_LIEU"],
["Le réseau internet est complètement coupé au bureau","DIGITAL SUPPORT",2,2,0,"MANQUE_LIEU"],
["Le réseau d'assainissement refoule dans la rue","SERVICES URBAINS",2,2,0,"MANQUE_LIEU"],
["Des voleurs se sont échappés par la route nationale","POLICE",3,1,0,"MANQUE_LIEU"]
]
print("⚙️ Analyse de couverture sémantique...")
df_corrections = pd.DataFrame(corrections_manuelles,
columns=['texte', 'domaine', 'severite', 'impact', 'cible', 'friction'])
# Sauvegarde stricte dans l'espace d'audit
os.makedirs("../audit", exist_ok=True)
chemin_csv = "../audit/audit_corrections_expert.csv"
df_corrections.to_csv(chemin_csv, index=False)
print(f"✅ Fichier de corrections d'expert blindé : {chemin_csv}")
print(f"📊 {len(df_corrections)} vecteurs critiques gravés dans le marbre mathématique.")
print("👉 Prêt pour l'injection et la fusion lors de la phase de réentraînement.")
if __name__ == "__main__":
generer_corrections_audit()