Fix keyed telemetry match attribution (Refs #144)
CI / checks (push) Successful in 5m26s

This commit is contained in:
2026-10-12 00:58:05 -04:00
parent 4ea291d305
commit 785cc4616b
24 changed files with 1115 additions and 112 deletions
+17 -6
View File
@@ -200,7 +200,7 @@
>Completed</option
><option value="active">In progress</option><option value="interrupted"
>Interrupted</option
></Select
><option value="end-report-missing">End report missing</option></Select
></Field
>
{#if suffix}
@@ -343,7 +343,9 @@
? 'In progress'
: match.status === 'completed'
? 'Completed'
: 'Interrupted'}
: match.status === 'end-report-missing'
? 'End report missing'
: 'Interrupted'}
{@const duration =
match.status === 'active'
? reporting
@@ -383,6 +385,10 @@
missing="Not recorded"
/></small
>{/if}
{#if match.missingReports !== null && match.missingReports > 0}<small
class="mobile-match-context"
>{`${match.missingReports} ${match.missingReports === 1 ? 'report missing' : 'reports missing'}`}</small
>{/if}
{#if server === undefined}<div class="instance">
<span title={match.server}>{matchInstanceLabel(match)}</span
>{#if match.server_deleted_at}<span>
@@ -395,12 +401,15 @@
class="status"
class:active={reporting}
class:interrupted={match.status === 'interrupted' ||
match.status === 'end-report-missing' ||
notReporting}>{status}</span
>{#if notReporting}<small
>Last report <RelativeTime
value={match.lastReportedAt}
missing="Not recorded"
/></small
>{/if}{#if match.missingReports !== null && match.missingReports > 0}<small
>{`${match.missingReports} ${match.missingReports === 1 ? 'report missing' : 'reports missing'}`}</small
>{/if}</td
>
<td class="numeric">{match.uniquePlayers}</td>
@@ -462,10 +471,12 @@
Players counts unique players across all reports. A dash means the value is unavailable,
not zero. In-progress matches show elapsed time since their recorded start and link to
the live server while reports are current. Otherwise, they show Not reporting with the
last report time. Completed durations require a recorded start and completed ending.
Round shows the final round for completed matches and the highest observed round for
unfinished matches. Open a completed match for exact timestamps and starting and ending
player counts.
last report time. Completed durations require a recorded start and completed ending. End
report missing means a newer game was reported before this game's end report arrived.
Missing report counts show gaps in the reporter's sequence and can decrease as delayed
reports arrive. Only completed games contribute to the leaderboard. Round shows the
final round for completed matches and the highest observed round for unfinished matches.
Open a completed match for exact timestamps and starting and ending player counts.
</p>
</details>
</section>