From e31f1df2ac21b80f0d40c0bcff27f2292d58050f Mon Sep 17 00:00:00 2001 From: Hideaki Terai Date: Sun, 24 May 2026 09:29:13 +0900 Subject: [PATCH] =?UTF-8?q?=E3=83=90=E3=83=83=E3=82=AF=E3=83=95=E3=82=A3?= =?UTF-8?q?=E3=83=AB=E5=AE=8C=E4=BA=86=E6=99=82=E3=81=AB=E3=83=81=E3=83=A3?= =?UTF-8?q?=E3=83=B3=E3=83=8D=E3=83=AB=E5=88=A5=E3=83=A1=E3=83=83=E3=82=BB?= =?UTF-8?q?=E3=83=BC=E3=82=B8=E6=95=B0=E3=82=92=E3=82=B5=E3=83=9E=E3=83=AA?= =?UTF-8?q?=E3=83=BC=E8=A1=A8=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Sonnet 4.6 --- lib/core.js | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/lib/core.js b/lib/core.js index 1ff8bb4..9978f7e 100644 --- a/lib/core.js +++ b/lib/core.js @@ -568,6 +568,7 @@ core.start = async (commander) => { let processedChannels = 0; let earliestTs = null; let latestTs = null; + const fetchedPerChannel = {}; const CONCURRENCY = 5; const processMessage = (message, channelId) => { @@ -632,6 +633,7 @@ core.start = async (commander) => { }); totalFetched++; + fetchedPerChannel[channelId] = (fetchedPerChannel[channelId] || 0) + 1; const ts = parseFloat(message.ts); if (earliestTs === null || ts < earliestTs) earliestTs = ts; @@ -676,6 +678,11 @@ core.start = async (commander) => { clearInterval(progressInterval); if (totalFetched > 0) { process.stdout.write(`Backfill complete: ${totalFetched} message(s) fetched.\n`); + Object.entries(fetchedPerChannel) + .sort((a, b) => b[1] - a[1]) + .forEach(([chId, count]) => { + process.stdout.write(` ${resolveChannelLabelKey(chId)}: ${count} message(s)\n`); + }); } else { process.stdout.write("Backfill complete: no new messages.\n"); }