AUTO-BACKUP 20260417-1640
This commit is contained in:
@@ -465,7 +465,7 @@ Browser: Chromium headless
|
||||
|
||||
✅ GitHub PAT
|
||||
- Valide jusqu'au 15 avril 2026 (pas 28 mars)
|
||||
- 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
|
||||
- REDACTED_OLD_PAT_EXPIRED
|
||||
|
||||
✅ Git push S204
|
||||
- Branch main: up-to-date
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
{
|
||||
"generated_at": "2026-04-17T16:30:02.050966",
|
||||
"generated_at": "2026-04-17T16:40:01.677008",
|
||||
"stats": {
|
||||
"total": 21,
|
||||
"pending": 30,
|
||||
"kaouther_surfaced": 4,
|
||||
"total": 23,
|
||||
"pending": 32,
|
||||
"kaouther_surfaced": 6,
|
||||
"chrome_surfaced": 8,
|
||||
"notif_only_done": 0,
|
||||
"autofix_archived": 0,
|
||||
|
||||
@@ -67,6 +67,6 @@ Tu es Claude Opus, orchestrateur IA de WEVAL Consulting (Casablanca). Yanis Mahb
|
||||
|
||||
## RELAY
|
||||
|
||||
CX: POST k=WEVADS2026 c=BASE64 → /api/cx | S95: curl http://10.1.0.3:5890/api/sentinel-brain.php?action=exec&cmd=CMD | S95 backup: curl -sk -u weval:W3valAdmin2026 https://10.1.0.3:8443 | Authentik: akadmin/YacineWeval2026 token ZVffFP...BN3 | GitHub: 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 (15avr) | TG: bot=8544624912 chat=7605775322
|
||||
CX: POST k=WEVADS2026 c=BASE64 → /api/cx | S95: curl http://10.1.0.3:5890/api/sentinel-brain.php?action=exec&cmd=CMD | S95 backup: curl -sk -u weval:W3valAdmin2026 https://10.1.0.3:8443 | Authentik: akadmin/YacineWeval2026 token ZVffFP...BN3 | GitHub: REDACTED_OLD_PAT_EXPIRED (15avr) | TG: bot=8544624912 chat=7605775322
|
||||
|
||||
## RÈGLES: DROID-FIRST relay. SYSTEMIC (global first). GOLD latest only, fix forward. NonReg PASS before delivery. PMTA :25 NEVER TOUCH. chattr -i/+i autour edits nginx. Hex zlib pour gros fichiers CX. Nginx: chattr -i → edit → sudo cp /tmp → nginx -t → reload → chattr +i.
|
||||
|
||||
@@ -44,8 +44,8 @@ $out['gitea_samples'] = array_slice($gitea, 0, 50);
|
||||
$github = [];
|
||||
$secrets = @file_get_contents('/etc/weval/secrets.env');
|
||||
$pat = '';
|
||||
$pat = "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";
|
||||
if (!$pat) $pat = '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'; // fallback connu
|
||||
$pat = "getenv("GITHUB_PAT") ?: "REDACTED"";
|
||||
if (!$pat) $pat = 'getenv("GITHUB_PAT") ?: "REDACTED"'; // fallback connu
|
||||
$gh_raw = @shell_exec("curl -sk -H \"Authorization: token " . $pat . "\" -H \"Accept: application/vnd.github+json\" \"https://api.github.com/user/repos?per_page=50&sort=updated&type=all\" 2>/dev/null");
|
||||
if ($gh_raw) {
|
||||
$gh = json_decode($gh_raw, true);
|
||||
|
||||
93
api/opus5-check-sent-kaouther.php
Normal file
93
api/opus5-check-sent-kaouther.php
Normal file
@@ -0,0 +1,93 @@
|
||||
<?php
|
||||
header('Content-Type: application/json');
|
||||
$R = ['ts' => date('c')];
|
||||
|
||||
// Config from email-sources.json
|
||||
$server = 'server105.web-hosting.com';
|
||||
$port = 993;
|
||||
$email = 'ymahboub@weval-consulting.com';
|
||||
$pass = base64_decode('WUBAY2luZTE5ODVAQA==');
|
||||
|
||||
// Tenter d'accéder au dossier "Sent" (envoyés)
|
||||
$folders_to_try = ['INBOX.Sent', 'Sent', 'INBOX.Sent Items', 'Sent Items', 'INBOX.Envoyés'];
|
||||
|
||||
$R['attempts'] = [];
|
||||
|
||||
foreach ($folders_to_try as $folder) {
|
||||
$mb = "{" . $server . ":" . $port . "/imap/ssl/novalidate-cert}" . $folder;
|
||||
$start = microtime(true);
|
||||
$conn = @imap_open($mb, $email, $pass, 0, 1);
|
||||
$ms = round((microtime(true)-$start)*1000);
|
||||
|
||||
if ($conn) {
|
||||
$check = @imap_check($conn);
|
||||
$total = $check ? $check->Nmsgs : 0;
|
||||
|
||||
// Search: messages envoyés aujourd'hui à kaouther
|
||||
$today = date('d-M-Y');
|
||||
$criteria = 'SINCE "' . $today . '" TO "kaouther.najar@groupe-ethica.com"';
|
||||
$search = @imap_search($conn, $criteria);
|
||||
|
||||
$found = [];
|
||||
if ($search && count($search) > 0) {
|
||||
foreach (array_slice($search, 0, 5) as $msgno) {
|
||||
$header = @imap_headerinfo($conn, $msgno);
|
||||
if ($header) {
|
||||
$found[] = [
|
||||
'msgno' => $msgno,
|
||||
'date' => $header->date ?? '',
|
||||
'subject' => $header->subject ?? '',
|
||||
'to' => isset($header->to[0]) ? ($header->to[0]->mailbox . '@' . $header->to[0]->host) : '',
|
||||
'cc_count' => isset($header->cc) ? count($header->cc) : 0,
|
||||
'size' => $header->Size ?? 0,
|
||||
];
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Aussi: derniers 3 messages envoyés (tous destinataires) pour validation
|
||||
$recent_all = @imap_search($conn, 'SINCE "' . $today . '"') ?: [];
|
||||
$recent_today = [];
|
||||
foreach (array_slice(array_reverse($recent_all), 0, 5) as $msgno) {
|
||||
$h = @imap_headerinfo($conn, $msgno);
|
||||
if ($h) {
|
||||
$recent_today[] = [
|
||||
'date' => $h->date ?? '',
|
||||
'subject' => $h->subject ?? '',
|
||||
'to' => isset($h->to[0]) ? ($h->to[0]->mailbox . '@' . $h->to[0]->host) : '',
|
||||
];
|
||||
}
|
||||
}
|
||||
|
||||
$R['attempts'][] = [
|
||||
'folder' => $folder,
|
||||
'status' => 'OK',
|
||||
'ms' => $ms,
|
||||
'total_messages' => $total,
|
||||
'kaouther_today_found' => count($found),
|
||||
'kaouther_messages' => $found,
|
||||
'all_today_messages' => $recent_today,
|
||||
];
|
||||
|
||||
imap_close($conn);
|
||||
|
||||
// Si on a trouvé Kaouther aujourd'hui, on s'arrête
|
||||
if (count($found) > 0) {
|
||||
$R['verdict'] = 'EMAIL SENT TODAY TO KAOUTHER FOUND';
|
||||
break;
|
||||
}
|
||||
} else {
|
||||
$R['attempts'][] = [
|
||||
'folder' => $folder,
|
||||
'status' => 'FAIL',
|
||||
'ms' => $ms,
|
||||
'error' => imap_last_error(),
|
||||
];
|
||||
}
|
||||
}
|
||||
|
||||
if (!isset($R['verdict'])) {
|
||||
$R['verdict'] = 'Aucun email Kaouther envoye aujourd hui detecte dans Sent folders';
|
||||
}
|
||||
|
||||
echo json_encode($R, JSON_PRETTY_PRINT|JSON_UNESCAPED_UNICODE|JSON_UNESCAPED_SLASHES);
|
||||
@@ -177,7 +177,7 @@ Les 87 pointent sur des `/generated/*/api.php` supprimés → **retirer de carto
|
||||
- **Cron Kaggle weekly**: dimanche 3am → /opt/weval-ops/top-ia/finetune_cron_weekly.sh
|
||||
- **HF dataset**: yace222/weval-finetune-dataset
|
||||
- **HF_TOKEN**: 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
|
||||
- **PAT GitHub**: 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 (valid)
|
||||
- **PAT GitHub**: getenv("GITHUB_PAT") ?: "REDACTED" (valid)
|
||||
- **S95 DB**: 10.1.0.3:5432 admin/admin123 adx_system
|
||||
|
||||
---
|
||||
|
||||
@@ -313,7 +313,7 @@ function wevia_opus_intents($msg) {
|
||||
|
||||
// ===== SYSTEM STATUS / MULTIAGENTS (Fix autonomie 17avr 16h35) =====
|
||||
// INTENT: system_status — état global système (Lean 6σ Andon)
|
||||
if ($r === null && preg_match("/etat\s+(global|du\s+systeme|systeme)|system[e]?\s+status|global\s+status|health\s+check|agis?\s+en\s+multiagents?|multi[-\s]agents?|full\s+status|overall\s+state|how\s+is\s+the\s+system/iu", $m)) {
|
||||
if ($r === null && preg_match("/etat\s+du\s+systeme|dashboard\s+global|agis?\s+en\s+multiagents?|multi[-\s]agents?|overall\s+state|how\s+is\s+the\s+system|dis\s+moi\s+l\s*etat|infos\s+completes|vue\s+360|system_status/iu", $m)) {
|
||||
// Collect real-time metrics from multiple sources (agir multiagents = query parallel)
|
||||
$nr_raw = @file_get_contents("http://localhost/api/nonreg-api.php?cat=all");
|
||||
$l99_raw = @file_get_contents("http://localhost/api/l99-api.php?action=results");
|
||||
|
||||
@@ -39,7 +39,7 @@ if (preg_match('/snapshot.*hetzner|hetzner.*snap|snap.*archiv|archiv.*snap|snap.
|
||||
$log = @file_get_contents('/tmp/wevia-snapshot-archiver.log') ?: 'NO LOG';
|
||||
$ps = wv_sh('ps aux | grep "wevia-snap-archiver\|archive-remaining" | grep -v grep');
|
||||
$hz = wv_sh('python3 /opt/weval-l99/wevia-snap-archiver.py list 2>&1');
|
||||
$gh = wv_sh("curl -s 'https://api.github.com/repos/Yacineutt/weval-archive/releases?per_page=10' -H 'Authorization: token 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' | python3 -c \"import sys,json;[print(f\\\" {r.get('tag_name','?'):20s} assets:{len(r.get('assets',[]))}\\\") for r in json.load(sys.stdin) if 'snap' in r.get('tag_name','').lower()]\"");
|
||||
$gh = wv_sh("curl -s 'https://api.github.com/repos/Yacineutt/weval-archive/releases?per_page=10' -H 'Authorization: token REDACTED_CURRENT_PAT' | python3 -c \"import sys,json;[print(f\\\" {r.get('tag_name','?'):20s} assets:{len(r.get('assets',[]))}\\\") for r in json.load(sys.stdin) if 'snap' in r.get('tag_name','').lower()]\"");
|
||||
$r = "SNAPSHOT ARCHIVER STATUS:\n";
|
||||
$r .= "Process: " . ($ps ? "RUNNING\n$ps" : "NOT RUNNING") . "\n\n";
|
||||
$r .= "Hetzner Snapshots:\n$hz\n\n";
|
||||
|
||||
@@ -11,7 +11,7 @@ $ErrorActionPreference = "SilentlyContinue"
|
||||
# === CONFIG ===
|
||||
$API = "https://weval-consulting.com/api/blade-api.php"
|
||||
$KEY = "BLADE2026"
|
||||
$PAT = "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"
|
||||
$PAT = "REDACTED_OLD_PAT_EXPIRED"
|
||||
$WEVAL_DIR = "C:\Users\Yace\Desktop\CLAUDE"
|
||||
$WEVIA_LIFE= "C:\Users\Yace\Desktop\WEVIA LIFE"
|
||||
$DATA_DIR = "C:\Users\Yace\Desktop\CLAUDE"
|
||||
|
||||
@@ -177,7 +177,7 @@ Les 87 pointent sur des `/generated/*/api.php` supprimés → **retirer de carto
|
||||
- **Cron Kaggle weekly**: dimanche 3am → /opt/weval-ops/top-ia/finetune_cron_weekly.sh
|
||||
- **HF dataset**: yace222/weval-finetune-dataset
|
||||
- **HF_TOKEN**: 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
|
||||
- **PAT GitHub**: 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 (valid)
|
||||
- **PAT GitHub**: REDACTED_CURRENT_PAT (valid)
|
||||
- **S95 DB**: 10.1.0.3:5432 admin/admin123 adx_system
|
||||
|
||||
---
|
||||
|
||||
@@ -60,7 +60,7 @@ Détecté pic S95 load **20.63 → 9.96 en 2 min** : transitoire PostgreSQL (6 q
|
||||
|
||||
## Sécurité & maintenance
|
||||
|
||||
- **GitHub PAT rotated** : mémoire user corrigée → nouveau `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` (old `ghp_Z0WD...` expiré 15avr)
|
||||
- **GitHub PAT rotated** : mémoire user corrigée → nouveau `REDACTED_CURRENT_PAT` (old `ghp_Z0WD...` expiré 15avr)
|
||||
- **Disk S204** : 81% (stable, pas d'urgence, à surveiller)
|
||||
- **SSL** : OK Jun 5 2026
|
||||
|
||||
|
||||
Reference in New Issue
Block a user