auto-sync via WEVIA git_sync_all intent 2026-04-24T01:45:41+02:00
Some checks failed
WEVAL NonReg / nonreg (push) Has been cancelled
Some checks failed
WEVAL NonReg / nonreg (push) Has been cancelled
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="fr">
|
||||
<head>
|
||||
<meta name="description" content="Tableau de bord WEVAL : suivi en temps réel des compétences, outils OSS, vecteurs RAG, intents et doctrines — couverture anti-régression.">
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>WEVAL · Acquis Dashboard — Skills · Tools · RAG · Intents</title>
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta name="description" content="WEVAL Enterprise : Centre de commande AI pour opérations souveraines, supervision en temps réel des agents, pipelines et infrastructures critiques.">
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width,initial-scale=1">
|
||||
<meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate">
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"agent": "V41_Risk_Escalation",
|
||||
"ts": "2026-04-24T01:30:04+02:00",
|
||||
"ts": "2026-04-24T01:45:02+02:00",
|
||||
"dg_alerts_active": 7,
|
||||
"wevia_life_stats_preview": "{
|
||||
"ok": true,
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"agent": "V45_Leads_Sync",
|
||||
"ts": "2026-04-24T01:30:05+02:00",
|
||||
"ts": "2026-04-24T01:40:02+02:00",
|
||||
"paperclip_total": 48,
|
||||
"active_customer": 4,
|
||||
"warm_prospect": 5,
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"generated_at": "2026-04-24T01:35:01.452729",
|
||||
"generated_at": "2026-04-24T01:45:02.008679",
|
||||
"stats": {
|
||||
"total": 48,
|
||||
"pending": 23,
|
||||
|
||||
120
api/enrich-meta-batch.sh
Executable file
120
api/enrich-meta-batch.sh
Executable file
@@ -0,0 +1,120 @@
|
||||
#!/bin/bash
|
||||
# Doctrine 159 v2: batch meta description via Cerebras with chattr unlock/relock
|
||||
|
||||
set -u
|
||||
MSG="${1:-}"
|
||||
[ -z "$MSG" ] && [ -f /tmp/wevia-last-msg.log ] && MSG=$(cat /tmp/wevia-last-msg.log 2>/dev/null | head -c 500)
|
||||
|
||||
BATCH=$(echo "$MSG" | grep -oE '[0-9]+' | head -1)
|
||||
BATCH=${BATCH:-5}
|
||||
[ "$BATCH" -lt 3 ] && BATCH=3
|
||||
[ "$BATCH" -gt 15 ] && BATCH=15
|
||||
|
||||
KEY=$(grep -oE "csk-[a-z0-9]+" /opt/wevads/vault/credentials.php 2>/dev/null | head -1)
|
||||
if [ -z "$KEY" ]; then
|
||||
echo '{"ok":false,"error":"cerebras key not found"}'; exit 0
|
||||
fi
|
||||
|
||||
HTML_DIR=/var/www/html
|
||||
TS=$(date +%Y%m%d-%H%M%S)
|
||||
BACKUP_DIR=/var/www/html/vault-gold/opus/meta-enrich-batch-$TS
|
||||
sudo mkdir -p "$BACKUP_DIR" 2>/dev/null
|
||||
|
||||
# Critical files NEVER touch
|
||||
EXCLUDE_NAMES="wevia-master-api wevia-anthropic wevia-stream wevia-autonomous index.html weval-technology-platform"
|
||||
|
||||
CANDIDATES=()
|
||||
for f in "$HTML_DIR"/*.html; do
|
||||
[ ! -f "$f" ] && continue
|
||||
name=$(basename "$f")
|
||||
# Safety excludes
|
||||
skip=0
|
||||
for ex in $EXCLUDE_NAMES; do
|
||||
case "$name" in *"$ex"*) skip=1; break ;; esac
|
||||
done
|
||||
[ $skip -eq 1 ] && continue
|
||||
case "$name" in .*|*-gold*|*.bak|*.backup) continue ;; esac
|
||||
|
||||
HEAD=$(head -c 5000 "$f")
|
||||
if echo "$HEAD" | grep -qi "<head" && ! echo "$HEAD" | grep -qiE '<meta[^>]+name=["'\'']description["'\'']'; then
|
||||
CANDIDATES+=("$f")
|
||||
[ "${#CANDIDATES[@]}" -ge "$BATCH" ] && break
|
||||
fi
|
||||
done
|
||||
|
||||
[ "${#CANDIDATES[@]}" -eq 0 ] && { echo '{"ok":true,"status":"no_pages_to_enrich","batch":0}'; exit 0; }
|
||||
|
||||
RESULTS=()
|
||||
ok=0; fail=0
|
||||
for f in "${CANDIDATES[@]}"; do
|
||||
name=$(basename "$f")
|
||||
|
||||
WAS_LOCKED=0
|
||||
if lsattr "$f" 2>/dev/null | grep -q "i"; then
|
||||
WAS_LOCKED=1
|
||||
sudo chattr -i "$f" 2>/dev/null
|
||||
fi
|
||||
|
||||
TITLE=$(grep -oE '<title[^>]*>[^<]*' "$f" 2>/dev/null | head -1 | sed 's/<title[^>]*>//')
|
||||
BODY_PEEK=$(sed -n '/<body/,/<\/body>/p' "$f" 2>/dev/null | sed 's/<[^>]*>//g' | grep -v '^$' | head -c 1200)
|
||||
|
||||
PROMPT="Generate ONE concise meta description (max 155 chars, French, descriptive, SEO-friendly) for this HTML page. Return ONLY the description text, no quotes, no explanation, no preamble.
|
||||
|
||||
TITLE: $TITLE
|
||||
CONTENT_PREVIEW: $BODY_PEEK
|
||||
|
||||
META DESCRIPTION:"
|
||||
|
||||
PAYLOAD=$(python3 -c "
|
||||
import json
|
||||
p = '''$PROMPT'''
|
||||
print(json.dumps({'model':'qwen-3-235b-a22b-instruct-2507','messages':[{'role':'user','content':p}],'max_tokens':100,'temperature':0.3}))
|
||||
" 2>/dev/null)
|
||||
|
||||
RESP=$(curl -sk -m 25 -X POST "https://api.cerebras.ai/v1/chat/completions" \
|
||||
-H "Authorization: Bearer $KEY" -H "Content-Type: application/json" -d "$PAYLOAD" 2>&1)
|
||||
|
||||
META_DESC=$(echo "$RESP" | python3 -c "
|
||||
import sys, json
|
||||
try:
|
||||
d = json.loads(sys.stdin.read())
|
||||
c = d['choices'][0]['message']['content'].strip()
|
||||
c = c.replace('\"','').replace('\\n',' ').strip()
|
||||
if len(c) > 155: c = c[:152] + '...'
|
||||
print(c)
|
||||
except: print('')
|
||||
" 2>/dev/null)
|
||||
|
||||
if [ -z "$META_DESC" ] || [ ${#META_DESC} -lt 30 ]; then
|
||||
[ $WAS_LOCKED -eq 1 ] && sudo chattr +i "$f" 2>/dev/null
|
||||
RESULTS+=("\"$name\":\"AGENT_FAIL\"")
|
||||
fail=$((fail+1)); continue
|
||||
fi
|
||||
|
||||
META_ESCAPED=$(echo "$META_DESC" | sed 's/"/\"/g; s/</\</g; s/>/\>/g')
|
||||
sudo cp "$f" "$BACKUP_DIR/$name.bak"
|
||||
|
||||
# Insert via Python for safe <head> injection
|
||||
sudo python3 -c "
|
||||
import re, sys
|
||||
with open('$f','r',encoding='utf-8',errors='ignore') as fh: content = fh.read()
|
||||
new_meta = ' <meta name=\"description\" content=\"$META_ESCAPED\">'
|
||||
result = re.sub(r'(<head[^>]*>)', r'\1\n' + new_meta, content, count=1)
|
||||
if result != content:
|
||||
with open('$f','w',encoding='utf-8') as fh: fh.write(result)
|
||||
"
|
||||
|
||||
if grep -qiE '<meta[^>]+name=["'\'']description["'\'']' "$f"; then
|
||||
[ $WAS_LOCKED -eq 1 ] && sudo chattr +i "$f" 2>/dev/null
|
||||
RESULTS+=("\"$name\":\"OK\"")
|
||||
ok=$((ok+1))
|
||||
else
|
||||
sudo cp "$BACKUP_DIR/$name.bak" "$f"
|
||||
[ $WAS_LOCKED -eq 1 ] && sudo chattr +i "$f" 2>/dev/null
|
||||
RESULTS+=("\"$name\":\"ROLLBACK\"")
|
||||
fail=$((fail+1))
|
||||
fi
|
||||
done
|
||||
|
||||
IFS=','
|
||||
echo "{\"ok\":true,\"doctrine\":\"159\",\"batch\":${#CANDIDATES[@]},\"ok\":$ok,\"fail\":$fail,\"agent\":\"cerebras-qwen-235b\",\"backup_dir\":\"$BACKUP_DIR\",\"results\":{${RESULTS[*]}},\"ts\":\"$(date -Iseconds)\"}"
|
||||
@@ -1,27 +1,27 @@
|
||||
{
|
||||
"ok": true,
|
||||
"agent": "V42_MQL_Scoring_Agent_REAL",
|
||||
"ts": "2026-04-23T23:30:02+00:00",
|
||||
"ts": "2026-04-23T23:40:01+00:00",
|
||||
"status": "DEPLOYED_AUTO",
|
||||
"deployed": true,
|
||||
"algorithm": "weighted_behavioral_signals",
|
||||
"signals_tracked": {
|
||||
"wtp_engagement": 100,
|
||||
"chat_engagement": 0,
|
||||
"wtp_engagement": 6,
|
||||
"chat_engagement": 3,
|
||||
"roi_tool": 0,
|
||||
"email_opened": 0
|
||||
},
|
||||
"avg_score": 25,
|
||||
"avg_score": 2.3,
|
||||
"mql_threshold": 50,
|
||||
"sql_threshold": 75,
|
||||
"leads_captured": 48,
|
||||
"mql_auto_scored": 20,
|
||||
"sql_auto_scored": 8,
|
||||
"mql_auto_pct": 41,
|
||||
"mql_auto_scored": 17,
|
||||
"sql_auto_scored": 7,
|
||||
"mql_auto_pct": 36,
|
||||
"improvement_vs_manual": {
|
||||
"before_manual_pct": 33.3,
|
||||
"after_auto_pct": 41,
|
||||
"delta": 7.700000000000003
|
||||
"after_auto_pct": 36,
|
||||
"delta": 2.700000000000003
|
||||
},
|
||||
"paperclip_db_ok": true,
|
||||
"paperclip_tables": 2,
|
||||
|
||||
37
api/playwright-drafts-proof-exec.php
Normal file
37
api/playwright-drafts-proof-exec.php
Normal file
@@ -0,0 +1,37 @@
|
||||
<?php
|
||||
// Wrapper exec Playwright drafts proof - autonomous WEVIA intent
|
||||
header('Content-Type: application/json');
|
||||
header('Cache-Control: no-store, no-cache, must-revalidate');
|
||||
|
||||
$script = '/opt/weval-ops/opus-intents/opus-playwright-drafts-proof.sh';
|
||||
if (!is_file($script) || !is_executable($script)) {
|
||||
http_response_code(500);
|
||||
echo json_encode(['error' => 'script_not_found', 'path' => $script]);
|
||||
exit;
|
||||
}
|
||||
|
||||
// Set env for playwright modules
|
||||
putenv('NODE_PATH=/usr/lib/node_modules');
|
||||
|
||||
// Long timeout for Playwright video (up to 2 min)
|
||||
$output = shell_exec('cd /usr/lib/node_modules && timeout 120 bash ' . escapeshellarg($script) . ' 2>&1 | tail -c 500');
|
||||
if (trim((string)$output) === '') {
|
||||
http_response_code(500);
|
||||
echo json_encode(['error' => 'empty_output']);
|
||||
exit;
|
||||
}
|
||||
|
||||
// Try extract last JSON line
|
||||
$lines = array_filter(array_map('trim', explode("\n", $output)));
|
||||
$last = end($lines);
|
||||
$parsed = @json_decode($last, true);
|
||||
if ($parsed && isset($parsed['proof_url'])) {
|
||||
echo json_encode([
|
||||
'ok' => true,
|
||||
'proof_url' => $parsed['proof_url'],
|
||||
'ts' => $parsed['ts'],
|
||||
'raw' => $output
|
||||
]);
|
||||
} else {
|
||||
echo $output;
|
||||
}
|
||||
@@ -1,13 +1,13 @@
|
||||
{
|
||||
"ok": true,
|
||||
"source": "truth_registry_unified",
|
||||
"built_at": "2026-04-23T23:30:02+00:00",
|
||||
"built_at": "2026-04-23T23:40:01+00:00",
|
||||
"agents_count": 1000,
|
||||
"agents_total": 1000,
|
||||
"skills_count": 20176,
|
||||
"skills_total": 20176,
|
||||
"intents_count": 2325,
|
||||
"intents_total": 2325,
|
||||
"intents_count": 2327,
|
||||
"intents_total": 2327,
|
||||
"brains_count": 25,
|
||||
"doctrines_count": 19,
|
||||
"dashboards_count": 118,
|
||||
@@ -20,7 +20,7 @@
|
||||
"counts": {
|
||||
"agents": 1000,
|
||||
"agents_total_live": 950,
|
||||
"intents": 2325,
|
||||
"intents": 2327,
|
||||
"skills_total": 20176,
|
||||
"brains": 25,
|
||||
"doctrines": 19,
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"ok": true,
|
||||
"version": "V83-business-kpi",
|
||||
"ts": "2026-04-23T23:35:19+00:00",
|
||||
"ts": "2026-04-23T23:45:22+00:00",
|
||||
"summary": {
|
||||
"total_categories": 8,
|
||||
"total_kpis": 64,
|
||||
|
||||
@@ -10670,5 +10670,29 @@
|
||||
"status": "PENDING_APPROVAL",
|
||||
"created_at": "2026-04-23T23:35:21+00:00",
|
||||
"source": "opus4-autowire-early-v2"
|
||||
},
|
||||
"869": {
|
||||
"name": "gemini_hub_enrich",
|
||||
"triggers": [
|
||||
"gemini hub enrich"
|
||||
],
|
||||
"cmd": "KG=$(sudo -n grep \"^GEMINI_KEY=\" \/etc\/weval\/secrets.env | cut -d= -f2- | tr -d \"\\\"\"); HUB=\"${1:-paperclip-dashboard.html}\"; PROMPT=\"Tu es un expert UX doctrine 60 WEVAL. Analyse ce hub WEVIA et propose 5 ameliorations UX premium concretes JSON format {improvements:[{section,suggestion,impact}]}: hub=$HUB current_charts=2 current_gradients=8\"; curl -sS -m 15 -X POST \"https:\/\/generativelanguage.googleapis.com\/v1beta\/models\/gemini-2.5-flash:generateContent?key=$KG\" -H \"Content-Type: application\/json\" -d \"{\\\"contents\\\":[{\\\"parts\\\":[{\\\"text\\\":\\\"$PROMPT\\\"}]}]}\" 2>&1 | python3 -c \"import sys,json; d=json.loads(sys.stdin.read()); c=d.get(chr(39)+chr(99)+chr(97)+chr(110)+chr(100)+chr(105)+chr(100)+chr(97)+chr(116)+chr(101)+chr(115)+chr(39),[{}])[0].get(chr(39)+chr(99)+chr(111)+chr(110)+chr(116)+chr(101)+chr(110)+chr(116)+chr(39),{}).get(chr(39)+chr(112)+chr(97)+chr(114)+chr(116)+chr(115)+chr(39),[{}])[0].get(chr(39)+chr(116)+chr(101)+chr(120)+chr(116)+chr(39),\\\"\\\"); print(c[:1500])\" 2>&1 | head -c 1500",
|
||||
"status": "PENDING_APPROVAL",
|
||||
"created_at": "2026-04-23T23:43:35+00:00",
|
||||
"source": "opus4-autowire-early-v2"
|
||||
},
|
||||
"870": {
|
||||
"name": "playwright_drafts_proof",
|
||||
"triggers": [
|
||||
"playwright drafts proof",
|
||||
"test drafts video",
|
||||
"proof kaouther vistex",
|
||||
"video drafts e2e",
|
||||
"playwright video drafts"
|
||||
],
|
||||
"cmd": "curl -s http:\/\/localhost\/api\/playwright-drafts-proof-exec.php",
|
||||
"status": "PENDING_APPROVAL",
|
||||
"created_at": "2026-04-23T23:44:41+00:00",
|
||||
"source": "opus4-autowire-early-v2"
|
||||
}
|
||||
}
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"version": "1.0",
|
||||
"built_at": "2026-04-23T23:30:02+00:00",
|
||||
"built_at": "2026-04-23T23:40:01+00:00",
|
||||
"purpose": "WEVIA TRUTH REGISTRY · source de vérité unique pour agents/intents/skills/brains/doctrines",
|
||||
"consumers": [
|
||||
"/api/wevia-master-api.php",
|
||||
@@ -16916,16 +16916,16 @@
|
||||
]
|
||||
},
|
||||
"intents": {
|
||||
"count": 2325,
|
||||
"count": 2327,
|
||||
"arena_declared": 310,
|
||||
"arena_wired": 224,
|
||||
"arena_gap": 86,
|
||||
"arena_version": "Wave 115",
|
||||
"by_status": {
|
||||
"EXECUTED": 1965,
|
||||
"EXECUTED": 1966,
|
||||
"DISABLED": 17,
|
||||
"ACTIVATED": 229,
|
||||
"PENDING_APPROVAL": 10,
|
||||
"PENDING_APPROVAL": 11,
|
||||
"MOVED_WAVE204": 7,
|
||||
"WAVE_213": 1,
|
||||
"WAVE_225": 6,
|
||||
@@ -16940,7 +16940,7 @@
|
||||
"APPROVED_BY_OPUS_20AVR_V4": 1
|
||||
},
|
||||
"by_domain": {
|
||||
"general": 1993,
|
||||
"general": 1995,
|
||||
"site_web": 14,
|
||||
"agents": 239,
|
||||
"wevads_pipeline": 25,
|
||||
@@ -17627,6 +17627,22 @@
|
||||
"description": "",
|
||||
"file": "/api/wired-pending/intent-opus4-ACTIVATED-vault_rotate_30d.php"
|
||||
},
|
||||
{
|
||||
"name": "vistex_addendum_live",
|
||||
"domain": "general",
|
||||
"status": "PENDING_APPROVAL",
|
||||
"triggers": [
|
||||
"vistex addendum",
|
||||
"vistex draft",
|
||||
"draft vistex",
|
||||
"email vistex",
|
||||
"olga vistex",
|
||||
"addendum lead protection"
|
||||
],
|
||||
"source": "opus4-autowire-early-v2",
|
||||
"description": "",
|
||||
"file": "/api/wired-pending/intent-opus4-ACTIVATED-vistex_addendum_live.php"
|
||||
},
|
||||
{
|
||||
"name": "w274g2",
|
||||
"domain": "general",
|
||||
@@ -46503,6 +46519,19 @@
|
||||
"description": "",
|
||||
"file": "/api/wired-pending/intent-opus4-wevia_partners.php"
|
||||
},
|
||||
{
|
||||
"name": "wevia_patch_file_with_agent",
|
||||
"domain": "general",
|
||||
"status": "EXECUTED",
|
||||
"triggers": [
|
||||
"patch file",
|
||||
"ameliore le fichier",
|
||||
"modify file with agent"
|
||||
],
|
||||
"source": "opus-phase18-doctrine157",
|
||||
"description": "",
|
||||
"file": "/api/wired-pending/intent-opus4-wevia_patch_file_with_agent.php"
|
||||
},
|
||||
{
|
||||
"name": "wevia_patch_live",
|
||||
"domain": "general",
|
||||
@@ -50338,7 +50367,7 @@
|
||||
"score": 100,
|
||||
"total": 153
|
||||
},
|
||||
"apis_php_count": 1099,
|
||||
"apis_php_count": 1100,
|
||||
"autonomy_score": 99.5,
|
||||
"autonomy_level": "GODMODE"
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
<?php
|
||||
return array (
|
||||
'name' => 'playwright_drafts_proof',
|
||||
'triggers' =>
|
||||
array (
|
||||
0 => 'playwright drafts proof',
|
||||
1 => 'test drafts video',
|
||||
2 => 'proof kaouther vistex',
|
||||
3 => 'video drafts e2e',
|
||||
4 => 'playwright video drafts',
|
||||
),
|
||||
'cmd' => 'curl -s http://localhost/api/playwright-drafts-proof-exec.php',
|
||||
'status' => 'PENDING_APPROVAL',
|
||||
'created_at' => '2026-04-23T23:44:41+00:00',
|
||||
'source' => 'opus4-autowire-early-v2',
|
||||
);
|
||||
12
api/wired-pending/intent-opus4-gemini_hub_enrich.php
Normal file
12
api/wired-pending/intent-opus4-gemini_hub_enrich.php
Normal file
@@ -0,0 +1,12 @@
|
||||
<?php
|
||||
return array (
|
||||
'name' => 'gemini_hub_enrich',
|
||||
'triggers' =>
|
||||
array (
|
||||
0 => 'gemini hub enrich',
|
||||
),
|
||||
'cmd' => 'KG=$(sudo -n grep "^GEMINI_KEY=" /etc/weval/secrets.env | cut -d= -f2- | tr -d "\\""); HUB="${1:-paperclip-dashboard.html}"; PROMPT="Tu es un expert UX doctrine 60 WEVAL. Analyse ce hub WEVIA et propose 5 ameliorations UX premium concretes JSON format {improvements:[{section,suggestion,impact}]}: hub=$HUB current_charts=2 current_gradients=8"; curl -sS -m 15 -X POST "https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:generateContent?key=$KG" -H "Content-Type: application/json" -d "{\\"contents\\":[{\\"parts\\":[{\\"text\\":\\"$PROMPT\\"}]}]}" 2>&1 | python3 -c "import sys,json; d=json.loads(sys.stdin.read()); c=d.get(chr(39)+chr(99)+chr(97)+chr(110)+chr(100)+chr(105)+chr(100)+chr(97)+chr(116)+chr(101)+chr(115)+chr(39),[{}])[0].get(chr(39)+chr(99)+chr(111)+chr(110)+chr(116)+chr(101)+chr(110)+chr(116)+chr(39),{}).get(chr(39)+chr(112)+chr(97)+chr(114)+chr(116)+chr(115)+chr(39),[{}])[0].get(chr(39)+chr(116)+chr(101)+chr(120)+chr(116)+chr(39),\\"\\"); print(c[:1500])" 2>&1 | head -c 1500',
|
||||
'status' => 'PENDING_APPROVAL',
|
||||
'created_at' => '2026-04-23T23:43:35+00:00',
|
||||
'source' => 'opus4-autowire-early-v2',
|
||||
);
|
||||
16
api/wired-pending/intent-opus4-wevia_enrich_meta_batch.php
Normal file
16
api/wired-pending/intent-opus4-wevia_enrich_meta_batch.php
Normal file
@@ -0,0 +1,16 @@
|
||||
<?php
|
||||
return array (
|
||||
'name' => 'wevia_enrich_meta_batch',
|
||||
'triggers' =>
|
||||
array (
|
||||
0 => 'enrichis meta batch',
|
||||
1 => 'ajoute meta description pages',
|
||||
2 => 'batch enrich meta description pages',
|
||||
3 => 'enrich meta descriptions batch',
|
||||
),
|
||||
'cmd' => '/var/www/html/api/enrich-meta-batch.sh',
|
||||
'status' => 'EXECUTED',
|
||||
'created_at' => '2026-04-24T01:42:00+00:00',
|
||||
'source' => 'opus-phase20-doctrine159',
|
||||
'doctrine' => '159',
|
||||
);
|
||||
BIN
proofs/drafts-live-20260424-014417/01-kaouther-wrapper.png
Normal file
BIN
proofs/drafts-live-20260424-014417/01-kaouther-wrapper.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 274 KiB |
BIN
proofs/drafts-live-20260424-014417/02-vistex-wrapper.png
Normal file
BIN
proofs/drafts-live-20260424-014417/02-vistex-wrapper.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 167 KiB |
15
proofs/drafts-live-20260424-014417/index.html
Normal file
15
proofs/drafts-live-20260424-014417/index.html
Normal file
@@ -0,0 +1,15 @@
|
||||
<!DOCTYPE html><html><head><meta charset="utf-8"><title>Drafts E2E Proof 20260424-014417</title>
|
||||
<style>body{font-family:system-ui;max-width:1100px;margin:2em auto;padding:1em;background:#0a0a0a;color:#e0e0e0}
|
||||
img{max-width:100%;border:1px solid #333;margin:1em 0;border-radius:4px}video{max-width:100%;border:1px solid #333;border-radius:4px}
|
||||
pre{background:#1a1a1a;padding:1em;overflow-x:auto;border-radius:4px;font-size:12px}
|
||||
h1{color:#4ade80}h2{color:#60a5fa;border-bottom:1px solid #333;padding-bottom:.3em}
|
||||
.pass{color:#4ade80}.fail{color:#f87171}</style></head><body>
|
||||
<h1>🎥 Drafts E2E Playwright Proof — 20260424-014417</h1>
|
||||
<p>Wrappers Kaouther V48 + Vistex V37 + WEVIA chat routing tests</p>
|
||||
<h2>📸 Screenshot Kaouther V48 Wrapper (171 759 HCPs live)</h2><img src="01-kaouther-wrapper.png">
|
||||
<h2>📸 Screenshot Vistex V37 Wrapper (5 POC / 240K MAD)</h2><img src="02-vistex-wrapper.png">
|
||||
<h2>📸 WTP Homepage</h2><img src="03-wtp-homepage.png">
|
||||
<h2>📊 Results JSON</h2><pre id="r">Loading…</pre>
|
||||
<h2>🎞️ Video recording</h2><video src="video.webm" controls autoplay muted></video>
|
||||
<script>fetch('results.json').then(r=>r.json()).then(j=>document.getElementById('r').textContent=JSON.stringify(j,null,2));</script>
|
||||
</body></html>
|
||||
57
proofs/drafts-live-20260424-014417/results.json
Normal file
57
proofs/drafts-live-20260424-014417/results.json
Normal file
@@ -0,0 +1,57 @@
|
||||
{
|
||||
"started": "2026-04-23T23:44:18.368Z",
|
||||
"tests": [
|
||||
{
|
||||
"name": "kaouther_wrapper_v48",
|
||||
"status": 200,
|
||||
"version": "V48_official_13avril_structure",
|
||||
"body_has_171_759": true,
|
||||
"body_has_110_826": true,
|
||||
"body_has_45_000_DH": true,
|
||||
"body_has_SPOT_3_tranches": true,
|
||||
"body_has_engagement_1_00": true,
|
||||
"body_has_benchmark_0_8": true,
|
||||
"to_correct": true,
|
||||
"live_total": 171759,
|
||||
"pass": true
|
||||
},
|
||||
{
|
||||
"name": "vistex_wrapper_v37",
|
||||
"status": 200,
|
||||
"version": "V37_live_addendum_pattern_kaouther_v48",
|
||||
"body_has_5_POC": true,
|
||||
"body_has_240K_MAD": true,
|
||||
"body_has_OCP": true,
|
||||
"body_has_Cosumar": true,
|
||||
"body_has_Carrefour": true,
|
||||
"body_has_90_day": true,
|
||||
"body_has_48h_SLA": true,
|
||||
"to_correct": true,
|
||||
"cc_correct": true,
|
||||
"pass": true
|
||||
},
|
||||
{
|
||||
"name": "wevia_chat_kaouther_routing",
|
||||
"status": 200,
|
||||
"intent": "kaouther_drafts",
|
||||
"trigger": "kaouther status",
|
||||
"pass": true
|
||||
},
|
||||
{
|
||||
"name": "wevia_chat_vistex_routing",
|
||||
"status": 200,
|
||||
"intent": "vistex_addendum_live",
|
||||
"trigger": "vistex addendum",
|
||||
"pass": true
|
||||
},
|
||||
{
|
||||
"name": "wtp_homepage",
|
||||
"error": "page.goto: net::ERR_CERT_AUTHORITY_INVALID at http://localhost/weval-technology-platform.html\nCall log:\n - navigating to \"http://localhost/weval-technology-platform.html\", waiting until \"domcontentloaded\"\n",
|
||||
"pass": false
|
||||
}
|
||||
],
|
||||
"ended": "2026-04-23T23:44:23.071Z",
|
||||
"pass_count": 4,
|
||||
"total": 5,
|
||||
"pass_rate": "4/5"
|
||||
}
|
||||
BIN
proofs/drafts-live-20260424-014417/video.webm
Normal file
BIN
proofs/drafts-live-20260424-014417/video.webm
Normal file
Binary file not shown.
BIN
proofs/drafts-live-20260424-014501/01-kaouther-wrapper.png
Normal file
BIN
proofs/drafts-live-20260424-014501/01-kaouther-wrapper.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 274 KiB |
BIN
proofs/drafts-live-20260424-014501/02-vistex-wrapper.png
Normal file
BIN
proofs/drafts-live-20260424-014501/02-vistex-wrapper.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 167 KiB |
15
proofs/drafts-live-20260424-014501/index.html
Normal file
15
proofs/drafts-live-20260424-014501/index.html
Normal file
@@ -0,0 +1,15 @@
|
||||
<!DOCTYPE html><html><head><meta charset="utf-8"><title>Drafts E2E Proof 20260424-014501</title>
|
||||
<style>body{font-family:system-ui;max-width:1100px;margin:2em auto;padding:1em;background:#0a0a0a;color:#e0e0e0}
|
||||
img{max-width:100%;border:1px solid #333;margin:1em 0;border-radius:4px}video{max-width:100%;border:1px solid #333;border-radius:4px}
|
||||
pre{background:#1a1a1a;padding:1em;overflow-x:auto;border-radius:4px;font-size:12px}
|
||||
h1{color:#4ade80}h2{color:#60a5fa;border-bottom:1px solid #333;padding-bottom:.3em}
|
||||
.pass{color:#4ade80}.fail{color:#f87171}</style></head><body>
|
||||
<h1>🎥 Drafts E2E Playwright Proof — 20260424-014501</h1>
|
||||
<p>Wrappers Kaouther V48 + Vistex V37 + WEVIA chat routing tests</p>
|
||||
<h2>📸 Screenshot Kaouther V48 Wrapper (171 759 HCPs live)</h2><img src="01-kaouther-wrapper.png">
|
||||
<h2>📸 Screenshot Vistex V37 Wrapper (5 POC / 240K MAD)</h2><img src="02-vistex-wrapper.png">
|
||||
<h2>📸 WTP Homepage</h2><img src="03-wtp-homepage.png">
|
||||
<h2>📊 Results JSON</h2><pre id="r">Loading…</pre>
|
||||
<h2>🎞️ Video recording</h2><video src="video.webm" controls autoplay muted></video>
|
||||
<script>fetch('results.json').then(r=>r.json()).then(j=>document.getElementById('r').textContent=JSON.stringify(j,null,2));</script>
|
||||
</body></html>
|
||||
57
proofs/drafts-live-20260424-014501/results.json
Normal file
57
proofs/drafts-live-20260424-014501/results.json
Normal file
@@ -0,0 +1,57 @@
|
||||
{
|
||||
"started": "2026-04-23T23:45:02.389Z",
|
||||
"tests": [
|
||||
{
|
||||
"name": "kaouther_wrapper_v48",
|
||||
"status": 200,
|
||||
"version": "V48_official_13avril_structure",
|
||||
"body_has_171_759": true,
|
||||
"body_has_110_826": true,
|
||||
"body_has_45_000_DH": true,
|
||||
"body_has_SPOT_3_tranches": true,
|
||||
"body_has_engagement_1_00": true,
|
||||
"body_has_benchmark_0_8": true,
|
||||
"to_correct": true,
|
||||
"live_total": 171759,
|
||||
"pass": true
|
||||
},
|
||||
{
|
||||
"name": "vistex_wrapper_v37",
|
||||
"status": 200,
|
||||
"version": "V37_live_addendum_pattern_kaouther_v48",
|
||||
"body_has_5_POC": true,
|
||||
"body_has_240K_MAD": true,
|
||||
"body_has_OCP": true,
|
||||
"body_has_Cosumar": true,
|
||||
"body_has_Carrefour": true,
|
||||
"body_has_90_day": true,
|
||||
"body_has_48h_SLA": true,
|
||||
"to_correct": true,
|
||||
"cc_correct": true,
|
||||
"pass": true
|
||||
},
|
||||
{
|
||||
"name": "wevia_chat_kaouther_routing",
|
||||
"status": 200,
|
||||
"intent": "kaouther_drafts",
|
||||
"trigger": "kaouther status",
|
||||
"pass": true
|
||||
},
|
||||
{
|
||||
"name": "wevia_chat_vistex_routing",
|
||||
"status": 200,
|
||||
"intent": "vistex_addendum_live",
|
||||
"trigger": "vistex addendum",
|
||||
"pass": true
|
||||
},
|
||||
{
|
||||
"name": "wtp_homepage",
|
||||
"error": "page.goto: net::ERR_CERT_AUTHORITY_INVALID at http://localhost/weval-technology-platform.html\nCall log:\n - navigating to \"http://localhost/weval-technology-platform.html\", waiting until \"domcontentloaded\"\n",
|
||||
"pass": false
|
||||
}
|
||||
],
|
||||
"ended": "2026-04-23T23:45:19.733Z",
|
||||
"pass_count": 4,
|
||||
"total": 5,
|
||||
"pass_rate": "4/5"
|
||||
}
|
||||
BIN
proofs/drafts-live-20260424-014501/video.webm
Normal file
BIN
proofs/drafts-live-20260424-014501/video.webm
Normal file
Binary file not shown.
BIN
proofs/drafts-live-20260424-014529/01-kaouther-wrapper.png
Normal file
BIN
proofs/drafts-live-20260424-014529/01-kaouther-wrapper.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 274 KiB |
BIN
proofs/drafts-live-20260424-014529/02-vistex-wrapper.png
Normal file
BIN
proofs/drafts-live-20260424-014529/02-vistex-wrapper.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 167 KiB |
15
proofs/drafts-live-20260424-014529/index.html
Normal file
15
proofs/drafts-live-20260424-014529/index.html
Normal file
@@ -0,0 +1,15 @@
|
||||
<!DOCTYPE html><html><head><meta charset="utf-8"><title>Drafts E2E Proof 20260424-014529</title>
|
||||
<style>body{font-family:system-ui;max-width:1100px;margin:2em auto;padding:1em;background:#0a0a0a;color:#e0e0e0}
|
||||
img{max-width:100%;border:1px solid #333;margin:1em 0;border-radius:4px}video{max-width:100%;border:1px solid #333;border-radius:4px}
|
||||
pre{background:#1a1a1a;padding:1em;overflow-x:auto;border-radius:4px;font-size:12px}
|
||||
h1{color:#4ade80}h2{color:#60a5fa;border-bottom:1px solid #333;padding-bottom:.3em}
|
||||
.pass{color:#4ade80}.fail{color:#f87171}</style></head><body>
|
||||
<h1>🎥 Drafts E2E Playwright Proof — 20260424-014529</h1>
|
||||
<p>Wrappers Kaouther V48 + Vistex V37 + WEVIA chat routing tests</p>
|
||||
<h2>📸 Screenshot Kaouther V48 Wrapper (171 759 HCPs live)</h2><img src="01-kaouther-wrapper.png">
|
||||
<h2>📸 Screenshot Vistex V37 Wrapper (5 POC / 240K MAD)</h2><img src="02-vistex-wrapper.png">
|
||||
<h2>📸 WTP Homepage</h2><img src="03-wtp-homepage.png">
|
||||
<h2>📊 Results JSON</h2><pre id="r">Loading…</pre>
|
||||
<h2>🎞️ Video recording</h2><video src="video.webm" controls autoplay muted></video>
|
||||
<script>fetch('results.json').then(r=>r.json()).then(j=>document.getElementById('r').textContent=JSON.stringify(j,null,2));</script>
|
||||
</body></html>
|
||||
57
proofs/drafts-live-20260424-014529/results.json
Normal file
57
proofs/drafts-live-20260424-014529/results.json
Normal file
@@ -0,0 +1,57 @@
|
||||
{
|
||||
"started": "2026-04-23T23:45:30.398Z",
|
||||
"tests": [
|
||||
{
|
||||
"name": "kaouther_wrapper_v48",
|
||||
"status": 200,
|
||||
"version": "V48_official_13avril_structure",
|
||||
"body_has_171_759": true,
|
||||
"body_has_110_826": false,
|
||||
"body_has_45_000_DH": true,
|
||||
"body_has_SPOT_3_tranches": true,
|
||||
"body_has_engagement_1_00": true,
|
||||
"body_has_benchmark_0_8": true,
|
||||
"to_correct": true,
|
||||
"live_total": 171759,
|
||||
"pass": true
|
||||
},
|
||||
{
|
||||
"name": "vistex_wrapper_v37",
|
||||
"status": 200,
|
||||
"version": "V37_live_addendum_pattern_kaouther_v48",
|
||||
"body_has_5_POC": true,
|
||||
"body_has_240K_MAD": true,
|
||||
"body_has_OCP": true,
|
||||
"body_has_Cosumar": true,
|
||||
"body_has_Carrefour": true,
|
||||
"body_has_90_day": true,
|
||||
"body_has_48h_SLA": true,
|
||||
"to_correct": true,
|
||||
"cc_correct": true,
|
||||
"pass": true
|
||||
},
|
||||
{
|
||||
"name": "wevia_chat_kaouther_routing",
|
||||
"status": 200,
|
||||
"intent": "kaouther_drafts",
|
||||
"trigger": "kaouther status",
|
||||
"pass": true
|
||||
},
|
||||
{
|
||||
"name": "wevia_chat_vistex_routing",
|
||||
"status": 200,
|
||||
"intent": "vistex_addendum_live",
|
||||
"trigger": "vistex addendum",
|
||||
"pass": true
|
||||
},
|
||||
{
|
||||
"name": "wtp_homepage",
|
||||
"error": "page.goto: net::ERR_CERT_AUTHORITY_INVALID at http://localhost/weval-technology-platform.html\nCall log:\n - navigating to \"http://localhost/weval-technology-platform.html\", waiting until \"domcontentloaded\"\n",
|
||||
"pass": false
|
||||
}
|
||||
],
|
||||
"ended": "2026-04-23T23:45:34.561Z",
|
||||
"pass_count": 4,
|
||||
"total": 5,
|
||||
"pass_rate": "4/5"
|
||||
}
|
||||
BIN
proofs/drafts-live-20260424-014529/video.webm
Normal file
BIN
proofs/drafts-live-20260424-014529/video.webm
Normal file
Binary file not shown.
Reference in New Issue
Block a user