每日总结(UTC下午1点)

Today on meta.discourse.org

Key Stats

  • New posts (last 24h): 54
  • New topics (last 24h): 7

Top contributors (by posts/likes in the last 24h)

User Posts Likes
nicolsdennis 4 17
Eviepayne 5 4
Ed_S 4 4
sam 3 2
Lilly 2 11
nat 2 7
mcwumbly 2 4
lindsey 2 3
bmind 1 4
piffy 1 3

Top contributors from the Discourse Team (@team): nat (2 posts / 7 likes), mcwumbly (2 / 4), lindsey (2 / 3), sam (3 / 2).


Interesting Topics

Support

  • bmind reported that localized/translated pages were being hurt in search due to canonical handling, and nat confirmed a core fix has shipped and will be included after updating (read more). (Confirmation follow-up: read more)

  • Eviepayne flagged that the composer was ignoring default_composition_mode, and sam walked through repro checks + safe mode testing—ultimately pointing to a third-party plugin interaction as the likely cause (read more). (Original report: read more)

  • A busy community asked for “per-volunteer” archiving in the Support Mailbox so helpers can clear items from their view without hiding it from everyone else—surfacing a workflow gap for shared inbox triage (read more).

#Announcements

  • Discourse announced simpler email subject lines to reduce technical-looking clutter in inboxes, aiming to make communities feel less intimidating to non-technical members (read more). A related concern: some communities rely on category cues in the subject; see also the request around template display options (read more).

  • In Current Projects, lindsey noted that blog post styling components are now available for translation via Crowdin, unblocking localization work for those assets (read more). (For broader roadmap context, the April projects thread was also referenced elsewhere: read more).

  • The calendar subscription URL work continues to mature: after positive feedback, there was agreement that key UI affordances “should be in the plugin itself,” with a pointer to interim solutions in an “extra buttons” companion topic (read more; read more).

General

  • A member proposed an MMN (Meta Monthly Newsletter) run by the community, but feedback questioned the value vs existing summaries and cautioned that “user/staff of the month” voting can become a popularity contest (read more; critique: read more).

  • nicolsdennis shared a preview of Domniq, a Discourse-native Android+iOS app concept, including design explorations like app-wide custom color modes and chat UI styling (read more). Related inspirations referenced: a chat bubble component (read more) and the Horizon theme (read more).

  • In a second “Domniq” showcase, nicolsdennis previewed a premium landing page plugin for unauthenticated visitors—hero layouts, live stats, FAQs, and configurable sections aimed at turning “front page” traffic into engaged members (read more). (Companion app thread: read more)

#Site feedback

  • mcwumbly proposed a clearer home for lighter “I made a thing” posts: use General with the show-and-tell tag for now, and revisit structure once patterns emerge (read more). piffy immediately sanity-checked the direction by sharing an embeddings-based topic clustering map experiment (read more).

#Feature

  • A feature request floated a new notification level called “Obnoxious”, but the discussion quickly narrowed to a practical ask: thread-specific desktop notifications (not global browser push) so people can opt-in only where it matters (read more).

  • A thoughtful feature ideation explored protecting users during episodic unwellness (e.g., manic episodes): mcwumbly suggested “draft it to a trusted friend” patterns and even the possibility of opt-in, just-in-time AI feedback (“you sure you want to post this?”) (read more). Ed_S added adjacent concepts like scheduled send / undo-send time windows (read more).

  • Self-serve login control came up again: a request asked whether it’s possible to disable local sign-ups (hide Sign Up without CSS) while avoiding tricky authentication combinations—pointing to prior reports about invite only + auth skip create confirm interactions and differences across auth providers (read more; related: read more; auth context: read more).

development

  • CI pipelines hit friction when the minio_runner install script failed to follow a redirect, breaking shared GitHub Actions workflows and preventing Rails system tests from even starting in some plugin repos (read more).

#Self-hosting

  • Storage layout questions resurfaced: one admin asked whether /var/discourse and /var/lib/docker can live on different volumes, and follow-up clarified what’s actually consuming disk (notably the shared/standalone data vs Docker overlay/image layers) (read more).

Activity by the @team Group

  • nat confirmed a production-ready fix for translated pages + canonical SEO behavior and told the reporter the patch is available in the newest build (read more; update confirmation: read more).

  • mcwumbly established lightweight guidance for “show and tell” posts—routing them to General with show-and-tell while Meta watches for patterns worth formalizing (read more). They also contributed to the “future self / trusted friends” posting-safety brainstorm, suggesting DM drafts and even opt-in AI nudges (read more).

  • lindsey published an announcement detailing how Discourse is simplifying default email subject lines and how communities can adopt the changes (read more). They also shared a projects update: blog post styling components are now ready for translation in Crowdin (read more).

  • sam helped debug a “composer ignores default_composition_mode” report, recommending safe mode and identifying third-party plugin interference as the likely culprit (read more).


If you survived the push for “Obnoxious” notifications, at least your inbox gets a calmer ride with those newly simplified email subject lines. (read more; read more)

Today on meta.discourse.org

Key Stats

  • New posts (last 24h): 68
  • New topics (last 24h): 10

Top users (posts / likes in the last 24h)

User Posts Likes Recently seen in
Falco 6 26 Emoji search localization announcement (read more)
Canapin 3 19 Sharing forum customizations (show-and-tell) (read more)
eisammy 7 12 Discussion on bot-populated communities (read more)
Lilly 5 12 Admin email-change UX quirks (read more)
kirupa 4 10 “Mostly-dead” forum revived with bots (read more)
fuse 3 9 Topic deletion / visibility “random thought” (read more)
merefield 4 9 Locations plugin prototype + sponsor access (read more)
mcwumbly 7 6 Follow-up on deleted/private topic confusion (read more)
mcdanlj 1 3 releases.discourse.org readability feedback (read more)
tobiaseigen 2 2 “Access denied” on email verification link (read more)

Interesting Topics

#Announcements

  • Emoji picker search now works in your languageFalco shipped multilingual emoji keyword search (48 languages), unblocking long-standing localization pain where emoji search was effectively English-only (read more). Related context: the earlier request for translated aliases (read more) and the older “how do I support other languages?” support thread now answered via the new feature (read more).

  • Simpler email subject lines — the email UX discussion continued around making subjects clearer by default (and what to keep, like the usefulness of [PM]) (read more).

General

  • “I populated my (mostly-dead) Discourse forum with bots!”kirupa shared a show-and-tell experiment using AI bots with distinct personalities to generate topics and replies, sparking debate about community vs. “Dead Internet” vibes and the practical value of a personalized “daily briefing” forum (read more).

  • Random thought: notify contributors when a topic disappearsfuse wondered whether Discourse should PM or otherwise preserve contributors’ writing when a topic is deleted or becomes inaccessible (especially when you’ve written something substantial) (read more).

  • Modifications/features I made on my forums (and why)Canapin consolidated a set of pragmatic improvements they’ve built (including community-funding mechanics) and why each change helped, as a concrete “here’s what worked” show-and-tell reference for other admins (read more). Related: the donation progress bar component referenced in the write-up (read more) and the broader “where should people share?” meta discussion about show-and-tell culture/site structure (read more).

  • Releases.discourse.org feedback & suggestions — a quick but meaningful nod that recent changes made releases.discourse.org “a lot easier to read,” reinforcing that polish work on ancillary Discourse properties gets noticed (read more).

Support

  • Can a leaderboard top contributor have no topic or posts in their activity? — a neat edge case: yes, if the leaderboard is counting private-category participation (or even reading), it can look like a user has “no activity” while still ranking highly (read more). Related: Falco pointed to external point-award integrations as another factor (read more).

  • What happens to translations when an LLM changes? — after a model deprecation and switching LLM parameters, the key clarification was that existing translations remain and only missing items should be translated—helpful for admins watching token usage and progress bars (read more).

  • Videos and monetizing my Discourse community — a “what’s possible?” thread about selling access to instructional racing videos via a Discourse community, with early guidance leaning toward offloading video hosting/storage complexity elsewhere (read more).

  • AI triage examples not sent properly? — an important Discourse AI / automation report: examples appeared to be interpreted as part of the content being evaluated, causing every post to get flagged (and the model citing the example wiring details as if they were real) (read more).

ux

  • Admin changing email address of a member is still quirkytobiaseigen documented a confusing flow where email verification links fail with “Access Denied” while logged in as admin; workarounds include impersonation or alternative methods, but the UX mismatch versus admin expectations sparked discussion (read more). Related: the console-based approach for certain cases (read more).

#Feature

  • Tecnoblog’s Experience With Discourse Comments (Embedding) — ongoing embed feedback included a serious “can’t type in the text field” issue (notably for the first comment on mobile), Safari/iOS scroll quirks, and broader embed instrumentation concerns (read more).

#Plugin

  • Locations Plugin prototype + early access for sponsorsmerefield shared a prototype preview and outlined a sponsorship-based early access path (with invites rolling out and a “fixes first” promise for backers) (read more).

  • Trading Buttons plugin appears broken after an update — a report that a recent Discourse update removed category-setting options needed for the plugin UI to function, despite the plugin being enabled (read more).

Community Building

  • Accessing Discourse DB with DBeaver — a practical guide to safely exposing Postgres from a Dockerized Discourse for use with GUI clients (port mapping, firewalling, and switching auth to scram-sha-256, with an emphasis on private networking like Tailscale) (read more).

Activity by the @team Group

  • Falco

    • Announced the multilingual emoji search upgrade (48 locales), including examples of non-English keywords now matching correctly (read more).
    • Clarified translation behavior when switching LLM parameters: old translations are retained and only missing items should be processed going forward (read more).
    • Helped explain “invisible” leaderboard activity and pointed to external gamification integration possibilities (read more).
    • Stayed engaged in embed-related troubleshooting and follow-ups in Tecnoblog’s embedding thread (read more).
    • Closed the loop on an older “emoji search in other languages” question by linking to the new announcement (read more).
  • mcwumbly

    • Responded to confusion caused by a topic becoming inaccessible, acknowledged the internal mishap, and signaled the content should reappear once things are untangled (read more).
    • Nudged show-and-tell sharing toward clearer expectations (inspiration/feedback vs. reusable components) and explored how meta should structure those conversations (read more).
    • Added thoughts to a sensitive feature discussion around safer posting flows (e.g., “undo send” style ideas) for users dealing with episodic unwellness (read more).
    • Shared a “quote-to-draft” reading workflow hack in the long-running “chapters for long topics” thread (read more).
  • chapoi

    • Chimed in on the bot-populated forum #show-and-tell: appreciated the styling, questioned “community” framing, and highlighted the “stay up to date on interests” angle (read more).

That’s a wrap—may tomorrow bring multilingual emoji searches, fewer disappearing topics, and bots that know when to stop posting.

Today on meta.discourse.org

Key Stats

Over the last 24 hours (2026-04-25 → 2026-04-26):

  • New posts: 43
  • New topics: 5

Top contributors (posts • likes)
(Links go to a representative recent post from each user.)

  • Ginger_Marcus — 3 posts • 5 likes — reflections on tightening edit windows to reduce “impulsive posting” in a sensitive moderation/UX discussion (read more)
  • Falco (team) — 3 posts • 2 likes — guidance on automation triage agents and how “examples” are actually injected into the prompt history (read more)
  • darkpixlz — 3 posts • 2 likes — launched a “shortlink router” utility and followed up on privacy/logging concerns (read more)
  • kirupa — 2 posts • 5 likes — shared implementation details for populating a forum with bots and content sources (read more)
  • ted — 2 posts • 5 likes — weighed in on guardrails for regrettable posting and later on monetization/legal implications (read more)
  • nathank — 1 post • 5 likes — excitement about the Meta theme rebuild and “Blocks API” direction (read more)
  • Moin — 1 post • 4 likes — pointed to the revert control in wiki edit history (and who can actually use it) (read more)
  • ondrej — 1 post • 3 likes — clarified permissions: category mods/TL4 can’t revert revisions (read more)
  • pfaffman — 1 post • 3 likes — pragmatic self-hosting guidance on separating Docker/Discourse volumes (read more)
  • RGJ — 1 post • 2 likes — cautioned against framing episodic unwellness as “accountability training” (read more)

Interesting Topics

#Feature

  • Ginger_Marcus shared a real-world moderation experiment: shortening the edit window to make conversations more coherent (and reduce context drift after OP edits), while RGJ pushed back on “accountability” framing for episodic unwellness; ted noted adjacent use-cases like rage-bait or drunk posting (read more)

Support

  • A quick “how do I roll back a wiki page?” turned into a permissions gotcha: Moin described the revert UI, but ondrej clarified category moderators/TL4 don’t have revert rights per the permissions reference (read more)

  • Monetizing via gated video/content raised bigger questions than plugins: ted highlighted that paying creators can introduce legal and operational complexity, not just technical setup (read more)

  • In automation + ai triage, Falco recommended using a “Triage with AI Agent” and the flag tool instead of string-return prompts—then dug into why example messages were causing unintended “flag everything” behavior (read more)

  • Translation workloads + LLM switching: Falco suggested enabling verbose logs and checking the AI API audit logs table to reconcile high token usage with “no progress” stats (read more)

  • OpenID Connect login nuance: a new thread asked whether allowed email domains is validated against the email returned by OIDC at account creation time (read more)

  • Discourse ID accounts: mcwumbly confirmed that recent changes now allow users to change username/name in user settings, even when the account was created via Discourse ID (read more)

#Self-hosting

  • “Can /var/discourse and /var/lib/docker live on different volumes?” got a pragmatic answer: Discourse doesn’t care where Docker stores its data—optimize for maintainability and clarity first (read more)

  • A HestiaCP install run hit multiple snags: port conflicts with 80/443 templates and a puzzling GitHub/network failure that the OP later traced to DNS resolver behavior (Cloudflare/Google DNS vs internal DNS) (read more)

#Extras

  • A new utility, Discourse Shortlink Router, proposes a “swap hostname, keep path” approach to sharing admin/support URLs—prompting immediate questions about trust, logs, and what data might be exposed (read more)

  • The ICS → Discourse importer thread documented a subtle behavior: --time-only-dedupe isn’t strictly time-only because it still applies “close enough” location checks—leading to a helpful “signal vs noise” outcome for room changes vs feed churn (read more)

ux

  • A brand-new UX concern: “Edit history visible to public” doesn’t appear to cover author/owner changes on the first post/topic—raising questions about transparency, moderation workflows, and whether this is a bug vs missing feature (read more)

#Site feedback

  • Meta’s theme rebuild continues to generate excitement: nathank called out how the new tooling could help Discourse move from “a website component” to “the full website,” especially for small orgs seeking a simpler stack (read more)

General

  • A lively #show-and-tell: kirupa described bootstrapping a “mostly-dead” forum with bots, curated sources, and plans to resurrect old topics with modern responses—plus discussion about translation using Discourse AI (read more)

#Theme

  • After upgrading to v2026.4.0-latest (Ember v6.10.1), a report in the FKB Pro theme thread shows a client-side failure: missing ember-this-fallback/this-fallback-helper, effectively breaking the forum UI until resolved (read more)

Activity by the @team Group

  • Falco helped troubleshoot why AI triage “examples” were backfiring: they explained that examples are sent as previous turns, so they must mimic the exact expected model response (including what a tool call should look like) and asked which LLM was in use (read more). They also suggested a cleaner architecture using Triage with AI Agent plus the flag tool (read more). In a separate AI-translations thread, they advised turning on verbose logging and checking AI audit logs to verify translation progress vs token burn (read more).

  • mcwumbly responded to concerns that public edit history doesn’t reflect author/owner changes, flagging it as likely a bug or missing feature and moved it to UX for discussion (read more). They also confirmed a Discourse ID improvement: users can now change their username/name directly in settings after recent changes (read more).


Yesterday, Meta proved two things: bots can revive sleepy communities, and a 60-second edit window can keep the mustard-fueled hot takes delightfully accountable.

Today on meta.discourse.org

Key Stats

In the last 24 hours: 50 new posts and 10 new topics (including Kali Forums Bug, Decouple passwordless email login/signup…, and IPBv4 migration script issues).

Top contributors (posts + likes in the last 24h)

User Posts Likes Recent reference
Moin 3 7 Helped isolate a theme/customization issue via Safe Mode in Kali Forums Bug
merefield 1 3 Shared a new 3D view update in Community Network Visualisation
Ethsim2 2 3 Proposed “true local passwordless” auth config in Decouple passwordless…
Revan_Manaflı 2 2 Reported a “blue nameless button” UI glitch in Kali Forums Bug
NateDhaliwal 2 2 Flagged a mobile tag truncation issue in Long tags are cut off at screen edge
angus 1 2 Clarified WP Discourse cookies behavior in Cookie information request
Lilly 3 2 Added compliance context (COPPA/GDPR) in Age requirement for Discourse
Canapin 3 2 Asked for clarity on gallery open behavior in :framed_picture: Topic Gallery
RGJ 2 2 Explained core behavior around “automatic groups” in Discourse Dynamic Groups
tobiaseigen 1 1 Revived an older integration thread in How to deploy a SSO bridge…

Team activity snapshot: mcwumbly contributed in new product launch community reconfig and a mobile UI report follow-up on long titles; chapoi stepped in to close an off-scope support request in Kali Forums Bug.


Interesting Topics

Support

#Feature

ux

#Plugin

  • Group visibility/admin UX edge cases: nathank noted that marking groups “automatic” removes the Membership tab entirely (making some admin edits awkward), and RGJ clarified the behavior is core—then flagged potential plugin maintenance follow-up—in Discourse Dynamic Groups.

  • Gallery navigation ergonomics: Canapin asked whether the gallery icon should open from the current/unread post rather than always from the start, especially on mobile, in :framed_picture: Topic Gallery.

  • API/content pipeline improvements: a follow-up on resolved image URLs and possible integration with MCP was raised in Discourse to Markdown Plugin (markdown ai), with an explicit callout to MCP compatibility via Discourse MCP is here.

  • Visualization niceties: the long-running visualization thread got an update with a “snazzy” 3D view option shared by merefield in Community Network Visualisation.

wordpress

  • Cookie inventories and compliance: miednr asked for a detailed cookie list attributable to the WP Discourse plugin; angus replied that the plugin doesn’t set its own cookies (noting WordPress auth cookies as standard behavior) in Cookie information request.

#Self-hosting

#Community Building


Activity by the @team Group


Yesterday proved that Safe Mode is still the quickest way to turn “mystery blue buttons” into actionable theme fixes—right as everyone else was busy debating magic-link logins and chasing down cookie lists.

Today on meta.discourse.org

Key Stats

In the last 24 hours, Meta saw 94 new posts across 15 new topics (compiled from activity in the threads linked below, e.g. read more, read more, read more).

Top users (posts + likes in the last 24h)

User Posts Likes
Lilly 13 19
manuel 4 17
ganncamp 4 12
Falco 3 12
pmusaraj 1 10
pfaffman 4 6
awesomerobot 1 5
supermathie 1 4
RGJ 2 4
nat 2 4

(Notable team presence: manuel, Falco, pmusaraj, awesomerobot, supermathie, nat, chapoi across the topics cited above — e.g. read more, read more, read more).


Interesting Topics

Support

bug

development

  • manuel published a repo of Claude Code “skills” for theme authoring and the Blocks API, including reference material and an example theme, in Skills for authoring themes and blocks.
    In follow-up, manuel explained how Blocks shift theme customizations toward “layout frames” per outlet and showed where initializer-driven layouts live read more.

  • CI friction popped up again around dev tooling, with a report that a Minio installer breaks CI affecting workflows in Minio installer breaks CI.
    This kind of thread is a bellwether for “dev environment parity” work read more.

#Theme

#Feature

Marketplace

  • A “paid build” request sparked healthy scope/budget reality checks: a community platform owner requested help for a v2 launch (theme QA + custom member portal/profile work) in [Paid] Discoure Community Platform - development for v2.
    The thread quickly focused on clarifying milestones, fragility of nav injection, and realistic pricing expectations read more.

#Self-hosting

  • A self-hoster asked how to run Discourse behind an external reverse proxy and disable Let’s Encrypt in the docker setup in Fresh install without lets-encrypt on docker.
    The canonical reference thread often cited for this area is “Allow SSL/HTTPS for your Discourse Docker setup” read more.

Activity by the @team Group


That’s a wrap—may your Data Explorer tables grow taller than five rows, your category badge text stay readable while scrolling, and your Blocks layouts snap neatly into place.

Today on meta.discourse.org

Key Stats

Top contributors (posts + likes received on recent posts)

User Posts Likes Where they were active
lindsey 8 29 Announced new Topic Voting badges and enabled them on Meta: read more
putty 6 6 Shared moderation/workflow ideas for “request edit” via flags: read more
pfaffman 4 4 Gave maintainability guidance on theme/dev conventions in a Marketplace request: read more
Lilly 3 7 Provided CSS approach to limit a custom flag option to staff UI: read more
Thiago_Mobilon 3 6 Reported iOS horizontal scroll behavior in embedded comments: read more
pmusaraj 3 5 Narrowed a repro case + linked an upstream fix for the scroll issue: read more
david 2 14 Published the April 2026 release notes pointer: read more
HAWK 2 5 Clarified UK OSA/DSA compliance scope for Discourse sites: read more
darkpixlz 2 5 Asked about enabling new badges + noted backfill behavior: read more
martin 1 6 Proposed new defaults for TL3 requirements behind an upcoming change: read more

Interesting Topics

#Announcements

  • lindsey introduced four new Topic Voting badges (Daydreamer/Brainstormer/Innovator/Visionary) to celebrate ideas that attract votes, then flipped them on for Meta; follow-up clarified backfill + notification rules (only notify if earned in last 2 weeks, and only the highest badge if multiple thresholds are met). read more
    Related context: earlier Topic Voting improvements: read more and long-running “Vote Notifications” discussion: read more

  • The April 2026 monthly release dropped, with david pointing admins to the full 2026.4 changelog for details on what shipped. read more

  • martin announced an upcoming change to make TL3 achievable on very active forums by reducing viewed/read caps and increasing minimum promotion duration (defaults only; manual overrides remain untouched). read more

#Feature

  • In an embedded-comments rollout, Thiago_Mobilon shared screenshots of horizontal scrolling on iOS that seemed to affect admin sessions; pmusaraj confirmed the “admin-only” angle and pointed to a core fix via PR. read more

  • A long-running gamification request got a quick victory lap: Falco noted per-leaderboard scoring values were merged, and Lilly highlighted the new granular scoring configuration options. read more

Support

  • A moderation workflow pain point: requesting that a user must edit a topic before it can proceed. Suggestions ranged from approvals to converting to PMs, but the most practical path discussed was using custom flags, plus UI-limiting them to staff via CSS. read more
    Supporting links: category-level approvals flexibility: read more and the “staff-only custom flag” CSS approach: read more

  • “Age requirement for Discourse” turned into a compliance reality-check: HAWK clarified UK Online Safety Act scope for U2U platforms (and noted DSA requirements in the EU), emphasizing that jurisdictional exposure matters even for self-hosters. read more

  • A Chinese-language support thread asked where to enable allow_user_api_key; the resolution was simply pointing to the User API Keys specification doc topic. read more
    Reference: the spec itself: read more

  • Event notifications in French (“Notifier un évènement à un groupe”) surfaced confusion around bulk invitations/notifications where only the first user seemed to receive the invite, prompting a call to rethink group notification flows. read more

events

  • Discourse shared an Office Hours replay focused on Discourse AI for Enterprise, covering semantic/conversational search and automation patterns for moderation and ops work. read more
    Related: the webinar/office-hours program context: read more

ux

  • The calendar/events UX thread about “all day events” effectively got closed out by a now-shipped All day event checkbox in the create-event modal, removing the “00:00 confusion” problem. read more
    Related feature request that’s now completed: read more

  • Another calendar UX improvement also landed: event exports now include event descriptions in the .ics file, improving the “save to calendar” experience. read more

  • A completed calendar request was formally closed, with an offer to split follow-ups into a new feature topic if needed (good housekeeping that keeps feature scopes clean). read more

bug

  • Oneboxing edge case: MediaWiki-style image HTML pages sometimes break oneboxes (especially on certain MediaWiki hosts), and the suggestion was to detect Content-Type: text/html to avoid treating it as an image. read more

  • A “document tree depth exceeded” middleware issue got a couple fixes linked directly to PRs, with Falco flagging it for review/visibility. read more

#Theme component

  • The “Video Upload to YouTube and Vimeo” theme component thread progressed toward permission scoping: multiple folks emphasized restricting upload access by group to prevent abuse, and Arkshine discussed Vimeo OAuth work so uploads can go to a user’s Vimeo space. read more

#Plugin

  • The “Discourse to Markdown” plugin discussion explored a clean integration path with Discourse MCP: try Accept: text/markdown first, then fall back to JSON API with include_raw=true. read more
    Related: Discourse MCP announcement thread: read more

#Community Building

  • A fresh, practical write-up shared a lightweight pattern for using Discourse as an LMS/course tracker built around categories/topics + Docs, with a small plugin + theme component to compensate for “notification decay” in lesson progress. read more
    Dependency referenced: Doc Categories plugin: read more

Activity by the @team Group

  • lindsey shipped and enabled the new Topic Voting badges, then clarified how the badge backfill + notification throttling works to avoid retroactive notification spam. read more and notification behavior detail: read more
    Also closed the loop on calendar UX improvements by pointing to shipped solutions for all-day events: read more and .ics event descriptions: read more, and wrapped up a completed calendar-default-view request: read more

  • david published the pointer for the 2026.4 (April 2026) release notes. read more
    He also added an important implementation note elsewhere: group sync is now available for OIDC, pointing admins to the plugin topic and changelog. read more (referencing the OIDC plugin’s “group sync” documentation: read more)

  • martin proposed an “upcoming change” to adjust TL3 default requirements, reducing caps for topics viewed/posts read while increasing minimum duration—aimed at very active communities where TL3 becomes unreachable. read more

  • HAWK provided jurisdiction-specific clarification on UK OSA applicability (and noted DSA considerations), emphasizing that sites “may have users from” regulated regions and should plan compliance accordingly. read more

  • pmusaraj helped narrow down an embedded-comments horizontal scroll issue to an admin-context repro and linked the upstream fix PR that should resolve it. read more

  • Danielle shared the AI for Enterprise Office Hours replay, outlining how AI search and automated moderation aim to remove repetitive work while keeping humans in the loop. read more

  • Falco flagged multiple “this is now fixed/shipped” updates across the day:

    • Noted per-leaderboard scoring values were merged. read more
    • Linked PRs for the middleware document tree depth exceeded fixes. read more
    • Suggested an LLM configuration troubleshooting step (“disable thinking”) in an AI translations thread. read more
  • fzngagan outlined a practical moderation workaround for “force user edits” using the flag system’s Hide Post flow (while noting limitations around custom messaging), and pointed back to approvals as the more proactive approach. read more


If yesterday’s Meta had a theme, it was “ship the badges, fix the scroll, and let calendars finally have all-day events without doing midnight math.”

Today on meta.discourse.org

Key Stats

  • New posts (last 24h): 61
  • New topics (last 24h): 10

Top contributors (posts / likes)
(Each name includes a recent in-window reference post.)

User Posts Likes Recently seen in
RGJ 5 8 Invite UX edge cases: read more
Moin 5 7 Infinite scroll + homepage options: read more
Lilly 4 6 Invite button UX mismatch: read more
pfaffman 3 6 Theme fix + PR pointer: read more
martin 2 3 TL3 default behavior clarified: read more
Richie 2 2 Email subject line nuance: read more
nathank 2 4 “This has always irked me” re: invites: read more
josir 1 3 Docker SSL/LE workaround documented: read more
awesomerobot 1 3 Privacy risks of age verification: read more
system 1 3 New Discover post discussion: read more

Interesting Topics

Support

  • RGJ and others debated what an “age requirement” should mean in practice—ranging from parental responsibility to privacy-preserving verification—while awesomerobot highlighted the risk profile of third-party identity services and why zero-knowledge approaches may reduce retained data exposure (read more).
    Related: existing “enter your age” UI approaches like Discourse age check also resurfaced as a lower-stakes alternative.

  • A newly-migrated (52k-topic) community asked for alternatives to infinite scroll so their footer stays reachable; chapoi stated pagination isn’t on the roadmap, while others suggested shifting the homepage to categories or rethinking footer importance (read more).
    Related: footer workarounds and components were referenced (e.g. Easy Responsive Footer).

  • A Windows 7 compatibility detour turned into a practical question: can admins customize the “unsupported browser” messaging to point users at viable alternatives? Moin explained it’s a static HTML view plus an editable text string (js.browser_update) and suggested testing via old browsers/BrowserStack (read more).
    Related: what users see on old browsers was demoed here: read more, and the broader text customization guide is here: read more.


ux

  • A UX paper-cut: invite creation controls appear on other users’ profiles, but the invite is still created/sent as the clicking user—making the placement misleading and “irk-y” to multiple admins (read more).
    The core mismatch (“looks like it’s on their behalf, but isn’t”) was spelled out clearly by Lilly (read more).

  • A closely-related UX issue: even when a user’s public profile is hidden, an Invite tab can still show (even though it doesn’t leak hidden info), creating confusing navigation and expectations (read more).
    Cross-reference to the underlying behavior thread: read more.


#Announcements

  • The announcement about default changes for Trust Level 3 requirements prompted clarification on how admin overrides behave; martin confirmed existing admin-set values are preserved, and “Reset” will reveal the new defaults when the upcoming change is enabled (read more).

  • On simpler email subject lines, discussion centered on whether PM-vs-public context needs to be present in email subjects; participants argued that email clients can obscure the distinction even if the web UI makes it clear (read more).


bug

  • A self-hosting performance tweak became a debugging thread: adding the enable-ruby-yjit.yml template set RUBY_YJIT_ENABLE=1, but the reporter still observed YJIT disabled in runtime checks; the back-and-forth focused on whether the test method was checking the “right Ruby process” and what might be overriding startup behavior (read more).

  • A moderation edge case: a flagged post (that originally created a topic) became hard to restore after the author was pushed to TL0 and locked; restoring failed until the author was unlocked and moved back to TL1. The request: give admins clearer UI guidance instead of a generic error (read more).

  • A chat notifications anomaly: a user reported being “pinged” multiple times (8) by what should have been a single mention, with all notifications pointing to the same message (read more).

  • AI Helper editing concerns resurfaced: “Proofread” reportedly breaks or alters quotes, which can be especially problematic in contexts where quoted material must remain exact (e.g., religious texts) (read more).
    Related structured-data/formatting thread seeing continued attention: read more.


#Self-hosting

  • Two different restore failures highlighted a common theme: database object collisions during restore/migrate. One restore hit a PG::DuplicateTable error involving a plugin table (read more); another showed “type already exists” errors alongside Sidekiq/permissions noise, with suggestions pointing toward restoring into a clean DB and avoiding collisions (read more).
    Related: a “belt and suspenders” approach to deletion safeguards was also discussed recently in the context of permanent deletes: read more.

  • A small but useful docker note was documented: how to disable Let’s Encrypt / SSL templates in a container setup by commenting out the relevant template includes (read more).


#Theme

  • The popular FKB Pro theme thread continued to absorb fallout from newer Ember versions: admins reported “forum unusable” errors (Could not find module ember-this-fallback/this-fallback-helper), and pfaffman pointed to a working repo and a PR to address it (read more).
    Related “oh no my theme broke” admin panic is also mentioned in the restore-debugging story: read more.

#Plugin

  • The Contact Form plugin received a maintenance update after failures on recent Discourse versions, with the author noting they’d updated the plugin to restore compatibility (read more).
    Related auth/integration topic still active in the background: OIDC account association troubles continue here: read more.

blog

  • A new “Discourse Discover” installment highlighted niche hobbyist communities and the specific expertise that makes forums work; the companion topic is live for discussion and link-sharing to the featured communities (read more).
    Related community enablement content: the moderator program webinar recording also got a fresh link drop: read more.

#Extras

  • A tool pitch: SuperHref proposes detecting dead Amazon/eBay links and swapping in related products; Bas asked the practical question—has it been tested on a Discourse instance, and what were the results? (read more).
    Related “Discourse + chat/workspaces” experimentation also continues elsewhere: read more.

Activity by the @team Group

  • awesomerobot weighed in on privacy and security tradeoffs in age verification, pointing to real-world breach risk and why minimizing retained personal data matters (read more).

  • chapoi firmly set expectations on infinite scroll: no roadmap plans to add pagination to topic lists, and suggested alternative approaches like custom landing pages/homepage configuration (read more).
    chapoi also pushed back on framing age-gating solely as “kids misbehaving,” raising the accountability/anon tension in the same discussion (read more).

  • martin clarified how the site setting default override system interacts with the updated TL3 defaults—especially what “Reset” will show when upcoming changes are enabled/disabled (read more).

  • Falco challenged the YJIT troubleshooting approach, arguing the check was inspecting a newly spawned Ruby process rather than the web server’s running process environment, and suggested inspecting the Pitchfork process environ instead (read more).

  • Bas pressed for real-world validation on the SuperHref idea, asking whether it’s been tried on Discourse and what the findings were (read more).


Yesterday’s vibe: invite buttons tried to show up on the wrong profiles while infinite scroll refused to stop—at least the team kept the conversation grounded (and the footers… aspirational).

Today on meta.discourse.org

Key Stats

Last 24h snapshot (2026-04-30 → 2026-05-01): 78 new posts and 8 new topics, with much of the discussion concentrated around infinite scroll policy, front-end regressions, and admin/email customization questions (e.g. read more, read more, read more).

  • New posts: 78

  • New topics: 8 — notably:

    • “Addictive design with infinite scrolling” read more
    • “Ember-this-fallback deprecations crash in the deprecation handler” read more
    • “New ai docked composer” read more
    • “How can I hide category descriptions when creating a new topic?” read more
    • “Change default Email Title for ‘[Discourse Meta] Summary’ Is it possible?” read more
    • “Auto-categorize topics using AI” read more
    • “永久删除帖子出了问题?” read more
    • (Plus continued activity across bugs/support threads like “Bug Regarding Pings” read more)
  • Top users (posts / likes in the last 24h):

    • Falco — 6 posts / 15 likes
    • Lilly — 7 posts / 12 likes
    • chapoi — 3 posts / 15 likes
    • Jonathan5 — 3 posts / 14 likes
    • merefield — 3 posts / 5 likes
    • Moin — 3 posts / 4 likes
    • RGJ — 2 posts / 8 likes
    • ted — 2 posts / 5 likes
    • david — 2 posts / 4 likes
    • HAWK — 1 post / 3 likes

Interesting Topics

General

  • mcmcclur asked the team to reconsider Discourse’s stance on pagination vs. infinite scroll in light of “addictive design” concerns and potential legal exposure; chapoi pushed back that the harm is mostly about algorithmic feeds/variable rewards rather than Discourse’s chronological lists read more.
    Related threads and context: a recent pagination request in French read more, plus a “small screens / old browser friendly” UI workaround mentioned as an alternative read more.

bug

  • A pings/mentions regression got acknowledged by lindsey (“this happened to me as well”) and then quickly patched by Falco, linking the fix PR for confirmation read more.
    If you’ve seen inconsistent pings lately, this is the thread to watch read more.

  • RGJ reported that missing ember-this-fallback/* modules were getting injected into compiled JS, making it harder to identify the real deprecation source; david confirmed .hbs should still work and shipped a core fix with a backport planned read more.
    The report includes examples of the failing module imports and plugin/theme impact read more.

  • The AI docked composer (tags composer + ai) was flagged as “nice but buggy,” with reports of editing/quoting/sidebar glitches on desktop and lockups on mobile; sam replied that keegan is already working on it and will update the thread read more.
    Adjacent AI tooling discussion also popped up in the proofreader helper thread (quotes being affected, model choice, grounding examples) read more.

Support

  • A deep-dive into YJIT enablement detection: Falco clarified how DISCOURSE_YJIT_ENABLED and Ruby’s ENV toggles actually behave, and the OP ultimately discovered their confusion came from sudo scrubbing environment variables (resolved) read more.
    The “aha” moment (and the exact command fix using sudo -E) is documented by the OP for future admins read more.

  • An admin hit an “[Admin Notice] One of your themes or plugins contains code which needs updating (id:discourse.user.userOptions)” warning alongside confusing notification behavior; troubleshooting focused on identifying which customization triggered the notice and reviewing app.yml plugin lists read more.
    The thread also cross-references the “bundling more popular plugins with core” change as possible background context read more.

  • The age requirement / identity verification conversation continued with HAWK arguing that purely non-verified communities risk becoming bot magnets, and emphasizing the difficulty of treating the underlying problem as “just parenting” read more.
    The thread also calls out the regulatory/fine landscape (e.g., COPPA concerns) as a practical driver for some communities read more.

  • A subtle gotcha in unsupported browser messaging: paco found that customizing js.browser_update didn’t change the message on very old Firefox, and Falco explained why—JS (and thus JS translations) is intentionally not running in those blocked browsers read more.
    Follow-up investigation dug into what “very old” means and how the block logic is applied read more.

  • A small UX/theming tweak solved: hiding category descriptions inside the category chooser can be done with a simple CSS rule; Lilly provided the snippet and the OP confirmed it worked read more.
    This is a handy pattern for sites that want a cleaner composer UI read more.

  • “Can I change the default subject of digest/summary emails?”—NateDhaliwal pointed to user_notifications.digest.subject_template as the relevant site text to explore for self-hosts read more.
    The initial misunderstanding (asking about Meta’s own emails vs. a self-host) is captured in-thread for clarity read more.

  • A Chinese-language support question: admins saw “0 posts that need to be permanently deleted” when trying to permanently delete a topic, and asked what to do next read more.
    If you’ve run into edge cases around the deletion queue, this thread is the starting point read more.

#Announcements

  • Discourse’s embedded comment system positioning got clarified: JimCanto asked whether it’s meant to compete with Disqus, and Falco confirmed “yes,” highlighting the “bring readers in via blog comments without giving up data/control” use case (including on the free plan) read more.
    This is particularly relevant for SSO/private communities that still want public-facing touchpoints read more.

  • Email UX continues to be refined: the “simpler email subject lines” discussion added another admin perspective—when reply-by-email is disabled, ambiguity around “replying by email” isn’t top-of-mind, but clarity still matters read more.
    If you’re tuning email deliverability and comprehension, the thread is worth a skim read more.

development

  • Theme/block authoring got a jolt of inspiration: manuel shared experiments using AI design tooling to prototype wild homepage concepts (including the memorably titled “Newspaper from Hell”), showing how fast iteration can surface novel block layouts read more.
    Related theme-component chatter about “Blog Post Styling” continues too (still seeing update issues) read more.

#Site_Management

  • A new official guide explains how to auto-categorize topics using AI triage by combining the ai Discourse AI plugin with Discourse Automation, including prerequisite setup and example agent prompts read more.
    This sits nicely alongside other ongoing “AI in operations” discussions (e.g., proofreader behavior and quotes) read more.

Activity by the @team Group

  • chapoi weighed in on the infinite scroll vs. addictiveness framing, arguing Discourse lacks the algorithmic “variable reward” mechanisms typically implicated by research, and suggested de-escalating the thread unless practical workarounds emerge read more.
    They also answered an email-customization question—clarifying that per-user customization of subjects isn’t a thing in the way the OP initially asked it (before the self-host clarification) read more.

  • Falco closed the loop on multiple threads: they posted the fix reference for the pings regression read more, provided the authoritative explanation/solution on YJIT enablement detection and toggles read more, and confirmed the practical limitation of customizing js.browser_update when JS is blocked in old browsers read more.
    They also pointed people back to the already-landed fix for AI proofreader/quotes and asked about adding examples to ground custom proofreader agents read more.

  • david acknowledged and investigated the ember-this-fallback deprecation crash report, then shipped/linked a core PR and noted it would be backported to 2026.4 read more.

  • HAWK added a key perspective to the age/verification debate—warning that non-verified communities may increasingly be the only ones bots can join, and reinforcing that the underlying safety/regulatory problem can’t be hand-waved away read more.

  • lindsey confirmed the pings bug was reproducible on their end and signaled it was being investigated before the fix landed read more.

  • manuel shared tangible theme/block prototypes created via AI-aided exploration (brutalist editorial layout, dense Japanese-style portal), illustrating a faster path from “idea” to “block concept” for theme authors read more.

  • sam acknowledged the AI docked composer bug report and pointed to ongoing work (with an upcoming update from keegan) read more.

  • awesomerobot asked for sources in the infinite scroll/addictiveness discussion, prompting participants to bring research citations into the thread read more.


Yesterday’s vibe check: between doomscroll-law hypotheticals and a theme prototype literally dubbed “Newspaper from Hell,” Meta managed to be both conscientious and wonderfully dramatic.

Today on meta.discourse.org

Key Stats

  • New posts (last 24h): 93
  • New topics (last 24h): 7

Top users (posts / likes in the last 24h):


Interesting Topics

#Theme component

  • RGJ shipped a new theme component that replaces auto infinite-loading with a manual “Load More” interaction, with discussion around mobile ergonomics and a discovered core limitation (where DiscoveryTopics doesn’t pass canLoadMore) in the follow-up thread: Load More Button. Related context: the broader debate that motivated it lives in Time to reconsider infinite scroll?, plus install docs like How to install a theme or theme component and the Beginner’s guide to using Discourse Themes.

  • Icon usability feedback popped up again—this time about mirrored “back/forward” affordances in edit history—via a specific UI example in Discourse Lucide Icons (request: make the icon pairings less ambiguous).

  • A long-running theme enhancement got a new question: whether Created Topic Sort can also appear while browsing a tag page (where the option currently disappears): Created Topic Sort read more.

  • A compatibility/migration concern resurfaced for a popular official component—whether the update depends on a particular Discourse core PR and how compatibility branches behave—discussed in Blog Post Styling.


#Self-hosting


Support


General


ux

  • Draft reliability concerns resurfaced: users want a way to verify drafts will save before closing, especially when content is mostly quotes/short text and doesn’t always trigger the save behavior they expect: How do I ensure my draft will be saved…?.

  • A “completed” feature still had a usability gap: users can’t easily view all reactions in the post reaction tooltip without knowing horizontal scrolling is supported (and some devices/mice make that difficult): Ability to display all the likes/reactions on a post.


bug

  • The new AI docked composer saw rapid iteration: fixes landed and more were queued to address edit issues and mobile quirks, with explicit design notes about RTE-first UX and why markdown preview isn’t shown in docked mode: New ai docked composer.

#Announcements

  • Continued feedback on the modernized Foundation theme focused on WCAG palette button borders, perceived affordance (buttons “floating”), and other subtle contrast/styling regressions, plus cross-linking to the mobile font-size report: Modernizing the Foundation theme.

ux (theme/component ecosystem)


Activity by the @team Group

  • Falco helped untangle hidden/advanced image optimization settings by clarifying which composer setting controls triggering vs the width target, and corrected how to verify values in Rails console: Composer image resize threshold, plus follow-ups on checking the setting correctly at post 11 and a longer-term UX tradeoff discussion at post 13.

  • keegan provided an implementation/status update on fixes and improvements for the docked AI composer, referencing active PR work and explaining the “no markdown preview” decision in docked mode: New ai docked composer.

  • derek identified Foundation modernization styles as the source of a category badge color regression, and linked a patch PR for the affected component: Issue with font colour in category badges.

  • southpaw requested key hosting/self-hosting context to diagnose why a site couldn’t be taken out of read-only mode (noting hosted-plan constraints): Read Only Modes in Discourse.


Yesterday’s vibe check: we debated whether infinite scroll is “addictive,” then promptly built a button to make the law (and your thumb) happy.

Today on meta.discourse.org

Key Stats

A lot of the visible momentum clustered around theme/UI polish and “is Discourse infinite scroll actually infinite?” philosophy—see the new theme component drop (read more), the Foundation theme UX gap investigation (read more), and the ongoing infinite-scroll framing debate (read more).


Interesting Topics

#Theme component

  • darkpixlz published “Modern User Card | Fixed Experimental Usercard”, aiming to restore the older experimental user card on modern Discourse, with install pointers and a theme-creator preview (read more). Follow-up posts dug into refactor realities and what “fixed” means in practice (read more), plus compatibility concerns around the discourse.component-template-resolving deprecation warning (read more) and how it relates to the broader deprecation guidance (read more).

#Announcements

  • In “Modernizing the Foundation theme”, a small but annoying visual gap under the Related / Suggested buttons was reported—especially obvious with larger fonts (read more). Lilly traced it to a UX mismatch between button classes (including the injected AI-related button) and provided a targeted padding/line-height patch (read more), with additional diagnostic back-and-forth on viewport assumptions (read more).

General

  • The long-running “Time to reconsider infinite scroll?” thread kept pushing on definitions: elmuerte asked about technical implications at scale (e.g., “1,000,000 topics”) and suggested a “catch your breath after N units” UX concept (read more). Replies pointed to existing “take a break” patterns (read more) and reframed the debate as infinite scroll vs infinite content, emphasizing Discourse’s finite endpoints (read more), plus legal/definition nuance about whether it’s a “significant part of the services” (read more). (Related component link surfaced: read more.)

  • In the show-and-tell thread “I populated my (mostly-dead) Discourse forum with bots!”, kirupa posted a substantial update: the full source code was published for others to adapt, plus a walkthrough video for implementation details (read more).

Support

  • “Is there a way to force people to write exact characters for a single line?” (marked solved) got a practical confirmation: hipp0 reported the solution worked well and noted the counter color could be customized too (read more).

#Plugin

  • In the official Discourse Calendar (and Event) thread (official calendar-and-event included-in-core), oshyan argued the current event/calendar configuration is a confusing “mish-mash” across settings layers and shared a prototype of a more event-focused plugin—after only a few days of “vibe coding”—including a demo video and feature outline (read more).

  • The Telegram Notifications Plugin (discourse-telegram-notifications) support thread saw UI/option confusion reported (including screenshots and “missing option” context) (read more) with an additional follow-up screenshot clarifying what the reporter sees in the newer interface (read more).

#Self-hosting

  • “Bypass the 6 badge fav limit” continued with alternative approaches: pfaffman suggested skipping badges entirely and using theme components to add multiple flair-badges based on group membership (targeting user card/profile UX rather than badge limits) (read more).

development

  • jericson posted “Case study of an amateur plugin author”, walking through the real-world path from “this isn’t possible” to building a contact-form plugin—despite not being a frontend specialist—linking out to earlier constraints and the plugin tutorial trail that made it doable (read more). The post connects back to the earlier “contact form without third-party services” discussion (read more), the official plugin-outlet tutorial (read more), and the finished contact form plugin thread (read more).

  • In “Automatically updating themes and plugins to .gjs file format” (dev-news), jericson added a concrete gotcha for older plugins: depending on skeleton age, you may also need to pull in the updated ESLint config file (read more).


Activity by the @team Group

  • Lilly partnered with darkpixlz on the new user-card theme component thread—responding to reports of broken behavior and helping set expectations that it likely needs a deeper refactor to align with current core/theming patterns (read more; read more). Lilly also helped contextualize the deprecation warning discussion and how to treat it in the short term (read more; read more).

  • Lilly investigated a UI gap/regression in the Foundation theme’s “Related/Suggested” area, identified class/structure mismatches, and offered a CSS patch to improve spacing across desktop and mobile (read more), following up on the original report and reproductions (read more; read more).

  • hipp0 confirmed the accepted approach in a Support thread worked as intended and highlighted an extra customization win (counter color flexibility) (read more).


Yesterday’s meta energy: finite scrolling that feels “infinite,” revived communities powered by bots, and yet another reminder that one tiny CSS gap can launch a whole UX investigation—see you tomorrow.

Today on meta.discourse.org

Key Stats

  • New posts (24h): 75 across active threads like the Self-hosting upload-limit troubleshooting saga (read more), a deep dive into plugin maintenance/documentation gaps (read more), and a fast-moving bin/lint regression report + fix cycle (read more).
  • New topics (24h): 3, including a new #Self-hosting support request about upload limits (read more) and a #Site feedback report about Meta’s logo rendering oddly at certain zoom levels (read more).

Top users (posts / likes in the last 24h)

  • Lilly7 posts / 11 likes (notably diagnosing the root cause of a “broken rebuild” as an upstream firewall/VPS issue: read more)
  • merefield6 posts / 8 likes (kept the rebuild troubleshooting grounded in logs + SSH basics: read more)
  • david7 posts / 5 likes (shipped a quick fix for plugin linting workflow regression: read more)
  • Moin2 posts / 4 likes (connected a plugin author’s breakage to a specific deprecation-handler bug: read more)
  • piffy1 post / 4 likes (shared how “agentic coding” changed their plugin maintenance reality: read more)
  • chapoi1 post / 4 likes (offered candid context on why docs lag behind product work: read more)
  • Bathinda2 posts / 3 likes (reacted to the “not going closed source” announcement with appreciation: read more)
  • ondrej1 post / 3 likes (reported the “weird logo” display issue: read more)
  • Heliosurge5 posts / 3 likes (continued the practical policy/implementation discussion on age requirements: read more)
  • Canapin1 post / 2 likes (linked the canonical “increase upload size” guide during troubleshooting: read more)

this is not a build issue… it is a VPSmanager issue… enabled a firewall that is blocking sign up payloads as well as file uploads.” — Lilly (read more)


Interesting Topics

#Self-hosting

  • Vsekraski hit “This file is too large” even for tiny uploads, then the thread escalated into instance recovery drama when rebuilds were interrupted—ultimately landing on a provider firewall blocking payloads rather than an Nginx/app.yml misconfiguration (read more, read more, read more).

  • A German-language OIDC integration post documented why users weren’t matching existing accounts: the IdP email claim wasn’t being marked verified, and setting email verification handling fixed association in testing (read more).

development

  • A regression report explained how a change to bin/lint broke linting for non-bundled plugins when running bin/lint --fix plugins/my-custom-plugin; david responded with a fix branch/PR, then iterated on visibility, file targeting, and --fix behavior (read more, read more, read more).

  • “Case study of an amateur plugin author” turned into a broader conversation about versioning strategy, a .hbs-related deprecation-handler crash, and the long-term cost of outdated tutorials—especially the still-referenced plugin guide teaching older patterns (read more, read more, read more).
    (Related threads mentioned in the discussion: the deprecation crash bug report (read more), the versioning strategy RFC (read more), and the plugin tutorial that’s still widely linked (read more).)

#Announcements

  • The long-running “tests-passed is now latest” announcement got a fresh check-in: jericson asked whether an admin warning exists yet, and david confirmed it hasn’t been added—while noting tests-passed remains a working alias (read more, read more).

bug

  • In the composer ai experiment thread, Lilly reported the “AI docked composer” is much less buggy but still has issues: quoting initially failed (later fixed after a rebuild) and uploads after the first post continued to fail—plus ongoing muscle-memory friction around Shift+Enter for newlines (read more, read more, read more).

#Site feedback

  • A quick but intriguing bug report: Meta’s logo appears “weird” (pixelated/aliased) at normal zoom in multiple desktop browsers, but looks correct when zoomed in—suggesting a rendering/scaling edge case (read more).

  • The ongoing “Daily Summary Feedback” thread continued surfacing how automated summaries read in practice, including a system-generated recap that quoted and linked live troubleshooting threads (read more).
    (The referenced auto-summary excerpt pointed back into the Self-hosting upload-limit thread: read more.)

#Theme component

  • The “Load More Button” theme-component discussion highlighted a core issue: DiscoveryTopics doesn’t pass the canLoadMore model property through, so a “Load more” button may appear when it shouldn’t; commenters floated CSS hiding as a partial workaround and noted a fork exists for an edge case (read more, read more).

#Plugin

  • In the official openid-connect plugin topic, a key behavioral question came up: whether users are automatically removed from Discourse groups when they lose upstream membership; david said “yes,” but follow-up testing suggested a mismatch worth re-checking (read more, read more, read more).

  • An old “Trading Buttons” plugin thread resurfaced with a very current-sounding hypothesis: plugin-per-category settings might fail to save due to the “simplified category creation” changes, pointing directly at a related bug/announcement about plugin category settings persistence (read more, read more).

  • The official calendar-and-event plugin topic continued with a product-shaping idea: rather than stacking multiple plugins, build a more complete event management system with toggles—plus a side discussion on which AI coding tools people use in practice (read more, read more).

#Site Management

  • A form-templates UX gap: users can easily paste images/GIFs into normal posts, but copying/pasting into form template composer fields didn’t work in the Markdown editor; a workaround was to toggle WYSIWYG (with caveats), and an alternative was to add explicit upload fields to templates (read more, read more, read more).

Support

  • The “Age requirement for Discourse” thread kept rolling with practical/legal comparisons (e.g., helmet laws) and a strong focus on accountability and parental guidance—including a detailed anecdote about locking down kids’ OS accounts and the human factor of password leaks (read more, read more).

#Extras

  • SuperHref shipped a monetization flexibility update: suggested products can now preserve the original affiliate tag or swap in your own, depending on the site owner’s preference (read more).

blog

  • The “Discourse is Not Going Closed Source” blog topic picked up fresh appreciation and reflection from readers discovering the post later, underscoring how much the community values the open-source commitment and transparency (read more).

Activity by the @team Group

  • david jumped into a tooling regression report and quickly provided a concrete fix path for plugin authors impacted by bin/lint changes, then continued troubleshooting follow-up behavior like missing progress output and --fix doing nothing (read more, read more, read more). He also clarified that tests-passed remains a functional alias for latest (no admin warning added yet) (read more), and answered OIDC expectations about automatic group membership removal (read more).

  • chapoi responded in the plugin-author “case study” thread with frank context about tradeoffs: a small team maintaining a large codebase, balancing customer commitments and community support, and why documentation (like plugin tutorials) often trails behind product evolution (read more).


If yesterday taught anything, it’s this: let rebuilds finish, keep your hands off Ctrl+C, and maybe don’t trust a “weird logo” until you’ve tried zooming.

Today on meta.discourse.org

Key Stats


Interesting Topics

development

  • jericson’s “amateur plugin author” case study turned into a broader conversation about documentation currency, migration pain, and how much “agency” plugin authors should have—with pushback on wiki-style docs vs GitHub review flow (read more, and david’s deprecation timeline clarification: read more).

  • A regression in plugin linting for non-bundled plugins was resolved, with david confirming the fix and merging the PR after user verification (read more).

Support

  • Self-hosters running OpenShift reported asset precompilation memory usage exploding past 20GB after the newer precompiled assets + plugin build approach; debugging focused on plugin inventory and whether memory drops after assets:build completes (read more, plugin list follow-up: read more).

  • A “full app embed” used for cross-domain commenting ran into login/session issues that look like third-party cookie behavior; the thread quickly converged on SameSite settings and the security tradeoffs of cross-domain embedding (read more, suggested setting: read more).

  • A Russian-language “component install error” got resolved quickly; Lilly noted the “link method” can break when translation/characters interfere, and confirmed the component was installed successfully (read more).

  • Invite links shared into apps like WhatsApp produced a preview tile where a white-on-transparent logo disappears; the conclusion was that preview clients often render thumbnails onto a light tile, so the fix is to bake contrast into the icon rather than expecting external renderers to respect transparency/background choices (read more).

  • A “Latest topics” header request revealed that Meta’s UI here is customized; the actionable answer was to add it via the discovery-navigation-bar-above outlet (and to review how outlets work in themes/plugins) (read more).

  • A Discourse AI Agent PM follow-up couldn’t accept an image upload on one instance, but was pointed to a fix already landed (and a specific commit to pick up), tying back to the docked composer/AI UX work (read more, related fix context: read more).

Community Building

  • “Welcoming new users” explored ways to notify non-admin community members of new signups, especially when hosted plans restrict SQL/cron; one practical idea was linking trusted users to a TL group membership view (e.g., TL0/TL1) via the sidebar for logged-in users (read more).

  • In a longer-running “new product launch” community reconfiguration thread, a simple tactic surfaced: switching the homepage from /latest to /categories to make a new structure immediately legible to members (read more).

blog

  • A new companion topic showcased what Discourse actually feels like in a browser set to Japanese—spotlighting translation quality and the UI experience for non-English communities (read more).

ux

  • A revived discussion argued the three-bar “hamburger” used to toggle Discourse’s sidebar violates a common convention (users expect a temporary menu), and highlighted the tension between “customize it” solutions and out-of-the-box clarity (read more, plus a pointer to dynamic icon customization: read more).

  • Documentation nitpicks in the “closed/private community” guide: a screenshot example appears misleading about who can see a category (“everyone” vs TL0), and the guide may need updates for newer category visibility + the “advanced settings” requirement to even see the Security tab (read more).

#Feature

  • A concept proposal to treat Chat channels and Topics as “first-class” activity in one unified recency-sorted view (including category/subcategory lines + previews) generated discussion about what Discourse navigation could become as chat/forum boundaries blur (read more, demo video follow-up: read more).

  • ActivityPub integration continues to mature: a report noted that following Mastodon actors works, but following other Discourse actors may not, prompting the plugin maintainer to investigate (read more, maintainer response: read more).

bug

  • A rich text ↔ Markdown switch appears to introduce incorrect whitespace insertion (GIF + repro snippet provided), raising another composer edge case for parity between editors (read more).

  • A DiscourseConnect privacy/security concern progressed with a linked PR intended to prevent leaking email addresses in redirect URLs (read more).

#Self-hosting

  • A French self-hosting thread documented the pain of installing behind a non-full-stack residential IP + unusual port forwarding constraints; suggestions ranged from Cloudflare Tunnel to “use a VPS,” and also highlighted that the installer’s connection test can be skipped when appropriate (read more, skip flag suggestion: read more).

Activity by the @team Group

  • david clarified that the .hbs deprecation runway is not an immediate “support drop,” pegging earliest removal after the next ESR (end of July), while acknowledging docs should have been updated sooner (read more). He also investigated self-hoster reports of runaway memory during asset builds by requesting plugin lists and probing whether memory subsides after build completion (read more, follow-up question: read more). Finally, he confirmed a linting workflow fix and merged the PR once validated (read more).

  • nat published the companion discussion for the Discourse blog post on multilingual UX, anchoring observations around what Meta looks like in Japanese locale settings (read more).

  • chapoi helped theme builders by pointing to the discovery-navigation-bar-above outlet for injecting a “Latest topics” header, and linked to the canonical outlet usage guide (read more). He also unpacked why invite-link previews are largely controlled by external preview renderers—and why baking contrast into the uploaded icon is often the only reliable approach (read more).

  • HAWK suggested a pragmatic community reconfiguration win for product launches: switch the homepage from /latest to /categories to immediately signal a new information architecture (read more).

  • Falco advised how to get cross-domain “full app embed” sessions working by setting SiteSetting.same_site_cookies = "None" (via rails console), directly addressing modern browser cookie restrictions in iframes (read more).

  • derek confirmed a UX styling fix (category badge font color) has been merged and invited further reports if anything remains off (read more).

  • pmusaraj acknowledged an ActivityPub issue report (following Mastodon works, Discourse actors don’t) and said the team will investigate shortly (read more).

  • keegan gated the new AI docked composer behind an “upcoming changes” switch while polish continues, and shipped an uploads fix tied to user testing feedback (read more).


That’s a wrap—may your embeds keep their cookies, your sidebars use the “right” icon, and your asset builds stay comfortably under 20GB.

Today on meta.discourse.org

Key Stats

A lot of the day’s momentum centered around practical admin workflow questions (like suppressing categories in Latest) and quality-of-life fixes in UX/accessibility—see discussions like language + translation gaps in What It’s Actually Like to Use Discourse in Another Language and category suppression in Exclude category from latest.


Interesting Topics

blog

Support

#Self-hosting (tag: hosting)

ux (tags: impersonate, badges, accessibility, invites)

bug (tags: surveys, reactions, ai, ai-helper)

#Theme-Component

  • The “Created Topic Sort” component shipped updates adding new settings for tag-based display behavior, announced in Created Topic Sort.

#Plugin (tags: paid-support, openid-connect, auth-plugins)

  • The Locations plugin discussion flagged missing MaxMind environment variable hints in the newer slimmed app.yml, plus a sidebar link UX question; see Locations Plugin and the referenced setup guide Configure MaxMind for reverse IP lookups.

  • OpenID Connect implementers discussed passing custom /authorize parameters reliably, asking what’s “officially supported” and what patterns are recommended in Discourse OpenID Connect (OIDC).

#Announcements (tag: embedding)

#Feature

  • Admins revisited whether email notification settings can be adjusted at a group level (especially for onboarding cohorts), continuing the older request thread in Email notification granularity.

Activity by the @team Group


Yesterday’s meta lesson: sometimes the proof really is in the pudding—especially when you’re testing translations, chasing phantom notification bubbles, and discovering Cloudflare was the “100MB limit” all along.

Today on meta.discourse.org

Key Stats

Last 24 hours (2026-05-06 → 2026-05-07)

  • New posts: 72
  • New topics: 12

Top contributors (posts / likes received)

User Posts Likes
Lilly 6 14
Thiago_Mobilon 5 5
Falco 3 7
Moin 2 6
HAWK 2 5
ted 2 3
merefield 1 5
tannerabread 1 4
Heliosurge 1 3
sam 1 3

Interesting Topics

Marketplace

  • Bryony asked for help building safeguarding-first reporting UX (custom “report” buttons, different outcomes per option, emergency messaging, and notifications), and the thread quickly clarified this is plugin territory rather than theme work: read more. Related pointers included using Discourse’s custom flags as a starting point (read more), concerns about automated flag PM wording (read more), and a “report content to group” theme component as a partial workaround (read more).

Support

  • Custom “Top Menu” navigation filters came up again as a way to surface topics from specific (even muted) subcategories; the request was resolved by pointing to a theme component for custom top navigation links: read more and the referenced solution (read more). Follow-up discussion dug into a mobile-only gap when hiding the default nav menu (read more), with broader context from the “muted subcategories in parent category” use case (read more).

  • The “Site traffic report” thread resurfaced confusion around why a promoted admin report can effectively disappear behind a hidden setting; the key detail was SiteSetting.use_legacy_pageviews and how it impacts what admins see: read more. For background, hidden site settings were cited as requiring Rails console access for self-hosters (read more) and hosted customers needing to contact support for changes (read more).

  • A follow-on question compared “Legacy Consolidated Pageviews” vs “Site Traffic” crawler numbers (showing crawlers in one place and zeros in the other); the explanation was essentially date-range / rollout alignment and that the legacy report can be ignored going forward: read more. (This was explicitly framed as piggybacking on the original traffic-report discussion: read more).

  • A Discourse AI operator reported requests “randomly” exceeding LLM token thresholds; discussion focused on distinguishing request size vs response size (and what a 413 implies), plus the practical need to tune the configured context window: read more and the key clarification reply (read more).

  • A mobile sign-up UX question asked how to place external login buttons (institutional SSO) above the local “Simple Sign Up” form, to reduce student mis-signups when arriving via QR/invite; theme/CSS reordering was proposed: read more.

  • An SSO/identity architecture question asked if enabling DiscourseConnect provider breaks native login; the answer was “no”—provider mode can be enabled without changing the forum’s own login experience: read more. The question referenced the broader DiscourseConnect setup guidance thread (read more).

  • A small-but-real linking edge case: punctuation after a URL (like a trailing period) can cause auto-linking to capture the dot and break the link, especially with routes like .rss in play: read more.

  • A support thread investigated a situation where a forum appeared to show “mailcow” instead of Discourse after a config change; replies strongly suggested a DNS/server/caching mismatch and recommended restarting/clearing cache: read more. (Related self-hosting “it works for me now” reverse-proxy operational notes also appeared elsewhere: read more).

#Feature

  • embedding received two complementary updates: a real-world “Discourse Comments” conversion/UX note that native login still leaves iframe embeds looking logged out until refresh (read more), plus a pointer to ongoing work improving the login flow (read more). In parallel, the canonical embed announcement thread reiterated that embedded comments can auto-create topics on first visit (read more) and linked back to the long-running embed how-to documentation (read more).

  • A long-running request about showing all likes/reactions in the post “liked by” modal got a practical pointer: enabling an upcoming change in admin can make the list load more users rather than truncating early: read more.

bug

  • A bug report noted missing paste functionality in form-template composer fields; a fix is actively in progress: read more.

  • Schema/SEO monitoring continued for “Missing field text in mainEntity.suggestedAnswer”; guidance suggested using Google’s “test live URL” to rule out cached validation artifacts, with follow-up reports of new affected URLs: read more and the fresh example report (read more).

ux

  • Impersonation timeout UX: discussion considered whether the auto-termination timer should be “15 minutes of inactivity” vs a fixed countdown, and concluded that clearer messaging might be the safer improvement (given configurable duration and unclear original intent): read more and the follow-up reasoning (read more).

blog

  • A new companion discussion thread for the Discourse blog post “The Digg Lesson: Why Moderation Infrastructure Matters” kicked off broader reflection on moderation tooling, brigading, and the “arms race” nature of community safety: read more.

#Community Building

  • A Russian-language question asked how many subcategories display within a parent category (and where to configure that), for a “cities as subcategories” structure: read more.

Activity by the @team Group

  • Falco weighed in on improving the embedded-comments login experience and shared that work is underway to make the flow better: read more. Falco also responded to the Discourse AI token-limit report, clarifying that a 413 indicates request too large (not response tokens) and pointing at context window configuration: read more.

  • HAWK published the companion discussion topic for the Discourse blog article on Digg and moderation infrastructure: read more.

  • tannerabread confirmed a real missing capability (paste in form-template composer fields) and stated a fix is in progress: read more.

  • sam pointed admins to the /admin/config/upcoming-changes toggle that enables a “load more” style for the likes popup list: read more.

  • supermathie answered an SSO/identity-provider question: enabling DiscourseConnect provider should not disrupt native login on the Discourse site: read more.

  • awesomerobot explained why crawlers can show as zero in the “Site Traffic” report for older dates (rollout alignment and hidden/filtered pre-rollout data), helping reconcile the discrepancy with legacy pageview reports: read more.

  • pmusaraj reviewed a proposal to unify public activity across chats/topics/categories in a single view, questioning whether categories belong alongside “content items” like topics and chat channels: read more.

  • martin continued the internal UX discussion around impersonation timeouts, weighing the intent and security implications of redefining “inactivity” vs fixed timers: read more.

  • chapoi helped troubleshoot a theme-component issue (“Discourse Age Check”) by asking for console errors and confirming reproduction steps: read more.

  • davidb suggested using Google Search Console’s “test live URL” to distinguish cached schema errors from current behavior and noted trending improvements after merged fixes: read more.

Yesterday’s moral: keep your moderation tools sharp and your login flows smooth—nobody wants a “Digg redesign moment” for their community.

Today on meta.discourse.org

Key Stats

  • New posts (last 24h): 118
  • New topics (last 24h): 14
  • Biggest “where did that go / why did that change?” energy: tag UI + bootstrap mode + custom homepages (see read more, read more, read more)

Most active touchpoints (sample of what drove discussion):

  • Discourse Discover’s new “hot topics” surfacing (read more)
  • Markdown link edge-cases + the angle-bracket workaround (read more)
  • Discourse ID + “full name required” signup flow oddities (read more)
  • AI translation workflows getting stuck on “thinking” models (read more)
  • OIDC group sync unexpectedly removing unrelated group memberships (read more)

Top users (posts + likes in the last 24h)

User Posts Likes Recent highlight
Moin 14 26 Proposed a better UX when a theme-specific homepage goes missing after login (read more)
Lilly 18 17 Helped diagnose markdown/linkify behavior and user setup flows (read more)
gabriel 1 9 Announced “Discover Hot Topics” for discourse-discover (read more)
pmusaraj 5 6 Confirmed signup/full-name behavior needs a fix; moved it into bug (read more)
david 1 5 Shared the practical “use angle brackets” solution for URLs at sentence ends (read more)
hammerdunner 4 5 Reported Discourse ID signup ignoring “full name required” expectations (read more)
NateDhaliwal 5 4 Pointed folks to landing pages + page publishing options (read more)
Falco 3 4 Identified link parsing source + helped debug AI translation stalls (read more)
Ed_S 3 4 Flagged confusion around “Nice Share” badge attribution (read more)
darkpixlz 4 4 Chatted DiscourseHub/TestFlight reality + splash screen customization limits (read more)

Interesting Topics

#announcements

  • gabriel introduced Discover “Hot Topics”—a new way to surface the most active discussions across Discourse communities, grouped by subject, inside Discourse Discover (discourse-discover) (read more); background context also lives in the earlier Discourse Discover overview (read more).

Support

  • A markdown/linkify edge-case: punctuation and brackets can become part of a detected URL, and the practical fix is to wrap the URL in angle brackets—though quoting can complicate that presentation (read more); Falco traced it to markdown-it/linkify-it behavior (read more).

  • A “Nice Share” badge confusion was cleared up: it’s tied to referral-style links with ?u= getting clicked, not necessarily the badge recipient owning the linked post (read more).

  • “Bootstrap mode is legacy?” sparked a useful archaeology thread on what bootstrap mode used to do and what remains configurable via site settings today (read more); related background on bootstrap effects and its removal came up via older references (read more, read more).

  • Tag UI basics: how to change the title/description shown on a tag page (hint: the wrench/controls on the tag-filtered topic list) (read more).

  • “How do I make a static page?” got pointed toward the modern toolbox: the Landing Pages plugin and Page Publishing (and a note that an older static pages plugin is broken) (read more, plus read more and read more; historical footnote: read more).

  • A newly-upgraded site asked if the blue “Discourse Splash” preloader dots can be disabled; the answer leaned toward “no, but you can customize what appears” (read more); original splash introduction for context (read more).

  • A Russian-language admin question explored how many subcategories can/should be displayed under a parent category (including the practical reality of trying ~30 “city” subcats) (read more).

bug

  • A hosted signup flow issue: when using Discourse ID, “full name required” didn’t behave as expected—testing suggested Discourse ID autofill + signup flow needs adjustment, and the report was moved to bug for follow-up (read more).

  • OpenID Connect group sync may remove users from all non-synced groups when a single OIDC group disappears from the claim; supermathie proposed a crisp repro summary to validate the behavior (read more, original report: read more).

  • Structured data / schema debugging continued: missing mainEntity.suggestedAnswer.text appears linked to topics whose OP has no text content, prompting investigation into skipping/placeholder behavior (read more, more detail from the field: read more).

ux

  • A theme-switching gotcha: if your default theme has a /custom homepage but your user-selected theme doesn’t, users can land on a blank custom page after login—suggestion: show a friendly “Take me home” affordance instead (read more).

  • The “Permanent” filter on Upcoming Changes appeared empty and raised questions about what should be listed there (especially after changes become permanent) (read more).

  • “Where did the tag info button go?” tracked a UI affordance regression/relocation: non-admin users can’t easily find tag descriptions/usage help that used to be surfaced via an info icon (read more); older references cited in the discussion include prior guidance screenshots (read more, read more).

#plugin

  • The long-running official Discourse Translator discussion clarified strategy: pick one translation UX, and the newer automatic translation path is preferred as the older experience deprecates (read more).

#feature

  • A thoughtful localization UX request: translated posts currently lose useful quote metadata (topic linkage + the “more context” affordance), making translated quotes less informative than originals (read more).

Activity by the @team Group

  • gabriel shipped the day’s headline: Discover Hot Topics for discourse-discover, expanding cross-community discovery in DiscourseHub and beyond (read more; earlier Discover overview: read more).

  • pmusaraj jumped into both product and troubleshooting threads—answering DiscourseHub/TestFlight questions (read more) and confirming the Discourse ID + full-name requirement flow likely needs a fix, moving it into bug (read more); they also continued engaging on chat-as-content experiments (read more).

  • david provided the concrete solution for link parsing ambiguity: use angle brackets to explicitly bound URLs when punctuation/brackets are involved (read more).

  • Falco traced the bracket/URL behavior to the underlying library defaults (read more) and helped diagnose why AI translations can stall when locale detection meets “thinking” model output formats (read more); they also engaged on an embedded-comments UI bug report in the Tecnoblog case study thread (read more).

  • nat clarified the direction for Discourse Translator: avoid running both translation experiences, and prefer the newer automatic translations since the older path is deprecating (read more).

  • davidb investigated schema validation errors and suspected a key trigger: OPs with no text can break QAPage schema expectations, suggesting either skipping or filling placeholders (read more).

  • supermathie worked on pinning down the OpenID Connect group sync issue by proposing a precise reproduction summary (critical when group membership changes could remove access) (read more).

  • awesomerobot acknowledged a fix is inbound for mobile tag display truncation (“long tags are cut off at screen edge”) (read more).


Yesterday’s lesson: may your URLs be neatly wrapped in angle brackets, your tag info buttons stay discoverable, and your blue splash dots blink only briefly.

Today on meta.discourse.org

Key Stats

Top users by recent activity (posts) & appreciation (likes):

  • pmusaraj6 posts, 16 likes (notably clarifying what replaced bootstrap mode and what should be kept: read more)
  • Falco6 posts, 2 likes (hands-on debugging advice for translation logs: read more)
  • markvanlan4 posts, 2 likes (testing notification behavior in nested replies: read more)
  • Moin3 posts, 9 likes (pushing for accuracy on how bootstrap mode was actually enabled: read more)
  • Lilly3 posts, 4 likes (practical mobile CSS guidance for category styling: read more)
  • RGJ3 posts, 2 likes (reviewing plugin behavior & PR expectations: read more)
  • rokejulianlockhart1 post, 2 likes (looping back to the perennial “threaded vs. linear” debate: read more)
  • Canapin1 post, 6 likes (a memorable rule of thumb for “healthy updates”: read more)
  • keegan1 post, 2 likes (confirming an embed-related fix landed: read more)
  • darkpixlz1 post, 2 likes (asking about user directory refresh timing: read more)

Notable quotable: Canapin’s maintenance heuristic—“updated when the dashboard emoji becomes red”—became the day’s most-liked one-liner (source).


Interesting Topics

Support

  • Bootstrap mode appears “legacy” — what changed, and what should remain? pmusaraj explained bootstrap mode had effectively faded away and that the admin onboarding panel is the new “nudge” mechanism (read more); Moin challenged the timeline and pointed to prior discussion that implied bootstrap mode was still active (read more), referencing the older deep-dive on behavior details (read more).

  • Disabling the “preloader-image” / splash screen is no longer a toggle (and why): awesomerobot confirmed the setting to disable the splash screen was removed, citing stability and potential Core Web Vitals impact, and offered a clever workaround via a transparent animated SVG (read more); the thread also featured some lighthearted ops advice (read more).

  • Mobile-only category background styling (Horizon theme): Lilly shared a clean SCSS approach using viewport mixins and category targeting, plus optional dark/light variable handling (read more; follow-up snippet: read more).

  • Custom dropdown user field “unselectable value” showing up (possible bot signal?): A report that spambots appear to submit values not present in the dropdown options—raising both honeypot implications and potential validation gaps (read more).

bug

  • OpenID Connect group sync can remove users from unrelated groups: A bug report highlighted that OIDC group syncing could kick users out of groups that aren’t being synced; pmusaraj linked a fix PR intended to resolve it (read more).

  • AI translations failing with “Raw can’t be blank / Cooked can’t be blank”: Falco guided debugging via /p/ID and ai_api_audit_logs queries (read more; query correction: read more), and later identified token starvation from reasoning output as a likely root cause (read more), tying it to prior translation-scale troubleshooting (read more).

  • “Middleware document tree depth exceeded” still biting (patch referenced): A fix was pointed to via a linked PR, continuing the effort to stamp out this recurring error (read more).

  • Selecting “no tag” then switching categories causes an error page: A Chinese-language report shows a reproducible UI flow ending in “page doesn’t exist or isn’t public,” with an animated repro GIF (read more).

ux

  • Custom homepage goes blank for regular users — suggest a “Take me home” button: A UX proposal to avoid dead-end custom pages for non-staff drew acknowledgement from derek, who said the team would investigate and report back (read more).

  • “Split this topic” mini-post link behavior still confusing: Follow-up discussion notes those system posts lack a post menu and don’t auto-update the link the way users expect (read more).

#Self-hosting

  • AWS Lightsail + Ubuntu LTS upgrades: in-place vs. snapshot-and-restore strategy: A self-host admin asked for real-world experiences planning the jump from Ubuntu 20.04 to newer LTS on Lightsail and whether rebuild-from-snapshot remains the safest pattern (read more).

Nested Replies Testing

  • Nested replies notification behavior: does consolidation “feel right”? markvanlan ran a quick series of notification tests in the experimental nested replies area (read more; continuation: read more), while others compared it to journaling-style workflows (read more; related: read more) and broader skepticism about threading complexity over time (read more).

#Feature

  • Discourse Comments embed: editing inside iframe layout glitch: In the ongoing field report from Tecnoblog’s Discourse Comments usage, keegan confirmed a fix landed for an iframe edit-mode blank-space/layout shift bug (read more).

#Plugin

  • Geo Blocking plugin: request for an “allowlist-first” mode (and PR review expectations): A user requested a configuration where only certain countries can access (deny-by-default), with precedence rules for allowlist vs blocklist (read more); RGJ suggested a backwards-compatible approach and asked for smaller, focused PRs (read more; review feedback: read more).

  • Trading Buttons plugin: is the per-category enable/disable actually working? RGJ asked whether the category-level setting functions as intended, alongside ongoing maintenance concerns (read more).


Activity by the @team Group

  • pmusaraj clarified that bootstrap mode has effectively been superseded by a lighter-touch onboarding panel, then revisited the history after Moin challenged the details—ultimately agreeing bootstrap mode did have some “niceties” worth preserving (bootstrap discussion, correction/research follow-up: read more, and the idea to refresh directory views more frequently for very small sites: read more). pmusaraj also linked a fix for an OpenID Connect group-sync edge case (read more).

  • awesomerobot confirmed the removal of the “disable splash screen” setting, explained the SEO/perf rationale, and provided a workaround path using a custom (even transparent) animated SVG (read more).

  • Falco contributed to troubleshooting across multiple threads: chiming in on the splash-screen topic (read more), pointing to a fix PR for the “document tree depth” issue (read more), and walking through debugging steps for AI translation errors—ultimately attributing failures to reasoning tokens exhausting the completion budget (read more, follow-up guidance: read more, conclusion: read more).

  • markvanlan ran a compact set of “how do these notifications feel?” experiments inside the nested replies testbed (read more; also: read more).

  • keegan confirmed a Discourse Comments embed bugfix shipped for iframe edit-mode layout issues reported by a production user (read more).

  • derek acknowledged a UX report about regular users hitting blank custom pages and said the team would investigate and update (read more).


If your dashboard emoji is starting to look a little too red, it might be time to ship that fix—and maybe swap your splash screen for a stylish animated SVG while you’re at it (read more).

Today on meta.discourse.org

Key Stats

  • New posts (last 24h): 37
  • New topics (last 24h): 9

Top contributors (posts / likes, last 24h):

If you only have time for a quick scan, today leaned heavily into migration/ops, localization quirks, and UX papercuts—plus some lively plugin/theme component iteration.


Interesting Topics

#Self-hosting (install)

  • merefield asked about realistic migration/upgrade timing, and Falco recommended the “spin up new server → read-only old site → backup/restore → DNS cutover” approach (plus lowering DNS TTL in advance), with Lilly confirming the same method worked well during a long-distance Docker move (read more, read more)

Support

  • A “why does it say regular under my username?” question turned into a helpful explainer: Lilly pointed to trust levels, while Moin clarified it’s a selectable Title once earned via badges (read more, read more, plus the trust-level reference: read more)

  • A guest-access concern in Chinese: jack222 reported that logged-out visitors can’t view /activity/reactions and asked for either a setting to allow it or a clearer error message indicating login is required (read more)

  • Noble_Fish proposed that “New topic approval” and “New reply approval” need global default counterparts for workflows where only certain users later become “must-approve” without needing category-by-category configuration (read more)

  • A forensic/logging question: Sukenik asked how one might establish (years later) whether suspensions carried over during a Discourse → custom-forum migration; Andrew_Rowe noted hosting details matter and that long-term log retention is often limited, with follow-up context about a large platform running parallel migrations (read more, read more, read more)

ux (dark-theme, meta-redesign-2026)

  • Dark-theme readability feedback: Noble_Fish flagged low-contrast text (including Titles) and a “dark yellow” highlight row in the user list that makes scanning harder in the current redesign context (read more)

bug (translation, content-localization)

  • Moin investigated an “unexpected language code” problem and suggested the invalid hreflang may originate in core when locales include underscores—proposing conversion to hyphens (e.g., tr('_', '-')) to avoid malformed values (read more)

Support (translation, user-custom-fields, content-localization)

  • cuo_wu asked how to make custom user fields display in multiple languages; Lilly indicated it’s likely a feature request and linked the existing request to make custom user field names/descriptions translatable (read more, related: read more)

bug (user-custom-fields)

  • A dropdown custom user field ended up storing “unselectable” values; Lilly suggested bots may bypass front-end validation via API signup, recommended tightening anti-spam (including hCaptcha), and shared a Data Explorer query to find offending rows (read more, hCaptcha reference: read more)

bug (composer)

  • Rich-text composer behavior: Noble_Fish reported that dragging an unselected image triggers a re-upload instead of moving it in-place, and asked whether that’s intentional or a design/UX bug (read more)

#Theme component

  • The Quote Callouts component discussion continued: Noble_Fish noted callouts still render citation-style in revision history, nathank pointed out similar oddities in excerpts/oneboxes, and scavin raised a macOS shortcut hazard (“Ctrl+Q” muscle memory colliding with “⌘+Q” quit); Arkshine discussed edge cases and floated safer shortcut alternatives (read more, read more, read more, read more)

#Announcements (upcoming-changes)

  • In the “Upcoming Changes” system thread, Lilly asked whether the UI notifications can be disabled without CSS hacks (sharing a CSS snippet that hides the alerts), and NateDhaliwal noted the notification count/indicator may still remain (read more, read more)

#Plugin (paid-support)

  • Locations Plugin status update: merefield said a fix is now deployed (plus compatibility work) and explained a widened gap between Early Access vs public versions—highlighting sponsor-only features like a 3D users-map globe and IP-based location lookup; gilles replied with thanks (read more, read more)

#Plugin

  • Trading Buttons saw modernization work: Janno_Liivak updated the plugin to reduce browser console warnings and align better with FormKit, asking the community to report any issues (read more)

#Site Management (how-to, ai)

  • On the Discourse AI LLM settings page, danhanghai reported trouble getting gemini-3.1-flash-lite working with the Google provider endpoint, sharing their configuration details while seeking guidance (read more)

bug (ai)

  • AI translations troubleshooting continued: after switching models, RBoy hit a json_schema/structured outputs limitation error, and Falco advised using a model that supports structured outputs (common among recent state-of-the-art models) (read more, read more)

bug

  • A Chinese-language repro note: NateDhaliwal confirmed an issue can be reproduced on Meta where choosing “no tag” in one category then switching categories triggers a “page doesn’t exist / not public” style error (read more)

Activity by the @team Group

  • Falco weighed in on best-practice self-host migration strategy—restore to a fresh server and flip DNS with a lowered TTL, rather than attempting risky in-place release upgrades (read more)

  • Falco also helped unblock an AI translations thread by pointing out the reported error indicates a structured outputs requirement, and that the fix is to choose a model that supports it (read more)


Migration plans got sharper, callouts got safer, and someone out there is definitely lowering their DNS TTL to 5 minutes right now—see you tomorrow for another round of Meta detective work.

Today on meta.discourse.org

Key Stats

  • New posts (last 24h): 71
  • New topics (last 24h): 5

Top users (posts / likes):

User Posts Likes
Lilly 9 11
Moin 5 8
denvergeeks 5 3
Noble_Fish 6 2
chapoi 7 2
fzngagan 1 4
janbolmeson 1 3
nat 1 3
klappradla 2 2
Janno_Liivak 1 1

Also seeing activity / bumps worth a look: discussions around scheduling and automation (read more, read more, read more), plugin support (read more), structured data/SEO reports (read more), and language/locale edge cases (read more).

Interesting Topics

Support

#Site-Management

#Self-hosting

  • A migration restore failed with You can only specify one non-default checksum at a time. and the thread narrowed toward Cloudflare R2 S3-compatibility concerns and checksum handling, in 迁移Discourse恢复数据失败. Suggestions included attempting checksum env-var overrides (read more) and confirming the object store + environment details (read more).

bug

#Feature

development

Activity by the @team Group

That’s a wrap: may your badges load, your service workers take control on the first try, and your cat images drag without triggering an accidental re-upload spree.

Today on meta.discourse.org

Key Stats

In the last 24 hours (2026-05-11 → 2026-05-12):

  • New posts: 72
  • New topics: 18

Top contributors (posts / likes received):

User Posts Likes
Falco 3 17
Lilly 11 15
Moin 6 9
lindsey 1 6
RGJ 2 5
chapoi 5 5
zogstrip 3 5
awesomerobot 2 3
sniper756 1 3
gassim 4 2

A lot of today’s momentum clustered around mobile UX, automation scheduling, and a big step forward in image optimization.


Interesting Topics

#Announcements

  • Bulk tag actions got a cleanup: lindsey introduced Better bulk tag management with a unified “Manage Tags” modal, while Lilly and Moin raised follow-ups about bringing back tag UI affordances and improving how bulk tag edits appear in revision history (read more, related: tag info button, prior feature request).

  • Chat notification quick replies are back (and better): Falco revived quick replies for Chat notifications and noted improved robustness, emoji-only replies becoming reactions, and support for chat threads (read more, related: Chat threads).

  • Less “admin noise” for Upcoming Changes: Lilly shared a way to dismiss notifications tied to Upcoming Changes (and new features) within the ongoing rollout discussion (read more, related: Introducing Upcoming Changes).

  • Clarifying “Everyone” on Admin UI upcoming changes: In the Admin Reporting & Analysis thread, martin explained that “Everyone” is a misleading label for admin-only surfaces (since only staff can access the admin UI anyway), and suggested future options like Staff only / No one to reduce confusion (read more).

#Feature

  • Client-side image optimization gets a major upgrade: Falco announced new client-side optimizations, including GIF → Animated WebP conversion (roughly halving file sizes) and tying the rollout into the Upcoming Changes framework (read more, background: client-side image optimization origins, older discussions: GIF conversion idea, WebP plugin idea).

  • Smoother self-hosted builds when downloads fail: A feature request proposed making fragile build-time downloads (like fetching acme.sh) more resilient, including adding an override such as DISCOURSE_ACME_DOWNLOAD_URL (read more, related guidance: acme.sh rebuild stuck thread).

  • Embedded views stats vs. “full app embed” reality check: In the Tecnoblog embedding experience thread, Thiago_Mobilon questioned whether embedded view tracking is undercounting after switching to full app embed—because traffic increased dramatically but “Embedded Views” did not (read more).

bug

  • Klipy + limited infinite search results = error edge cases: RGJ reported that Klipy categories aren’t paginated but still wire up a loadMore, which breaks when limit_infinite_search_results is enabled (and also noted a backspace crash scenario) (read more).

  • iOS PWA push subscriptions silently failing (service worker control): Falco asked whether adding skipWaiting() / clients.claim() to the main service worker would resolve the issue, and the reporter iterated on a PR to ensure immediate SW control for the PWA (read more).

  • Admin API /active.json intermittently 500s (nil main_user_record): A report highlighted failures in /admin/users/list/active.json pages due to main_user_record[:silenced_till] being nil, including a traced regression window and stack output (read more).

  • “Jump to post” + edit reply + save ⇒ missing resource error: A reproducible flow in the reply expansion UI can lead to “URL/resource not found” after saving an edit with no changes; chapoi confirmed and shared console clues (read more).

  • Why monthly timed automations don’t run (and why month length matters): The automation scheduling debugging thread dug into why “monthly” recurrence behaves inconsistently; Lilly traced the logic to recurring trigger code and suspected a mismatch between calendar day intent and BYDAY-based RRULE behavior (read more).

ux

  • Mobile Edge “Permanent delete” dialog is too narrow: A long-lived UI path wasn’t updated to the newer modal component; chapoi confirmed, and zogstrip linked a fix PR (read more).

  • Automation list on mobile: “last run” column overlaps edit controls: Lilly reported the portrait viewport collision, and awesomerobot pointed to an upcoming fix (read more).

Support

  • Salesforce Experience Cloud embedding: iframe shows only login / limited mode: A Business Trial user described an LWC-based embed setup (including DiscourseConnect and trusted URLs) but still seeing only the login view rather than a full forum experience (read more).

Activity by the @team Group

  • Falco shipped news and follow-ups across performance + platform edges: announcing new client-side image optimizations (including GIF→WebP) (read more), restoring Chat notification quick replies with better handling + thread support (read more), and pushing on an iOS PWA fix by suggesting service worker control changes (read more).

  • lindsey introduced the consolidated Manage Tags modal for bulk actions and invited feedback on the workflow (read more).

  • zogstrip confirmed and routed multiple fixes: a narrow mobile Edge “permanent delete” modal got a concrete fix path (read more), a category/tag “no tag” switching bug received a PR-based resolution (read more), and the monthly automation investigation got escalated for a deeper look (read more).

  • chapoi did a lot of sharp-edge triage: confirming the outdated modal implementation behind the Edge report (read more), confirming the “missing URL/resource” reproduction and sharing console hints (read more), and pushing back on “reading time scripts” as unethical trust-level gaming (read more). They also noted a merged fix for reaction-picker behavior on long press (read more).

  • awesomerobot acknowledged two UX paper-cuts and linked fixes/next steps: the confusing “Permanent” filter wording in Upcoming Changes (read more) and a fix for the automation mobile overlap issue (read more).

  • supermathie supported a self-host migration recovery case by pointing to the official migration guide and requesting the relevant (redacted) ENV block for troubleshooting (read more, guide: step-by-step migration).

  • martin clarified how admin-only upcoming changes behave despite “Everyone” being shown, and outlined why adding Staff / No one options would reduce confusion (read more).

  • sam checked in on an AI integration bug report regarding Gemini Pro “thinking budget” edge values (0 / -1), asking whether it’s still reproducible (read more).


Yesterday, Meta managed to shrink GIFs, untangle tags, and un-squish mobile modals—may all your automations trigger on the exact calendar day you meant.

Today on meta.discourse.org

Key Stats

  • New posts (last 24h): 68
  • New topics (last 24h): 14

Top users (posts / likes in the last 24h)

User Posts Likes
Lilly 4 20
markvanlan 1 19
gilles 6 4
merefield 4 4
zogstrip 3 4
Falco 2 4
NateDhaliwal 1 4
martin 3 5
putty 2 5
Shauny 1 3

A big chunk of today’s momentum came from two major announcements: nested replies (read more) and clearer group semantics for “everyone” (read more).

More threads with fresh activity (quick links)
(Extra browsing fuel from across Meta—each link is a specific post.)

  • DiscourseAI translation UI edge case: default LLM text not updating live (read more)
  • Gemini “thinking budget” quirk discussion continued (read more)
  • Boosts feedback kept rolling in (read more)
  • Calendar/mobile work continued via a PR proposal (read more)
  • Topic List Previews docs typo got corrected collaboratively (read more)
  • Email subject line simplification feedback continued (read more)
  • “Workflow” naming collision concern raised for core vs plugin (read more)
  • Discourse Workflow plugin shipped compatibility updates (read more)
  • Sidekiq 8 MiniScheduler integration PR got merged & released (read more)
  • OpenID Connect group sync bug: backporting underway (read more)
  • API failures around silenced_till + ESR timing discussion (read more)
  • “Disable Markdown / default rich text” thread asked for a reliable repro in Contribute > Bug (read more)
  • Assign on mobile: modal search field blows up with JS error (read more)
  • Data restore/migration troubleshooting continued (S3 uploads rake task) (read more)

Interesting Topics

#Announcements

  • Nested replies are here (early days, big potential): markvanlan introduced an officially-supported, fully nested topic view—including a single-thread view when deep-linking to a reply, plus new site settings and a roadmap to watch. read more

  • Clearer permissions via new pseudogroups: martin announced “granular” pseudogroups—anonymous and logged_in_users—to replace confusing @everyone behavior in group-list settings, while explicitly keeping category/tag permission semantics stable. read more

  • Reporting UI clarity improvements shipped: In the ongoing admin reporting thread, martin noted a merged change that makes upcoming “reporting improvements” options more explicit (No one / Staff / Specific groups). read more

General

  • Interest check: deeper gamification beyond trust levels: A proposal to integrate a richer XP/streaks/economy-style gamification system with Discourse sparked discussion about where core ends and plugin ecosystems begin (gamification). read more

#Self-hosting

  • Renaming categories (and slugs) without breaking links: bayardo.rivas asked what changes are “safe” in production; replies clarified how category IDs drive routing and how “wrong” slugs still redirect—plus practical examples and reassurance about renaming slugs. read more

  • Redirecting users away from non-existent pages: A self-hosting question on handling 404s quickly pointed to established approaches and highlighted using permalinks for redirecting specific paths. read more

  • Self-hosted DiscourseAI sentiment model fix: A setup broke due to upstream model files returning 404; Falco shared a workaround by pointing Docker at the correct branch until the model-side change lands. read more

bug

  • Grid lightbox navigation order is wrong: Shauny reported grid-uploaded images advancing in an unexpected order (1,3,2,4), and zogstrip confirmed it was debugged and fixed via a PR. (lightbox) read more

  • Chinese error: “cannot find requested URL/resource” fix in progress: In a Chinese-language bug thread, zogstrip reported reproducing the issue and working on a fix (linked PR) before landing the final solution. (fixed) read more

  • Upcoming Events: clicking a link opens a user card (maybe Safari PWA?): Ethsim2 traced the click path through FullCalendar’s eventClick and a popover menu, then suspected conditions like Safari PWA + network jitter after the issue stopped reproducing reliably. (calendar-and-event ux) read more

  • Norwegian locale mismatch wastes translation credits: A DiscourseAI locale detector labeling Norwegian as no while target locales use nb_NO caused “translations” that barely change content—prompt tweaks were suggested as a fast mitigation. (ai) read more

  • Assign/re-assign on mobile: can’t type in the user search field: A long-running mobile/assign issue resurfaced with a concrete console trace; attempts to guard targetElement removed the exception but didn’t restore typing behavior. (mobile assign) read more

Support

  • Hide user cards from anonymous users: A straightforward configuration question got a quick pointer to the relevant setting to prevent anon visitors from seeing user cards. read more

  • Translation translates only the topic title (not the post body): A report showed the title translating while the post content did not; nat identified a post-length limit and adjusted/bumped so the content translated properly afterwards. read more


Activity by the @team Group


Yesterday’s vibe in one line: may your replies be neatly nested, your permissions less mysterious, and your lightbox arrows finally go 1-2-3-4.