Add timing stats reset button

This commit is contained in:
Jordan Wages 2026-01-30 15:08:33 -06:00
commit 5996a87058
4 changed files with 25 additions and 5 deletions

View file

@ -750,6 +750,15 @@ async function clearCacheForMessages(idsInput) {
logger.aiLog("failed to clear cache for message", { level: 'error' }, e);
return { ok: false };
}
} else if (msg?.type === "sortana:resetTimingStats") {
const last = timingStats.last;
timingStats.count = 0;
timingStats.mean = 0;
timingStats.m2 = 0;
timingStats.total = 0;
timingStats.last = typeof last === 'number' ? last : -1;
await storage.local.set({ classifyStats: timingStats });
return { ok: true };
} else if (msg?.type === "sortana:getQueueCount") {
return { count: queuedCount + (processing ? 1 : 0) };
} else if (msg?.type === "sortana:getErrorLog") {

View file

@ -1,7 +1,7 @@
{
"manifest_version": 2,
"name": "Sortana",
"version": "2.4.1",
"version": "2.4.2",
"default_locale": "en-US",
"applications": {
"gecko": {

View file

@ -298,10 +298,16 @@
<tr><th>Messages per day</th><td id="per-day">0</td></tr>
</tbody>
</table>
<button class="button is-danger" id="clear-cache" type="button">
<span class="icon is-small"><img data-icon="trash" data-size="16" src="../resources/img/trash-light-16.png" alt=""></span>
<span>Clear Cache</span>
</button>
<div class="buttons">
<button class="button is-danger" id="clear-cache" type="button">
<span class="icon is-small"><img data-icon="trash" data-size="16" src="../resources/img/trash-light-16.png" alt=""></span>
<span>Clear Cache</span>
</button>
<button class="button is-warning" id="reset-timing" type="button">
<span class="icon is-small"><img data-icon="average" data-size="16" src="../resources/img/average-light-16.png" alt=""></span>
<span>Reset Timing Stats</span>
</button>
</div>
<div class="field mt-4">
<label class="label">Data categories</label>
<div class="control">

View file

@ -1017,6 +1017,11 @@ document.addEventListener('DOMContentLoaded', async () => {
cacheCountEl.textContent = '0';
});
document.getElementById('reset-timing').addEventListener('click', async () => {
await browser.runtime.sendMessage({ type: 'sortana:resetTimingStats' });
await refreshMaintenance();
});
function selectedCategories() {
return [...document.querySelectorAll('.transfer-category:checked')].map(el => el.value);
}