pacharanero highlighted a weakness in watched-words filters when post edits bypass checks, prompting discussions with pfaffman about ensuring post edits trigger the same spam protections as new posts read more.
merefield and pfaffman compared approaches to splitting Discourse into separate web and data containers, clarifying that the ./launcher script handles code updates while raw docker exec may be preferred for shell access read more.
RichardTE asked about the internal differences between a primary #category and its #subcategory, learning from nolo that permissions are hierarchical and from Moin that parent categories aggregate subcategory topics read more.
donaldsoncd sought clarity on the availability of the “Who’s Online” plugin in managed hosting; Moin explained where to find the official plugin list and how Enterprise customers unlock any plugin read more.
Adri ran into issues saving custom group permissions under a category; Moin reproduced the behavior and suggested using the category-experts plugin for highlighting official responses rather than security settings read more.
emonunix explored how to tag digest emails with X-TAGS headers for Netcore analytics; community consensus pointed to using the email custom headers site setting, though dynamic per-email tagging remains a gap read more.
a_lilian discovered that flagged chat messages deleted via retention settings remove the flag history entirely, emphasizing flag logs are vital for audits:
“I think it’s important to retain the history of the flag itself” read more.
NateDhaliwal confirmed that watching tags no longer visible on the public tag page still triggers notifications, pointing to a mismatch between visibility and watch settings read more.
Steradiant reported that category-moderators cannot convert posts to wiki status past the global edit window; Moin outlined current permission scopes and linked to a feature request for broader moderator tools read more.
ghassan addressed an Internal Server Error when previewing #digest emails, proposing middleware to standardize local-date parameters and sharing a branch with his fix read more.
pfaffman ran into undefined SiteSetting.poll_create_allowed_groups_map during a PHPBB import and traced it to a missing setting after recent refactoring, suggesting a fallback to poll_create_allowed_groupsread more.
AJCxZ0 proposed always prepending https:// to the Web Site field in user profiles when a scheme is missing, and Canapin pointed to an earlier developer mention of this idea read more.
eisammy requested an age-verification prompt for #nsfw categories to comply with EU regulations; RGJ recommended leveraging the Policy plugin with add-users-to-group="over18"read more.
cogdog tested the new API initializer for theme components, converting <script type="text/discourse-plugin"> tags into import { apiInitializer } calls and verifying icon substitutions read more.
pfaffman responded to the Watched Words loophole read more, advised on container splits read more, diagnosed Cloudflare proxy alerts read more, debugged digest preview errors read more, and patched the poll setting issue read more.
Moin clarified category vs. subcategory behaviors read more, guided plugin directory navigation read more, explained category security UX read more, and mapped moderator wiki permissions read more.
RGJ offered age-prompt workflows for #nsfw content read more and engaged on the ICS importer evolution read more.
a_lilian raised retention concerns for flagged chat messages, ensuring audit trails remain intact read more.
ondrej weighed in on chat flag expiry policies read more and helped dissect category-moderator wiki rights read more.
All spam bots are boxed, categories tamed, and plugins corralled—pup-approved mission accomplished!
Discourse Featured User NateDhaliwal introduced a new theme component that lets admins feature a user with customizable stats, icons, and banner placements—Lilly chimed in with a to celebrate this addition. read more
Inline PDF Previews nathank discussed the stalled progress on PDF preview support in the default theme component and considered whether a community PR or feature request in Feature might jump-start development. read more
Discourse Category Headers theme component jrgong reported missing logos and emojis on Discourse 3.5.0, and NateDhaliwal requested screenshots to diagnose compatibility issues in this long-running component. read more
想得到活跃的用户——通过api zhang_zhiyuan sought an API endpoint to retrieve the exact total of valid users; NateDhaliwal and Moin guided on /about.json and paginated user exports via /directory_items.json. read more
Issues with repetitive replies on expand button click TethysPlex demonstrated a bug where repeatedly tapping the “expand reply” button duplicates content, sparking a discussion on debounce strategies. read more
Html-only version for unsupported browsers not showing message content heaving_year4v found that iOS 15.8’s HTML-only mode fails to render post bodies, despite July’s announcement on dropping support. read more
AI translation backfill not working after all settings configured tyronejv and GrahamM reported only the first few posts getting translated despite proper AI_translation_backfill_hourly_rate and model tests, with RGJ suggesting Sidekiq scheduler checks. read more
Submit button missing for new topics in iOS native app dennisjbr confirmed a 100% repro of the missing “Submit” button on iOS native app for new topics, then struggled to reproduce post-reboot and planned further tests. read more
#Site feedback
Comprehensive release notes / changelog? torgeirl asked where detailed technical changelogs live; Moin pointed to Announcements posts tagged release-notes and beta release threads. read more
Doc clarification: notification behaviour for staged users when posts are moved Ethsim2 proposed updating the mail-receiver docs to explain that staged users don’t carry “Watching” status into destination topics after a moderator move. read more
Doc clarification: reply-key addresses in Cc (not just To) are processed Ethsim2 confirmed that reply-keys are recognized in both To and Cc fields by mail-receiver and suggested a note addition to the incoming mail setup guide. read more
#Extras
ICS → Discourse Importer Ethsim2 documented how ics_to_discourse.py determines event uniqueness via UID markers and time-only dedupe, refining update flows for recurring calendar imports. read more
Custom composer – Issue with tag-chooser and d-editor saish asked for examples handling multiple tag-chooser components in a custom composer setup; Steve_John echoed the need for guidance on separated d-editor instances. read more
Upgrade to latest release failed 8/21/25 MikeNolan tracked down an Nginx redirect rewrite in /etc/nginx/conf.d, asking how to prevent container reboots from forcing the default host. read more
Events Plugin Stephane_Roy inquired about compatibility of the Events Plugin with 3.5.0.beta4-dev, still valuing location-based features for community conventions. read more
Discourse Chat Integration pokapow wondered if notifications can flow from Telegram back into Discourse, exploring the limits of the official chat-integration plugin. read more
With yesterday’s flurry of theme hacks, API deep-dives, and documentation quests, the forum had more sparks than a caffeinated robot—here’s to keeping the conversation electrifying!
Ruby hash syntax displayed in deletion emails Richie uncovered that deleting users from the review queue produces an email with embedded Ruby hash output instead of human-readable flag reasons. The issue stems from a missing :needs_approval translation key read more (discussion post#4).
Watched word regular expression crash (2025) RGJ demonstrated how invalid regex patterns like *abc blow up the watched-words service, halting all topic and post creation until the pattern is corrected read more.
Poll plugin missing SiteSetting.poll_create_allowed_groups_map
In polls, selase explained that group_list settings auto-generate *_map helpers, so SiteSetting.poll_create_allowed_groups_map should work—but version mismatches can break it read more.
Group owners can remove ownership by removing membership Steradiant spotted an inconsistency in groups where owners can revoke fellow owners by deleting them as members, yet lack a direct “remove ownership” control read more.
Html-only version for unsupported browsers missing content heaving_year4v reported that message bodies vanish in static emails on iOS 15.6 and 12.3. awesomerobot reproduced the bug and plans a browser-detection update read more (fix pending at post#4).
Preventing spam bot influx GamersInternational sought a way to block bots posting US phone numbers without flagging valid error codes. awesomerobot pointed to watched-words regexes and even shared refined patterns for 1-800-123-4567 formats read more | read more.
Viewing flagged posts in Review queue asa couldn’t see flagged posts as an admin. Moin walked through flag-notification mechanics, noting edge cases when flagging system users (ID −1) read more.
Turning off deletion emails to spammers Richie asked how to suppress the “account deleted” email sent to rejected spammers. Deleting via the user’s profile avoids it, but no built-in toggle exists read more.
Chat channel settings hidden dsims didn’t see the to manage chat channels. The trick: open the channel, click its title, then access settings. awesomerobot confirmed the missing gear icon was intentional read more.
Discourse Connect redirect after login broken uckelman noticed that Single-Sign-On via Discourse Connect no longer returns users to their origin page on 3.6.0.beta1-dev. Diagnostics are underway read more.
Designate group owners as category moderators Steradiant proposed reducing group bloat by automatically granting category-moderators status to group owners, eliminating the need for parallel visibility and moderation groups read more.
Events Plugin unmaintained notice Ethsim2 asked Pavilion staff to prepend a warning in the OP of the “Discourse Events” plugin (topic 69776) clarifying it’s community-maintained and uses deprecated Ember APIs read more.
DiscoTOC automatic table of contents disco-toc users on 3.6.0.beta1-dev found no “Insert TOC” in the composer menu on Safari. Moin suggested theme preview diagnostics; the issue proved browser-specific read more.
Automatic line breaks for inline large images ばこん in UX recommended that Discourse auto-insert line breaks when large photos are placed inline for readability. Discussions around threshold sizes ensued read more.
Permissions error with ./launcher rebuild app uckelman ran into permission failures on Fedora 42 when rebuilding with Docker. Using --privileged solves it, but the underlying cause of restricted /containers access remains a question read more.
European Typography Rules (localization) — tvavrda proposed enhancing the Enable markdown typographer setting to support Czech-style curly quotes in multi-lingual forums; Moin later highlighted locale-default overrides and a Czech PR was opened read more
Is it possible to get rid of the “My Threads” link/button? (chat) — Jonathan5 asked how to remove the My Threads chat button; NateDhaliwal pointed to the merge hiding it for non-channel members in topic 288620, offered a CSS snippet, and referenced the disable-chat-threads-in-dms feature request read more
Is it possible to disable PMs but enable chat (including user-to-user chat)? — Jonathan5 inquired about disabling PMs while retaining chat; Moin explained using personal_message_enabled_groups to restrict PMs and noted core PM dependencies for flagging and exports read more
Horizon theme category images not displaying. Bug? (horizon-theme) — Nick-Permaculture reported missing category/subcategory images on the homepage and topic lists; community members confirmed similar reports and shared troubleshooting tips read more
Imgur images not embedding with 429 error — eisammy highlighted Imgur API rate limits breaking embeds (“429”); the thread also discussed Giphy and Reddit embed deprecation trends read more
#Hosting
Guidance for Setting Up Discourse: Hetzner VDS + Namecheap Private Email SMTP — Can planned a new install with Hetzner and Namecheap SMTP; asa linked to the official INSTALL-cloud.md, and Canapin shared tips on ARM vs. x86 performance and domain setup read more
#Developers
Common list of imports for Theme Components/plugins (JS) — NateDhaliwal compiled Ember and Discourse import snippets for Glimmer components, actions, @tracked, plugin APIs, and more read more
Cannot rebuild app because Docker daemon API version is 1.43 — Yt.w hit Nginx outlet errors; Steven suggested updating via get.docker.com, and Yt.w detailed Ubuntu repo updates and rebuild steps after resolving crash after upgraderead more
How to Optimize Community Content for AI Discovery (pr-welcome) — in response to EricGT’s feedback on the blog post, mae expressed gratitude and acknowledged plans for empirical follow-up to bolster the research read more
Disable chat threads in DM’s (chat) — Jonathan5 requested disabling threads by default; community steered to the disable-chat-threads-in-dms feature topic and UX suggestions around My Threadsread more
Is there an official Discourse Model Context Protocol (MCP) (ai) — jrgong identified JSON syntax issues in MCP proposals and raised privacy concerns; discussion covered schema details and missing braces read more
Allow to designate owners of a group as category moderators (groups) — nathank suggested mapping group owners to category mods; responders pointed to the dynamic groups plugin as a workaround read more
mae chimed in on How to Optimize Community Content for AI Discoverylink, thanking participants and agreeing to explore an empirical paper.
From curly quotes to chat chores and Docker breaks, our community sure knows how to keep things lively — see you tomorrow for more Discourse adventures!
mbauman asked how to handle compromised TL1 accounts changing email addresses post1; Moin confirmed the old address receives an automated notification post2; Lilly recommended enabling 2FA for staff and suggesting password managers post3; Architect proposed an email-based authentication link to prevent unauthorized changes post4; and Moin pointed out the require_change_email_confirmation setting for all users post5.
#Hosting
Can demonstrated a Hetzner VDS setup with Namecheap Private Email SMTP over SSL (using mail.privateemail.com, port 465, SPF/DKIM/DMARC) post8; NateDhaliwal cautioned Namecheap may not be ideal for transactional email post9; Can shared his full configuration and rebuild steps post11; and Canapin reminded users to check Terms of Service to avoid spam blocking post13.
In a request for Support on Hetzner S3 object storage setup, Thomas_Rother asked about non-AWS configurations post1; NateDhaliwal pointed to the S3-compatible provider guide post2; asa noted Hetzner’s lack of an uptime SLA post3; and schneeland echoed reliability concerns post4.
Fma965 reported “Bucket not found: default” errors after an AWS SDK gem bump post1; pfaffman suggested reverting to older AWS gems via a custom template post2; and linked the upstream workaround discussion read more.
#Extras
Ethsim2 celebrated that the ICS → Discourse Importer script (calendar-and-event, rest-api) is now rock-solid—featuring UID markers, dedupe logic, and quiet updates—and wryly observed the topic is scheduled for deletion
“The very fate it was built to prevent became its destiny” post13
#Translations
In #locale-specific defaults (translation, content-localization), gerhard explained that unicode_usernames is disabled by default for security and recommended configuring allowed_unicode_username_characters before enabling post3.
Following the update to FullCalendar 6 (calendar-and-event), j.jaffeux confirmed title truncation is intentional for space and announced a fix for multi-day event rendering in category calendars post30.
maxjohnson ran into HSTS and self-signed cert issues accessing sub.awesome.tld:1000 via Docker Firefox; community solutions include adjusting SSL settings and host entries post1.
In the same thread (server-resources), maxjohnson asked how to apply CPU and RAM constraints (e.g. --cpu-shares=1100, --memory=4g) to the Docker container on Ubuntu 24 and questioned environment variable persistence like DISCOURSE_SMTP_DOMAINpost1.
vincentp encountered a 422 Unprocessable Content error when moving posts via select+below on 3.6.0.beta1-dev, sharing browser logs and stack traces to pinpoint the AWS SDK gem issue post1.
#Developer Guides
Shauny hit a build failure on macOS (M4 MacBook Pro) installing cppjieba_rb during bundle install, seeing a make: *** [internal.o] Error 1 in internal.cc and seeking help with gem dependencies (dev-install, how-to) post399.
Lilly encouraged 2FA for staff and recommended password managers in the compromised accounts discussion read more.
gerhard detailed the security rationale for disabling unicode_usernames by default and walked through locale override implications read more.
j.jaffeux explained the trade-off between title truncation and multi-day event display after moving to FullCalendar 6 and confirmed an upcoming fix read more.
And remember: whether it’s dodging hacked accounts or wrestling with S3 quirks, you’re the real heroes—may your backups stay intact, your ICS imports live, and your buckets never go missing!
In Should we tell the AI spam scanner to flag posts containing phone numbers by default? (#382681), awesomerobot kicked off a spam-hunting thread by noting that many unsolicited posts include phone numbers post 1, pfaffman explored unicode obfuscation strategies post 2, and the conversation continued with detection tips post 3 & post 4. read more
Add ‘stop impersonating’ link to user avatar dropdown when impersonating (#13806) saw tobiaseigen test the feature and suggest clearer labels in post 47, Jagster praised the switch terminology post 48, and refinements were discussed in post 49. read more
Suggestion: Impersonating an account should not affect “last seen” date (#189347) attracted privacy concerns from jrgongpost 6, underscoring the need for stealth admin tools. read more
Allow group owners to invite users to a group they own in the initial invite (#66560) was advanced by tobiaseigen moving Simon’s use case into this discussion post 6 and debating UI controls. read more
In Notify admin when site settings are updated by system (#208961), Moin resurfaced automation scripts for Data Explorer alerts in post 11 and linked to broader logging queries. read more
The First Like badge cannot be removed feature (#382109) saw sam categorize it and discuss fully revocable SQL-based badges post 5. read more
#Translations
Fehler in der Deutschen Übersetzung? Hier melden! (#47320) featured Moin proposing clearer German for impersonationpost 108, tobiaseigen suggesting “Log in as user” post 110, and ongoing refinement in post 111 & post 112. read more
#Developer Guides
In Pinning plugin and theme versions for older Discourse installs (.discourse-compatibility) (#272665), david clarified version sorting with Ruby’s Gem::Versionpost 5 and NateDhaliwal confirmed understanding post 6. read more
Discourse-setup puts SMTP username at start of SMTP password (#381710) involved sam prompting tests for special characters post 2, pfaffman troubleshooting post 3, and community-driven Bash/Ruby patches in post 15 & post 17. read more
How can I lock a category so that nobody can post in it any longer? (#382628) was marked solved by Jagster explaining permission settings post 2 and Isla confirming the solution post 3. read more
How to mute badge notifications? (#382603) featured Rubi’s per-user and global settings guide post 2 and Moin’s addition of default site settings post 3. read more
Youtube image preview do not show (#382699) saw nat request environment details post 2 and merefield suggest cleanup and remote-image fixes post 3. read more
In Watched word regular expression crash (2025) (#382417), sam flagged it as pr-welcomepost 5 and RGJ proposed adding exception handling around regex evaluation post 6. read more
Error Moving posts – 422 (#382540) featured sam’s debugging questions post 2 and vincentp’s step-by-step reproduction logs posts 3–6. read more
Announcements Community feedback led to the reintroduction of the Create topic button on mobile in the Horizon theme update, improving accessibility for new discussions.
Supportgeorg explored custom styles for the calendar picker in the Foundation theme, with merefield and Moin confirming it is a native browser element in this thread; native date inputs cannot be styled via CSS.
SupportShauny wanted to block certain links and discovered in this solved topic that watched words can be used to prevent unwanted URLs.
Support How to block mass registration attacks? strk detailed flood attempts by spammy domains; jahan_gagan suggested IP limits, hCaptcha, and manual approval in this thread.
SupportThanatermesis ran into a redirect URI mismatch with LinkedIn OAuth; community members pointed to matching callback settings in this post.
Bugstrk flagged confusing instructions in Blocked email domains settings where pipe-delimited text differs from comma-separated UI tags; sam proposed hiding the pipe detail in this issue.
Lock down forum visibility merefield guided Isla through enabling login required and adjusting category security to hide content from anonymous visitors in Help with locking down forum
Trust Level 0 posting limits jahan_gagan broke down “first day” limits and per-topic caps, confirming no permanent post cap for TL0 users in Locking at Trust Level 0
Re-add full ICS export cvx and j.jaffeux debated bringing back .ics feeds for events, and sam suggested a capped export endpoint in Re-add full ics export
Categories text color is wrongly set to #FFF instead of #FFFFFF in import scripts Canapin and JammyDodger uncovered a migration bug where imported categories had their text color set to #FFF, which doesn’t pass the 6-character validation and leaves the Save button greyed out. read more
Thumbnail overlap tags list (Horizon Theme + Topic List Thumbnails) sam noted that the topic-list-thumbnails component isn’t supported by Horizon, causing tag lists to overlap thumbnails on the topic list. read more
Transient 503s after ./launcher rebuild appN when fronted by HAProxy Ethsim2 shared a workaround to disable/enable HAProxy backends around rebuilds to avoid brief 503 downtime. read more
Is there a way I can send email notifications faster? Richie measured a backlog of 22 000 scheduled emails after 15 minutes, and jahan_gagan pointed to adjusting DISCOURSE_MAX_DIGESTS_ENQUEUED_PER_30_MINS_PER_SITE for throughput. read more
Notifications and Search - jump to unread Shauny requested a keyboard shortcut to land at the first unread post when clicking a notification or search result, and sam explained the round-trip challenges. read more
Using personas of AI bot without robot-icon?
In a revived thread, sam shared that enabling AI bot enable dedicated UX offers an easy route to custom AI personas without the default robot icon. read more
Cost points to access certain rewards anoedo wants users to spend points for content access; jahan_gagan confirmed that awarding negative point events via the Gamification plugin covers “redeem points” workflows. read more
S3 backups stopped working, presumably since an update Fma965 discovered backups always hit the “default” bucket despite settings, and pfaffman demonstrated grep diagnostics for YAML vs. UI configuration. read more
#Site Management
Content Localization - Manual and Automatic with Discourse AI asa saw translation counts stuck at 52 until nat explained the ai_translation_backfill_* settings and advised turning on SiteSetting.ai_translation_verbose_logs to trace locale detection. read more
Creating an auto responder automation tknospdr asked about wildcard triggers; SaraDev outlined how regex catch-alls like .* can serve as fallbacks and how multiple matches are posted in key/pair order. read more
Bearbeitung von Übersetzen Beiträgen verbessern asa proposed a clearer edit interface for translations, and Falco demoed a faster route to the translation editor via the globe icon in the post menu. read more
Flagging mass postings from SPAM attacks is onerous sam suggested adding a “spam…” moderator action to make bulk spam deletion trivial—though he noted AI spam filters largely preempt the need. read more
Introducing Horizon, our newest theme newkid shared that their community switched to Horizon and is already seeing positive feedback on its fresh look and UX. read more
#Site Feedback
Enable the solution plugin for the Bug category sam, chapoi, and tobiaseigen debated automation that would add a fixed tag on close (or close on fixed), reducing manual work and scheduling 30-day auto-closure. read more
Discourse Gamification wangya123 asked about leaderboards for specific categories. tobiaseigen explained that group-based leaderboards can be scoped by category in the plugin’s settings. read more
NateDhaliwal released Quick-add Tags To Topic, a theme component that adds a footer button to apply tags like fixed and optionally auto-close topics, complete with install instructions and configurable settings. view postreporead more
sok777 highlighted persistent #iOS26 rendering bugs with fixed-position elements in Discourse, clarifying that it’s a WebKit issue due by Apple and awaiting an upstream fix. postread more
Richie requested the [Add] button label be capitalised for consistency in the secondary email flow; NateDhaliwal contributed a PR (#34876) to address “Add” vs “add”. postread more
featheredtoast tackled the quirks of Let’s Encrypt certificate renewal, explaining how the HTTP→HTTPS redirect caused ACME to retry via HTTP and sharing that recent template updates should prevent future failures post #5read more
Aurora wanted to control the order of sidebar sections, and Lilly supplied a custom CSS solution to reorder categories, tags, and custom blocks via a local theme component post #2view topic
rivohor experimented with swapping the avatar and title positions in the topic list, and chapoi demonstrated a CSS-based workaround despite the underlying table structure post #2read more
TomoftheFog reported users unable to access their forum over mobile data, and dax suggested checking mobile ISP blacklists, IPv6 handling, and CDN/firewall settings post #2view topic
NickRoscoe voiced frustration that Discourse enables digest emails by default for all users, reminding admins that drive-by posters may never want weekly summaries post #17read more
A migration restore failed with “function mirror_topic_timers_topic_id already exists,” and pfaffman confirmed it was merged shortly afterward post #9view topic
jerry_zen pinpointed CSS “options” parameters as the culprit behind a larger blocking plus icon in the composer, sharing Edge-specific details from Win10 22H2 post #6see topic
Benjol resolved a “Cannot edit post title” JavaScript error by updating Discourse and the Events Plugin to their latest versions post #3view topic
AzeemHadzrie noted that Opera appears missing from the Browse Happy list of supported browsers, sparking a check on whether it was intentionally removed post #3view topic
NateDhaliwal spotted that the bulk-select button shows up on mobile even for non-mods, prompting a UX review of role-based UI elements post #1read more
The user card badge layout was reported to stack badges instead of grid them, with NateDhaliwal confirming the fix in a follow-up post #5view topic
#Sysadmins
dodger continues their quest to deploy Discourse without Docker—debating container pros/cons and weighing official vs. custom install paths post #14see topic
#Using Discourse
jerry_zen’s latest update on creating and managing calendars was posted and then removed by the author, leaving admins curious about event tooling best practices post #18view topic
Ruby on Rails in danger? eisammy sounded the alarm over a unilateral renaming and maintainer removal in RubyGems, invoking
“A person’s character is determined not only by their actions, but also the actions they stay silent while witnessing.” sam urged everyone to join the Q&A after linking the official Ruby Central update 4.
Quote on reply rivohor sought a way to auto-quote in replies; chapoi walked through enabling the quick-quote component and adjusting the quick quote post location threshold5.
Avatar position reversal
Forum layout tweaks were at stake when rivohor asked to move avatars in front of titles. chapoi confirmed the CSS solution to swap the elements 4.
Mobile data access issues TomoftheFog investigated connectivity failures over cellular networks; Canapin noted a browser cache clear often restores access 5.
Date and location shortcode quirk
The [date=… timezone=…] helper yielded Fortaleza on mobile but Cayenne on desktop for patrickemin, traced back to profile and site settings 3.
Sidebar menu ordering Aurora and chapoi dissected the #sidebar-wrapper and #sidebar-hamburger-dropdown classes to reorder #custom-sections on mobile, including a flexbox fix 7.
YouTube onebox missing in translations asa reported that embedded videos vanish in translated posts. Falco confirmed that Discourse only oneboxes original-language URLs (translation) and a fix is in the works 2.
Header overlap in Horizon theme
Sticky headers in the horizon-theme hid titles under certain scroll positions, as serkhelesheyi illustrated in a video. chapoi can reproduce and will push a patch 4.
Reply button on closed posts ct-337 spotted a phantom Reply button on locked topics; it appears clickable but does nothing 1.
llm_tagger JSON parse error
Automatic topic tagging via LLM threw unexpected character in the JSON response, passing through activesupport backtrace 1.
#Site feedback
So long, and thanks for all the fish!
After a year away, JammyDodger returned with gratitude and a sense of community warmth 33.
iOS 26 fixed-position bugs
Mobile Chrome/Edge layout issues from iOS 26 have hit Discourse’s sticky elements; Jagster asked if we’re waiting on Apple’s patch 17.
#Sysadmins
Deploy without Docker lion’s custom LXD/LXC install behind HAProxy overcame ImageMagick v6 pitfalls and added resource limits; he plans to publish the script 21.
#Site Management
Content localization throttling carlh-foa proposed relaxing the two-edits-per-day re-translation limit in Discourse AI for high-traffic events to ensure the latest FAQ updates get translated 32.
# Today on meta.discourse.org...
Here’s your recap of the last 24 hours of community activity.
## Key Stats
- **New Posts:** 109
- **New Topics:** 10
- **Top Users:**
- @RGJ: 6 posts, *26 likes*
- @Moin: 9 posts, *12 likes*
- @martin: 3 posts, *13 likes*
- @nat: 3 posts, *10 likes*
- @pfaffman: 3 posts, *8 likes*
- @chapoi: 4 posts, *6 likes*
- @pmusaraj: 3 posts, *5 likes*
- @Johnny_McIvor: 1 post, *5 likes*
- @NateDhaliwal: 3 posts, *5 likes*
- @sam: 5 posts, *4 likes*
## Interesting Topics
#### #feature
- **IP Lookup Logging**
@RGJ proposed recording staff IP lookups with a “Show” button behind an audit trail to prevent abuse in #feature. [read more](https://meta.discourse.org/t/-/383457/1)
- **Translate Now Button**
@nat petitioned for a “Translate Now” control in the #content-localization #ai workflow to bypass twice-daily throttling on AI retranslations. [read more](https://meta.discourse.org/t/-/383544/1)
- **Chat Landing Page**
@Johnny_McIvor pitched a dedicated landing page for #chat room links to drive forum signups; @tobiaseigen requested a mockup. [read more](https://meta.discourse.org/t/-/383470/1)
- **Use Localized Content in Emails**
@nat tracked a request to send users #activity-summary emails in their own languages by leveraging existing translations. [read more](https://meta.discourse.org/t/-/383546/1)
#### #support
- **Persistent SMTP Timeout Issue**
Community members investigating Spacemail timeouts on VPS/Docker were guided by @NateDhaliwal and @Lilly on port configuration and transactional email alternatives. [read more](https://meta.discourse.org/t/-/383452/1)
- **Approve Account Without Email**
@rivohor asked how to activate a user when they can’t access their inbox; solutions ranged from the Admin → Users → Activate button to localization quirks. [read more](https://meta.discourse.org/t/-/383486/1)
#### #community
- **Pad, pad, pad**
@Alexander_Wright sought ways to curb “Pad, pad, pad” fluff posts; @Ed_S, Jagster and @pfaffman discussed educational and technical approaches. [read more](https://meta.discourse.org/t/-/383556/1)
#### #ux
- **Show More Filters**
@sam and @martin debated surfacing the full list of 30+ #topic-filter options in the pulldown versus an in-app modal. [read more](https://meta.discourse.org/t/-/383338/1)
- **Smart Topic Timers**
@tobiaseigen flagged that auto-close timers after last post lack date suggestions (unlike scheduled close), suggesting parity in the UI. [read more](https://meta.discourse.org/t/-/383600/1)
- **Edit Assignment Label**
@tknospdr noted that the “Unassign…” button is unclear for editing assignments and asked to rename it to something like “Edit Assign” in #assign. [read more](https://meta.discourse.org/t/-/383587/1)
#### #bug
- **Replying to Closed vs. Archived**
@RGJ clarified confusion between archived and closed topics and iconography consistency in #bug. [read more](https://meta.discourse.org/t/-/383459/1)
- **iOS 26 Fixed-Position Glitch**
After multiple RCs, @pmusaraj confirmed iOS 26.1 beta finally resolves #ios-26 stacking issues with fixed elements. [read more](https://meta.discourse.org/t/-/382831/1)
- **Mobile Bulk-Select Button**
@bryce verified and moved the errant bulk-select toggle for non-mods from #ux into #bug for a forthcoming fix. [read more](https://meta.discourse.org/t/-/383361/1)
- **Title Edits Bump Topics**
@Moin discovered title changes still surface topics even though last-post edits don’t; @pmusaraj and @martin are investigating. [read more](https://meta.discourse.org/t/-/383576/1)
- **LLM Tagger JSON Parse Error**
@sam and @kuaza pinpointed malformed AI responses in the #automation plugin causing JSON failures, prompting parser robustness improvements. [read more](https://meta.discourse.org/t/-/383444/1)
## Activity by the @team Group
- @martin addressed #ux improvements like [Show More Filters](https://meta.discourse.org/t/-/383338/4) and the [Title Edits Bump bug](https://meta.discourse.org/t/-/383576/2), and merged fixes for [default Markdown mode](https://meta.discourse.org/t/-/379243/25) and the [backup tooltip link](https://meta.discourse.org/t/-/345620/6).
- @nat authored and tracked feature requests including the [Translate Now button](https://meta.discourse.org/t/-/383544/1) and using [localized posts in email summaries](https://meta.discourse.org/t/-/383546/2).
- @chapoi clarified UI cues in [Replying to Closed vs. Archived](https://meta.discourse.org/t/-/383459/3) and merged a patch for the [Horizon theme header overlap](https://meta.discourse.org/t/-/383435/6).
- @pmusaraj tested and confirmed a fix for the [iOS 26 fixed-position bug](https://meta.discourse.org/t/-/382831/20) and rolled out a new beta for the [Discourse iOS App layout](https://meta.discourse.org/t/-/264593/35).
- @Lilly provided must-try tips on the [Spacemail SMTP timeout saga](https://meta.discourse.org/t/-/383452/12).
- @tobiaseigen offered multi-topic support across [Chat landing page](https://meta.discourse.org/t/-/383470/2), [wiki edit tracking](https://meta.discourse.org/t/-/383582/2), [private topic reporting](https://meta.discourse.org/t/-/382422/9), [image grids & PDF previews](https://meta.discourse.org/t/-/381806/7), and [sidebar category order](https://meta.discourse.org/t/-/382003/3).
- @sam triaged developer issues in the [Show More Filters debate](https://meta.discourse.org/t/-/383338/2) and dissected the [LLM Tagger JSON parse bug](https://meta.discourse.org/t/-/383444/2).
- @bryce confirmed repro steps and is working on a fix for the [Mobile Bulk-Select Button issue](https://meta.discourse.org/t/-/383361/3).
- @cocococosti shared migration scripts tips for [Vanilla Forums imports](https://meta.discourse.org/t/-/290180/4).
- @Falco recommended database scaling in [Optimizing a large Discourse multisite](https://meta.discourse.org/t/-/381363/5).
Never dogs again, but if anyone breaks the rules, the puppies might just wag their little tails in protest tonight!
A user asked if there’s a way to schedule both new topics and replies, and Lilly pointed to the topic timer guide and the Automation plugin for reply scheduling.
bryce fixed the mobile-only bulk select button that appeared for non-moderators; testing on meta now confirms it’s no longer visible (Bulk select button appears on mobile…).
A user discovered that required tags on a category were ignored for staff, allowing topics to be created without them in Topic can be created without tags….
GeorginaGian saw a drop in Google News traffic; the conversation reviewed sitemap, structured data, and name mismatches in her SEO support request.
Deenius tracked a Docker Manager update causing Nginx Proxy Manager failures, then solved it via Authentik config fixes and solicited theories in this scenario.
MachineScholar’s sidebar stalled after the recent doc-categories update; pmusaraj and nat investigated the rake task, cache timings, and database state in this discussion.
panic questioned block vs inline parsing of [code] and [spoiler] BBCodes; the team is reviewing whether it’s intended behavior in the parsing topic.
lilydjwg spotted extra space in click-count badges when using text-indent and shared a CSS tweak in the RSS Polling bug thread.
lindsey kicked off Current Projects – September 2025, unveiling a unified New/Unread topics view and previewing a new versioning strategy for Discourse. read more
After reporting the keyboard shortcut issue, keegan confirmed a fix for “‘open in new tab’ browser keybind fails on search results” in PR #34989—see the bug thread. read more
A decade-old upgrade snag was unraveled by axfelix—cherry-picked commits left Docker detached, fixed with git reset --hard && ./launcher rebuild app in Trouble updating 10 year old site. read more
AI Forum Moderation: Seeking Insights and Experiences
jenmck responded to SethWilliams’s ideas on bot answers versus human replies, emphasizing community learning, transparency, and the risk of false positives—see Seth’s suggestion and jenmck’s feedback.
Topic ID as a variable?
NateDhaliwal shared a quick theme component to jump to a topic by its ID, including JS and FormKit code—review the discussion and the implementation.
How automated reports could help keeping Meta tidy
JammyDodger highlights using Data Explorer for ad hoc checks on Community wiki topics and suggests flagging non-wiki discussions:
Last-chance warning when replying to old topics
JammyDodger proposes a confirmation pop-up instead of a full warning, notes the official theme component is broken, and Moin points to the unformatted-code detector example—see JammyDodger’s ideas and Moin’s reference.
New way to track edits on wiki posts?
mcwumbly asks who needs notifications when wiki posts change; Jagster responds that interested users want to read updates—details at mcwumbly’s query and Jagster’s comment.
502 error on Re-Order Categories
Ethsim2 reports a timeout when sorting ~405 categories; pfaffman suspects a slow server and suggests using Rails for bulk reordering—see issue report and pfaffman’s advice.
From email address changed in notifications and digests
adamengst upgraded Discourse and found the From: header now shows the site address; the setting behind this remains unclear—read more.
What Are Some Good Welcome Banner Designs?
anoedo looks for a full-width banner display without obstruction; ondrej and others point to the versatile-banner theme and discuss design alternatives—see ondrej’s question and anoedo’s feedback.
Custom fields are not inserted with new ProseMirror editor
manut added a QUnit test showing custom event form fields vanish in both MD and WYSIWYG modes—see the reproduction scenario.
DiscourseConnect provider redirect after login not working
uckelman moved this to Bug after observing a login-redirect regression in 3.5.0.beta5-dev, linking to a suspect commit; initial report at post #2.
iOS PWA input bug (fixed in iOS 18.7)
Ethsim2 confirms certain input fields in PWAs broke on iOS 18.6.2 but work again after upgrading to iOS 18.7—details at post #1 and post #2.
Full name @mentions
mcwumbly asks saquetim whether the theme component for showing full names in mentions should become core or official—see post #64.
Link to first unread post?
Shauny wants a “go to first unread” button and keyboard shortcut usable on desktop and mobile; mcwumbly requests real-world anecdotes—see Shauny’s post and mcwumbly’s follow-up.
Announcements “tests-passed” branch is now “latest”: david explained that the tests-passed branch has been renamed to latest (and the version suffix changed from -dev to -latest) without breaking existing workflows; update your app.yml if you’ve hard-coded tests-passed. read more
Dev Improving automatic switching of mobile/desktop modes: david detailed a move away from user-agent detection to viewport-width logic (mobileView/desktopView now alias browser width < 40 rem), improving tablet UX. read more
Bugmobileai AI Gists button shown for PMs, but with no summary text: NateDhaliwal reported that the AI Gists button appears in PM lists but does nothing on mobile; Falco confirmed desktop works fine and flagged awesomerobot. read more
Installation About deploying Discourse on Windows Server: MoRanYue asked for a tutorial to run Discourse without Docker on Windows Server/WSL; Falco recommended a Linux VM as this is unsupported for production. read more
Bugpost-notices Official notices on older posts: Discussion on whether custom notices should expire automatically; chapoi argued new/returning-user notices lose value over time, while custom ones should persist until manually removed. read more
Supportaidynaloc Discourse AI translations bug?: 昊毅_周 found system-created category descriptions always detected as English; nat walked through language detection logic and Crowdin improvements. read more
Marketplace [PAID] Refresh forum with new template/theme and UX help: JoseDB seeks assistance to overhaul a 4k-member forum’s UX, wiki/docs presentation, and homepage highlights ahead of Oct 6. read more
Bugpolls Poll percentage inaccuracy!: gassim noted poll percentages of 1 vote each showing 34%, 33%, 33% instead of equal splits; NateDhaliwal pointed out rounding of 100/3. read more
Bug Localization Formatting Error in the %{date} function: inquisitorOzzak reported Croatian date format showing year twice (e.g. “252025”); Moin traced it to a missing Y in js.dates.long_with_year and suggested site text tweaks/Crowdin fixes. read more
Featuresearchlocalizationrtl Arabic Search Normalization: Missing Support for Hamza Variants, Ya/Kaf Forms, and Orthographic Equivalence: serkhelesheyi outlined how Unicode variants like أ vs ا, ي vs ی, ك vs ک are treated distinctly, leading to incomplete search results even with search_ignore_accents enabled. read more
Bug Upgrade failed with @swc/core postinstall segfault, but version shows: xkhalid saw a segfault during upgrade yet Discourse reported the new version; Falco noted the library was downgraded and asked to retry. read more
Bugassign Can’t remove assignment reason: supermathie couldn’t clear the assignment reason field when reassigning—a UI bug preventing deletion of the reason message. read more
Dev Can I develop a mobile app then use the discourse:// scheme?: Sunchecer_Manfill asked if third-party apps can claim discourse://; pmusaraj explained it’s possible but may clash with Discourse Hub, and suggested custom schemes or admin-added redirects. read more
Supportrest-api Private message with attachment/upload via API: aidanheerdegen inquired about sending DMs with files via API; Canapin detailed a two-step process—upload then post with URL. read more
Featurecategory-moderators Allow category moderators to edit their own category: Steradiant proposed letting category mods tweak most settings (templates, posting rules) without changing the category name or moderators list. read more
Falco triaged the AI Gists mobile bug (#384243/2), advised on Windows Server deployment (#384295/2), and downgraded @swc/core to resolve the upgrade segfault (#384301/2).
supermathie filed the assignment-reason removal bug (#384298/1) and reported the WYSIWYG quote-backspace issue (#384299/1).
chapoi clarified post-notice behavior on older posts (#384209/3) and offered theme customization tips on emoji icons and sidebars (#384205/3).
tobiaseigen moved the calendar title issue into UX (#383441/3) and suggested layout tweaks for month view titles (#383441/5).
renato expanded on cross-instance quoting domain handling (#106951/11).
martin corrected emoji deny-list details for experimental reactions (#227785/43).
nat walked through AI language detection and I18n key fixes for translations (#384214/4).
pmusaraj tested iOS 26.1 beta on iPad for fixed-position bugs in DiscourseHub (#382831/27) and advised on custom URL schemes for third-party apps (#384259/2).
Looks like we refactored branches, squashed bugs, and even debated category permissions—here’s to another day of smooth releases and minimal merge conflicts!
Jan_Polet discovered a Bug with fixed-position elements jumping in the ios-26 PWA on iPadOS 26.1; after reviewing a screen recording, pmusaraj confirmed the regression and is working on a fix read more.
hugh announced the 3.5.1 stable release, detailing critical security patches and maintenance updates to keep sites secure and stable read more.
Richie acknowledged the deprecation of tests-passed in favor of the latest tag for Docker installs; david hinted at an admin warning for any lingering references read more.
A new user got their markdown composer stuck and couldn’t switch back to rich text; NateDhaliwal pointed them to the toggle in the composer settings that was “staring them in the face” read more.
J_admin asked about the badge at the bottom-right of some avatars; NateDhaliwal and Moin clarified this is core group flair, not a plugin, linking to the group-flair guide read more.
A community member reported their custom plugins weren’t loading after /launcher rebuild; NateDhaliwal requested more details to diagnose why the #docker_manager setup wasn’t taking effect read more.
MarcP struggled to extend #iframe height beyond default limits; the community pointed them back to the long-standing iframe CSS hack discussion read more.
Danielzappysys sought to disable email notifications on new topics but still get alerted on replies; thoka directed them to mailing list mode and relevant notification settings read more.
Turgut_Ordu hit a “restart (100)” error on Windows but lacked detail; tobiaseigen recommended WSL2/Ubuntu or a VPN-hosted DigitalOcean droplet for hassle-free setup read more.
thoka asked how to wait for Theme updates in scripts; community notes that background jobs and caching can delay live updates, advising patience and possible use of rake themes:updateread more.
Don flagged the hardcoded placeholder on the #404 page search input as non-translatable; pmusaraj committed a simple template fix to externalize the string read more.
Moin suggested adding space after the in returning user notices to match new-user styling; this tiny post-notices tweak was discussed and acknowledged read more.
tvavrda found it unintuitive that the composer’s + menu is scrollable without visual hints; the UX discussion highlights platform inconsistencies between macOS and mobile read more.
#Translations
inquisitorOzzak spotted a formatting issue in the %{date} helper for #translations; the community confirmed the string error and marked the report solved after the quick fix read more.
tgxworld highlighted additional plugin UX changes for #discourse-activity-pub and other plugins in the 3.6.0.beta1 notes read more and summarized the 3.5.1 fixes read more.
pmusaraj reproduced and diagnosed the ios-26 PWA cursor issue here, patched the hardcoded #404 search placeholder fix, and investigated the reCAPTCHA #proxy loading hang details.
david triaged the missing pre-compiled assets 404 in the prebuilt JS assets thread discussion, triggered the workflow to publish assets here, and clarified the “latest” tag replacement for tests-passedcontext.
mcwumbly injected clarity on the versioning cadence in the versioning strategy RFCdeep dive.
Falco provided Cloudflare proxy guidance for Windows server Nginx setups recommendation.
tobiaseigen recommended using WSL2/Ubuntu or a remote droplet for Windows installations to avoid the “restart (100)” error guide.
With 83 posts and 16 fresh topics tackled—including PWA bugs, release rollouts, and plugin forks—today proved that Discourse never sleeps. Here’s to more discoveries tomorrow!