Excludes image, video, audio, and document file extensions from the
topic word extraction process to improve the quality of generated
analytics topics.
Removes the hardcoded mascot tooltip implementation from the Sidebar
component to clean up the component structure. The tooltip logic is
now handled elsewhere.
Changes the mascot tooltip from a fixed bottom-left position to an absolute
centered position above the sidebar. Updates the decorative pointer
elements to use a downward-pointing triangle clip-path instead of a
side-aligned shape.
Replaces the previous AI-category based topic analysis with a word-based
frequency analysis using a Common Table Expression (CTE).
- Implements `word_list` CTE to split message content into individual words.
- Adds regex filtering to exclude URLs, Discord stickers, and emojis.
- Implements a stop-word filter to remove common Indonesian and English
conjunctions, pronouns, and prepositions.
- Filters out words shorter than 3 characters.
- Updates the aggregation to group by word and limit results to the top 10.
Refactor the mascot chat service to use an LLM instead of hardcoded
rule-based responses. This includes building system prompts from
server insights and constructing conversation history for context-aware
interactions.
- Remove collapsible toggle for AI analysis section
- Always show ai_analysis content inline
- Clean up unused ChevronDown/ChevronUp imports and showAnalysis state
- Simplify layout with flex layout instead of button + conditional div
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- Move MascotChatbot outside motion.nav to avoid framer-motion stacking context break
- Use fixed positioning with z-[9999] for reliable interaction
- Wrap sidebar return with Fragment for multiple root elements
- Add border tail to chat bubble with two-layer clip-path (outer border, inner fill)
- Fix tail direction to point bottom-left toward mascot
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Update the favicon and sidebar logo to use remote URLs from the GitHub repository. Add a mascot image to the sidebar that is only visible when the sidebar is expanded.
Table was defined in Drizzle schema at schema.ts:425 but no migration
existed. Runtime queries from text-cache-store fail with:
relation "corrected_moderations" does not exist
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>