feat(route-optimizer): update table headers and enhance probability display for improved clarity in route optimization UI
Publish Fast Tabler Docker image / build-and-push-fast (push) Successful in 1m53s

This commit is contained in:
2026-03-05 10:42:47 +07:00
parent b792cede50
commit e1198b0c91
+10 -10
View File
@@ -206,10 +206,10 @@ export default function RouteOptimizerPage() {
<thead>
<tr>
<th>Маршрут</th>
<th>Вероятность</th>
<th>HomeJumphost</th>
<th>JumphostExit</th>
<th>Score</th>
<th>Score / Confidence</th>
<th>Вероятность</th>
</tr>
</thead>
<tbody>
@@ -228,16 +228,16 @@ export default function RouteOptimizerPage() {
<span className="text-muted"> </span>
<span className="fw-semibold">{r.exit?.label}</span>
</td>
<td>
<span className="badge bg-green-lt text-green">{r.probabilityOptimal}%</span>
</td>
<td className="small text-muted text-break">
ping: {r.homeToJumphost?.pingMs ?? '—'} ms, speed: {r.homeToJumphost?.speedMbps ?? '—'} Mbps
</td>
<td className="small text-muted text-break">
ping: {r.jumphostToExit?.pingMs ?? '—'} ms, speed: {r.jumphostToExit?.speedMbps ?? '—'} Mbps
</td>
<td className="small">{r.score}</td>
<td className="small">{r.score} / {r.confidence ?? '—'}</td>
<td>
<span className="badge bg-green-lt text-green">{r.probabilityOptimal}%</span>
</td>
</tr>
))}
</tbody>
@@ -283,8 +283,8 @@ export default function RouteOptimizerPage() {
<th>Community</th>
<th>Текущий (рекурсивный -&gt; туннель)</th>
<th>Рекомендуемый (рекурсивный -&gt; туннель)</th>
<th>Вероятность (тек/реком)</th>
<th>Действие</th>
<th>Вероятность (тек/реком)</th>
</tr>
</thead>
<tbody>
@@ -339,9 +339,6 @@ export default function RouteOptimizerPage() {
</div>
)}
</td>
<td className="small">
{fmtProb(r.current?.probabilityOptimal)} / {fmtProb(r.recommended?.probabilityOptimal)}
</td>
<td className="text-break">
{r.current == null && r.recommended == null ? (
<span className="badge bg-secondary-lt text-secondary">Недостаточно данных</span>
@@ -359,6 +356,9 @@ export default function RouteOptimizerPage() {
<span className="badge bg-green-lt text-green">Оставить текущий</span>
)}
</td>
<td className="small">
{fmtProb(r.current?.probabilityOptimal)} / {fmtProb(r.recommended?.probabilityOptimal)}
</td>
</tr>
))}
</tbody>