Clean duplicate dashboard status messages

Clean duplicate Status dashboard messages by marker, preserve the tracked message, and avoid full-channel purge on startup.
This commit is contained in:
Eyejoker
2026-05-03 23:56:07 +09:00
committed by GitHub
parent a4b7aef3bd
commit 2be267c51e
8 changed files with 367 additions and 23 deletions

View File

@@ -49,6 +49,12 @@ export interface SendMessageResult {
visible: boolean;
}
export interface DeleteRecentMessagesByContentOptions {
contentIncludes: string;
exceptMessageId?: string | null;
limit?: number;
}
export type PairedRoomRole = 'owner' | 'reviewer' | 'arbiter';
export type PairedTaskStatus =
@@ -273,6 +279,10 @@ export interface Channel {
// Optional: edit/delete messages (used by status dashboard and tracked progress cleanup).
editMessage?(jid: string, messageId: string, text: string): Promise<void>;
deleteMessage?(jid: string, messageId: string): Promise<void>;
deleteRecentMessagesByContent?(
jid: string,
options: DeleteRecentMessagesByContentOptions,
): Promise<number>;
sendAndTrack?(jid: string, text: string): Promise<string | null>;
// Optional: sync group/chat names from the platform.
syncGroups?(force: boolean): Promise<void>;