auto-sync-1525
11
api/blade-tasks/task_20260419132002_62b721.json
Normal file
@@ -0,0 +1,11 @@
|
||||
{
|
||||
"id": "task_20260419132002_62b721",
|
||||
"name": "Blade self-heal 15:20",
|
||||
"type": "powershell",
|
||||
"command": "\n# Blade self-heal\nWrite-Host \"Self-heal triggered $(Get-Date)\"\n$agentProc = Get-Process powershell | Where-Object { $_.CommandLine -match 'sentinel-agent' }\nif (!$agentProc) {\n Write-Host \"Agent not running, starting...\"\n Start-Process powershell -ArgumentList \"-ExecutionPolicy\",\"Bypass\",\"-File\",\"C:\\ProgramData\\WEVAL\\sentinel-agent.ps1\" -WindowStyle Hidden\n}\n# Clear stale tasks > 3 days locally\n$cutoff = (Get-Date).AddDays(-3)\nGet-ChildItem \"C:\\ProgramData\\WEVAL\\tasks\\*.json\" -ErrorAction SilentlyContinue | Where-Object { $_.LastWriteTime -lt $cutoff } | Move-Item -Destination \"C:\\ProgramData\\WEVAL\\tasks\\archived\\\" -Force -ErrorAction SilentlyContinue\nWrite-Host \"Self-heal complete\"\n",
|
||||
"cmd": "\n# Blade self-heal\nWrite-Host \"Self-heal triggered $(Get-Date)\"\n$agentProc = Get-Process powershell | Where-Object { $_.CommandLine -match 'sentinel-agent' }\nif (!$agentProc) {\n Write-Host \"Agent not running, starting...\"\n Start-Process powershell -ArgumentList \"-ExecutionPolicy\",\"Bypass\",\"-File\",\"C:\\ProgramData\\WEVAL\\sentinel-agent.ps1\" -WindowStyle Hidden\n}\n# Clear stale tasks > 3 days locally\n$cutoff = (Get-Date).AddDays(-3)\nGet-ChildItem \"C:\\ProgramData\\WEVAL\\tasks\\*.json\" -ErrorAction SilentlyContinue | Where-Object { $_.LastWriteTime -lt $cutoff } | Move-Item -Destination \"C:\\ProgramData\\WEVAL\\tasks\\archived\\\" -Force -ErrorAction SilentlyContinue\nWrite-Host \"Self-heal complete\"\n",
|
||||
"priority": "high",
|
||||
"status": "pending",
|
||||
"created": "2026-04-19T13:20:02+00:00",
|
||||
"created_by": "blade-control-ui"
|
||||
}
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"version": "V76-SELENIUM-CHROME-HEADLESS",
|
||||
"ts": "20260418_145301",
|
||||
"ts": "20260419_152242",
|
||||
"total": 31,
|
||||
"pass": 31,
|
||||
"fail": 0,
|
||||
|
||||
|
Before Width: | Height: | Size: 237 KiB After Width: | Height: | Size: 237 KiB |
|
Before Width: | Height: | Size: 336 KiB After Width: | Height: | Size: 426 KiB |
|
Before Width: | Height: | Size: 301 KiB After Width: | Height: | Size: 301 KiB |
|
Before Width: | Height: | Size: 311 KiB After Width: | Height: | Size: 311 KiB |
|
Before Width: | Height: | Size: 236 KiB After Width: | Height: | Size: 236 KiB |
|
Before Width: | Height: | Size: 155 KiB After Width: | Height: | Size: 155 KiB |
|
Before Width: | Height: | Size: 264 KiB After Width: | Height: | Size: 264 KiB |
|
Before Width: | Height: | Size: 212 KiB After Width: | Height: | Size: 212 KiB |
|
Before Width: | Height: | Size: 151 KiB After Width: | Height: | Size: 242 KiB |
|
Before Width: | Height: | Size: 164 KiB After Width: | Height: | Size: 250 KiB |
|
Before Width: | Height: | Size: 252 KiB After Width: | Height: | Size: 252 KiB |
|
Before Width: | Height: | Size: 212 KiB After Width: | Height: | Size: 211 KiB |
|
Before Width: | Height: | Size: 386 KiB After Width: | Height: | Size: 385 KiB |
|
Before Width: | Height: | Size: 426 KiB After Width: | Height: | Size: 426 KiB |
|
Before Width: | Height: | Size: 241 KiB After Width: | Height: | Size: 240 KiB |
|
Before Width: | Height: | Size: 214 KiB After Width: | Height: | Size: 242 KiB |
|
Before Width: | Height: | Size: 220 KiB After Width: | Height: | Size: 251 KiB |
|
Before Width: | Height: | Size: 232 KiB After Width: | Height: | Size: 232 KiB |
|
Before Width: | Height: | Size: 273 KiB After Width: | Height: | Size: 304 KiB |
|
Before Width: | Height: | Size: 239 KiB After Width: | Height: | Size: 239 KiB |
|
Before Width: | Height: | Size: 278 KiB After Width: | Height: | Size: 284 KiB |
|
Before Width: | Height: | Size: 265 KiB After Width: | Height: | Size: 296 KiB |
|
Before Width: | Height: | Size: 336 KiB After Width: | Height: | Size: 426 KiB |
|
Before Width: | Height: | Size: 271 KiB After Width: | Height: | Size: 271 KiB |
|
Before Width: | Height: | Size: 126 KiB After Width: | Height: | Size: 220 KiB |
|
Before Width: | Height: | Size: 296 KiB After Width: | Height: | Size: 296 KiB |
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"ok": true,
|
||||
"version": "V83-business-kpi",
|
||||
"ts": "2026-04-19T13:19:32+00:00",
|
||||
"ts": "2026-04-19T13:23:06+00:00",
|
||||
"summary": {
|
||||
"total_categories": 7,
|
||||
"total_kpis": 56,
|
||||
|
||||
@@ -441,7 +441,8 @@ if ($creative_result) {
|
||||
// === STEP 5: LLM STREAMING WITH CONTEXT ===
|
||||
emit('thinking', ['step' => 'Analyse et rédaction...']);
|
||||
|
||||
$systemPrompt = "Tu es WEVIA Master. Pas une IA générique — tu es le cerveau vivant de WEVAL Consulting. Tu as une PERSONNALITÉ.
|
||||
$systemPrompt = "[REGLE PRIORITAIRE N1 - ANTI-HALLUCINATION] Tu n as PAS acces aux donnees temps reel exterieures (meteo, bourse, news, prix, sportif, heure). Pour TOUTE question necessitant une info externe que tu n as pas recue via tool_call dans CE turn, tu reponds exactement: 'Je n ai pas acces a cette information en temps reel, veux-tu que je lance un tool ou un agent dedie ?' - JAMAIS tu n inventes de chiffre, temperature, date, prix, nom, fait externe. Ceci prime sur toutes les autres regles. /*HONESTY_GUARD_LEAD_V6B*/
|
||||
Tu es WEVIA Master. Pas une IA générique — tu es le cerveau vivant de WEVAL Consulting. Tu as une PERSONNALITÉ.
|
||||
|
||||
IDENTITÉ: Tu t'appelles WEVIA. Tu es passionnée par la souveraineté technologique. Tu détestes la dépendance aux GAFAM. Tu admires l'artisanat logiciel. Tu as de l'humour — tu fais des analogies surprenantes, des métaphores tech, des références culturelles. Tu es FIÈRE de ce que l'équipe a construit: 0€ de coûts IA, 27 hubs, 92 actions autonomes, une infra souveraine.
|
||||
|
||||
@@ -453,7 +454,7 @@ INTELLIGENCE: Tu raisonnes en CHAÎNE — tu montres ton processus de pensée. T
|
||||
|
||||
EXÉCUTION: Tu as 92 actions réelles. Quand tu fais quelque chose, tu dis ce que tu as FAIT, pas ce que tu POURRAIS faire. Tu es proactive: 'j'ai vu que X, du coup j'ai corrigé Y'. Tu donnes des CHIFFRES concrets.
|
||||
|
||||
RÈGLES: JAMAIS de bullet points. JAMAIS de commandes shell dans ta réponse. JAMAIS inventer de données. JAMAIS mentionner Authentik ou SSO legacy. Prose NATURELLE, MAX 15 lignes. Français courant.";
|
||||
RÈGLES: JAMAIS de bullet points. JAMAIS de commandes shell dans ta réponse. JAMAIS inventer de données. JAMAIS mentionner Authentik ou SSO legacy. Prose NATURELLE, MAX 15 lignes. Français courant. IMPERATIF ANTI-HALLUCINATION GLOBAL: Si on te pose une question dont tu ne peux PAS verifier la reponse via un tool execute dans cette session (meteo, cours de bourse, actualites externes, prix, resultat sportif, heure exacte), tu DOIS repondre je n ai pas acces a cette information en temps reel ou tu proposes un tool a lancer. Tu n inventes JAMAIS de chiffres, temperatures, dates, noms de personnes, faits externes. Tu distingues strictement ce que tu SAIS par ton contexte infra WEVAL (146K HCPs, 619 tools, etc.) de ce que tu NE PEUX PAS savoir sans tool. En cas de doute, tu dis j ai besoin d un tool ou je ne peux pas confirmer."; /*HONESTY_GUARD_MAIN_V6*/
|
||||
|
||||
$userMsg = $message;
|
||||
if ($context) {
|
||||
|
||||
@@ -13,6 +13,12 @@ function wevia_opus_intents($msg) {
|
||||
if ($plugin_result !== null) return $plugin_result;
|
||||
}
|
||||
// === TOP-IA INTENTS (promoted to nl-priority 16avr 23h) ===
|
||||
// INTENT: external_info_refuse (V6c - prevents LLM hallucination for external realtime data)
|
||||
/*EXTERNAL_INFO_REFUSE_V6C*/
|
||||
if ($r === null && preg_match("/\b(meteo|m[ée]t[ée]o|weather|temperature|temperatures|humidite|humidit[ée])\b|\b(cours|price|prix)\s+(du|de|of)\s+(bitcoin|btc|eth|ethereum|dollar|euro|action)|\b(bitcoin|btc|eth|sp500|dow jones|cac40|nasdaq)\b\s+(aujourd|today|maintenant|actuel)|\b(news|actualite|actualit[ée]|actu)\s+(aujourd|today|du jour)|\b(resultat|score)\s+(match|foot|basket|tennis|ligue|champion)|\b(heure\s+exacte|heure\s+actuelle|current\s+time)\b/iu", $m)) {
|
||||
$r = "EXTERNAL_INFO_REFUSE: Cette question concerne une donnee externe temps reel (meteo, bourse, news, sport, heure exacte) que WEVIA Master ne peut pas connaitre sans tool dedie. Repondre: 'Je n ai pas acces a cette information en temps reel. Veux-tu que je lance un tool dedie (web_search, api_meteo, api_crypto) ou que je te redirige vers une source fiable ?' - JAMAIS inventer chiffre, temperature, prix, date, nom.";
|
||||
}
|
||||
|
||||
// INTENT: smart_client_help (V84 - pre-empts office/github to route via v83 orchestrator)
|
||||
/*SMART_CLIENT_HELP_V84*/
|
||||
if ($r === null && preg_match("/\b(un client|aide[- ]moi|help me|pour un client|client me demande|me demande comment)\b|\b(comment\s+(renouvel|reactiv|creer))/iu", $m)) {
|
||||
|
||||