diff --git a/api/agent-leads-sync.json b/api/agent-leads-sync.json index 31f884cd1..5033ff394 100644 --- a/api/agent-leads-sync.json +++ b/api/agent-leads-sync.json @@ -1,6 +1,6 @@ { "agent": "V45_Leads_Sync", - "ts": "2026-04-22T20:40:03+02:00", + "ts": "2026-04-22T20:50:03+02:00", "paperclip_total": 48, "active_customer": 4, "warm_prospect": 5, diff --git a/api/em-kpi-cache.json b/api/em-kpi-cache.json index e69de29bb..8ced589e1 100644 --- a/api/em-kpi-cache.json +++ b/api/em-kpi-cache.json @@ -0,0 +1,286 @@ +{ + "ts": "2026-04-22T18:50:01+00:00", + "server": "s204", + "s204": { + "load": 25.63, + "uptime": "2026-04-14 11:51:24", + "ram_total_mb": 31335, + "ram_used_mb": 14887, + "ram_free_mb": 16447, + "disk_total": "150G", + "disk_used": "125G", + "disk_free": "20G", + "disk_pct": "87%", + "fpm_workers": 140, + "docker_containers": 19, + "cpu_cores": 8 + }, + "s95": { + "load": 0.06, + "disk_pct": "83%", + "status": "UP", + "ram_total_mb": 15610, + "ram_free_mb": 12094 + }, + "pmta": [ + { + "name": "SER6", + "ip": "110.239.84.121", + "status": "DOWN" + }, + { + "name": "SER7", + "ip": "110.239.65.64", + "status": "DOWN" + }, + { + "name": "SER8", + "ip": "182.160.55.107", + "status": "DOWN" + }, + { + "name": "SER9", + "ip": "110.239.86.68", + "status": "DOWN" + } + ], + "assets": { + "html_pages": 330, + "php_apis": 1077, + "wiki_entries": 2329, + "vault_doctrines": 123, + "vault_sessions": 104, + "vault_decisions": 12 + }, + "tools": { + "total": 649, + "registry_version": "?" + }, + "sovereign": { + "status": "UP", + "providers": [ + "Cerebras-fast", + "Cerebras-think", + "Groq", + "Cloudflare-AI", + "Gemini", + "SambaNova", + "NVIDIA-NIM", + "Mistral", + "Groq-OSS", + "HF-Space", + "HF-Router", + "OpenRouter", + "GitHub-Models" + ], + "active": 13, + "total": 13, + "primary": "Cerebras-fast", + "cost": "0€" + }, + "ethica": { + "total_hcps": 166742, + "with_email": 110748, + "with_phone": 159846, + "gap_email": 55994, + "pct_email": 66.4, + "pct_phone": 95.9, + "by_country": [ + { + "country": "DZ", + "hcps": 127343, + "with_email": 78620, + "with_tel": 124087, + "pct_email": 61.7, + "pct_tel": 97.4 + }, + { + "country": "MA", + "hcps": 19724, + "with_email": 15086, + "with_tel": 18739, + "pct_email": 76.5, + "pct_tel": 95 + }, + { + "country": "TN", + "hcps": 17796, + "with_email": 15163, + "with_tel": 17020, + "pct_email": 85.2, + "pct_tel": 95.6 + }, + { + "country": "INTL", + "hcps": 1879, + "with_email": 1879, + "with_tel": 0, + "pct_email": 100, + "pct_tel": 0 + } + ] + }, + "docker": [ + { + "name": "weval-docuseal", + "status": "Up 9 seconds", + "ports": "" + }, + { + "name": "loki", + "status": "Up 6 days", + "ports": "" + }, + { + "name": "listmonk", + "status": "Up 6 days", + "ports": "" + }, + { + "name": "plausible-plausible-1", + "status": "Up 5 days", + "ports": "" + }, + { + "name": "plausible-plausible-db-1", + "status": "Up 5 days", + "ports": "" + }, + { + "name": "plausible-plausible-events-db-1", + "status": "Up 5 days", + "ports": "" + }, + { + "name": "n8n-docker-n8n-1", + "status": "Up 6 days", + "ports": "" + }, + { + "name": "mattermost-docker-mm-db-1", + "status": "Up 6 days", + "ports": "" + }, + { + "name": "mattermost-docker-mattermost-1", + "status": "Up 6 days (healthy)", + "ports": "" + }, + { + "name": "twenty", + "status": "Up 6 days", + "ports": "" + }, + { + "name": "twenty-redis", + "status": "Up 6 days", + "ports": "" + }, + { + "name": "langfuse", + "status": "Up 6 days", + "ports": "" + }, + { + "name": "redis-weval", + "status": "Up 8 days", + "ports": "" + }, + { + "name": "gitea", + "status": "Up 8 days", + "ports": "" + }, + { + "name": "node-exporter", + "status": "Up 8 days", + "ports": "" + }, + { + "name": "prometheus", + "status": "Up 8 days", + "ports": "" + }, + { + "name": "searxng", + "status": "Up 8 days", + "ports": "" + }, + { + "name": "uptime-kuma", + "status": "Up 2 days (healthy)", + "ports": "" + }, + { + "name": "vaultwarden", + "status": "Up 8 days (healthy)", + "ports": "" + }, + { + "name": "qdrant", + "status": "Up 8 days", + "ports": "" + } + ], + "crons": { + "active": 35 + }, + "git": { + "head": "1a2b60413 auto-sync-2050", + "dirty": 2, + "status": "DIRTY" + }, + "nonreg": { + "total": 153, + "passed": 153, + "score": "100%" + }, + "services": [ + { + "name": "DeerFlow", + "port": 3002, + "status": "UP" + }, + { + "name": "DeerFlow API", + "port": 8001, + "status": "UP" + }, + { + "name": "Qdrant", + "port": 6333, + "status": "UP" + }, + { + "name": "Ollama", + "port": 11434, + "status": "UP" + }, + { + "name": "Redis", + "port": 6379, + "status": "UP" + }, + { + "name": "Sovereign", + "port": 4000, + "status": "UP" + }, + { + "name": "SearXNG", + "port": 8080, + "status": "UP" + } + ], + "whisper": { + "binary": "COMPILED", + "model": "142MB" + }, + "grand_total": 4528, + "health": { + "score": 4, + "max": 6, + "pct": 67 + }, + "elapsed_ms": 11234 +} \ No newline at end of file diff --git a/api/mql-scoring-status.json b/api/mql-scoring-status.json index fc589b1d3..9763a67ef 100644 --- a/api/mql-scoring-status.json +++ b/api/mql-scoring-status.json @@ -1,27 +1,27 @@ { "ok": true, "agent": "V42_MQL_Scoring_Agent_REAL", - "ts": "2026-04-22T18:40:01+00:00", + "ts": "2026-04-22T18:50:02+00:00", "status": "DEPLOYED_AUTO", "deployed": true, "algorithm": "weighted_behavioral_signals", "signals_tracked": { - "wtp_engagement": 54, + "wtp_engagement": 100, "chat_engagement": 0, "roi_tool": 0, "email_opened": 0 }, - "avg_score": 13.5, + "avg_score": 25, "mql_threshold": 50, "sql_threshold": 75, "leads_captured": 48, - "mql_auto_scored": 18, - "sql_auto_scored": 7, - "mql_auto_pct": 38, + "mql_auto_scored": 20, + "sql_auto_scored": 8, + "mql_auto_pct": 41, "improvement_vs_manual": { "before_manual_pct": 33.3, - "after_auto_pct": 38, - "delta": 4.700000000000003 + "after_auto_pct": 41, + "delta": 7.700000000000003 }, "paperclip_db_ok": true, "paperclip_tables": 2, diff --git a/api/paperclip-unfreeze.php b/api/paperclip-unfreeze.php index 3524aef0c..15818233b 100644 --- a/api/paperclip-unfreeze.php +++ b/api/paperclip-unfreeze.php @@ -1,8 +1,4 @@ "internal-only endpoint","intent"=>"paperclip_unfreeze"]); + echo json_encode(["error"=>"internal-only","intent"=>"paperclip_unfreeze"]); exit; } @@ -52,7 +48,6 @@ elseif ($action === "restart") { sleep(10); $out["restart"] = "completed"; $out["sovereign_running"] = !empty(shell_exec("pgrep -f paperclipai 2>/dev/null")); - $out["systemd_active"] = trim(shell_exec("systemctl is-active paperclip 2>&1")); } elseif ($action === "unfreeze_backlog") { $promoted = pg_q("UPDATE issues SET status='todo', updated_at=NOW() WHERE id IN (SELECT id FROM issues WHERE status='backlog' ORDER BY updated_at ASC LIMIT 10) RETURNING id"); @@ -60,7 +55,7 @@ elseif ($action === "unfreeze_backlog") { } elseif ($action === "report") { $out["systemctl"] = trim(shell_exec("systemctl is-active paperclip 2>&1")); - $out["keepalive_restarts_today"] = intval(shell_exec("sudo grep -c "$(date +%Y)" /var/log/paperclip-keepalive.log 2>&1")); + $out["keepalive_restarts_total"] = intval(trim(shell_exec("wc -l < /var/log/paperclip-keepalive.log 2>&1"))); $out["port_3102_listen"] = !empty(shell_exec("ss -tln | grep :3102 2>&1")); $out["last_heartbeat"] = pg_q("SELECT MAX(started_at) FROM heartbeat_runs"); $out["oldest_backlog"] = pg_q("SELECT MIN(updated_at) FROM issues WHERE status='backlog'"); diff --git a/api/v83-business-kpi-latest.json b/api/v83-business-kpi-latest.json index a6434e563..b0caffa78 100644 --- a/api/v83-business-kpi-latest.json +++ b/api/v83-business-kpi-latest.json @@ -1,7 +1,7 @@ { "ok": true, "version": "V83-business-kpi", - "ts": "2026-04-22T18:49:51+00:00", + "ts": "2026-04-22T18:51:16+00:00", "summary": { "total_categories": 8, "total_kpis": 64,