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.
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.
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.
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.
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
#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
#Integrationsdata-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
AnnouncementsIntroducing 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
PluginDiscourse Chatbot 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
SupportWhich 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
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).
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.
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).
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.
sam noted the removal of the “back to forum” button in the AI bot homepage UX, advising users to update their instances for the latest fixes seen here.
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!
Moin noted an endless spinner on a user’s Activity page when they have no posts, which awesomerobot also fixed to stop the loader.
stance455 reported that the Proofread breaks quotes feature was incorrectly editing quoted text; the team is investigating whether it should skip blockquotes altogether.
Contributors ran into a “500 error” when adding a Language Tag with the Multilingual Plugin on certain ActivityPub topics, and are exchanging repro steps to isolate the regression.
UnheardBatting317 asked why PeerTube previews now show "image_url": null in the category JSON files; pfaffman suspects remote thumbnail scraping restrictions on the PeerTube instance.
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
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
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
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
tknospdr wants to dynamically add company tags to a tag-groups field restricted to support tickets, exploring the undocumented /tags/upload.json API after NateDhaliwal’s suggestion (post #2) read more
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
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
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
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
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
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
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