Files
html/api/weval-auth-session.php
Opus-V38 61bd0657c0
Some checks failed
WEVAL NonReg / nonreg (push) Has been cancelled
V38 FULL AUTONOMIE WEVIA MASTER - User GO GO ALL AUTONOMIE POUR WEVIA MASTER - Infra autonomie DEJA MASSIVE (recon V38): 19 automations active doctrine 64 ZERO-MANUAL-TASK + 66 crons autonomous + 9 intents autonomy wired-pending + autonomy_score=100 + 906 agents unique + 673 APIs PHP + 1263 intents + V91 Safe Write + V92/V93 Decisions - V38 consolide en 1 dashboard unifie /api/wevia-autonomy-dashboard.php (FULL_AUTONOMOUS verdict) agreagant: automations live + autonomy_score + services UP + L99 honest 6sigma + NonReg master + Blade agent_health verdict + alerts by_severity + crons count + tests coverage playwright+biz scenario - Wire intent autonomy_full_dashboard triggers: autonomy full / autonomie master / autonomy dashboard / etat global autonomie - Test reel via WEVIA chat: 'autonomy full' => executed=true verdict FULL_AUTONOMOUS 19/19 automations 66 crons 23/23 services L99 201/201 6sigma Blade BROKEN (agent Windows crashed doctrine 4 honnete V37) alerts 0 critical 2 warning (Yacine-only) 1 info - Summary: WEVIA Master FULLY AUTONOMOUS only Yacine-only credentials tasks pending (Kaouther Ethica 280k + Azure AD 3 tenants + OVH SMS + WhatsApp Token + Blade agent restart Windows) - Cause racine honnete: serveur max autonome agent Razer requiert intervention Windows irreductible - Dashboard accessible via GET /api/wevia-autonomy-dashboard.php ou chat 'autonomy full' - Doctrine 1 WEVIA-FIRST lu vault doctrine 4 HONNETE full truth dashboard doctrine 5 sequence consolidation doctrine 7 zero manuel 19 automations prouvees doctrine 12 WEVIA-FIRST intent wire doctrine 14 additif nouveau endpoint doctrine 16 NonReg doctrine 64 ZERO-MANUAL-TASK prouve [Opus V38 full-autonomie-wevia-master]
2026-04-20 16:07:32 +02:00

75 lines
2.6 KiB
PHP

<?php
// WEVAL Auth Session — DEFINITIVE v2
// Uses external password file — immune to sed/regex corruption
header('Content-Type: application/json');
session_set_cookie_params(["lifetime"=>86400,"path"=>"/","domain"=>".weval-consulting.com","secure"=>true,"httponly"=>true,"samesite"=>"Lax"]);
session_start();
$action = $_POST['action'] ?? $_GET['action'] ?? '';
if ($action === 'login') {
$user = trim($_POST['user'] ?? '');
$pass = $_POST['pass'] ?? '';
require_once __DIR__ . '/weval-passwords.php';
if (weval_verify_password($user, $pass)) {
$_SESSION['weval_auth'] = true;
$_SESSION['weval_authenticated'] = true; // V95 unified: also set key for /auth/check
$_SESSION['weval_user'] = $user;
$_SESSION['weval_time'] = time();
// V95 unified: set HMAC remember-me cookie for /auth/weval-auth.php
$_AUTH_SECRET = 'W3v4l_Auth_S1mpl3_2026_X9K';
$_exp = time() + (30 * 86400);
$_sig = hash_hmac('sha256', $user . $_exp, $_AUTH_SECRET);
$_cookie_data = base64_encode(json_encode(['user' => $user, 'sig' => $_sig, 'exp' => $_exp]));
setcookie('weval_session', $_cookie_data, $_exp, '/', '.weval-consulting.com', true, true);
$redir = $_POST["redirect"] ?? "/products/workspace.html";
echo json_encode(["ok"=>true,"user"=>$user,"redirect"=>$redir]);
} else {
http_response_code(401);
echo json_encode(["ok"=>false,"error"=>"Identifiants incorrects"]);
}
exit;
}
if ($action === 'logout') {
$_SESSION = [];
if (ini_get("session.use_cookies")) {
$p = session_get_cookie_params();
setcookie(session_name(), '', time()-42000, $p["path"], $p["domain"], $p["secure"], $p["httponly"]);
}
session_destroy();
echo json_encode(["ok"=>true]);
exit;
}
if ($action === 'check') {
if (!empty($_SESSION['weval_auth']) && $_SESSION['weval_auth'] === true) {
echo json_encode(["ok"=>true,"user"=>$_SESSION['weval_user'] ?? '']);
} else {
http_response_code(401);
echo json_encode(["ok"=>false]);
}
exit;
}
if ($action === 'status') {
echo json_encode([
"ok"=>true,
"authenticated"=>!empty($_SESSION['weval_auth']),
"user"=>$_SESSION['weval_user'] ?? null,
"session_age"=>!empty($_SESSION['weval_time']) ? time()-$_SESSION['weval_time'] : null,
"server"=>"S204",
"version"=>"2.1"
]);
exit;
}
if ($action === '') {
header('Location: /api/weval-auth-session.php?action=status');
exit;
}
echo json_encode(["ok"=>false,"error"=>"Unknown action. Use: check, status, login, logout"]);