File size: 4,964 Bytes
568b349 eb27a8c 568b349 eb27a8c 568b349 eb27a8c 568b349 eb27a8c 568b349 eb27a8c 568b349 4de2d46 568b349 eb27a8c 568b349 eb27a8c 568b349 eb27a8c 568b349 eb27a8c 568b349 eb27a8c 568b349 eb27a8c 568b349 eb27a8c 568b349 eb27a8c 568b349 eb27a8c 568b349 eb27a8c 568b349 eb27a8c 568b349 eb27a8c 568b349 eb27a8c 568b349 eb27a8c 568b349 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 | <!doctype html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta
name="viewport"
content="width=device-width, initial-scale=1, viewport-fit=cover"
/>
<title>狼人杀调试控制台</title>
<link rel="stylesheet" href="./assets/styles.css" />
</head>
<body>
<div class="backdrop"></div>
<div class="orb orb-a"></div>
<div class="orb orb-b"></div>
<div class="orb orb-c"></div>
<div class="app">
<aside class="panel">
<div class="panel-header">
<div class="brand">
<span class="brand-mark">WW</span>
<div>
<div class="brand-title">调试控制台</div>
<div class="brand-sub">从日志实时读取对局</div>
</div>
</div>
<button id="refresh-btn" class="ghost-btn">刷新</button>
</div>
<div class="panel-body">
<div class="section-title">对局列表</div>
<div id="sessions" class="session-list"></div>
</div>
<div class="panel-footer">
<div class="status-pill" id="log-path">logs/</div>
</div>
</aside>
<main class="main">
<header class="main-header">
<div>
<div class="headline" id="session-title">请选择一个对局</div>
<div class="subhead" id="session-meta">尚未加载数据</div>
</div>
<div class="header-right">
<div class="header-actions">
<button id="copy-md-btn" class="ghost-btn">复制Markdown</button>
<button id="download-md-btn" class="ghost-btn">下载Markdown</button>
</div>
<div class="live-indicator">
<span class="dot"></span>
<span id="live-label">未开启</span>
</div>
</div>
</header>
<section class="cards">
<div class="card">
<div class="card-title">事件数</div>
<div class="card-value" id="stat-total">-</div>
<div class="card-foot">本对局已记录的总事件</div>
</div>
<div class="card">
<div class="card-title">输入/输出</div>
<div class="card-value" id="stat-io">-</div>
<div class="card-foot">perceive / interact</div>
</div>
<div class="card">
<div class="card-title">兜底次数</div>
<div class="card-value" id="stat-fallback">-</div>
<div class="card-foot">输出不合规触发的纠错/兜底</div>
</div>
<div class="card">
<div class="card-title">无效次数</div>
<div class="card-value" id="stat-roles">-</div>
<div class="card-foot">解析失败(例如不在候选列表)</div>
</div>
</section>
<section class="controls">
<div class="control">
<label for="search">搜索</label>
<input id="search" type="text" placeholder="按状态/角色/玩家名/结果/关键字过滤..." />
</div>
<div class="control">
<label>状态</label>
<div id="status-filters" class="chip-row"></div>
</div>
<div class="control">
<label>角色</label>
<div id="role-filters" class="chip-row"></div>
</div>
<div class="control">
<label>自动刷新</label>
<div class="toggle">
<input id="auto-refresh" type="checkbox" />
<span>5s</span>
</div>
</div>
</section>
<section class="dash">
<div class="dash-card">
<div class="section-title">对局关键</div>
<div id="game-key" class="dash-body"></div>
</div>
<div class="dash-card">
<div class="section-title">投票汇总</div>
<div id="vote-board" class="dash-body"></div>
</div>
<div class="dash-card">
<div class="section-title">技能过程</div>
<div id="skill-board" class="dash-body"></div>
</div>
<div class="dash-card">
<div class="section-title">记忆快照</div>
<div id="memory-board" class="dash-body"></div>
</div>
</section>
<section class="content">
<div class="timeline">
<div class="section-title">事件时间线</div>
<div id="events" class="event-list"></div>
</div>
<div class="detail">
<div class="section-title">事件详情</div>
<div id="detail-card" class="detail-card empty">
<div class="detail-empty">点击左侧事件查看详情(Prompt / 候选 / 纠错 / 记忆)。</div>
</div>
</div>
</section>
</main>
</div>
<script src="./assets/app.js"></script>
</body>
</html>
|