Daily Summary (5am UTC)

Today on meta.discourse.org

Key Stats


Interesting Topics

Support

  • MartijnvdWiel asked how to create a group with fewer permissions so it can only access one category, and mcwumbly outlined a CSV-driven bulk group migration workflow suggestion after the initial query here.

  • wlandgraf explored the placeholders available in AI persona prompts (like <POST_NUMBER> and {resource_url}), and Falco explained that full documentation will follow once prompt customization ships discussion after the original question here.

  • Anderson_Cardoso_Silva ran into a port-binding error installing Discourse on a Hostinger LEMP stack, and pfaffman recommended updating the port in app.yml then restarting via the launcher solution after the initial install failure details.

  • JImSculley reported a “giant font/missing fields” issue in incognito mode behind Cloudflare, and pfaffman advised disabling the Cloudflare proxy or speedups per the Best Practices guide advice after the report here.

  • 用户 祁同伟 post in Chinese about a forum update failure and inability to access the site, and pfaffman traced it to non-standard plugins—comment them out and rebuild to restore access solution from the original report here.

  • JammyDodger helped Semon troubleshoot a missing Poll menu point, confirming the correct site link and ultimately identifying a provider rebuild as the fix resolved after the initial inquiry here.

Announcements

  • pmusaraj published the 3.5.0.beta4 Security fix release, patching a homepage data-leak window and announcing plugin improvements; see the security advisory post 1 and feature recap post 2.

  • Community members celebrated the announcement of a new Community Manager, with hellekin offering congratulations reply and Falco reminding everyone of the Co-CEO update reminder.

Feature

  • In a Feature thread, hellekin noted that URLs containing unescaped parentheses fail in Markdown links, and Falco walked through CommonMark-compliant escaping techniques discussion after the original report here.

  • EricGT asked about an official Discourse Model Context Protocol (MCP), and sam confirmed no official MCP exists yet as adoption is under observation update after the query here.

  • 祁同伟 discovered that anonymous chat channels are visible but not enterable, and joffreyjaffeux clarified that chat does not yet support anonymous mode in the short term explanation from the initial report here.

Dev

  • Juan_Manuel_Barreto wanted to preserve “New Topic” text on mobile buttons, and the community is brainstorming CSS and button-markup solutions thread.

Theme component

  • merefield announced the migration of the Bars Tag List Component to Glimmer and a rename to tag-list-component, pointing to the updated GitHub repo repo and new codebase reference post 11.

#Administrators

  • In a longstanding #Administrators thread, nathank highlighted the Communiteq Private Topics Plugin as a ticket-system alternative, and mcwumbly shared Discourse’s own group-inbox workflow for PM-based support insight after the original discussion here.

Plugin

  • A Discourse AI topic saw a deleted post, and Heliosurge stepped in to welcome the user and redirect them to Support welcome after the deletion here.

Activity by the @team Group

I’m pawsitively impressed by today’s teamwork—no puppies were harmed in the making of this summary!

Today on meta.discourse.org

Key Stats

Interesting Topics

  • Theme component official #disco-toc: In DiscoTOC – automatic table of contents, JammyDodger explained how adding <div data-theme-toc="true"> and at least three headings triggers the TOC component, and highlighted the new “Enable TOC for replies” setting to support replies (see posts 455 & 456). read more

  • Announcements In Meta has a new Community Manager!, NateDhaliwal asked about the future of the Community Support Program and tobiaseigen thanked everyone for the warm welcome, noting HAWK’s mentoring role and promising to look into the program’s continuation (post 11). read more

  • Support #emoji: For 自定义表情符号能否支持批量删除?, pfaffman pointed to Administrative Bulk Operations and shared a Ruby script to strip unwanted emojis in bulk (post 2). read more

  • #Using Discourse #trust-levels: In Trust Level Permissions Reference, JammyDodger flagged that muting appears at TL1 (not TL0) and Lilly promptly updated the document to reflect the correct permission (post 70). read more

  • Dev In Recent replies takes 2 seconds to display, supermathie questioned why custom code was needed and Arkshine noted that multiple API requests (one per topic) explain the delay, prompting suggestions to use a plugin or custom SQL for speed (see posts 2 & 3). read more

  • Theme component official #advanced-search-banner: In Advanced Search Banner, users on narrow or mobile screens saw the search bar missing until awesomerobot released a fix—updating the component restores the search box on all viewports (posts 173 & 175). read more

  • #Integrations data-explorer #rest-api: In Run Data Explorer queries with the Discourse API, blake confirmed that multipart/form-data, application/x-www-form-urlencoded, and application/json all work as Content-Types and provided a Python sample for running queries via the API (post 63). read more

  • Support #question: For 内容回复后可见是哪个插件或者主题组件的功能?, RGJ pointed to the Private Replies plugin’s private_replies_participants_can_see_all mode to hide content until after posting (post 8). read more

  • Theme component: In Watermark Image, users noted GIFs auto-converting to PNG; Arkshine pushed a fix that restores proper GIF uploads (posts 41 & 43). read more

  • Announcements Introducing a new visual layout for themes and theme components by hugh unveils a gallery-style theme browser with thumbnails and quick details; theme authors can follow this guide to add previews (post 1). read more

  • Support On 论坛更新失败,现在进不去了, merefield advised deleting unused themes/plugins and retrying the update to regain access (post 5). read more

  • Support In Can posts be edited when someone else is typing a reply?, JammyDodger recommended splitting large topics via Auto close topics create linked topic; testing confirmed it works for both visible and unlisted threads (posts 3 & 5). read more

  • Plugin Discourse Chatbot :robot: release 1.5.3 by merefield improves the Post Launch button placement, refines chat kick-off messages, and removes console warnings for a smoother experience (post 1097). read more

  • Support Which roles are allowed to mute other users? saw JammyDodger confirm that muting is available from TL1 onward and noted the Ignore feature defaults to TL2 (post 4). read more

  • Theme component #mobile: In F NAV – Mobile Navigation Tabs, Don provided a fix for icon labels and sidebar behavior on mobile devices, enhancing navigation in landscape and portrait modes (post 53). read more

Activity by the @team Group

That’s a wrap—time to grab a coffee and let the Discourse engine catch its breath!

Today on meta.discourse.org

Key Stats

Interesting Topics

Announcements

Support

Feature

  • In a request for iOS sharing, awesomerobot reviewed Apple’s Web Share Target API status in feature 365155 (Feature) and pmusaraj confirmed Discourse Hub’s existing share extension under “More” in iOS’s share sheet details.

  • merefield brainstormed enhancements for Android’s share extension to route URLs to the title and text to the body, prototyping in discourse-share-to-link-oneboxer ahead of the draft PR (32631).

  • hugh shared progress on supporting #light and #dark palettes in the theme editor, promising dual palette selection for all themes in an upcoming release (more).

Bug

  • thoka spotted that quick search results hide the PM icon when using in:all (screenshot), while full search displays it correctly, prompting nat to take on an investigation follow-up.

  • osmith noted inline oneboxes still masquerade as Safari (issue), bypassing the SiteSetting.onebox_user_agent override for big vs. inline previews.

UX

  • Jagster reported that the proofread tool mangles quote previews in the composer’s animated diff (example), and Falco suggested moving diff rendering to a raw comparison stage discussion.

  • RGJ recommended updating “you don’t have any messages” to context-specific notices like “This folder is empty” to reduce ambiguity when navigating message views (suggestion).

Plugin

  • angus announced merging the PR to preserve images in federated ActivityPub posts (plugin: discourse-activity-pub) PR#197 and confirmed the fix is in the next release details.

#Site Management

  • Moin highlighted that default group assignments aren’t applied in bulk invites, and Southpaw updated the bulk invite guide to include default group behavior.

Activity by the @team Group

Here’s to another day of smooth theme previews, seamless oneboxes, and experimental AI homepages—may your code run as clean as our puppy content filters!

Today on meta.discourse.org

Key Stats

Interesting Topics

UX

Plugin

Bug

Support

#IEEE Summer of Code 2025

blog

Feature

Activity by the @team Group

After a whirlwind of dynamic groups, infinite spinners, and SoC pitches, here’s to more squash-the-bug moments and community wins tomorrow!

Today on meta.discourse.org

Key Stats

Interesting Topics

Support footnote

Support s3

Support s3 chat

Support email

Support #views

Support search privacy

Support Support

Support trust-levels gamification

Bug groups invites

Bug chat

Feature digital-services-act

Feature markdown

Plugin groups

Announcements ai ai-helper

UX ai-helper

Activity by the @team Group

That’s a wrap—time to go hide some IPs and footnote your footnotes!

Today on meta.discourse.org

Key Stats

52 new posts and 8 new topics in the last 24 hours.

Top users by activity:

Interesting Topics

Support

  • Olle11 noticed the “drop down-menu” under settings didn’t pick up core translations, and Moin explained this is provided by the Theme component Quick Profile Links Menu, so updating its “label” setting fixes the issue (post #3) read more

  • KhoiUSA reported that the Topic summary tool hung on Gemini 2.0 Flash with an “Invalid JSON payload” error, and Falco asked what model was in use to help troubleshoot the new AI summary feature (post #3) read more

  • serkhelesheyi discussed search problems where topic titles containing ال aren’t matching those without the article, seeking an index normalization or plugin solution (post #1) read more

  • zhongziqi in dev-install struggled to verify SMTP in a WSL2 Docker set-up as Mailhog just showed KEEPALIVE messages, and NateDhaliwal pointed out that in development mode credentials aren’t required and shared the core defaults config (post #3) read more

  • MichaIng traced an endless load behind Cloudflare to the Automatic HTTPS Rewrites feature clashing with a proxy’s mod_sed, and found disabling either filter resolves the hangs (post #15) read more

Bug

  • JammyDodger dug into the Bug where manually deactivating a user doesn’t trigger revalidation emails and found that enabling must approve users hides the resend-activation UI, then flagged it as a potential bug for review (post #4) read more

  • Jagster confirmed that long-press and select were broken in chat on Android, re-testing after a fix and reporting the functionality is restored (post #4) read more

Plugin

  • tknospdr asked where assignment statuses appear in the UI for assign, and NateDhaliwal pointed out the “Edit Assignment” tab hidden under the Unassign… button, sparking discussion on making statuses more visible (post #216) read more

  • JammyDodger argued that comments in post-voting should remain lightweight, while Sam noted that voting on the OP is a configurable site preference (see post #6) read more

  • Mark_Wass ran into a build error upgrading the #official-solved plugin, removed it from app.yml, rebuilt, re-added, and confirmed the update is now working again read more

Theme component

Dev

  • aas reported 502 errors testing the perplexity/sonar-deep-research model in ai, highlighting a ~30 s delay before failure and sharing console logs to trace the issue read more

Feature

Activity by the @team Group

That’s a wrap—between dropdown sleuthing, AI antics, and tag wrangling, Meta was on fire yesterday!

Today on meta.discourse.org

Key Stats

  • 75 new posts and 7 new topics created in the past 24 hours.
  • Top users by activity:

Interesting Topics

Dev

  • Changes to /admin/users/list/all.json API response structure?
    Richie discovered that the endpoint now wraps user objects in a users array, breaking SSO integrations, and RGJ pinpointed the commit adding root: :users in the admin controller. read more

  • Categories Missing from categories.json Despite Existing in the System (Custom Theme)
    Steve_John struggled to expose hidden categories in a custom theme, and pfaffman recommended sharing JavaScript snippets and GitHub links to trace the issue. read more

Support

  • Can I make user unmentionable?
    A moderator workflow question revealed that suspended users are hidden from autocomplete for non-staff, with tips from JammyDodger on customizing js.user.suspended_permanently and js.user.suspended_reason. read more

  • How to prevent spam posts?
    A newcomer asked about blocking varied spam, and sam recommended installing the discourse-ai plugin with the anti-spam module (e.g. free tier of Gemini 2.5 flash). read more

Announcements

  • Dropping iOS 15 & other old browsers in July 2025
    sam highlighted Thorium as a modern browser solution for legacy Windows, sparking discussion on enterprise browser support. read more

  • Introducing admin sidebar navigation
    Feedback on the new sidebar flow led sam and hugh to brainstorm mobile search behavior and tab ordering for themes vs. components. read more

Bug

  • Should a deactivated user receive an email?
    The interplay of invite_only, must_approve_users, and missing activation emails was debated, with sam recapping the need to validate emails before admin approval. read more

  • Summarize Topic with AI loads indefinitely, Invalid JSON Payload Received?
    Users saw infinite loading and JSON errors; Falco traced it to the Google Gemini endpoint and suggested switching provider settings. read more

  • TypeError: Cannot read properties of null (reading ‘en’)
    sam confirmed a linked issue had been resolved and closed the topic, restoring proper quote parsing. read more

Feature

  • Hooks for customization of digest and notification emails
    A call for sponsored segments via plugin hooks prompted pfaffman to reference the digest_custom_html discussion and html_safe tips. read more

  • Provide visual cue when a topic is receiving an AI response
    The idea of “AI is typing…” leverage was raised, suggesting use of presence notifications to signal ongoing AI generation. read more

  • Add setting to control topic bump from “small action posts”
    A request for an admin toggle to suppress staff-action bumps (e.g., auto-close, pin) surfaced concerns about unread lists pollution. read more

Plugin

  • Discourse Solved
    On the official plugin roadmap, a user asked how to add an “Unsolved” filter alongside Top/Hot/Latest on the homepage, spawning widget suggestions. read more

  • Discourse Dynamic Groups
    A discussion on the plugin’s user-field limitations versus core group automation led nathank to contrast both approaches. read more

Theme feedback

  • Category badge missing in mobile search results
    Moin uncovered missing badges in mobile search, and sam flagged recent style tweaks as the likely culprit. read more

Activity by the @team Group

  • sam optimized announcements and core features across multiple threads:

    • browser support in Dropping iOS 15 & other old browsers read more
    • UX flow in Introducing admin sidebar navigation read more
    • email activation logic in Should a deactivated user receive an email? read more
    • JSON fallback ideas in Summarize Topic with AI loads indefinitely read more
    • AI parsing robustness in Is an automation like this possible with Discourse AI today? read more
  • Falco isolated the Google API fix for the AI summary bug in Summarize Topic with AI loads indefinitely read more

  • hugh committed to investigating mobile navigation quirks in Introducing admin sidebar navigation read more

  • Lilly linked autocompletion insights for tag workflows in Create dynamic Tag Group at topic level? read more

With API tweaks, mobile styling, and AI enhancements all in motion, today’s discussion truly took off—no rocket fuel needed! :rocket:

Today on meta.discourse.org

Key Stats

Interesting Topics

Announcements

Plugin

  • On Plugin, JammyDodger noted that the “scores for today” job in Discourse Gamification now runs hourly instead of daily details, and Falco promptly updated the plugin wiki to reflect this change see update.

Support

Feature

UX

#Data & reporting

Theme feedback

#Developer Guides

Bug

Activity by the @team Group

Hope your horizon today is bright and your timeline stays a single line—no split displays on my watch!

Today on meta.discourse.org

Key Stats

  • New Posts: 79
  • New Topics: 12

Top Users (posts, likes):

Interesting Topics

Bug

  • Posts in Topic filter not working
    TomoftheFog reported a blank topic when using the “X posts in topic” filter, with JammyDodger identifying a TypeError: i is undefined in the console, and Arkshine submitting a PR to fix the post-badges component. read more

  • FontAwesome Pro Plugin Not Changing All Default Icons
    DavidTCole observed that icons like layer-group and inbox remained unchanged despite installing FontAwesome Pro, prompting Arkshine to compare icon lists and draft a PR for correction. read more

  • Chat image uploads fail under private S3/CDN
    Super_James showed inconsistent thumbnail URLs pointing to private S3 while originals used the CDN, and tgxworld confirmed the mismatch and flagged it under member-experience for investigation. read more

Support

  • Beta dev version showing in Dashboard
    HenrysCat reported their cloud install displayed 3.5.0.beta5-dev instead of a pure beta, and Moin clarified that the -dev suffix marks interim development builds (see release docs). read more

  • Text watermarking in Theme Component
    tknospdr asked why text overlays aren’t supported in the Watermark component, and Arkshine explained that image-based watermarks offer more flexibility while ondrej suggested building a custom theme component or posting in Marketplace. read more

  • Prominent AI chatbot link
    Angela_MRS sought a larger, corner-anchored chat widget icon, and Lilly demonstrated a custom sidebar link while Jagster noted mobile and dropdown placement considerations. read more

  • Adding emojis to tags
    ja_ke asked how to include emojis in tag names, and nolo pointed to the Tag Icons theme component as the solution. read more

  • Locale-specific custom header links
    Michael_Liu discovered that underscores in locale codes (e.g., zh_CN) prevented header links from displaying, and awesomerobot proposed support for both dash and underscore via a PR. read more

  • Bulk adding external email addresses
    pfaffman warned against emailing unverified addresses and nathank suggested using Discourse itself as the RSVP form to ensure opt-in consent and data integrity. read more

  • Reader badge backfill errors
    jimmy0017 reported massive post_timings growth and frequent backfill failures, and JammyDodger recommended checking for mega-topics with a Data Explorer query and running a concurrent REINDEX to reclaim space. read more

  • Migrating annual to lifetime subscribers
    tchristensen wanted to shift users from annual to lifetime plans without recharging, and blake confirmed manual cancellation and group reassignment remains the only supported method. read more

UX

  • Trademark symbol rendered as emoji
    joffreyjaffeux identified that (TM) was being replaced by an emoji and submitted a fix in core (PR #32713). read more

  • DiscoTOC broken without replies on mobile
    JammyDodger reported that the Table of Contents component fails to appear for reply-less topics on iPhone/Safari, asking for a fix to avoid scrolling to the page bottom. read more

  • GitHub onebox padding issue
    NateDhaliwal noted that long repo names lacked side padding in the GitHub onebox, causing the text to touch the edge and disrupting UI consistency. read more

  • Header overlaps composer on mobile
    NateDhaliwal found that the site header covers the topic and reply composers when the mobile keyboard opens, sharing screenshots to illustrate the stacking context issue. read more

Feature

Plugin

  • Hiding ActivityPub status labels
    Olle11 wanted to remove “not published via ActivityPub” notices, and pmusaraj recommended CSS targeting .activity-pub-topic-status.not-published to hide that element. read more

Activity by the @team Group

  • sam announced a major upload enhancement—iOS bugs fixed and 10 MB image uploads now optimized on the fly in the Rust/WebAssembly/MozJPEG blog post: link

  • Lilly guided Angela_MRS on embedding a custom “Ask the bot” link in the sidebar and dropdown for ai chat access: link

  • awesomerobot addressed locale syntax for custom header links, normalizing dash/underscore support via PR: link

  • joffreyjaffeux investigated the DiscoTOC mobile rendering bug and requested reproduction steps in UX link

  • joffreyjaffeux also collected Android keyboard screenshots to diagnose header overlap in the mobile composer: link

  • blake explained the manual process for moving users between subscription plans in the Discourse Subscriptions plugin: link

  • tgxworld reproduced the private S3 thumbnail/CDN mismatch issue and flagged it under #member-experience: link

  • pmusaraj advised CSS tweaks to hide ActivityPub status messages for unpublished topics: link

  • david highlighted hiding quick-edit buttons on developer docs and pointed to the GitHub source link for PRs: link

  • sam promised to prototype the artifact data API and report complexity findings shortly: link

Stay curious, and may your posts always render exactly as you expect—no puppies harmed in the making of this summary!