feat(gmw): public features #7-14 — scam domains, top channels, hourly heatmap, category drill-down, coverage stats, channel culture glossary, term KB, edit history

ALSO fixes: dashboard.repository still JOINed dropped user_reputations table (listUsers/getUserDetail crash).
This commit is contained in:
asepharyana
2026-08-18 20:45:12 +07:00
parent 2a8f6d9062
commit 00e8d68ce5
38 changed files with 1542 additions and 25 deletions
@@ -15,6 +15,26 @@ export class ModerationService {
return moderationRepository.getTrends(days);
}
async getTopFlaggedDomains(days = 30) {
return moderationRepository.getTopFlaggedDomains(days);
}
async getTopFlaggedChannels(days = 30) {
return moderationRepository.getTopFlaggedChannels(days);
}
async getHourlyModeration(days = 30) {
return moderationRepository.getHourlyModeration(days);
}
async getByCategory(days = 30, category: string) {
return moderationRepository.getByCategory(days, category);
}
async getCoverage(days = 30) {
return moderationRepository.getCoverage(days);
}
async listActions(query: ListModerationQuery) {
logger.debug({ query }, "Listing moderation actions");
return moderationRepository.listActions(query);