A Chinese-language report on homepage font shrinking in ux#foundation-theme:read more
Related: Foundation theme font-size discussion tied back to another thread in #UX:read more
Related: Sidebar collapsing discussion referenced during troubleshooting in Supportread more
Related: Indented subcategory component mentioned as a partial alternative: read more
Related: Microsoft auth topic referenced in pricing/payment concerns: read more
Related: “Moderator message option with approved flags” feature request referenced for voting: read more
Discourse Member Application plugin feature request (file upload + CSV workflow) in #Plugin:read more
Interesting Topics
#Announcements
Moin’s accessibility and readability concerns about the modernized Foundation theme escalated into a focused round of fixes; jordan.vidrine apologized for earlier missed feedback and committed to prioritizing updates this week, with multiple UI issues marked Fixed afterward. read more
Nested replies (nested-replies) feedback continued: curi wanted an always-available “flat view” toggle, but markvanlan noted the internal “view as flat” option used for testing has been removed; follow-up clarified layout width changes when nested mode is active. read more
The new composer “Post Type” actions dropdown had a bug where the “topic link” rendered HTML instead of clean text; jordan.vidrine flagged it and posted a fix shortly after. read more
Calendar & Events category creation flow: Lou reported that “Events Calendar Categories” now default users into Create event, forcing extra steps to create normal topics; awesomerobot confirmed it was intentional, while suggesting a setting/default selector might be needed. read more
Sidebar nesting request (sidebar): haydenjames asked if sidebar links can be nested; chapoi said it isn’t possible currently (and no known component exists), but the thread ended with a practical workaround using Discourse’s built-in “add custom section.” read more
Screen reader + keyboard shortcuts (accessibility): awesomerobot explained the current assumption that screen reader users rely on the screen reader’s navigation (not Discourse shortcuts), and noted proper screen reader announcements for shortcut navigation would be non-trivial work. read more
Automation ask: in a moderation workflow thread, chapoi explained that automatically replying after a flagged post is approved likely requires external automation/webhooks today—while hinting an internal feature may eventually cover this use case. read more
Setting semantics rabbit hole: chapoi dug into how educate_until_posts interacts with recent education-message behavior changes, suggesting the admin setting copy may now be misleading (show-once behavior vs “first N posts”). read more
Anti-spam signup friction: discussion around “registration challenges” continued, with Heliosurge pointing to a plugin approach as a mitigation path for spam registrations. read more
Passkey login regression (passkey): a reproducible error (“security key is not owned by the user”) was reported across multiple communities; pmusaraj confirmed it reproduces on Meta and isn’t Microsoft-specific—pointing to a likely Discourse regression. read more
/unread mismatch: a regression caused the unread counter to show items while the /unread list was empty; sam linked a fix commit and noted it was deployed, with follow-up confirmation that the behavior resolved. read more
Button micro-interactions: a thread questioned why the Reply post-action button has a subtle background transition while other buttons don’t; replies narrowed it down to theme-specific behavior across Foundation / Meta Branded / Horizon. read more
Review queue muscle-memory trap (review-queue): a UX report highlighted inconsistent “Yes/No” meaning across moderation queue items (e.g., “Yes = spam action” vs “Yes = approve”), raising the risk of accidental approvals when processing quickly. read more
#Self-hosting
Hosting provider comparisons: the Vultr vs DigitalOcean thread picked up again with warnings about past Vultr TOS controversy and a reminder that VM hosting and SMTP delivery are often best handled by separate providers. read more
#Plugin
Migrated password hashes support: RGJ clarified how the legacy hash migration works, then identified a potential security edge case (legacy hash lingering when users authenticate via other methods) and shipped an update to clear the import_pass custom field on every successful login. read more
jordan.vidrine responded directly to accessibility frustration in the Foundation modernization thread—apologizing for delays and committing to prioritize the backlog of feedback. read more
Followed up with a concrete list of UI fixes (icon colors, mismatched icon/text, dropdown sizing, squished inputs, etc.). read more
chapoi clarified that issue reports are still welcome in the Foundation modernization discussion while addressing concerns about accessibility prioritization. read more
Helped answer a Support question about nesting sidebar links (and later acknowledged a misunderstanding once the workaround was found). read more
Provided guidance on moderation automation limitations (auto-reply after approved flags) and pointed to an existing feature request for voting. read more
Investigated nuanced admin-setting behavior around education messages and suggested the setting copy might need updating. read more
markvanlan explained that the “view as flat” option for nested replies was an internal testing tool and has been removed. read more
sam flagged that a regression causing /unread to be empty despite an unread count had a fix deployed, linking the relevant change. read more
pmusaraj confirmed the passkey login error is reproducible on Meta and likely a Discourse regression (not tied to Microsoft platforms). read more
awesomerobot confirmed an Events-category default (“create event” first) was an intentional product decision, while acknowledging some communities may need a different default via settings. read more
Also explained current expectations/limitations for screen reader users vs Discourse keyboard shortcuts. read more
HAWK joined the UX sleuthing on the Reply button’s subtle transition behavior, focusing on theme differences and confirming what was (and wasn’t) reproducible. read more
Yesterday’s vibe: nested replies got a little flatter (by removing “view as flat”), while Foundation theme fixes landed fast enough to make even the tiniest icons feel seen.
Upload failures after a fresh Docker install (avatars/photos) prompted initial triage around upload storage configuration in Failed Uploading Avatar and Photos
A misleading theme import “branch” field placeholder (“main”) appeared to behave like a default but actually saved nil, leading to confusion when updates didn’t pull as expected in Misleading “branch” input in theme import
helped with theme component configuration (“count parameter”) in Right Sidebar Blocks
Sign-off: Between “Pitchfork nowadays!!” and AI trying to sneak forbidden tags past category rules, Meta spent the day sharpening both its forks and its filters—same time tomorrow?
Activity snapshot (threads driving the numbers): discussions ranged from auto-silence confusion (read more) and spam mitigation (read more) to self-hosting plugin workflows (read more) and a mobile rendering bug (read more).
Also active (more threads that saw fresh replies): a one-shot server overview script update (read more), email/notification edge cases for staff promotions (read more), tag strategy for multi-version announcements (read more), “local logins disabled” email deliverability follow-ups (read more), and hosting performance opinions (Vultr HF vs DO) (read more).
Tealk reported users appearing “silenced” publicly while admin showed otherwise; awesomerobot clarified the profile badge can reflect historical silences, and that rapid “system silences” may auto-lift if a review outcome reverses the trigger (read more, read more).
Ongoing spam-signup/abuse pressure continued: mitigations discussed included Cloudflare workflows (read more), the official #TAGhcaptcha plugin (read more), and community interest in Cloudflare Turnstile support (read more)—alongside the core thread debating tradeoffs like VPN blocking (read more, read more).
“Why can’t I install plugins locally?” became a practical self-hosting workflow discussion: NateDhaliwal encouraged a proper dev environment for local plugin iteration (read more), while chapoi explained it’s not “blocked,” but local folder-copying doesn’t behave as expected in production rebuilds, and pointed to backup/restore as a way to test production data locally (read more, read more). Private plugin repos were also clarified as still private when cloned with tokens (read more, read more).
A missing “Message / Discussion” button on user cards turned out to be theme/CSS related: zogstrip guided troubleshooting via safe mode, and the OP ultimately confirmed an SCSS issue on their instance (read more, read more, plus Safe Mode reference: read more).
A nuanced Discourse Automation question asked whether After user update can trigger from one required field while optionally including additional fields if present—highlighting the “must fill all specified fields” limitation in docs and UI (read more, docs referenced: read more, related feature request: read more).
Gmail + POP3 polling errors resurfaced in a “revisited” thread: despite mail flow working, the dashboard continued reporting authentication problems—prompting comparisons with the older canonical POP3 error discussion (read more, earlier thread: read more).
A client-side navigation/rendering issue was reported where posts from a previously viewed topic remained rendered when moving to the next topic in-app; markvanlan indicated a fix was coming, impacting the mobile nested topic view (notably with #TAGnested-replies) (read more, fix note: read more).
Passkey login reliability (“security key is not owned by the user”) remained hard to reproduce: pmusaraj tested multiple scenarios and suggested early failures might be user flow / platform variance, with possible Windows passkey changes in the mix (read more).
Incoming email handling hit a Gmail “dot variant” trap: a report described ActiveRecord::RecordInvalid when dotted/undotted Gmail variants collide, and follow-up suggested checking the email normalization setting (with caution about side-effects) (read more).
#Feature
A request to better control the AI helper buttons asked for separate toggles for title vs tag vs category suggestions; NateDhaliwal offered a practical CSS workaround to hide only the title suggestion UI while keeping other helpers (read more, workaround: read more).
Review Queue semantics came under scrutiny: the thread argues “Yes/No” actions (and “Approved/Rejected”) can feel inverted depending on whether the item is a flag or a queued post—leading to mistakes and calls for more consistent confirmation language (read more, additional operator perspective: read more).
The core complaint: the same labels can imply opposite outcomes depending on review item type. (read more)
A “branch” field in theme import was called misleading; chapoi confirmed it was addressed via a merged fix (tracked back to the original UX report) (read more, completion update: read more).
#Self-hosting
A compatibility question asked what browsers/OSes are unsupported in Discourse 2026.6.0; guidance pointed to official support expectations and a community “old browser friendly” UI experiment (#TAG#dumbcourse) as a potential mitigation strategy (read more, pointer: read more, alternative UI: read more).
An SEO-focused question in Russian asked how to manage H1/title/description on the homepage and /categories; responses steered toward how Discourse already composes titles and where site settings help, plus theme-component approaches like banner components (read more, banner option: read more).
#Plugin
Topic Voting behavior changes prompted a deeper explanation: martin asked for specifics and suggested verifying category eligibility (including a Rails console check) after changes to category “type” (e.g. Ideas) affected where voting is allowed (read more, context from the affected site configuration: read more).
awesomerobot helped demystify the “silenced” indicator by distinguishing historical silences from current status, and explained how an automatic silence can be lifted when a flag is rejected in the review queue (read more, read more). awesomerobot also weighed in on abuse mitigation tradeoffs (VPNs vs reputation) in the ongoing spam-attack discussion (read more) and suggested an email setting angle for limiting staff-related system emails (read more).
markvanlan reported progress toward a fix for a topic-navigation rendering issue affecting the mobile nested view, indicating an upcoming PR to address Horizon-related behavior (read more).
pmusaraj investigated a passkey login error, shared that it wasn’t reliably reproducible across tests, and pointed to possible platform-level changes (Windows) as a variable worth watching (read more).
zogstrip supported both translation and troubleshooting threads: identifying the exact i18n key for the “All” label in reactions popup (read more), and guiding user-card UI debugging by isolating theme/plugin impact via Safe Mode (read more).
martin engaged in the Topic Voting support thread by requesting concrete examples and offering diagnostic steps to validate whether categories should permit voting after category-type changes (read more).
chapoi clarified production-vs-dev realities for “local plugin installs,” recommending dev workflows (or restoring a production backup locally) and confirming private repos remain private when cloned with tokens (read more, read more, read more). chapoi also closed the loop on the “branch” theme import UX issue, pointing to the fix landing (read more).
Yesterday’s vibe: between surprise “silences,” confusing “Yes/No” review actions, and passkeys that sometimes behave, it was a great day to double-check what the UI really means before clicking.
Several threads focused on practical admin workflow: installation edge cases (read more), theme/UI rollout questions (read more), and “how does this behave on mobile/tablet?” UX discussions (read more, read more).
Interesting Topics
#Theme
pmusaraj released a new light theme, “Accent Theme”, built around an accent-color-driven design with light/dark schemes and a clean, card-like layout (read more).
#Theme component
In Custom Header Links (officialcustom-header-links), the discussion turned to responsive behavior—specifically whether tablets should behave “more like desktop” or “more like mobile,” depending on device size and orientation (read more, read more).
In Discourse Sidebar Menu Reorder (sidebar), a gotcha was highlighted: sidebar section names are slug-sensitive (spaces → dashes), and even a trailing space can create a confusing mismatch; Lilly updated guidance to make this easier to discover (read more, read more).
A self-host install hit a confusing connectivity wall: the setup wizard reported ports free, yet the hostname test failed with “ Port 443 … not accessible.” The workaround that moved things forward was running setup with --skip-connection-test, and the thread evolved into a practical Virtualmin runbook-style post (read more, read more, read more).
On AI tag/category suggestions (aiai-helper), a key clarification landed: category and tag suggestions don’t use LLMs—they’re driven by embeddings based on the draft content and existing topics, which affects how (and whether) admins can “steer” suggestions (read more, read more).
In an Automation question (automation), the focus was on triggering a workflow from one required profile field while conditionally including optional fields. The thread includes a concise explanation of conditional blocks like {{#foo}}…{{/foo}} so empty fields don’t leave awkward fragments in generated posts (read more, read more, read more).
Foundation theme rollout timing came up again: improvements seen on Meta prompted “when does everyone get this?” The practical answer was that admins can enable the “Modernize foundation theme” upcoming change manually, while broader rollout timing remains uncertain (read more, read more).
A restore/migration edge case: after restoring a site that used S3 uploads, one admin found that media URLs (including avatars) were rewritten to local forum URLs rather than the S3 bucket, raising both “how to fix” and “how to prevent this in production” questions (read more).
A new report on the experimental nested replies (upcoming-changesnested-replies) described confusing behavior and missing/disappearing posts, plus a painful attempt to revert that appeared to cascade into missing-post errors across the site (read more).
A UX thread about “New Topic still available when users can’t post” pointed to a just-merged change introducing a hidden site setting, hide_disabled_create_topic_button, to hide the button in read-only/no-permission contexts (restoring older behavior) (read more).
On mobile UX (mobilereactions), a suggestion asked for the reactions list to be dismissible by dragging from within the list itself, rather than requiring a drag on the empty area above—framed as both ergonomics (thumb reach) and discoverability (read more).
The WeChat Mini Program integration discussion resurfaced with pragmatic plugin-direction suggestions (censorship logic, API calls, and login constraints), plus broader context on why embedding web experiences inside “super-app” environments matters in China (read more, read more).
For older topics published via WordPress embed (wordpress), a contributor shared a small plugin that adds an X-Robots-Tag: noindex header for selected categories—aimed at addressing missing noindex/canonical behavior for embedded content (read more).
In Oneboxed text localization (oneboxcontent-localization), the team noted that improvements addressing the OP’s issue are planned “soon,” signaling ongoing polish work in this area (read more).
#Plugin
In Discourse Calendar and Events (officialcalendar-and-eventsincluded-in-core), an admin asked for time-saving automation around expired events (auto-removal/cleanup), noting they currently do it manually and would like a built-in workflow (read more).
pmusaraj shipped a polished new theme announcement for Accent Theme, including preview/repo links and positioning it as an accent-color-first design that’s easy to brand (read more).
awesomerobot weighed in on tablet responsiveness tradeoffs in Custom Header Links, emphasizing that “tablet = desktop” isn’t universal and often depends on device size and orientation (read more).
awesomerobot provided actionable guidance in an Automation support thread, including conditional templating patterns to avoid rendering empty optional fields in generated posts (read more, read more).
awesomerobot replied on the long-running group hierarchy/groups page request, confirming there’s still room for discussion while noting it isn’t currently prioritized (read more).
Falco clarified an important technical detail about AI category/tag suggestions: they are embeddings-based and do not use an LLM, which reframes how admins should think about “prompting” or customizing the behavior (read more).
nat dropped a quick note that improvements are coming for the Oneboxed text localization issue, keeping the thread warm with a near-term expectation of movement (read more).
Yesterday’s lesson: may your ports be reachable, your “New Topic” buttons appear only where they should, and your accent colors remain impeccably on-brand.
A lot of today’s debugging energy clustered around language detection/translation UX, Safari-specific editor issues, and Cloudflare R2 migration edge cases—see the threads on locale detection/edit visibility (read more) and R2 thumbnails/CDN URLs (read more).
Interesting Topics
#Site feedback
stephtara reported a confusing combo where a reply was flagged as originally French and edits didn’t appear as expected; the thread ultimately traced this to AI language detection and viewing an out-of-date translation layer rather than the original post (read more, read more, read more).
Continuing fallout from “smart punctuation” behaviors: stephtara added another data point that composer character replacement can make French writing painful (especially apostrophes), reinforcing earlier reports in the ongoing bug thread (read more).
Cloudflare R2 migrations: David_Ghost found that older uploads kept endpoint-style URLs and old thumbnails stayed broken; Lilly recommended checking DISCOURSE_S3_CDN_URL, running migration + rebake in the right order, and trying string remaps—even though the remap didn’t fully resolve the thumbnail issue (read more, read more, read more, read more).
Topic editing errors: stephtara asked how to troubleshoot a failing topic edit flow and was advised to start with browser console errors and site logs; the investigation narrowed to a Safari-only failure tied to editing topics that have tags—pointing toward a theme interaction (likely Air Theme) rather than core (read more, read more, read more).
Related follow-up in the Air Theme mega-thread: stephtara documented reproducible Safari steps (create topic with tag → edit → failure) and linked back to the troubleshooting thread for visibility and confirmation (read more, read more).
iOS Safari composer UI: a long-time self-host reported that the new topic editor area becomes too small/crushed on iOS Safari (while replying still works), and that the issue reproduces on try.discourse.org—suggesting a broader mobile Safari compatibility wrinkle (read more).
Spam-defense strategy discussion continued: one admin argued for tooling that can block spammer emails without automatically blocking IPs, noting IP blocks can become a “hidden cost” (especially with legitimate VPN usage) (read more).
Discourse Automation variable substitution: a user confirmed {{languages}} works, but highlighted that custom profile field tokens for fields like “Pronouns/gender” didn’t interpolate—raising the question of how field names are mapped/sanitized for templates (read more).
#Self-hosting
AI + ops/security: stephtara asked for practical ways to give Claude Code read-only access to a self-hosted Discourse install (SSH, database, and sensitive data boundaries), plus whether SQL dumps contain security-sensitive material—kicking off a useful “AI assistant, but least privilege” discussion (read more).
#Theme component
The Image Comparison Slider component got a substantial modernization proposal: Arkshine shared a PR adding zoom/pan, fullscreen, better lightbox integration, keyboard accessibility, and richer editing options—while keeping backward compatibility and noting a minimum core version requirement (read more).
#Theme
Mobile UX polish for FKB Pro: xlg256 described inconsistent “clickable zones” on topic cards on mobile and proposed tightening hit targets; they also shared a CSS “pointer-events whitelist” approach to prevent accidental taps while scrolling (read more).
#Site Management
Auto-bump tuning: a feature suggestion proposed selecting bump candidates not just by category, but by historical engagement (views/votes), plus age thresholds—along with a renewed request to limit repetitive auto-bump alert messages (read more, read more).
WeChat Mini Program integration thread saw renewed questioning about what the real constraint is (since Discourse is “just a website”), and whether the issue is better understood as platform policy/content review limitations rather than a Discourse-side integration gap (read more, read more).
No public posts from the @team group were captured in the last 24 hours in this digest window. Current momentum was driven by community troubleshooting and proposals across threads like the locale/translation confusion report (read more), the Safari tag/edit failure investigation (read more), and the Cloudflare R2 migration edge case discussion (read more).
If yesterday taught us anything, it’s that “Artificial intelligence isn’t intelligence”—and Safari will happily prove it again if you so much as add a tag.
A few fast-moving threads worth a glance again: nested replies troubleshooting in Support, sidebar tag dropdown conflicts in Bug, and the ongoing “Boosts” experiment status update in Announcements.
Interesting Topics
#Announcements
Boosts on Meta were paused (for now):martin confirmed Boosts have been disabled while the team evaluates next steps, after community feedback on how the feature affects conversation flow. read more
Horizon “High Context Topic Cards” now include events:chapoi noted a change landing so events will appear on high-context cards too—helpful for communities leaning on events metadata. read more
Granular group-based permissions raised theme-component edge cases:Moin dug into how theme components should reason about new pseudo-groups and serialization visibility, and martin explained why currentUser?.groups can be incomplete (visible groups only), prompting discussion about migrations and “everyone” behavior. read more and follow-up read more (also referencing the Filter Favorites component read more)
Right Sidebar “Tags” block conflicts with native tag dropdown data:xlg256 reported that adding the “popular-tags” right-sidebar block can cause the header tag dropdown to render blank, and chapoi confirmed it’s reproducible on try.discourse and flagged it for triage. read more
Nested replies rough edges: disabling can trigger “missing message” errors, plus navigation artifacts: reports continued around the experimental nested-replies feature—one case describes a “disaster” when disabling leads to errors sitewide (team asked for screenshots), while another thread tracks posts from a previous topic remaining rendered after in-app navigation. read more and read more
Automation debugging UX: error link searches the wrong thing (and field names can break Mustache):one1 flagged that “3 errors recently” linked to logs with an unhelpful search=discourse-automation, and also tied it to a real-world Mustache::Parser::SyntaxError caused by parentheses in field names (surfacing in automation usage). read more and related context read more
Foundation-theme readability and font sizing are still under the microscope: discussion continued on subtle UI improvements in the Foundation modernization thread, while a Chinese-language UX report flagged the homepage font becoming too small post-rebuild—jordan.vidrine confirmed it’ll be addressed, and users also asked when the updated Foundation theme reaches all forums. read more, read more, and read more
What’s the point of setting a user’s “primary group”? A clear explainer emerged: primary group helps determine default flair/title/styling and clarify a user’s main affiliation when they’re in multiple groups, with pointers to real usage in custom homepage patterns. read more and a practical example via Discourse Category Homeread more
“How can Discourse offer a free plan?” (freemium mechanics): community members framed the free tier as a conversion funnel / acquisition layer, and HAWK confirmed it functions like a freemium on-ramp where communities can discover what they need before upgrading. read more and team clarification read more
AI Tools test runner forcing SSL for http:// internal endpoints:Tobias1 reported http.get() appearing to negotiate SSL even when given an HTTP URL to an internal host (despite the host being allowlisted), producing an SSL handshake error. read more
How to approximate Meta’s design on your own forum (theme approach + building blocks):manuel pointed to an example theme built using the same approach as Meta’s theme (custom homepage with featured blocks), and suggested complementary components for featured category presentation. read more, with references to theme/blocks skills read more and Featured Categories Headerread more
#Feature
Include reply-to notation in the /raw/ view:Tyson_Jacobs requested raw-topic exports include an explicit “this replies to X” notation; a reply suggested the JSON view already exposes reply_to_post_number, but the request focuses on human-readable raw text. read more
Clickable map / location lookup for Calendar events (migration-friendly for Facebook groups):Lou asked for Google/Facebook-like location suggestions and a clickable map link in event locations, then followed up with a focused feature request; discussion also referenced existing (non-core) plugin options and integration challenges. read more and feature request read more, plus related plugins: Locations pluginread more and the alternative Events pluginread more
#Plugin
Custom Wizard plugin crash after a core change (boot-time failure):Hasimir reported a breaking change causing discourse-custom-wizard to crash the app boot cycle (even blocking safe mode), narrowed down to an undefined method call involving admin_stylesheets during stylesheet compilation. read more
Using AI/LLMs to refactor a Flarum importer for Discourse migration:AkarinLiu shared a tested refactor of a Flarum import script using an AI LLM workflow (with a gist link) to help smooth migration to Discourse. read more
HAWK clarified Discourse’s freemium strategy—framing free hosting as an acquisition tier—within the free-plan discussion read more, and also provided a detailed rundown of what “primary group” affects (styling/title/flair/affiliation) read more. HAWK additionally acknowledged weekend timing on the nested replies thread while the report waits for deeper review read more.
martin posted the key operational update that Boosts are disabled on Meta for now while next steps are evaluated read more. martin also dug into group serialization constraints for theme components (visibility vs. permissions) in the granular group-permissions thread read more.
markvanlan jumped into the nested replies experimental bug report to request screenshots and prioritize a fix, responding directly to the “missing message” / rollback problem after disabling the feature read more.
jordan.vidrine confirmed the team will address the reported “homepage font became too small after rebuild” issue (in the foundation-theme UX thread) read more.
manuel helped a user replicate Meta’s look-and-feel by sharing an example theme approach (custom homepage with featured blocks) and pointing to relevant theme/component building blocks read more.
chapoi confirmed the “Tags” right-sidebar block issue is reproducible and nudged triage read more; guided a feature-request author to provide more context (and sanity-checked existing options) in the raw-text reply notation request read more; and announced that events should now show on Horizon’s high-context cards read more.
With Boosts taking a breather and fonts getting fine-tuned, Meta spent the day getting just a little calmer—and a lot more readable.
Reporting window: the last 24 hours (2026-06-08 → 2026-06-09), spanning big UI previews, bugfix PRs, and a healthy dose of “wait, why is that translated?”
lindsey shared an experimental preview of a redesigned admin dashboard (dashboard), with early feedback asking for customizable KPIs and more flexible group breakdowns in engagement reporting — plus a reminder that pinned reports can include Data Explorer queries (read more; related: Data Explorer)
martin announced that Unified New will become the default topic list experience, replacing the older “New vs Unread” split — and pointed admins toward enabling it via Upcoming changes (read more; background: the “new new” being enabled on Meta, and the admin UX for staged rollouts in Upcoming changes)
The Boosts experiment got a forward-looking update: martin confirmed Boosts should return, but only once “boosts + likes + reactions” can be rolled into one coherent system (read more; reactions context also cropped up elsewhere in reaction UX)
“Me too / I’m affected” behavior for Solved workflows was refined again: lindsey noted it’s now category-specific and the label text can be customized per category settings — making it easier to disable in categories where it’s noise (read more)
Nested replies continue to mature: configuration guidance (like reducing max depth + enabling the nesting cap) was highlighted as a way to keep conversation trees readable in alternative reply patterns (read more; related troubleshooting: nested replies experimental feature buggy)
A right sidebar regression was tracked down: tag blocks conflicted with other tag dropdowns, and martin pointed to a fix in the right-sidebar-blocks plugin pipeline (read more)
A mobile/in-app navigation issue persisted where rendered posts from the previous topic “stick” into the next topic during client-side navigation; markvanlan merged an initial fix but the reporter still reproduced carry-over without a full reload (read more)
A likely regression: searching user custom fields worked via global search, but did not work in the /u directory search flow — raising questions about directory_items filtering and field targeting (read more)
A self-host install failed during bootstrap (bundle install exiting with code 15). Replies focused on “scroll up for earlier errors” and the possibility of regional network constraints impacting gem downloads (read more)
A restore/migration edge case: after restoring, uploads didn’t retain the expected S3 bucket URLs. Discussion centered on ensuring S3 is configured via environment (app.yml) and how restores rewrite URLs; guidance referenced the canonical S3-compatible config instructions (read more; guide: configure S3-compatible object storage; related operational questions also surfaced in Backup Restoration Issue)
On iOS Safari (iOS 26.5), the topic editor/composer left too little vertical space to type; a workaround was to hide the toolbar, and the thread linked back into broader mobile-composer ergonomics and fullscreen composer efforts (read more; related: Such a tiny window to edit here on a cell phone)
A localization edge case was documented: interface language (header dropdown + chrome) didn’t match the language used for translated content (tags/titles/excerpts), after switching language in a separate tab — suggesting cached or cross-tab state bleed (read more)
#Enterprise
HAWK opened a strategic discussion on community ownership models inside organizations (marketing vs support vs product vs independent), inviting enterprise practitioners to share what reporting structure best protects member trust while meeting stakeholder needs (read more)
A Chinese-language dev thread explored rebuilding a Flarum importer using AI/LLMs; cocococosti asked for more detail on real-world migration needs and what the contributor was importing (read more)
#Plugin
The Custom Wizard plugin thread saw a practical status update: after multiple reports of breakage, the plugin author confirmed it’s now fixed and working again (read more)
chapoi focused on UX clarity and component polish: he responded directly in the Unified New view thread, posted a mobile toolbar placement update for the official Discourse GIFs theme component, and coached feature-request framing in the “raw reply notation” discussion (read more).
david handled developer-facing fixes and diagnostics: he opened a PR to correct theme import UI expectations by displaying the actually installed branch (read more), and helped debug a CI failure report by suggesting a local reproduction tweak to development schema cache behavior (read more).
HAWK blended community strategy with product direction: he launched the enterprise discussion on community ownership models and teased upcoming “Workflows” as a next-gen automation system in the automation messaging thread (read more).
cocococosti engaged with contributor development work by asking for more details on the AI-assisted Flarum import approach (read more).
Falco delivered a crisp technical answer (and marked solution) on AI Tools Test Runner URL handling — noting the current HTTP/port behavior defaults (read more).
nat chimed in on both product polish and triage: reacting to the KPI customization request in the admin dashboard preview and acknowledging investigation into the reported localization edge case (read more).
Yesterday’s theme: Meta looked like a product lab—between an experimental admin dashboard redesign, ever-evolving nested replies, and the promise that Boosts will be back, the only thing missing was a “Do Not Try This at Home” banner.
Biggest conversation drivers: the announcement that GIFs are moving into Discourse core and a deep dive into how group visibility impacts /u?exclude_groups=... filtering in the user directory (read more).
davidb announced that the built-in GIF picker is moving from a theme component into Discourse core, now served via Klipy—along with notes on hosted vs self-hosted migration and a rake task for settings migration (read more). Related: the toolbar placement confused at least one user until it was clarified where the button lives now (read more), and the older GIF component thread was linked for context (read more).
The “unified new view” topic list discussion continued with clarification around New vs Unread vs Unseen definitions and how preferences affect what appears where (read more). The thread also touched on the UX tradeoff between helpful explainers and reducing “empty state” text clutter (read more), with a callback to earlier guidance screenshots (read more).
The redesigned admin dashboard preview drew requests for more customizable KPIs, especially for internal/company communities where default “growth” metrics don’t fit (read more). nat’s contribution proved at least one KPI is timeless: GIF-driven reporting enthusiasm (read more).
Nested replies kept accumulating polish: markvanlan shipped a fix for “post stream leaking between topics” via a PR and asked for testers (read more), while nested-replies feedback and fixes kept flowing in the main nested replies announcement thread too (read more). Bonus: someone asking if Discourse can do nested replies was simply pointed at the new feature announcement (read more).
A long (and very practical) thread explored why /u?exclude_groups=admins behaves differently for anonymous users depending on whether group + member visibility is public, and whether this is intentional privacy behavior or a bug edge-case (read more). The OP ultimately shared a CSS workaround to hide specific users from “top contributors” blocks and the directory for anon visitors (read more), with the sidebar plugin referenced as the original driver (read more).
A Portuguese-language question asked for “sub-sub categories” (a category inside a subcategory), and the response pointed to server/SSH-level configuration and prior guidance on subcategory limits (read more; see also read more).
A Chinese-language support thread about embedding bilibili video via iframe turned into a quick clarification: linking normally (Onebox) works, while iframe isn’t necessary in many cases—plus a pointer to the bilibili onebox plugin for stability (read more; plugin link: read more).
Event reminders sparked a question about email vs in-app notifications, and whether reminders should honor users’ email notification preferences more aggressively (read more). The discussion referenced the broader calendar-and-events feature context (read more).
A badge automation question asked whether an SQL-triggered badge (based on joining a group) can be linked to a specific topic ID (e.g., for “why you got this badge” provenance) (read more).
A regression report noted that clicking a PDF link (when PDF previews are enabled) now triggers a download instead of opening in a new tab, despite prior fixes meant to centralize “inline vs download” logic (read more). The report cited an earlier resolution for PDF inline handling (read more).
SVG badge images failing to render (notably Font Awesome SVGs without intrinsic dimensions) got a fast diagnosis: width: 100% on a “0-sized” element yields a 0-sized badge; a core fix was proposed/queued (read more).
A plugin/dev CI issue around GitHub Actions and the “SKIP_DB_AND_REDIS bootability” step narrowed down to when plugin code actually reaches DB-touching constants/classes under runner invocation (read more).
Searching user custom fields appeared to regress; zogstrip made both query paths consistent and linked a fix PR (read more).
Composer UX polish: a report about a horizontal rule stealing focus from the emoji picker was confirmed resolved, with the merged PR acknowledged (read more).
With nested-replies enabled, ad units can demand much more vertical space and feel significantly more intrusive; screenshots show both “too tall” and occasional spacing failures around quotes/polls (read more).
A Horizon theme regression made the sidebar button text show “New Topic” instead of “New Event” inside an events category (functionality still correct); a fix PR was linked (read more).
A “fonts became tiny after rebuild” report in a foundation-theme context got a direct “fixed via PR” pointer (read more).
#Enterprise
A thoughtful discussion on community ownership models dug into the tension between top-of-funnel marketing goals and member-first trust, including practical questions about mandate, boundaries, and stakeholder conflict resolution (read more).
#Theme / #Plugin / General / #Migration (notable continued conversations)
A substantial June update landed for “Pyx’s Modern Theme,” including post-stream overhaul and explicit nested-replies support (read more).
Doc Categories plugin users asked about “card view” for docs topics and which d-compat branch matches the 2026.1 Extended Support Release (read more).
“Why is there a free plan?” prompted a reminder that Discourse’s pricing page lists the free option (read more).
A PHPBB migration performance thread continued with nuance on password importing: what’s possible vs what’s officially supported in core scripts (read more).
A feature request follow-up on restricting who can PM based on groups got renewed appreciation for modernizing older settings UX patterns (read more).
A site feedback “content gardening hub” experiment thread included housekeeping suggestions like removing the broken tag from Custom Wizard if it’s no longer appropriate (read more; referenced plugin topic: read more).
davidb led the launch of GIFs in core, outlined migration paths (hosted auto-migration vs self-hosted rake task), and responded to migration edge cases like domain allow/block lists and translation overrides (read more; follow-up: read more).
nat helped troubleshoot early adopter confusion, pointing out that self-hosted sites needed to update because the build had only just gone out (read more), and also “road-tested” the new GIF era with a dashboard-thread reaction (read more).
david weighed in on the user directory group-exclusion debate, explaining why making exclude_groups work for anonymous users can leak membership of hidden/secret groups—and later helped narrow the issue down to the “both group + member visibility = everyone” requirement (read more; configuration check: read more).
awesomerobot clarified the semantics of New vs Unread vs Unseen in the unified topic list discussion and why combined labels aim to reduce confusion (read more), and also diagnosed the SVG badge rendering issue and proposed a core fix (read more).
martin continued the unified topic list UX conversation by sharing the newer “empty state” design, and floated ideas like showing richer explanations only for new accounts or via tooltips (read more).
markvanlan shipped a fix for a navigation/rendering bug where posts from one topic could appear in the next after in-app navigation, linking the GitHub PR for verification (read more). They also noted additional nested replies fixes rolling through the main announcement thread (read more).
zogstrip fixed inconsistent behavior when searching user custom fields, linking the PR and noting difficulty pinpointing when the prior behavior last worked (read more).
renato confirmed the “horizontal rule steals focus from emoji picker” issue is resolved, thanking contributors and stating the PR was merged (read more).
HAWK added depth to the enterprise discussion on community ownership models, probing how community teams enforce member-first boundaries when located within marketing org charts (read more).
With GIFs moving into core, nested replies getting sharper edges filed off, and dashboards inspiring KPI wishlists, meta had one of those days where product updates and community debates basically are the release notes.
A quieter but important follow-up: the ongoing “Foundation theme modernization” thread continues collecting UI fit-and-finish reports like tag borders, review queue button styling, and group-name truncation (read more).
The “Introducing nested replies” announcement thread picked up another nudge advocating that certain discussions themselves “should be nested,” underscoring how people are starting to think in #nested-replies-first mental models (read more).
A layout issue: ads requiring too much space in topics using advertising with nested-replies was re-raised, with Falco noting a previous attempted fix didn’t fully stick (read more).
A regression report: PDF attachments downloading on click instead of opening in a new tab (pdf-previews). zogstrip pointed to an inconsistency between storage modes and a fix in flight (read more).
An Events plugin localization bug: recurring events show Every [missing %{weekday} value] instead of a weekday name, suggesting a missing interpolation value in calendar-and-events translations (read more).
A long-standing composer complaint got a concrete update: auto-conversion while typing in the rich editor was removed, reducing surprise character transformations during composition (composer) (read more).
A “nested replies navigation” bug thread also contained an extra UI edge-case report (stats block rendering when view/user counts are absent), which markvanlan confirmed as addressed by a core commit (read more).
A German-language report suggested Data Explorer queries were producing strange results / reverting to SELECT 1, with ted unable to reproduce immediately but suspecting a UI mismatch after recent work; chapoi recommended updating to the latest version to rule out a shipped UI bug (read more).
A configuration gotcha: the content localization language switcher appeared to do nothing even though locales were configured; Falco pointed to documentation indicating set_locale_from_cookie is required, prompting follow-up questions about what’s needed for manual vs. automatic translation workflows (content-localization) (read more).
A practical email question: “Too many recipients” errors when emailing a group alias (even with external recipients) raised questions about how Discourse’s anti-abuse guards apply; chapoi suspected the group alias fan-out was the trigger and asked for group size (read more).
A self-hosting pain point: bootstrap failing due to GitHub HTTPS timeouts during rebuild prompted a request for an SSH-based workaround for discourse_docker rebuild flows (install) (read more).
Site-level troubleshooting: a report that notifications stopped working kicked off basic diagnostics suggestions (log out/in, clear cache) to isolate client vs. server issues (notifications) (read more).
A micro-interaction deep dive asked why the Reply button background animates on hover (seemingly unlike other actions). Team responses connected it to opacity/hover affordances and a cleanup PR removing an unnecessary transition, while debating whether the legacy effect still earns its keep (read more).
The “Upcoming changes” system: a report noted users can be notified about upcoming changes that are hidden on the upcoming-changes page (e.g., because a theme/plugin is disabled), and the behavior was acknowledged as a bug to fix (upcoming-changes) (read more).
Admin IA feedback: a request argued that Tags and Tag Groups deserve a more visible place in the new admin menu, since /tags and /tag_groups are currently discoverable only through indirect navigation paths (tags, tag-groups, admin-sidebar) (read more).
Plugin API exploration: Anton_Akhmerov asked whether Chat’s structured blocks field could become extensible via a plugin API (e.g., registerChatBlockType) to support rich “cards” for external activity feeds (chat, plugin-api) (read more).
Theme component compatibility friction: DiscoTOC users reported the topic translation swap button becomes inaccessible when the TOC side panel is enabled, raising questions about preserving core controls in custom layouts (official, disco-toc) (read more).
The Meta companion thread for the Discourse blog highlighted how Netwrix tackled multilingual community needs, aligning with several ongoing localization/translation conversations on Meta (read more).
lindsey announced that Livestream has been incorporated into the Events plugin, including enablement steps and migration notes for existing installs (read more).
Falco responded to the nested-replies + advertising layout regression, noting an earlier attempted fix didn’t fully work (read more), and pointed to required configuration for the localization language switcher (notably set_locale_from_cookie) in the content-localization support thread (read more).
awesomerobot corrected a bot hallucination and clarified that watched/blocked/censored words do not apply to usernames, recommending reserved usernames as the only built-in control (with the caveat that admins are exempt) (read more); they also joined the hover-animation discussion around the Reply button, explaining legacy intent and what’s optional to keep (read more).
markvanlan confirmed a UI edge-case fix was addressed via a core commit in the nested replies navigation/rendering bug topic (read more).
chapoi advised updating after a recent Data Explorer update when a user reported query UI oddities (read more), provided a working SQL pattern to attach a triggered badge grant to a specific topic post (sql-triggered-badge) (read more), and started diagnosing the TooManyRecipients guard when emailing a group alias (email) (read more).
zogstrip explained the root cause behind the PDF click behavior inconsistency (storage-mode dependent display type) and pointed to a fix path, while noting the “open in new tab” question is more product-direction than bug (read more).
renato confirmed that rich-editor auto-conversion has been removed while typing, while noting conversion can still occur at cooking time depending on settings/conditions (composer) (read more).
saquetim clarified that Doc Categories doesn’t support a “card view” yet, and pointed to compatibility-branch/pinning details for users on ESR (official, doc-categories) (read more).
jordan.vidrine explained the Reply action’s hover/transition behavior as part of an approach to keep focus on content while still providing subtle affordances when hovering a post (read more).
With reply buttons fading in and out, livestreams moving in with Events, and nested replies reshaping layouts, Meta’s day had strong “small UI details, big ripple effects” energy.
Font Awesome icon not displayed (Custom Header Links) — read more
Invite limits capped at 10 for some users — read more
SSO/email transition best practices (avoid dupes/impersonation) — read more
Nested replies: OP too narrow on mobile — read more
Search “warm prompt”/intervention result for certain keywords (CN) — read more
Apostrophe turns into angle quotes in composer — read more
Custom Header Links: wrong mobile display — read more
Secondary email address button missing(solved) — read more
Auth plugin UI: show/hide password without inline onclick(solved) — read more
Embeds: include first post / “create topic” embed idea — read more
Interesting Topics
#Feature
pmusaraj revived the long-running Matrix chat conversation with a proof-of-concept Discourse ↔ Matrix bridge, plus live testing and debugging around chat visibility (including chat_allowed_groups for TL0) in Matrix protocol for chat.
A user couldn’t submit a topic containing a poll; chapoi walked through permission checks like poll_create_allowed_groups, trust level, category-specific behavior, and browser-console debugging steps in A user can’t post with a poll in her copy.
“Add secondary email” was missing due to site settings—resolved when email_editable was corrected in Secondary Email Address.
A restore/migration question dug into why uploads were pointing to forum URLs rather than the S3 bucket; gerhard explained what a .sql.gz restore does not rewrite and asked for a clean repro with restore logs in Images after a restore don’t have S3 bucket URL.
A long-running recurring RSVP issue got a concrete diagnosis: zogstrip confirmed “My events” was incorrectly showing RSVPs across all upcoming occurrences, and linked the fix PR in Repeating Event “going” gets not deleted anymore.
A Custom Header Links mobile layout issue was traced to padding/wrapping; awesomerobot merged a change to prevent the odd placement in Wrong display on mobile.
pmusaraj built and shared a Matrix chat bridge proof-of-concept, handled federation/room visibility, and debugged missing chat access (fixed by allowing TL0) in Matrix protocol for chat.
chapoi led live troubleshooting for a poll-posting failure, focusing on permissions (poll_create_allowed_groups), category-specific reproduction, and console error collection in A user can’t post with a poll in her copy; and also helped clarify invite-limit settings differences (individual invites vs reusable links) in How to change invite limits for everybody?.
Yesterday’s vibe check: between bridging Matrix, unbreaking polls, and teaching mobile drawers to close properly, Meta basically did a full “spring cleaning” on both chats and UI.
MeganBowers proposed email-based reminders for events so RSVPs/Interested users don’t miss calendar items; discussion centered on whether this should be handled via notification email preferences rather than per-event custom emails (read more, follow-up thoughts from awesomerobothere, and “notification-rule gap” framing here).
In French, gilles asked for the ability to use an image URL for event images (instead of uploading), prompting discussion of “hotlinking” tradeoffs and safer alternatives like fetching and storing remote images (read more, clarification on event-creation context here, and bandwidth/control concerns here).
The long-running notification sounds topic resurfaced with an accessibility-focused request: subtle foreground chat notifications on desktop to better support screen reader workflows (read more).
Falco acknowledged that with nested replies enabled, the root post column is too narrow on mobile and suggested moving author metadata above the post (like flat topics) to reclaim width (read more).
newbit1337 asked how to change the “click here” text in the email digest footer; awesomerobot pointed to the exact translation key and where it’s composed in the digest template (read more, solution details here).
In “Notifications not happening”, awesomerobot guided debugging (checking notification pages, browser console, and urging an update since the site was ~6+ months behind), then the thread moved toward update/rebuild troubleshooting (read more, request for more info here).
“New Topics is showing all Topics New & unread” turned into a reality-check on the unified /new view rollout: Moin linked the alpha announcement and the discussion focused on labeling/clarity and how the “topics subset” should present (read more, pointer to unified view here + background announcement read more).
A hosted free-plan admin access hiccup was resolved by re-authenticating via Discourse’s identity provider: awesomerobot steered the user to log out/in at Discourse ID with the correct email (read more, solution here).
On try.discourse.org, Canapin reported recurring PMs (“account no longer on hold”) and noted the demo looked empty; discussion pointed out the instance resets frequently (and may have changed how it’s seeded) (read more, reset explanation here, follow-up here).
After switching off a CDN, Canapin reported broken poll-option images because polls store rendered HTML separately from post raw; they’d already tried rebaking and posts:remap, but the problem likely lives in poll option HTML storage (read more).
A customization hunt: someone asked about avatar frame components/plugins; the response suggested there’s no obvious off-the-shelf Customization > Theme component and recommended commissioning custom work via Marketplace if needed (read more).
In a restore/S3 support thread, Maxine described restoring from sql.gz in S3 and seeing missing avatars/posts, then asked whether a “normal” production setup (with all uploads in S3) avoids the same mismatch in future restores (read more).
The “Delete category” button prominence debate continued: the thread explored whether “delete” belongs behind “advanced settings” or in a “danger zone,” with lindsey agreeing the proposed layout feels less odd and still safe (read more, placement question from awesomerobothere, and lindsey’s follow-up here).
#Announcements
In the Foundation theme modernization thread, jordan.vidrine confirmed the “thicc border” wasn’t removed entirely—just thinned—because it’s a longstanding UI staple; they also adjusted group dropdown truncation and linked the work-in-progress PR (read more).
In the calendar subscription URLs announcement thread, happyhappy asked whether there’s an OFF switch to prevent sharing events via external calendar subscription URLs (read more).
A Chinese-language bug report claimed that disabling one custom flag/report reason can cause other custom reasons to become hidden (except the “message @%{username}” reason), with before/after screenshots showing the disappearance (read more).
awesomerobot was everywhere across product gaps and admin/support workflows:
Clarified how event reminders are currently notifications (not messages), and suggested aligning event notifications with existing notification email rules rather than forcing PMs (read more, refinement on “cleaner” approach here).
Solved the email digest “click here” customization by pointing to the translation key user_notifications.digest.click_here and the digest footer template location (read more).
Discussed where category “new content” indicators appear (sidebar yes, other category layouts no), asking “where specifically?” to narrow the UX expectation (read more).
Helped troubleshoot missing notifications, starting with checking whether items appear in /my/notifications/responses, looking for console errors, and noting the instance was quite out of date (read more).
Unblocked a hosted customer who couldn’t access admin tools by sending them to log out/in at Discourse ID using the signup email (read more).
Continued the category settings danger-zone UX discussion, weighing whether “delete” should live under “advanced” or remain visible on “general” (read more).
Falco weighed in on mobile usability for nested replies, proposing a layout change to make the root post less cramped on small screens (read more).
lindsey supported the proposed category delete button redesign, emphasizing that a “danger zone” placement makes sense even if it’s on every settings page (read more, and follow-up here).
jordan.vidrine updated the community on ongoing Foundation theme modernization decisions (thinner category borders vs total removal, better group-name truncation), and linked the implementation path via a GitHub PR for further tracking (read more).
Between event reminder debates, “New vs Unread” soul-searching, and a surprise appearance by the category “danger zone,” yesterday’s Meta energy was basically: ship UI polish, then argue about the label on the button that gets you there (read more).
asa shared progress on an avatar-frame component/plugin concept (moving from a pure CSS approach to GIF-based frames) and asked what features would be worth adding; NateDhaliwal noted the “Discord Nitro” paywall vibe, while RGJ provided an external frame source and asa flagged potential licensing concerns (read more, read more, read more, read more)
Users reported “Account no longer on hold” messages on try.discourse.org; awesomerobot said it “seems something might be off with the daily restore process” and would be investigated, and darkpixlz confirmed seeing it for the first time (read more, read more)
In a thread tagged impersonate and site-settings, Richie described an edge case (shared accounts) and asked to extend/disable the default 15-minute impersonation timer; RGJ pointed to an existing answer and suggested setting a very long duration (e.g. 24*60*365), which Richie happily confirmed works (read more, read more, read more)
#Theme component
A long-running theme-component thread got a fresh bump when MY_YISHI posted praise for the topic (“very good… big like for the author”), keeping the conversation alive even years later (read more)
#Feature
A proposal to allow category moderators to change ownership of posts resurfaced; nathank supported the idea—especially if protected by a site setting—while noting it may take time to gain traction since they were the first to vote in that moment (read more)
#Migration
A new seo migration help thread: AkarinLiu reported a significant drop in Bing “site weight” after moving from Flarum to Discourse and shared follow-up progress; merefield suggested comparing crawler views (e.g., using curl with a Google user-agent) between the old and new HTML outputs and using an AI tool to spot meaningful differences (read more, read more, read more)
awesomerobot weighed in on reports of “account no longer on hold” notifications on try.discourse.org, suggesting the daily restore process may be misbehaving and confirming the team would look into it (read more)
Yesterday’s meta energy in one sentence: we were both debugging mysterious restore-driven account messages and bedazzling avatars with Discord-style frames—a perfectly Discourse-flavored day.
Activity highlights included rapid fixes and workflow discussions across Support and UX—see, for example, the try.discourse.org hold-status fix shipped by david (read more) and multiple Calendar & Events improvements discussed and patched (read more, read more).
david confirmed a fix (and deployment) for try.discourse.org accounts incorrectly appearing “on hold,” pointing to the upstream change and noting it’s already live (read more).
anko127 asked how event “Going” avatar icons are sorted, and zogstrip explained it’s effectively by status then user id—stable, but not meaningful to end users—and followed up with a code fix (read more, read more).
Jagster reported Discourse search (and AI search) struggling with terms containing inline HTML like <sub> inside headings, raising concerns for WordPress-imported content and whether markup breaks tokenization (read more).
Accessibility questions continued: happyhappy asked for end-user best practices using the JAWS screen reader with Discourse, clarifying they meant practical “how to use JAWS on Discourse,” not just design guidance (read more, read more).
In a related accessibility thread, happyhappy also revisited JAWS keyboard navigation/shortcuts troubleshooting to confirm whether specific key patterns were tested and working as expected (read more).
The “avatar frames” hunt wrapped with a community-share outcome: asa shared a plugin repo for framed avatars after being asked if it would be published for others to use (read more).
#Migration
A Chinese-language migration/SEO report described a post-move drop in Bing visibility; HAWK noted SERP turbulence is expected after migrations and suggested verifying legacy URLs are 301 redirecting, then later marked it likely temporary based on typical Discourse migrations (read more, read more) seo.
“Icons in descriptions” remains a papercut: tag/chat/category icons still don’t render in some category/group description contexts, and chapoi suspected a theme/outlet interaction (base theme fixed, but meta-branded theme still affected) (read more, read more) meta-theme.
The events UX discussion continued from earlier work: nathank endorsed the idea of a more compact, mobile-friendly category calendar surface—expandable when needed—and called out the tension between /upcoming-events consolidation and category-level visibility (read more) calendar-and-eventseventscategories.
A “completed” UX thread got a victory lap: streamlined date/event insertion is now sorted for specified Calendar & Event categories, with a direct pointer back to the Events Categories feature work (read more, read more) calendar-and-eventscompleted.
#Community Building
A new “Awesome Community” project thread sparked discussion, with merefield pointing to the Discourse Discover inclusion option as a helpful related direction for growing community reach (read more).
Another community-building question asked whether searching specific keywords could show users a “gentle reminder” tip; HAWK noted there’s no built-in trigger from search terms today and suggested a theme component approach, while floating the idea of workflow-based triggers (read more) search.
#Enterprise
The “community ownership models” conversation dug into who should own a community internally: HAWK shared that Meta sits under Marketing at Discourse and framed support-driven community work as retention; Tris20 pushed for clarity on why ownership wouldn’t sit with Support/Customer Success if that’s where activity concentrates (read more, read more) enterprise-ready.
#Self-hosting
The multisite vs multi-container comparison got a crisp synthesis: merefield summarized the tradeoff as RAM efficiency vs flexibility (plugins, restart/upgrade isolation), and sketched when you might graduate to bigger orchestration patterns (read more).
A small but real rendering/markup bug: RGJ requested review attention on a fix for a stray <td> in topic-cards (and noted linting was already handled in the PR) (read more) topic-cards.
Account/email edge cases continue to get smoothed out: a reporter confirmed progress on the “Primary email has already been taken” issue when dealing with Gmail dot variants / secondary emails (read more).
#Feature
Admin UX around email changes was clarified: nathank noted only full accounts appear in the username field for merges, so the suggested path is merging into an existing account and then changing the primary email to the ex-staged account’s email (read more) users.
#Announcements
In the nested replies announcement thread, Larry_Baker asked what theme powered a screenshot, and Lilly replied it was “original foundation” with a WCAG palette—handy for anyone aiming for that look-and-feel (read more, read more) nested-replies.
#Site Management
Accessibility configuration nuance came up: happyhappy asked whether Discourse’s WCAG options mainly benefit partial-sight impairments vs “no sight” usage, extending the broader accessibility playbook discussion (read more) accessibilityhow-to.
david shipped a production fix for try.discourse.org users incorrectly showing as “on hold,” linking the upstream PR and confirming deployment (read more).
HAWK handled multiple support + strategy threads: they advised on Bing SEO fluctuations after migrations and emphasized verifying permanent redirects (read more, read more), pushed forward the “search keyword → tip” idea toward potential workflow triggers (read more), and added perspective on internal community ownership models framed around retention (read more).
zogstrip delivered two Calendar & Events improvements: they explained the unintuitive sorting of “Going” avatars and followed up with a fix PR (read more, read more), and confirmed event notification emails should include the Event description with a patch in flight (read more).
chapoi helped triage a lingering theme/UI regression where tag/chat/category icons don’t render in some description contexts, suggesting the issue may be specific to the meta-branded theme’s block outlet usage (read more).
Sign-off: Yesterday’s vibe was peak Meta—shipping quick fixes, debating who “owns” community success, and making sure your events and SERPs both show up in the right order.
A chat thumbnails/CDN vs raw S3 URL fix looks to have landed, per Lillyread more.
A UX nit with the “upcoming changes” page hiding notifications is pointed at a fix via martinread more.
A Chinese-language bug report (“disabling report description hides other descriptions”) got a fix pointer from zogstripread more.
(Additional active threads worth a skim: events UX follow-upsread more, accessibility naming/contrast discussionread more, and install/rebuild constraints when HTTPS to GitHub is unreliableread more.)
Interesting Topics
#Announcements
chapoi announced that AI helper suggestions (category + tags) now appear inline in the composer, including a frictionless “Choose for me” flow for the category chooser read more.
#Self-hosting
A long-running community hit a backup restore abort caused by a duplicate key blocking a unique index rebuild; troubleshooting walked through cleanup approaches (DB access/rails console), and ultimately reindexing guidance for older installs read more (with related “corrupt index” breadcrumbs here read more and a prior “could not create unique index” playbook here read more).
A refresher on multisite vs multiple containers: if instances can share plugins + SMTP, multisite is simpler; if not, separate containers (with a shared DB container as an option) may be the right tradeoff read more.
A report that transparent PNGs gain a white background on upload was traced to image conversion behavior (PNG → JPG); checking image quality settings was highlighted as the practical fix read more, with the relevant background on conversion behavior here read more.
A search edge case: inline HTML tags splitting tokens (e.g., parts of a word separated by <strong> / <sub>) can cause surprising search results; reproduction details and analysis were shared read more.
On category list UX, a French thread explored how some /categories layouts don’t visually indicate recent activity; the discussion weighed layout options and “activity indicators” for category boxes read more.
A plugin developer asked (中文) how to model array-of-object site settings via json_schema, especially when object properties need Discourse selectors like category rather than plain text fields; limitations and possible approaches were explored read more.
Feedback on the revamped calendar/event UX covered unexpected click targets (hero image linking to the image file rather than the topic), missing plugin outlets in composer/advanced settings, and CSS targeting concerns for custom fields read more.
A follow-up on streamlining event insertion clarified expectations around the per-event creation UI; the thread pointed to the newer “easier than ever to create events” improvements read more and the referenced event creation overview here read more.
A topic-cards rendering issue (“stray <td>”) progressed to a merge confirmation, tightening markup correctness in the component read more.
A chat/CDN integration bug where chat thumbnails bypassed s3_cdn_url and used raw bucket URLs appears resolved/merged, per follow-up notes read more.
A bug report noted that disabling a report description could hide other descriptions; a fix was linked directly from the team side read more.
In the calendar/events space, custom field naming rules caused crashes for ./- and limited persistence to certain casing/underscore patterns; the report includes reproducible steps and error output read more.
#Community Building
A community manager asked whether others are seeing a drastic drop in community activity, prompting broader reflection on forum positioning alongside SaaS support, feature requests, and changelogs read more.
#Enterprise
A candid thread on community ownership and governance models discussed how responsibilities map across support, customer success, and marketing—especially in smaller orgs without dedicated community headcount read more.
Falco shipped a notable enhancement to the Resenha voice rooms plugin, adding video (screen-share + webcam) behind a site settingread more.
chapoi was highly active across support + announcements, including:
Publishing the inline AI suggestions update and clarifying it only applies when AI helper is enabled read more, plus a quick follow-up confirmation read more.
Diagnosing a backup restore failure tied to duplicate rows/unique index rebuilds, guiding container/DB access steps and next actions read more and troubleshooting “you’re not in the DB yet” pitfalls read more.
Explaining why transparent images can lose transparency (PNG→JPG conversion) and pointing to the relevant setting read more.
Reproducing and analyzing HTML-tag-related search tokenization issues read more.
Weighing in on /categories layout choices and how some styles surface activity better than others read more.
Pointing an events UX follow-up to the newer “create events” improvements read more.
Continuing ongoing accessibility conversations, including clarifying WCAG/contrast naming read more and checking whether scrolling/nav improvements changed NVDA/Firefox experiences read more (related legacy thread: read more).
zogstrip linked a fix for a reported UI behavior regression (Chinese-language report) and referenced the upstream PR read more.
martin confirmed that a UX issue where upcoming-change notifications were hidden is addressed by an in-flight fix read more.
isaac continued hands-on testing in the Nested Replies testing area read more.
HAWK shared detailed perspective on community ownership models, discussing how governance and execution split across functions in a lean org read more.
gerhard provided deep technical guidance on the backup restoration failure, including explaining how broken indexes can allow duplicates over time and recommending cleanup + reindex approaches read more, plus a safer reindexdb route when permissions block REINDEX DATABASEread more.
If yesterday was any indication, today’s recipe is: reindex the old DB, keep your PNGs from turning into JPGs, and enjoy voice rooms that now do video.