1,CURLOPT_TIMEOUT=>15,CURLOPT_SSL_VERIFYPEER=>0,CURLOPT_FOLLOWLOCATION=>1]); $body=curl_exec($ch);$code=curl_getinfo($ch,CURLINFO_HTTP_CODE);curl_close($ch); $res=[];$p=0;$f=0; foreach($checks as $k=>$v){ $ok=stripos($body,$v)!==false||preg_match("/$v/i",$body); if($ok){$p++;$res[$k]='P';}else{$f++;$res[$k]='F';} } return['n'=>$name,'c'=>$code,'p'=>$p,'f'=>$f,'t'=>count($checks),'ck'=>$res,'s'=>strlen($body)]; } function cd($url,$hdrs,$pay,$name){ $ch=curl_init($url); curl_setopt_array($ch,[CURLOPT_POST=>1,CURLOPT_POSTFIELDS=>json_encode($pay),CURLOPT_HTTPHEADER=>$hdrs,CURLOPT_RETURNTRANSFER=>1,CURLOPT_TIMEOUT=>15,CURLOPT_SSL_VERIFYPEER=>0]); $res=curl_exec($ch);$code=curl_getinfo($ch,CURLINFO_HTTP_CODE);curl_close($ch); $j=@json_decode($res,true);$txt=$j['choices'][0]['message']['content']??''; $ok=strlen($txt)>1; return['n'=>$name,'c'=>$code,'p'=>$ok?1:0,'f'=>$ok?0:1,'t'=>1,'ck'=>['resp'=>$ok?'P':'F'],'s'=>strlen($res)]; } $b='https://weval-consulting.com'; // 15 PAGES $r[]=tf("$b/login",'Login',['input'=>'input','pwd'=>'password','btn'=>'button']); $r[]=tf("$b/admin-saas.html",'Admin',['agent'=>'agent','docker'=>'docker','nonreg'=>'nonreg','health'=>'health','cron'=>'cron','oss'=>'oss','logout'=>'logout','tab'=>'Enterprise']); $r[]=tf("$b/wevads-ia/",'WEVADS',['camp'=>'ampagne','contact'=>'ontact','sender'=>'ender','template'=>'emplate','assist'=>'ssistant','input'=>'input','brain'=>'rain','analyt'=>'nalytics','logout'=>'ogout']); $r[]=tf("$b/agents-archi.html",'Archi3D',['three'=>'THREE','canvas'=>'canvas','agent'=>'agent','bloom'=>'loom','orbit'=>'OrbitControls']); $r[]=tf("$b/enterprise-model.html",'Enterprise',['agent'=>'agent','dept'=>'epartment','canvas'=>'canvas']); $r[]=tf("$b/agents-fleet.html",'Fleet',['fleet'=>'leet','agent'=>'agent','active'=>'ctive']); $r[]=tf("$b/l99-brain.html",'L99Brain',['layer'=>'ayer','test'=>'est','pct'=>'%']); $r[]=tf("$b/director-center.html",'Director',['director'=>'irector','fetch'=>'fetch','panel'=>'anel']); $r[]=tf("$b/wevia-meeting-rooms.html",'Meetings',['room'=>'oom','meeting'=>'eeting']); $r[]=tf("$b/architecture.html",'Archi',['scan'=>'can','gap'=>'ap','topology'=>'opology','score'=>'core']); $r[]=tf("$b/openclaw.html",'OpenClaw',['provider'=>'rovider','input'=>'input','model'=>'odel']); $r[]=tf("$b/wevia-console.html",'Console',['console'=>'onsole','wevia'=>'evia','fetch'=>'fetch']); $r[]=tf("$b/director-chat.html",'DirChat',['chat'=>'hat','input'=>'input']); $r[]=tf("$b/value-streaming.html",'ValStream',['nav'=>'href','body'=>'body']); $r[]=tf("$b/paperclip.html",'PaperPg',['nav'=>'href','body'=>'body']); // 3 CHAT DIRECT $r[]=cd('https://api.groq.com/openai/v1/chat/completions',['Content-Type: application/json','Authorization: Bearer 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'],['model'=>'llama-3.3-70b-versatile','messages'=>[['role'=>'user','content'=>'Capital Maroc?']],'max_tokens'=>15],'Chat:Groq'); $r[]=cd('https://api.cerebras.ai/v1/chat/completions',['Content-Type: application/json','Authorization: Bearer csk-4wrrhkpr568ry9xx49k9mcynwdx483nx53dd62yh5xedfckh'],['model'=>'qwen-3-235b-a22b','messages'=>[['role'=>'user','content'=>'2+2?']],'max_tokens'=>15],'Chat:Cerebras'); $r[]=cd('https://integrate.api.nvidia.com/v1/chat/completions',['Content-Type: application/json','Authorization: Bearer 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'],['model'=>'nvidia/llama-3.3-nemotron-super-49b-v1','messages'=>[['role'=>'user','content'=>'Bonjour']],'max_tokens'=>15],'Chat:GLM5'); // 6 APIs $r[]=tf("$b/api/ecosystem-health.php",'API:Eco',['l99'=>'l99','docker'=>'docker','oss'=>'oss','skills'=>'skills']); $r[]=tf("$b/api/agents-status.php",'API:Agents',['agent'=>'agent','total'=>'total']); $r[]=tf("$b/api/nonreg-api.php?cat=summary",'API:NonReg',['pass'=>'pass','total'=>'total']); $r[]=tf("$b/api/wevia-master-autoheal.php",'API:Heal',['services'=>'services','pass'=>'pass']); $r[]=tf("$b/api/agents-full-count.php",'API:Count',['total'=>'total','skills'=>'skills']); $r[]=tf("$b/api/execution-map.json",'API:Map',['groq'=>'groq','nvidia'=>'nvidia']); // 8 SUBDOMAINS $r[]=tf("https://crm.weval-consulting.com",'Sub:CRM',['twenty'=>'wenty','html'=>'html']); $r[]=tf("https://deerflow.weval-consulting.com",'Sub:Deer',['html'=>'html','chat'=>'hat']); $r[]=tf("https://paperclip.weval-consulting.com",'Sub:Lang',['langfuse'=>'angfuse']); $r[]=tf("https://analytics.weval-consulting.com",'Sub:Plaus',['plausible'=>'lausible']); $r[]=tf("https://mm.weval-consulting.com",'Sub:MM',['mattermost'=>'attermost']); $r[]=tf("https://monitor.weval-consulting.com",'Sub:Kuma',['uptime'=>'ptime']); $r[]=tf("https://n8n.weval-consulting.com",'Sub:n8n',['n8n'=>'n8n']); $r[]=tf("https://mirofish.weval-consulting.com",'Sub:Miro',['html'=>'html']); // OLLAMA $ch=curl_init('http://127.0.0.1:11434/api/generate'); curl_setopt_array($ch,[CURLOPT_POST=>1,CURLOPT_POSTFIELDS=>json_encode(['model'=>'glm4:9b','prompt'=>'Hi','stream'=>false]),CURLOPT_HTTPHEADER=>['Content-Type:application/json'],CURLOPT_RETURNTRANSFER=>1,CURLOPT_TIMEOUT=>20]); $or=curl_exec($ch);$oc=curl_getinfo($ch,CURLINFO_HTTP_CODE);curl_close($ch); $oj=@json_decode($or,true);$ot=$oj['response']??''; $r[]=['n'=>'Ollama:glm4','c'=>$oc,'p'=>strlen($ot)>3?1:0,'f'=>strlen($ot)>3?0:1,'t'=>1,'ck'=>['r'=>strlen($ot)>3?'P':'F'],'s'=>strlen($or)]; $tp=0;$tf=0;$tt=0; foreach($r as $t){$tp+=$t['p'];$tf+=$t['f'];$tt+=$t['t'];} $pct=$tt>0?round(100*$tp/$tt):0; file_put_contents('/var/log/l99-functional.log',"[$ts] $tp/$tt ($pct%)\n",FILE_APPEND); echo json_encode(['ts'=>$ts,'checks'=>$tt,'pass'=>$tp,'fail'=>$tf,'pct'=>$pct,'tests'=>$r]);