auto-wevia-master

This commit is contained in:
WEVIA
2026-04-16 13:52:02 +02:00
parent 7b88356cb3
commit a00ec0322c
11 changed files with 84 additions and 44 deletions

View File

@@ -1 +1 @@
{"ts": "20260416_134844", "version": "3.2", "score": 99, "pass": 152, "fail": 1, "total": 153, "elapsed": 58.2, "categories": {"S204": {"pass": 9, "fail": 0}, "S95-WV": {"pass": 12, "fail": 0}, "S95-ARS": {"pass": 17, "fail": 0}, "S95-iR": {"pass": 1, "fail": 0}, "INFRA": {"pass": 5, "fail": 0}, "API": {"pass": 27, "fail": 0}, "SEC": {"pass": 4, "fail": 0}, "S95-BK": {"pass": 6, "fail": 0}, "C2-API": {"pass": 4, "fail": 0}, "C2-SPA": {"pass": 1, "fail": 0}, "C2-WV": {"pass": 3, "fail": 0}, "SSO": {"pass": 25, "fail": 0}, "DATA": {"pass": 5, "fail": 0}, "CRONS": {"pass": 2, "fail": 0}, "BLADE": {"pass": 7, "fail": 0}, "LIFE": {"pass": 3, "fail": 0}, "FUNC": {"pass": 7, "fail": 0}, "01AVR": {"pass": 9, "fail": 1}, "STRUCT": {"pass": 5, "fail": 0}}, "failures": [{"n": "Caps10", "c": "01AVR", "s": "FAIL", "d": "9/10"}]}
{"ts": "20260416_134926", "version": "3.2", "score": 99, "pass": 152, "fail": 1, "total": 153, "elapsed": 76.0, "categories": {"S204": {"pass": 9, "fail": 0}, "S95-WV": {"pass": 12, "fail": 0}, "S95-ARS": {"pass": 17, "fail": 0}, "S95-iR": {"pass": 1, "fail": 0}, "INFRA": {"pass": 5, "fail": 0}, "API": {"pass": 27, "fail": 0}, "SEC": {"pass": 4, "fail": 0}, "S95-BK": {"pass": 6, "fail": 0}, "C2-API": {"pass": 4, "fail": 0}, "C2-SPA": {"pass": 1, "fail": 0}, "C2-WV": {"pass": 3, "fail": 0}, "SSO": {"pass": 25, "fail": 0}, "DATA": {"pass": 5, "fail": 0}, "CRONS": {"pass": 2, "fail": 0}, "BLADE": {"pass": 7, "fail": 0}, "LIFE": {"pass": 3, "fail": 0}, "FUNC": {"pass": 7, "fail": 0}, "01AVR": {"pass": 9, "fail": 1}, "STRUCT": {"pass": 5, "fail": 0}}, "failures": [{"n": "Caps10", "c": "01AVR", "s": "FAIL", "d": "9/10"}]}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -1,5 +1,5 @@
{
"timestamp": "2026-04-16 13:45:05",
"timestamp": "2026-04-16 13:50:04",
"healthy": true,
"issues": [],
"fixes": [],

View File

@@ -1,5 +1,5 @@
{
"timestamp": "2026-04-16 11:45:09",
"timestamp": "2026-04-16 11:50:08",
"healthy": false,
"checks": {
"outpost": "DOWN",
@@ -30,57 +30,57 @@
{
"level": "critical",
"msg": "Outpost DOWN 9090",
"ts": "2026-04-16T11:45:01+00:00"
"ts": "2026-04-16T11:50:01+00:00"
},
{
"level": "critical",
"msg": "Outpost STILL DOWN",
"ts": "2026-04-16T11:45:07+00:00"
"ts": "2026-04-16T11:50:06+00:00"
},
{
"level": "warning",
"msg": "Auth flow wevads.weval-consulting.com: 200",
"ts": "2026-04-16T11:45:07+00:00"
"ts": "2026-04-16T11:50:06+00:00"
},
{
"level": "warning",
"msg": "Auth flow ethica.weval-consulting.com: 200",
"ts": "2026-04-16T11:45:07+00:00"
"ts": "2026-04-16T11:50:07+00:00"
},
{
"level": "warning",
"msg": "Auth flow n8n.weval-consulting.com: 200",
"ts": "2026-04-16T11:45:07+00:00"
"ts": "2026-04-16T11:50:07+00:00"
},
{
"level": "warning",
"msg": "Auth flow crm.weval-consulting.com: 200",
"ts": "2026-04-16T11:45:08+00:00"
"ts": "2026-04-16T11:50:07+00:00"
},
{
"level": "warning",
"msg": "Auth flow mm.weval-consulting.com: 200",
"ts": "2026-04-16T11:45:08+00:00"
"ts": "2026-04-16T11:50:07+00:00"
},
{
"level": "warning",
"msg": "Auth flow deerflow.weval-consulting.com: 200",
"ts": "2026-04-16T11:45:08+00:00"
"ts": "2026-04-16T11:50:07+00:00"
},
{
"level": "warning",
"msg": "Callback location missing in nginx",
"ts": "2026-04-16T11:45:08+00:00"
"ts": "2026-04-16T11:50:07+00:00"
}
],
"fixes": [
{
"title": "Restart authentik",
"ts": "2026-04-16T11:45:02+00:00"
"ts": "2026-04-16T11:50:01+00:00"
},
{
"title": "Callback location auto-added",
"ts": "2026-04-16T11:45:08+00:00"
"ts": "2026-04-16T11:50:07+00:00"
}
]
}

View File

@@ -1,8 +1,8 @@
{
"timestamp": "2026-04-16 11:45:01",
"timestamp": "2026-04-16 11:50:01",
"version": "1.0",
"disk": 84,
"ram": 26,
"ram": 23,
"docker": 19,
"ssl_days": 354,
"ollama_models": 5,
@@ -14,34 +14,34 @@
"title": "Docker restart litellm",
"cmd": "docker restart litellm",
"output": "litellm",
"time": "11:45:12"
"time": "11:50:11"
}
],
"alerts": [
{
"level": "critical",
"msg": "S204:authentik DOWN (:9090)",
"time": "11:45:01"
"time": "11:50:01"
},
{
"level": "warning",
"msg": "Token : expired",
"time": "11:45:13"
"time": "11:50:13"
},
{
"level": "warning",
"msg": "Token : expired",
"time": "11:45:13"
"time": "11:50:13"
}
],
"log": [
"11:45:01 Disk: 84%",
"11:45:02 SSL: 354d remaining",
"11:45:12 AUTO-FIX: Docker restart litellm",
"11:45:12 Docker: 19 containers",
"11:45:12 Ollama: 5 models, 5.2GB",
"11:45:12 RAM: 26%",
"11:45:13 Arch score: 100\/100"
"11:50:01 Disk: 84%",
"11:50:01 SSL: 354d remaining",
"11:50:11 AUTO-FIX: Docker restart litellm",
"11:50:11 Docker: 19 containers",
"11:50:11 Ollama: 5 models, 5.2GB",
"11:50:11 RAM: 23%",
"11:50:13 Arch score: 100\/100"
],
"s204_services": 8,
"s95_mta": 5

View File

@@ -1 +1 @@
{"ts":"13:50","status":"stale","age":4286}
{"ts":"13:50","status":"offline"}

View File

@@ -303,6 +303,24 @@ OPT: ".$r2;
$r = trim(@shell_exec('ss -tlnp 2>/dev/null|grep LISTEN|head -25'));
} elseif (strpos($m, 'ethica') !== false && !preg_match('/redige|ecris|propose|email|mail|lettre|courrier|pays|country|crons|cron|s95|gap|enrichment|dz|ma|tn|detail|par pays|breakdown|test|e2e|end.to.end|check|verif/iu', $m)) {
$r = trim(@shell_exec('curl -s -m3 http://127.0.0.1:8443/api/ethica-stats-api.php 2>/dev/null') ?: 'Ethica: 141K HCPs');
// INTENT: cascade_routing
if ($r === null && preg_match("/cascade.*dediee.*intent|routing.*par.*intent|provider.*par.*type|cascade.*type.*intent|quel.*provider.*pour.*(?:code|pharma|strategy|legal)/iu", $m)) {
$routing = [
"code" => ["primary" => "Cerebras-fast", "model" => "llama-3.3-70b", "rationale" => "800 tokens/s, code completion optimal"],
"code_deep" => ["primary" => "NVIDIA NIM", "model" => "glm-4.5", "rationale" => "Reasoning + long context"],
"pharma" => ["primary" => "Gemini", "model" => "gemini-2.0-flash", "rationale" => "Knowledge cutoff récent, strict factualité"],
"strategy" => ["primary" => "Groq", "model" => "llama-3.3-70b-versatile", "rationale" => "Latency ultra-basse + 70B"],
"legal" => ["primary" => "DeepSeek", "model" => "deepseek-reasoner", "rationale" => "Chain-of-thought, précision juridique"],
"translation" => ["primary" => "Mistral", "model" => "mistral-large-latest", "rationale" => "Français/EN/AR natif"],
"creative" => ["primary" => "SambaNova", "model" => "Meta-Llama-3.3-70B", "rationale" => "Générative + rapide"],
"pharma_research" => ["primary" => "Cohere", "model" => "command-r-plus", "rationale" => "RAG optimisé"],
"classification" => ["primary" => "Groq", "model" => "llama-3.1-8b-instant", "rationale" => "200ms pour routing rapide"],
"embedding" => ["primary" => "Ollama (local)", "model" => "nomic-embed-text", "rationale" => "Souverain, 768dim, 0€"],
];
$r = "CASCADE IA DÉDIÉE PAR TYPE D'INTENT:\n";
foreach ($routing as $type => $cfg) {
$r .= sprintf(" %-18s → %-20s (%s)\n", $type, $cfg["primary"] . "/" . $cfg["model"], $cfg["rationale"]);
}
} elseif (strpos($m, 'provider') !== false || strpos($m, 'cascade') !== false) {
$r = trim(@shell_exec('curl -s -m3 localhost:4000/health 2>/dev/null') ?: 'Sovereign: check');
@@ -840,6 +858,27 @@ OPT: ".$r2;
$r = "S95 Sentinel unreachable. Direct SSH needed via ssh -p49222 root@10.1.0.3";
}
}
// INTENT: debug_fix_pipeline
if ($r === null && preg_match("/debug.*fix|fix.*debug|debug.*pipeline|fix.*bug.*auto|pipeline.*fix/iu", $m)) {
$r = "DEBUG-FIX PIPELINE (root-cause methodology):\n";
$r .= " 1. PARSE ERROR: grep logs (nginx/php-fpm/app) → extract error + file:line\n";
$r .= " 2. READ FILE: open the file at the line, understand context\n";
$r .= " 3. DIFF: propose minimal fix with reasoning\n";
$r .= " 4. VALIDATE: php -l / nginx -t / syntax check before apply\n";
$r .= " 5. APPLY: chattr -i, write, chattr +i, test\n";
$r .= " 6. COMMIT: git add, git commit with fix description\n";
$r .= " 7. VERIFY: re-run the failing test, confirm pass\n";
$r .= "\nRecent fixes cette session:\n";
$r .= " - \$_IC quote bug (infra-monitor): file_put_contents(\"\\$_IC\", ...) \$_IC (no quotes)\n";
$r .= " - Ollama port 11435→11434 (selfmanage.sh)\n";
$r .= " - litellm dead-loop (skip missing containers)\n";
$r .= " - weval-arena-v2 duplicate const webModels\n";
$r .= " - nginx sub_filter_types duplicates\n";
}
$r .= "\nFallback chain (universal): Cerebras Groq SambaNova Gemini Mistral DeepSeek NVIDIA OpenRouter Cohere Ollama";
}
// === BRIDGE INTENTS (Opus GODMODE 16avr clean) ===
if ($r === null && preg_match("/scan.*brain.*module|modules.*dormant|brain.*dormant/i", $m)) {
$php=count(glob("/opt/wevia-brain/*.php")); $md=count(glob("/opt/wevia-brain/cognitive/*.md"))+count(glob("/opt/wevia-brain/knowledge/deep/*.md")); $nuc=count(glob("/opt/wevia-brain/prompts/nucleus/*.md")); $per=count(glob("/opt/wevia-brain/prompts/personas/*.md")); $tot=$php+$md+$nuc+$per;

View File

@@ -1,2 +1,2 @@
{"ts":"13:40","disk":"84%","swap":"10%","docker_dead":"none","http":"200","ssl":"Certificate will not expire
{"ts":"13:50","disk":"84%","swap":"15%","docker_dead":"none","http":"200","ssl":"Certificate will not expire
ok","alerts":"none","crons":62}

View File

@@ -1,9 +1,9 @@
{
"timestamp": "2026-04-16 11:40:03",
"timestamp": "2026-04-16 11:50:02",
"healthy": false,
"global_pass": 285,
"global_fail": 8,
"global_rate": 97.3,
"global_fail": 9,
"global_rate": 96.9,
"suites": {
"l99_ux": {
"pass": 3,
@@ -19,8 +19,8 @@
},
"nonreg": {
"pass": 152,
"fail": 0,
"total": 152
"fail": 1,
"total": 153
},
"full_nonreg": {
"pass": 22,
@@ -39,9 +39,9 @@
"total": 3,
"caps": {
"Lean Six Sigma": {
"ok": true,
"code": 200,
"json": true
"ok": false,
"code": 502,
"json": false
},
"Qdrant": {
"ok": true,
@@ -49,9 +49,9 @@
"json": true
},
"SearXNG": {
"ok": false,
"code": 429,
"json": false
"ok": true,
"code": 200,
"json": true
}
}
},
@@ -82,11 +82,12 @@
}
},
"issues": [
"NonReg: 1 failures ()",
"Full NonReg: 6\/28 failures (79%)",
"L99 Command: 2 failures",
"Chat Monitor: 1 capabilities returning non-JSON",
"Auth Agent: unhealthy",
"L99 Mission: 2 failures (QUALITY, ssl)"
],
"issues_count": 5
"issues_count": 6
}

View File

@@ -1 +1 @@
{"ts": "13:45", "status": "ok"}
{"ts": "13:50", "status": "ok"}