mirror of
https://github.com/xCyanGrizzly/DragonsStash.git
synced 2026-09-21 13:31:42 +00:00
feat(telegram): add "skip & disable topic" on the live worker panel
Track the forum topic currently being processed on IngestionRun (currentTopicId + currentAccountChannelMapId; additive migration) and expose it on the live status. processArchiveSets gains an optional shouldStop callback polled before each archive set; the forum branch passes a live isTopicFetchEnabled check, so disabling a topic mid-run lets the in-flight file finish, then skips the rest of that topic. A new disableActiveTopic server action sets the topic's fetchEnabled false (upsert), and the worker status panel shows a "Skip & disable this topic" button while a topic is being processed. Future runs skip the topic via the existing live per-topic read. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -550,6 +550,8 @@ export async function getIngestionStatus(): Promise<IngestionAccountStatus[]> {
|
||||
totalBytes: currentRun.totalBytes?.toString() ?? null,
|
||||
downloadPercent: currentRun.downloadPercent,
|
||||
lastActivityAt: currentRun.lastActivityAt?.toISOString() ?? null,
|
||||
currentTopicId: currentRun.currentTopicId?.toString() ?? null,
|
||||
currentAccountChannelMapId: currentRun.currentAccountChannelMapId,
|
||||
}
|
||||
: null,
|
||||
});
|
||||
|
||||
@@ -123,5 +123,7 @@ export interface IngestionAccountStatus {
|
||||
totalBytes: string | null; // BigInt serialized as string
|
||||
downloadPercent: number | null;
|
||||
lastActivityAt: string | null;
|
||||
currentTopicId: string | null; // BigInt serialized as string
|
||||
currentAccountChannelMapId: string | null;
|
||||
} | null;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user