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.