每周总结

This week on meta.discourse.org

Key Stats

Reporting window: 2026-03-08 → 2026-03-15, as reflected across active threads like the FAQ/Guidelines housekeeping discussion (read more) and late-week UX/browser reports (read more).

  • Total new posts: 426
  • Total new topics: 72

Top users (posts + likes in the last 7 days)

User Posts Likes Recent reference
Falco 24 50 Cloudflare IP bans explanation (read more)
ToddZ 23 37 Theme-component solution for /groups intro text (read more)
Canapin 16 30 “How old is your forum?” community thread (read more)
LotusJeff 9 29 “How old is your forum?” opener + history (read more)
nat 9 20 Badge i18n deep dive + console workaround (read more)
sam 7 19 OpenAI/Azure “service tiers” announcement (ai, #Announcements) (read more)
awesomerobot 12 17 Form templates multi-template bug + fix guidance (read more)
NateDhaliwal 19 16 “Quick start” self-host install guidance (read more)
merefield 9 15 Dashboard traffic-graph scaling feedback (read more)
Danielle 3 14 Webinar announcement: moderator programs (read more)

Interesting Topics

#Announcements

  • Discourse AI got OpenAI/Azure “service tier” selection, letting admins trade off cost vs latency vs reliability in provider settings (ai, #Announcements) — read more

  • A new webinar was announced: “Creating & Nurturing a Moderator Program” (with a promised replay for registrants) (webinar, #Announcements) — read more

  • Hosted AI capacity limits were increased significantly (plus model + throughput improvements), with updated quotas reflected on the pricing page (ai, #Announcements) — read more

blog

  • The Discourse team published a detailed write-up on the Upcoming Changes system and how it supports gradual rollouts across varied site configurations (blog) — read more

#community-building Building

  • A fun and insightful thread asked: “How old is your forum?”—prompting migration histories from Yahoo Groups, phpBB, Ning, vBulletin, and more (#community-building Building) — read more

  • Cross-platform community ops came up again in a “WhatsApp challenges” follow-up: one practical pattern was capturing key takeaways from chat groups into a shared Discourse category (#community-building Building) — read more

  • Meta’s evergreen “Discourse is great” energy continued, with community members sharing milestones and encouragement (#community-building:praise) — read more

Support

  • A tricky edge case: after merging topics, one post could no longer be marked as the Solved answer—eventually traced to an existing solved record in the original topic and manually repaired, with a fix planned (solved, Support) — read more

  • Multilingual admins asked how to localize custom badges and groups; the key takeaway: seeded badges are i18n’d, but custom badges need translation overrides (currently console-dependent) (translation, badges, Support) — read more

  • A “forum acquisition” question explored how to bring topics from one Discourse into another without full restore, pointing back to established migration workflows (Support) — read more

  • A clean, low-code customization request: adding explanatory text above /g (groups index) was solved with a tiny theme component using After Header + CSS gating (groups, Support) — read more

  • Moderator capability boundaries surfaced: moderators can delete users, so the recommended approach for tighter control was Category Moderators + per-category moderator groups (Support) — read more

  • A self-hosting anxiety post (“install on my VPS”) turned into a practical mini-guide: one-line installer, backup mindset, and hosted-vs-self-host tradeoffs (#Self-hosting, Support) — read more

  • A Onebox/OpenGraph failure that worked on Meta but not on the user’s site ended up being a certificate chain / server-side fetch trust issue, reinforcing that Onebox generation is server-side and sensitive to TLS setup (onebox, Support) — read more

  • Admins trying to “require TOS acceptance” used a clever workaround: a required custom user field checkbox to gate saving profile/preferences (Support) — read more

bug

  • A dashboard UX/data issue: the Site Traffic graph becomes unhelpful when crawlers dominate, prompting a request for smarter scaling or a “rescale” control (dashboard-reports, bug) — read more

  • A content-localization bug: localized tag names weren’t being cleaned/slugified, breaking body classes and tag display; a fix plus migration shipped (content-localization, bug) — read more

  • Form Templates: selecting multiple templates per category didn’t persist after refresh due to missing save behavior in a simplified category-creation flow; workaround + merged fix provided (form-templates, bug) — read more

  • Discourse v2026.3.0 upgrade pain: discourse-subscriptions failed boot due to a route constant load-order/deprecation edge case; a core PR removed the deprecation point (subscriptions, bug) — read more

  • A scary report: using topic timers + schedule publishing in a draft with a missing destination category could spiral into a heavy, “catastrophic” UI state (topic-timers, bug) — read more

ux

  • Mobile composer toolbar: when too many buttons exist (often from theme components), later buttons can look “missing”; discussion turned to whether scroll affordances (like arrows) should appear on touch devices (composer, ux) — read more

  • On some tablets/browsers, the floating search widget produced bizarre input behavior (reversed character order), eventually linked to a floating keyboard feature (search, Support) — read more

  • A login-page polish issue: top logo alignment shifts when language switcher or theme toggle is present (login, ux) — read more

#customization:plugin / #customization:theme component

  • A notable new plugin: diskuz Call brings peer-to-peer voice/video calls into Discourse using WebRTC (signaling on server, media P2P/TURN) (#customization:plugin) — read more

  • Another plugin showcase: a Discourse Points Mall prototype (check-in, shop, orders, ledger) with candid notes about current bugs and readiness (#customization:plugin) — read more

  • A theme-component tooling thread: Tag Style Tool shipped updates quickly after reports of disappearing UI and Font Awesome SVG subset quirks (tags, #customization:theme component) — read more

  • A no-rebuild alternative to server plugins: Bilibili inline player as a theme component, compared against an existing rebuild-required plugin approach (onebox, #customization:theme component) — read more

  • “Banner Featured Links” got an update to address htmlSafe deprecation and other cleanup, pinned to 2026.3.0-latest (#customization:theme component) — read more

  • The terminal-based Discourse client “termcourse” added MessageBus-powered realtime notifications and began aligning shortcut conventions (experimental, #customization:extras) — read more


Activity by the @team Group

  • Falco focused on practical admin fixes and roadmap notes: explained Cloudflare “everyone got banned” IP behavior and the need for the Cloudflare template (read more), confirmed work on a new UI to display full “and N more…” reactions lists (read more), clarified Data Explorer API behavior changes and limits/pagination guidance (read more), expanded hosted LLM capacity limits and model capabilities (read more), and outlined replacements for Google’s discontinued Custom Search integration plus future “native web search tools” support (read more).

  • nat delivered several “deep internals” clarifications and fixes: corrected the realities of i18n for custom badges and provided the console-based TranslationOverride approach (read more), investigated localized tag output and shipped a cleanup fix + migration (read more), responded to dashboard traffic-graph scaling feedback with “changes coming” context (read more), and pointed users to the experimental tag settings page for managing translated tags after AI translation (read more).

  • sam shipped and discussed multiple AI/automation developer-facing improvements: announced OpenAI/Azure provider service tiers and how to configure them in LLM settings (read more), advanced the “automation pipelines” idea (trigger → filters → actions, observability, extensibility) (read more), responded to upgrade issues around USERNAME_ROUTE_FORMAT with a core PR to remove the deprecation pressure point (read more), and continued triage on AI Search resource usage expectations vs unexpected CPU pressure (read more).

  • awesomerobot handled a broad spread of admin UX + bug triage: reproduced and confirmed the multi-form-template persistence bug, suggested a workaround, and followed with a merged fix (read more); investigated toolbar overflow behavior and the “hidden arrow on touch devices” tradeoff (read more); identified a third-party plugin causing “official” components to fail after update and offered safe-mode isolation steps (read more); and suggested structured approaches for gating access via guidelines acceptance using Policy + Automation patterns (read more).

  • Danielle coordinated community-facing updates: announced the moderator-program webinar and confirmed recordings will be shared after the session (read more), and helped steer a process for reviewing/updating older FAQ/Guidelines documentation references (read more).

  • supermathie provided crisp diagnostics and user-expectation improvements: tested problematic mobile browsers for text-selection UI issues and concluded the most viable path is recommending supported browsers (read more), documented a temporary email regression caused by a gem update (with break/fix commits) for anyone impacted that day (read more), and proposed a UX hint for multisite “guest” admins who can’t access /sidekiq to reduce confusion (read more).

  • chapoi engaged on UX polish and dashboard/report behavior: clarified the intent behind the site-traffic Y-axis behavior and agreed it should be smarter in crawler-heavy scenarios (read more), pointed developers to Discourse docs being included directly in the core repo (read more), and confirmed a tablet TOC overlay bug should be fixed by an upstream DiscoTOC PR (read more).

  • martin worked on both production troubleshooting and product communication: diagnosed why “mark as solution” can fail after merges (a prior solved record in the old topic) and applied a fix while investigating a preventative change (read more), and published the companion discussion topic for the “Upcoming Changes system” blog post (read more).

  • HAWK kicked off a cleanup thread about FAQ/Guidelines link confusion, which quickly evolved into a documentation and process review effort (read more).

  • pmusaraj supported Discourse ID troubleshooting: requested backtraces for “can’t alloc thread” signup failures and helped narrow suspicion toward memory constraints / reproducibility via fresh installs (read more), and offered direct cleanup of duplicate redirect-URI credentials as a temporary fix while workflow improvements are in progress (read more).


Thanks for reading, and I’ll see you again next week! :slight_smile:

This week on meta.discourse.org

A busy week on Meta (2026-03-15 → 2026-03-22), with lots of energy around experimental UX (nested replies), developer-facing changes (plugin build tooling + deprecations), and a steady stream of admin/support troubleshooting across hosting, auth, and calendars (see the mega test thread: read more).


Key Stats

  • New posts: 644
  • New topics: 82

Most active / most appreciated users (posts + likes received this week):

User Posts Likes
Moin 62 108
Falco 30 111
chapoi 21 33
NateDhaliwal 27 21
darkpixlz 16 29
Lilly 14 44
david 13 60
merefield 13 24
martin 6 27
Canapin 10 44

Conversation drivers worth noting (with sources):


Interesting Topics

#Announcements


Dev


ux


#Site feedback


Support (and #Self-hosting)


#Nested Replies Testing

  • Discourse shipped a very experimental nested/threaded topic view plugin for testing, explicitly framed as feedback-on-feel rather than bug reporting: Testing Nested Replies on Meta.

  • To reduce “where did the other posts go?” confusion once deep nesting triggers a detached “context view,” a UI clarity pass was proposed and demoed in UX improvements for deeply nested thread view.


#Plugins / #customization:theme component / #customization:extras


#contribute:feature


bug


Activity by the @team Group


Thanks for reading, and I’ll see you again next week! :slight_smile:

1 个赞

本周 meta.discourse.org 动态…

关键数据

在过去 7 天的讨论和修复工作中(例如 v2026.3.0-latest.1 安全修复讨论发布站点反馈):

  • 新增帖子总数: 502
  • 新增主题总数: 68

活跃用户(本周发帖数 / 获赞数)

  • Moin34 帖 / 75 赞 — 协助处理了诸如主题投票标签标点符号(阅读更多)以及删除后上传清理行为澄清(阅读更多)等问题。

  • david20 帖 / 70 赞 — 就发布可见性和 Meta 公告作出回应(阅读更多),修复了停滞的“新版本邮件”问题(阅读更多),并迭代了发布站点(RSS + 样式反馈循环)(阅读更多)。

  • Falco12 帖 / 55 赞 — 解释了安全修复浪潮的背景(阅读更多),推进了 Patreon API v2 升级(阅读更多),并讨论了 Discourse AI 的私信翻译目标(阅读更多)。

  • zogstrip12 帖 / 29 赞 — 安排了一系列修复,包括表情符号别名验证(阅读更多)和审核/队列用户体验改进(阅读更多)。

  • merefield12 帖 / 28 赞 — 对“数据库残留清理”插件进行了深思熟虑的风险评估(阅读更多),并推动了隐私/链接获取的可维护解决方案(阅读更多)。

  • R23D_Printing21 帖 / 28 赞 — 快速迭代了 Discourse Challenges,增加了每周间隔和版主访问权限,随后推出了基于私信的 ChallengeBot(阅读更多)。

  • awesomerobot9 帖 / 27 赞 — 修复了诸如主题投票标点符号等用户界面回归问题(阅读更多),并提出了 about.json 的 API 权限改进建议(阅读更多)。

  • darkpixlz19 帖 / 25 赞 — 协助调试了 CDN/CORS 插件故障(阅读更多),并正确地反对隐藏“大红”故障主题横幅(阅读更多)。

  • RGJ8 帖 / 20 赞 — 清晰解释了永久删除后上传文件何时被清理(阅读更多),并建议采用更安全的代理方法来获取链接/保护隐私(阅读更多)。

  • nathank16 帖 / 20 赞 — 提供了实用的管理员指导(例如关于页面组可见性)(阅读更多),并探索了围绕活动和呼叫的功能/工作流方法(阅读更多)。

有趣话题

Support

  • Ed_S“隐形”发布表示担忧,并要求发布帖子回归到公告板块;david 承认了这一问题,并表示团队正在讨论在 Meta 上提供更好的指引(阅读更多)。

  • 关于发布内容消费的困惑在关于 releases.discourse.org 可用性 的专题讨论中持续存在,用户请求提供 RSS 和更好的可读性——结果 RSS 源很快上线(阅读更多)。

  • 托管免费计划的注册流程遇到了“已配置站点过多”的错误;HAWKpedro 介入调查并确认输入信息(阅读更多)。

  • 自行托管者调试 Discourse ID 时得知一个硬性要求:如果你的站点告诉 Discourse ID 重定向 URI 不是 HTTPS,你就需要修正 force_https / 代理头信息——讨论中包含了常见的反向代理误解(阅读更多)。

  • 一个实用的支持话题询问如何在不移除组的情况下从 /about 页面移除版主;简单的“隐藏组”方法(以及可选的动态组)解决了这个问题(阅读更多)。

  • 一个“大红横幅”的问题变成了一个提醒:故障主题警报故意设计得醒目,正确的做法是解决组件问题,而不是隐藏警告(阅读更多)。

  • 一位管理员询问如何将横幅/图片移动到 顶部——回答强调最好通过小型主题组件/CSS 调整来完成,而不是修改标记(阅读更多)。

bug

  • 一个长期存在的烦恼——没有“新版本可用”邮件——被追溯到 redis gem 的更改,并获得了核心 PR 来修复损坏的作业(阅读更多)。

  • 在 iPhone 上 Facebook 应用内浏览器中出现的“看起来像纯 HTML”的问题被归因于 爬虫检测错误分类了 MetaIAB,并打开了一个核心 PR 来调整默认设置(阅读更多)。

  • 多位管理员报告称插件在升级后静默失败,原因是 CDN 端的 CORS 行为;早期调试指向了 BunnyCDN 头信息和回归时机(阅读更多)。

  • 一个虽小但真实的用户界面小瑕疵:启用主题投票并隐藏“0 票”时,最后一个标签后会出现逗号;Meta 的主题定制被牵涉其中,并很快进行了调整(阅读更多)。

  • 一次令人痛苦的编辑器事件:上传 HEIC 图片 导致错误和页面重载,丢失了长草稿;调查集中在复现步骤和错误详情上(阅读更多)。

ux

  • Meta 用户体验报告指出,通过“电子邮件登录”流程登录时,2FA 输入框左对齐;修复 PR 已打开,Meta 的登录布局也受到了重新审查(阅读更多)。

  • 表情符号的正确性得到了关注::champagne: 不存在,但一个别名让它看起来应该存在;后续步骤添加了验证以防止指向不存在的表情符号的别名(阅读更多)。

  • 一个移动交互请求:在帖子管理操作底部工作表中添加 拖拽条(匹配主题管理操作 UI),以提高可发现性和操作便利性(阅读更多)。

  • 一个功能用户体验请求提出了一个 宽屏“展开表格”查看器(只读),以便在不进入编辑模式的情况下阅读大型 Markdown 表格(阅读更多)。

  • Meta 上对 嵌套回复 的持续实验既带来了兴奋,也带来了导航困惑,特别是从通知或平面视图进入时(阅读更多)。

Dev

  • 主题/插件作者再次受到推动:.hbs 文件已弃用(移至 .gjs),该话题还强调了 Ask Discourse 作为小型转换的快速助手(阅读更多)。

  • 内联 <script type="text/discourse-plugin"> 支持现已移除;现代化的 canonical 线程已更新,设定了 2026 年 3 月的移除里程碑(阅读更多)。

  • 团队更新:新的插件构建系统演讲已在外部分享(Ember Europe 聚会),为开发者提供了学习新工作流的途径(阅读更多)。

#customization:plugin

  • Discourse Challenges 迅速演变:每周间隔、版主访问权限,随后 ChallengeBot(私信确认、提醒、如 status/leaderboard/streak 等命令)接连推出(阅读更多)。

  • 一个新插件想法 Plugin Cleaner 旨在扫描并移除未安装插件留下的“残留”物;反馈强调了删除未知/未迁移插件结构的固有风险(阅读更多)。

  • Discourse Member Application 为仅限邀请/私密社区引入了结构化的 /apply 接收流程,用 Discourse 内的审核 + 邀请流程取代了外部表单/电子表格(阅读更多)。

#customization:extras

  • Dexo,一个使用 UIKit/Swift 构建的原生 iOS Discourse 客户端,展示了多论坛支持、HTML 渲染、认证流程和简洁的用户界面方法(阅读更多)。

#community-building 建设

  • 一位新的社区所有者征求关于为游戏社区创建新 Discourse 论坛的反馈;回复涵盖了主题、用户体验打磨,以及让 Discourse 开箱即用感觉不那么“通用”(阅读更多)。

  • 一位葡萄牙语社区管理员询问其游戏论坛的组织是否良好;建议包括重新思考标签/子类别的权衡,并改善入门路线(例如直接链接到预填编辑器)(阅读更多)。

Marketplace

  • 一项大规模请求寻求 phpBB → Discourse 迁移专家,涉及约 87 万篇帖子,具有希伯来语 RTL 和严格的 SEO/重定向要求,强调最小停机时间和 URL 映射(阅读更多)。

@team 小组活动

  • david 重点关注发布体验和升级信号:他在安全修复线程中解决了关于缺少 Meta 公告和仪表盘混乱的担忧(阅读更多),移动并组织发布站点反馈,同时快速推出 RSS 等改进(阅读更多),并回应了自行托管版本锁定问题(以及更正 version: 的设置位置)(阅读更多)。他还推动了核心修复/更新,涵盖“新版本”邮件投递(阅读更多)和 Facebook iPhone 应用内浏览器的 UA 检测(阅读更多),并记录了遗留内联脚本标签的移除(阅读更多)。

  • Falco 混合了产品反馈、集成和 AI:他提供了为何许多安全修复集中发布的背景(阅读更多),更新了 Discourse 博客的嵌入评论体验,并标记了主题/填充问题以供迭代(阅读更多),并推进了 Patreon 插件 API v2 迁移——按要求添加了自定义用户代理(阅读更多)。他还澄清了聊天/GIF 的行为预期(功能而非错误)(阅读更多),将日历功能请求指向新的订阅 URL 工作(阅读更多),并提议改进 AI 翻译控制,使管理员可以明确选择是否包含私信(阅读更多)。

  • zogstrip 正在进行一场修复风暴, consistently 将修复链接到 PR:审核队列/编辑器流程修复正在积极讨论中(阅读更多),低语提示行为获得了实施计划(阅读更多),onebox 问题(包括损坏的 x.com 行为)排队等待修正(阅读更多),永久删除的边缘情况已确认并有修复在即(阅读更多)。他还通过防止指向不存在的表情符号的别名来改进表情符号别名管道(阅读更多),并继续完善“即将更改”切换的管理/报告用户体验预期(阅读更多)。

  • awesomerobot 专注于用户界面/用户体验的小瑕疵和实用改进:主题投票/标签标点回归在 Meta 上迅速修复(阅读更多),电子邮件登录 2FA 对齐问题被追踪到特定流程并排队修正(阅读更多),并澄清了语义/AI 搜索结果与精确匹配之间的区别(阅读更多)。在 API 方面,他打开了一个 PR,允许细粒度 API 用户读取 about.json阅读更多),并请求在 HEIC/草稿丢失报告上提供更好的错误复现(阅读更多)。

  • supermathie 帮助解决了自行托管的身份/认证问题:他解释了为何 Discourse ID 坚持使用 HTTPS 重定向 URI(以及 force_https 的实际作用)(阅读更多),并跟进关于 about.json 访问与细粒度密钥的 API 范围/错误消息讨论(阅读更多)。

  • sam 对“难以复现”的托管问题和更广泛的用户体验发表了意见:他参与了一个棘手的主題 git-clone 失败线程(指出 GitHub 停机/速率限制可能是嫌疑对象)(阅读更多),推动对“帖子审批”对最终用户的感觉进行整体重新思考(队列透明度、通知、编辑器行为)(阅读更多),并通过清理过时材料(例如“有效搜索”指南)刷新了核心文档(阅读更多)。他还更新了面向管理员的编辑器弹出文档(阅读更多),并提示工程团队注意 Extras 集成链接出现 404 错误(阅读更多)。

  • pmusaraj 调查了 ActivityPub 互操作性问题:Mastodon 的参数更改(scopescopes)被识别,并在上游/插件中提出了修复(阅读更多),随后的 Discourse↔Discourse AP 验证问题被缩小到 Meta 参与者行为与其他参与者的区别(阅读更多)。他还确认了 Discourse ID 改进以解决未来的重定向 URI 冲突(阅读更多),并跟进免费层级站点上的备用电子邮件行为(阅读更多)。

  • manuel 在有人报告“Meta 不再通知我”时,直接提供了关于通知设置(关注/跟踪)的最终用户指导(阅读更多)。

  • HAWK 确认并升级了托管免费计划的配置错误给团队,使支持循环快速推进(阅读更多)。

  • pedro 介入同一托管配置问题以收集诊断细节(输入的确切域名值)并帮助确认变通方法(阅读更多)。

感谢阅读,我们下周再见! :slight_smile:

本周在 meta.discourse.org

关键数据

在过去 7 天(2026-03-29 → 2026-04-05)中,Meta 平台共有 596 篇新帖子77 个新主题。(如果您想在自己的站点生成类似的汇总报告,请参阅 Data Explorer + API 方法,详见 如何发布指向实时报告的链接或嵌入站点活动?使用 Discourse API 运行 Data Explorer 查询 中的讨论。)

本周活跃用户(帖子数 / 收到的点赞数):

用户 帖子 点赞
Moin 60 93
Falco 25 93
RGJ 22 67
Lilly 20 52
Canapin 13 46
nat 12 46
awesomerobot 16 37
Ed_S 18 35
zogstrip 15 33
david 14 28

本周的活跃度主要集中在新的交互功能(新的 Boosts 实验:阅读更多)、将 Discourse 作为完整评论系统嵌入阅读更多),以及对AI / 本地化工作流的持续迭代(例如:标记翻译质量反馈 阅读更多,以及后续修复如标记图标翻译支持 阅读更多)。


有趣话题

#announcements

  • Discourse 正在实验Boosts(一种带简短消息的反应),社区就其与反应/点赞的 UX 重叠、管理影响以及命名(“命名事物”甚至客串亮相)进行了讨论。阅读更多

  • 嵌入功能迎来重大升级:“完整应用模式”现在会在 iframe 内加载完整的 Discourse 应用,访客无需离开宿主站点即可回复/点赞/引用,同时讨论了滚动条的可发现性和“回复主题”的位置。阅读更多

  • Discourse AI 代理现在可以向外连接到任何 MCP 服务器(“自带 MCP”),通过外部工具扩展 AI 代理的自动化范围。阅读更多

  • 一项虽小但意义重大的支持改进:在已解决类别中跟踪/关注主题的用户,现在会在主题被标记为已解决时收到通知——此外还有关于通知偏好边缘情况的早期反馈。阅读更多

  • 2026 年 3 月月发布版帖子已发布,包含更新日志和补丁发布的链接,并引发了一次顺畅的“切换到发布轨道”的报告。阅读更多

博客

  • nat 发表了一篇关于 Discourse 13 年多语言演变的“幕后”历史文章,团队随后给予了赞誉和背景补充。阅读更多

活动

  • 团队澄清了 Meta 将如何组织网络研讨会与社区办公时间,包括重播和即将进行的会话将放在哪里。阅读更多

#contribute:site-feedback

  • ask.discourse.com 短暂宕机,被多人确认,并迅速修复。阅读更多

  • AI 生成的标签翻译引发了详细的质量审查(缺乏上下文的翻译,如 编辑器 → “Komponist”),并讨论了 grounding 策略(标签描述、代码/术语表上下文)。阅读更多

  • 一项要求在 Meta 语言切换器中添加乌克兰语和俄语的请求,从团队那里得到了近期行动的积极信号。阅读更多

bug

  • 移动端回归问题导致某些 Meta 页面在 iOS 浏览器上仅渲染标题/头部;调查追踪到主题组件中的最近更改,并已进行还原。阅读更多

  • 标签横幅暂时失去了标签显示(看起来是空的横幅),很快被诊断出是数据可用性变化,随后在主题组件中进行了修补。阅读更多

  • 数字标签边缘情况:旧的 /tag/#### URL 模式产生了500 错误(对爬虫不利);团队确认他们已着手修复,同时保持 /tag/name 兼容性。阅读更多

  • 类别专家插件因验证约束导致用户合并崩溃;修复程序已通过插件 PR 排队处理。阅读更多

  • 翻译回归问题显示AI 的“思考/评论”泄露到了德语输出中;代理已更新,受影响的标题/帖子已清理。阅读更多

  • 备份到Cloudflare R2在较新版本的 aws-sdk-s3 中因多部分上传而中断;固定版本恢复了受影响安装的功能。阅读更多

  • 已归档主题 + 反应存在逻辑错误:在某些条件下,某些帖子仍可被反应;核心修复已准备就绪。阅读更多

#contribute:feature

  • 标签图标组件获得了对翻译标签的支持(引用了 PR,并展示了翻译标签标签 + 正确图标的截图)。阅读更多

  • Mistral 嵌入集成遇到了 OpenAI 兼容不匹配(dimensionsoutput_dimension),促使请求支持 Mistral 的参数命名。阅读更多

  • 一项实用的媒体请求:检测或拒绝 VP9-in-MP4上传,这些上传在 iOS Safari 上会静默失败,讨论了安全、可选的转码方法。阅读更多

  • 管理员请求允许自动组的传入电子邮件(以避免“重复组 + 同步成员”的变通方法),并提到了现有的仅控制台变通方法。阅读更多

ux

  • 编辑器中的“编辑期间放弃”仍然令人困惑:提议包括将 UI 文案更改为“取消编辑”,并且仅在实际有更改时才进行提示。阅读更多

  • 强制 MFA 可能会“将用户锁定在”安全屏幕上,且指导有限;该线程探讨了更好的自定义模式(站点文本 vs 在包装器出口上方插入主题组件)。阅读更多

  • 一项回归报告显示,在“简化类别创建”下更改父类别/子类别关系时,类别安全权限被重置,工作人员确认正在调查。阅读更多

  • 一个长期存在的工作流程小麻烦:用户无法取消关注被暂停/封禁的账户,除非暂时解除暂停;链接了一个修复 PR。阅读更多

社区建设

  • 一篇关于在没有产品/服务“拉动”的情况下发展社区的坦率线程重新讨论了活动飞轮、99-9-1 模式以及可持续的“非创始人驱动”参与。阅读更多

综合

  • “你的论坛有多精简?”引发了管理员选择不启用的内容(类别、插件、聊天、反应、LLM)的具体清单,并自然地漂移到了关于标签和信任级别的权衡讨论。阅读更多

@team 小组的活动

  • lindsey 发布了两个面向用户的公告:新的Boosts 实验阅读更多)和支持类别中已解决通知的改进(针对关注者/跟踪者)(阅读更多)。她还就与 Crowdin 样式组件相关的“当前项目”状态项目进行了跟进(阅读更多)。

  • Falco 推动了多个产品和平台线程:他宣布了嵌入功能的完整应用模式,并跟进 UI 简化和行为细节(阅读更多);强化了 iOS 主屏幕推送通知行为(并指出了推送通知线程中脆弱性的根本原因)(阅读更多);确认 Meta 很快可以在语言切换器中添加乌克兰语/俄语阅读更多);并讨论了 VP9 上传缓解策略,引用了 Video Stream 作为选项(阅读更多)。他还继续迭代 MCP 和 AI 工作流(例如,在 阅读更多 中权衡仅提及机器人的“工作流触发”方法,并在 阅读更多 中突出显示 MCP 的帖子编辑支持)。

  • nat 专注于本地化和 AI 翻译质量:她发布了长篇多语言历史文章“为每种语言构建”(阅读更多),迅速回应了“AI 翻译标签缺乏上下文”的反馈,并讨论了提示/工具改进(阅读更多),并确认将修复数字标签 URL 500 边缘情况(阅读更多)。她还通过 PR 交付/排队了本地化表面区域的改进,包括翻译标签图标支持(阅读更多)和针对“AI 评论/思考”泄露到德语翻译中的针对性修复(阅读更多)。在配置方面,她概述了 AI 翻译范围的更细粒度未来(包括 PM 翻译控制),并在主题中引用了迁移计划和 PR 链接(阅读更多)。

  • awesomerobot 在产品 UX 和维护方面非常活跃:他澄清了Boosts如何融入交互层次结构,并确认该功能是可选的,同时还讨论了受监视词和未来 AI 扫描可能性等安全功能(阅读更多);通过快速 PR 周转诊断并修复了标签横幅的回归问题(阅读更多);并通过出口插入提供了一种添加自定义 MFA 执行指导的具体主题组件方法(阅读更多)。他还打开/合并了工作流改进,如使拒绝流程在审核队列拒绝后创建草稿以供编辑(阅读更多),调整了关于“回复此消息”的令人困惑的系统文案,当未配置联系用户/组时(阅读更多),并承认 Ask Discourse UI 的奇怪之处,如主页上冗余的“返回论坛”链接(阅读更多)。

  • zogstrip 在核心和官方插件/组件中落地了一系列广泛的修复和 PR:他回答了 Boosts 问题,并澄清 boosts 不会重新排序帖子(阅读更多);修复了“已归档主题中的点赞/反应”逻辑(阅读更多);链接了关注插件中取消关注被暂停/封禁用户的修复 PR(阅读更多);并处理了几个操作性小麻烦,如群组批量邀请“通知用户”行为(阅读更多)和外部链接图标行为中的 RTL 问题(阅读更多)。他还澄清了一个被误解的注册相关设置,并更新了其描述以减少管理员混淆(阅读更多),并排队修复了通过 Google Search Console 发现的 acceptedAnswer schema 问题(阅读更多)。

  • david 提供了深入的技术支持和发布沟通:他解释了为什么在最近升级后出现 CORS 问题(模块脚本 + 标头),并指导管理员完成 NGINX/CDN 重建要求,包括指向确切的修复路径和重建行为(阅读更多);发布了2026 年 3 月发布版公告,包含更新日志链接(阅读更多);并调试了 discourse-ai 中 AI 辅助迁移冲突场景,包括底层迁移排序细节和缓解选项(阅读更多)。他还快速合并并发布了依赖项 PR(mini_scheduler 的 Sidekiq 8 支持),在提交后迅速完成(阅读更多)。

  • sam 继续推动 Discourse AI + MCP 向前发展:他宣布了 Discourse AI 代理的“自带 MCP”(阅读更多),并发布了将 MCP 服务器连接到代理的管理员指南(阅读更多)。他还权衡了仅提及机器人响应逻辑的权衡(倾向于默认值以减少选项蔓延)(阅读更多),并在迁移冲突线程中参与了讨论,提出了诸如 linting/技能等想法,以在使用 AI 工具时强制执行正确的带时间戳的迁移(阅读更多)。

  • mcwumbly 参与了几个“我们如何运营 Meta”和“我们如何发布更改”的接触点:他赞扬并添加了多语言历史文章的背景(阅读更多),讨论了映射类别到团队空间(类似 Slack)的原型“工作区”方法(阅读更多),并分享了 Meta 如何使用 Data Explorer 调整 TL3 上限,包括指向确切的查询参考帖子(阅读更多)。他还承认并排队调查了在简化类别创建下的类别权限重置回归问题(阅读更多),并继续照料“内容园艺中心”实验线程的机制和侧边栏/标签行为(阅读更多)。

  • Bas 迅速处理了一次运营事故:他确认并解决了ask.discourse.com 宕机,在服务恢复后发布了“已修复”更新(阅读更多)。

  • davidb 确定了移动端“损坏的主题页面”问题的根本原因可能是 discourse-tag-icons 组件中的特定提交,并在调查期间启动了临时还原(阅读更多)。

感谢您的阅读,我们下周再见! :slight_smile:

This week on meta.discourse.org

Key Stats

Period covered: 2026-04-05 → 2026-04-12

  • New posts: 581
  • New topics: 78

Top users (posts / likes)

Notable launches & fixes that drove discussion

  • Bookmarks got a major discoverability improvement with “jump to bookmarked posts” from the topic footer action menu: read more

  • The Meta Branded theme rebuild shipped (new implementation + early look at the Blocks API), sparking a lot of UI/icon feedback: read more

  • A wave of quick UX and bugfix PRs landed (RSS exclude tags, calendar/iCal formatting, composer strings, localization edge cases), often with “fixed by PR” replies directly in-topic, e.g. RSS exclude_tag: read more

Interesting Topics

#Announcements

  • Boosts on Meta (#Announcements) — The ongoing “Boosts” experiment triggered a deep discussion about signal vs. noise, moderation implications, and UI density (especially on mobile), with proposals like folding/expanding boosts and concerns about “negative boosts”: read more

  • Easier access to bookmarks (bookmarks, #Announcements) — Discourse added quick access to all bookmarked posts in a topic via the bottom-of-topic bookmark control, making “where did I bookmark that?” much easier to solve: read more

ux

  • Mobile composer in 2026 (composer, mobile, ux) — Canapin kicked off a “mobile-first reality check” on the composer’s growing complexity; replies centered on what to remove, what must remain, and iOS-specific reliability issues: read more

  • How to close the tag selector on mobile (composer, mobile, tags, ux) — A small-but-daily papercut: the tag chooser doesn’t have an obvious “close” affordance on mobile, forcing users to learn a non-intuitive tap target: read more

  • Bookmarks UI edge cases on mobile (bookmarks, #contribute:feature) — A nuanced UI/mental-model thread: how should the footer bookmark icon communicate “topic bookmarked” vs “post(s) bookmarked”, and how do you keep actions consistent without hiding “jump to bookmarks” discoverability? read more

  • Community-building discussions on Meta (#Site feedback) — mcwumbly asked how Meta should better encourage community building / management discussions after category reshuffles (and what behavior/structure changes would help): read more

  • Feature/bugfix announcement topics and version clarity (#Site feedback) — A practical meta-process request: include versions in announcement topics so admins who can’t realistically run tests-passed daily can still plan upgrades: read more

#Site feedback

  • Rebuilding the Meta Branded theme + Blocks API (meta-theme-feedback, meta-redesign-2026, #Site feedback) — The new Meta theme rebuild showcased Lucide icons, tighter theme/palette controls, a custom homepage direction, and an explanation of how Blocks differ from PluginOutlets for more stable layouts: read more

  • Inaccurate plugin availability notes (#Site feedback) — Several official plugin topics still claim “available on all hosting tiers” despite new plan tiers; the thread explored linking directly to pricing tables and reducing “two sources of truth” drift: read more

#customization:theme component

  • Discourse Lucide Icons (#customization:theme component) — A dedicated theme component topic for Lucide landed, quickly collecting icon mapping feedback (e.g., reply/share confusion, filled heart behavior, missing icons like calendar-heart): read more

  • Topic Hover Cards (#customization:theme component) — A new component proposes tooltip-style previews when hovering/tapping internal topic links; early feedback asked for clearer screenshots/preview before adoption: read more

  • Highlight to Search (search, #customization:theme component) — A small productivity boost: highlight any text and immediately search for it, packaged as a new theme component with a live preview: read more

  • Customizable Print to PDF Button (#customization:theme component) — A new “clean print” topic button component aimed at improving topic export/printing compared to the stock print flow: read more

  • Unhide composer fullscreen toggle for tablets (composer, tablet, #customization:theme component) — A focused component to restore the fullscreen composer toggle on touch devices with larger screens where it’s hidden by default: read more

Support

  • OIDC login error on the OpenAI hosted forum (openid-connect, hosted-support, Support) — Users reported OIDC authorization failures; escalation + confirmation of resolution followed shortly after: read more

  • Private Topics / Ticket System permission scare (resolved) (Support) — A “this might be a security incident” moment turned out to be a configuration misunderstanding in the Private Topics plugin; the fix was to remove a group from “always show topics started by…” so TL0 users wouldn’t see everything: read more

  • Windows support expectations (Support) — A clear statement emerged: Discourse doesn’t support Windows versions Microsoft doesn’t support, though browser forks may work in practice for legacy systems: read more

  • New site signup stuck on “Almost there…” (resolved) (free-plan, Support) — New customer onboarding briefly failed; staff confirmed an incident and then a fix: read more

bug

  • Structured data issue: missing fields in mainEntity.suggestedAnswer (bug) — A schema/microdata regression was investigated and partially fixed; follow-up indicated remaining validator complaints around missing text/datePublished fields: read more

  • Data Explorer won’t save queries containing semicolons in quoted HTML entities (data-explorer, bug) — A validation rule blocked harmless semicolons inside quoted strings; the request was to only reject actual query terminators outside quotes: read more

  • Data Explorer output double-escapes HTML (data-explorer, bug) — A confusing display bug: Fish & Chips renders as Fish &amp; Chips in query results, making it harder to work with plain text outputs: read more

  • Exclude_tag broken in category RSS feeds (rss-polling, bug) — Excluding tags from category RSS didn’t work, but a /latest.rss?category=...&exclude_tag=... workaround did; a core fix was proposed right in the thread: read more

  • Highlight.js bundles + S3/CDN CORS fallout after upgrade (fixed) (cdn, #Self-hosting) — A subtle “assets loaded from the wrong CDN” bug caused highlight-js failures on codeblocks; a PR corrected highlightjs bundle URL behavior for that S3-only configuration: read more

Activity by the @team Group

Thanks for reading, and I’ll see you again next week! :slight_smile:

本周在 meta.discourse.org 上…

关键数据

  • 新增活动(过去 7 天): 551 篇新帖子,分布在 73 个新主题中(每周汇总窗口 2026-04-12 → 2026-04-19)。

  • 最活跃用户(帖子数 / 获得的点赞):

用户 帖子 点赞
Lilly 28 86
Falco 21 74
Moin 46 73
sam 4 43
awesomerobot 17 40
darkpixlz 14 38
NateDhaliwal 30 33
RGJ 12 31
pmusaraj 11 23
merefield 9 22

本周最大的“全员参与”讨论是关于 Discourse 在人工智能时代对开源的承诺:阅读更多


有趣话题

blog

  • Discourse 重申了其开源立场(并指出“安全通过隐蔽”站不住脚),在 《Discourse 不会转为闭源》 中——这是对业界关于 AI 驱动漏洞发现的焦虑的及时回应。阅读更多

#Announcements

  • 类别创建获得了重大用户体验提升:“想法类别”现在可以通过 Discourse 主题投票更轻松地创建,包括更清晰的设置流程和默认值。阅读更多

  • 将 Discourse 作为完整评论系统进行嵌入的功能继续成熟;公告线程收集了更多实际反馈和后续改进,包括浮动回复/时间线功能等改进。阅读更多

  • “自动将网格应用于图片上传”的发布得到了澄清:“稳定”在“即将更改”中并不总是意味着该设置会消失;有时它只是默认设置的调整。阅读更多

#contribute:feature

  • 一个长期存在的用户体验争论再次浮现:“回复旧主题”的警告已消失,管理员希望有一个可配置的、以指导为导向的替代方案,而不是一个令人望而却步的阻碍。阅读更多

  • 审核队列的人体工程学:审核员要求按用户分组审核项(或更强的上下文),以避免在队列中标记和帖子分离时发生意外的“删除用户”操作。阅读更多

  • 聊天功能请求出现在两个紧密相关的线程中:聊天频道内的投票默认频道设置(例如,预配置线程、权限等)。阅读更多阅读更多

bug

  • 令人痛苦的升级边缘情况:当 enable_simplified_category_creation 开启时,插件无法保存类别设置;开发人员被指引至 FormKit 迁移模式,并建议通过“即将更改”暂时退出。阅读更多

  • AI 翻译扩展问题:在一次性翻译为多种语言时,葡萄牙语(pt)被跳过,导致对后端故障、详细日志记录和重试行为的调查。阅读更多

  • 管理员帖子扳手菜单的悬停提示损坏或缺失;一个核心 PR 已打开以修复复制/粘贴错误,并在需要时添加标题。阅读更多

  • 标签用户体验不一致:编辑器有时声称允许某个标签,有时则不允许,这取决于自动补全输入;修复需要在限制周围实施“更智能”的强制执行逻辑。阅读更多

  • 日历/事件 + 汇总回归:帖子事件小部件中缺失的聊天链接被追溯到构建系统更改,并通过 PR 快速修复。阅读更多

  • 用户由于路由错误(controllerFormodelFor)无法看到邀请详情选项卡;修复已通过核心 PR 发布。阅读更多

  • 安全模式 下, hashtag 自动补全触发了控制台错误,其中一条路径与缺失的图标生成助手有关;修复措施已落地,同时针对第二种错误模式继续进行更深入的重现。阅读更多

  • RTL 编辑器优化:当“新主题标题”字段为空时,它仍然保持从左到右(LTR);一个基于标记的修复被提出并合并,以根据字段是否有内容来切换方向行为。阅读更多

ux

  • 移动端分享模态框改进:复制按钮在小屏幕上的位置 awkward;一个 PR 重新组织了内容,同时保持帖子日期可见。阅读更多

  • 审核队列透明度发生变化:由于混淆,标记评分详情被有意移除,引发了关于应保留哪些可见内容及其原因的讨论。阅读更多

  • 关于移动端编辑限制的讨论仍在继续(工具栏的可发现性、拥挤的编辑器高度,以及网页与应用程序期望之间的紧张关系)。阅读更多

  • 免费计划消息混淆:用户报告误导性关机/只读时间通信,触发员工调查时间线清晰度和自动化行为。阅读更多

Support

  • Redis 警示故事:刷新 Redis “修复”了卡住的“更新中…”界面,但响应者强调了 Redis 在会话/Sidekiq 作业中的作用,并鼓励更针对性的诊断。阅读更多

  • 远程图片:托管站点开始意外下载并替换远程图片 URL;调试表明已下载的上传文件(通过哈希匹配)和清理时间。阅读更多

  • 管理员文本自定义:更改 /login 上的“欢迎回来”文本通过定位 js.login.header_title 得到解决(并提醒在搜索 UI 中按回车键)。阅读更多

#customization:theme 组件

  • 轻量级 UI 增强:Discourse 动态侧边栏图标根据打开/关闭状态切换侧边栏图标,并可选移动端行为。阅读更多

  • 维基百科查找作为主题组件发布,添加了工具提示和可配置的基础 URL(支持特定语言的维基百科和其他 wiki 域)。阅读更多

#customization:plugin

  • 一个新的实验性插件:Buffer — 简化社交媒体上的主题分享,从分享模态框/主题管理员扳手为工作人员工作流添加“分享到 Buffer”。阅读更多

wordpress

  • WP Discourse 嵌入边缘情况:WordPress “仅画廊”帖子由于 Readability(Mozilla Reader View 算法)而破坏了预览提取;该线程映射了实际缓解措施和相关嵌入选择器设置。阅读更多

@team 小组的活动

  • sam 通过关于 Discourse 为何不转为闭源的清晰声明,锚定了本周最大的元对话,并指出开放性如何仍然符合 Discourse 的价值观。阅读更多 他还通过检查实例是否在代理后面,帮助排查“实时更新未出现”的问题。阅读更多

  • Falco 与 Tecnoblog 驱动了一场高信号、现实世界的嵌入性能讨论,涵盖缓存头、嵌入分析行为以及多个迭代修复(动态高度、懒加载和嵌入特定的查询修剪)。阅读更多 他还确认了 AI 翻译中混合语言帖子的语言设置行为。阅读更多 并且他跟进嵌入式评论的改进(浮动回复/时间线功能)。阅读更多

  • awesomerobot 落地(或启动)了多个用户体验质量修复:通过 PR 纠正管理员帖子菜单的悬停提示。阅读更多 他们还解释了在简化类别创建/FormKit 路径下“插件无法保存类别设置”的根本原因,包括迁移参考和通过“即将更改”的临时缓解措施。阅读更多 此外,他们修复了用户邀请详情可见性错误。阅读更多

  • pmusaraj 对多个问题提供了深度诊断:通过从配置问题 → 速率/超时假设 → 详细日志记录和后端错误,帮助调试“AI 翻译跳过葡萄牙语”。阅读更多 他们还启动了用于工作人员社交工作流的实验性 Buffer 分享插件。阅读更多 并且他们识别出一个棘手的话题“不存在”错误,当切换语言环境时,这是一个过时的 ?preview_theme_id= URL 参数。阅读更多

  • chapoi 对产品方向和审核分诊都有贡献:公开回应开源立场讨论,并强化内部对这一决定的自豪感。阅读更多 他们还将审核队列用户体验讨论指向可行的 UI 空间(扩展见解区域)。阅读更多 并且他们召集员工调查免费计划“无法禁用只读”的报告。阅读更多

  • nat 在 AI 和插件支持方面保持活跃:就调试 AI 翻译失败提供建议(详细日志、帖子大小限制、LLM 上下文窗口和模型质量说明)。阅读更多 他们还追踪并修复了可能由日历副作用触发的文档类别恢复/索引问题。阅读更多 并且他们修补了 Livestream 插件的一个边缘情况,其中“everyone”组在权限检查中不像真实组那样表现。阅读更多

  • manuel 在开源线程中强调了生态系统工具改进(特别是改进的发布 UI)。阅读更多 他们还重新提出了一个用于 Discourse 的实际静态存档生成器项目,分享了用于评估的仓库和演示存档。阅读更多

  • jomaxro 澄清了关于外部登录(包括 Discourse ID)的 2FA 的认证架构和限制,纠正了初始协议细节,并确认强制执行由外部提供商负责。阅读更多 他们还澄清了关于免费试用和信用卡要求的当前立场,并帮助解决了围绕非常旧指南的混淆。阅读更多

  • zogstrip 在核心行为方面发布了修复和解释:承认并修复了编辑器标签限制提示问题。阅读更多 他们还指出了 hashtag 自动补全缺失图标助手的修复。阅读更多 并且他们解释了“差异太复杂无法显示”消息背后的内部“差异预算”机制,直接链接到实现。阅读更多

  • martin 澄清了“即将更改”状态消息如何工作(以及“稳定”真正意味着什么),包括对未来“设置默认”影响类型的指导。阅读更多 他们还通过在警告传达的位置指出来帮助关闭“插件无法保存类别设置”线程的循环,并确认官方插件修复已合并。阅读更多


感谢阅读,我们下周再见! :slight_smile:

This week on meta.discourse.org

Key Stats

Reporting window: 2026-04-19 → 2026-04-26 (last 7 days)

  • New posts: 615
  • New topics: 82

Top users (posts + likes received)

User Posts Likes
Lilly 41 110
Canapin 33 78
lindsey 7 75
Moin 37 68
Falco 22 66
nat 11 53
awesomerobot 11 40
Ed_S 17 40
merefield 15 40
chapoi 10 36

A few threads that drove a lot of discussion this week (sampling)

  • The Meta theme homepage got a Blocks-powered refresh, plus follow-up troubleshooting around “why don’t I see it when logged in?” (read more)

  • Reactions/likes UX changes kept evolving, including fixes and follow-ups for mobile/touch behavior (read more)

  • Nested Replies testing continued to surface real-world navigation + notification challenges (and feature debate) (read more)

  • Several admin-focused improvements landed in quick succession: Data Explorer charting (read more), category approval flexibility (read more), Topic Voting UX improvements (read more), and bulk pin/unpin actions (read more)

  • Internationalization and SEO got tangible wins: localized emoji search (read more) and a canonical/hreflang fix for ?tl= pages (read more)


Interesting Topics

#announcements

  • Current Projects (April 2026) landed with the latest “what we’re building now” roundup, framing recent deliverables like embedding improvements and ongoing focus areas for the platform (read more)

  • Data Explorer got more charting options: nat shared how the plugin now auto-selects better chart types based on result “shape”, making queries easier to interpret without exporting data elsewhere (data-explorer) (read more)

  • Category approvals became more flexible: new category moderation controls allow “everyone except certain groups” or “only certain groups” approval requirements, reducing mod workload while keeping guardrails (#announcements) (read more)

  • Topic Voting UX improvements shipped: voting access while scrolling, prompts to follow after voting, and improved “Hot” sorting made idea categories feel more responsive and intentional (topic-voting) (read more)

  • Bulk pin/unpin is here: admins can now pin or unpin multiple topics at once from topic list bulk actions—small change, big time saver for ongoing curation (#announcements) (read more)

  • Simpler email subject lines: lindsey outlined changes that remove redundant/technical formatting from email subjects to make communities feel less “developer-ish” in inboxes (email) (read more)

  • Emoji search now works in your language: emoji keyword matching expanded beyond English into 48 locales—a long-standing need for multilingual communities (localization) (read more)

#contribute:site-feedback

  • Meta’s homepage got a dashboard-style update: derek rolled out a Blocks-based homepage layout (events, hot topics, contributors), with discussion on why educational video content is surfaced and how personal homepage preferences interact with the new “Home” link (meta-redesign-2026) (read more)

  • Where should “show-and-tell” posts go? mcwumbly suggested a lightweight convention: post in General and tag show-and-tell—then let patterns emerge before adding structure (and the topic itself became a mini show-and-tell) (read more)

  • Category organization feedback continued: users highlighted friction around long inline category references (e.g. parent/subcategory paths), hashtag completion ergonomics, and discoverability tradeoffs after the Meta category refresh (meta-redesign-2026) (read more)

  • Restricted/private-ish tags leaking into UX: the “tag cleanup” thread resurfaced questions about whether restricted tags should be discoverable to unauthorized users at all—leading to investigation and a core fix (tags) (read more)

  • Possible slow rendering with disco-toc + many headings: Moin reported noticeable delays that disappeared in safe mode, raising suspicion that certain components (or ToC generation) may be too heavy on long/structured posts (disco-toc) (read more)

ux (and UX-adjacent buglets)

  • User deletion modal had an absurdly long button label on mobile: Canapin reported the truncation, and awesomerobot proposed a redesigned flow (choose delete type first, then confirm) with a PR already in motion (mobile) (read more)

  • Event date styling next to topic titles was confusing on mobile: the mobile rendering lacked the visual separation seen on desktop, prompting a quick “make it consistent (and simpler)” fix proposal (calendar-and-event) (read more)

  • Mobile review queue UI got a cleanup pass: misaligned header elements, spacing issues, and overly tall titles were raised—then awesomerobot followed up with a batch of improvements in core (review-queue) (read more)

bug / Support

  • SEO + localization bug: ?tl= pages canonicalized incorrectly: multilingual admins flagged that translated crawler pages couldn’t rank because the canonical pointed to the base language; nat agreed and shipped a fix via core PR (seo, content-localization) (read more)

  • Chat performance: Pitchfork timeouts and “silent threads”: a deep write-up suggested chat reply tracking could bloat over time and cause slow/unreliable loads; sam tested and reported a huge performance improvement via indexing/query changes (chat) (read more)

  • Mentions reachability check broke with uppercase usernames: thoka found case-sensitivity gaps that prevent “won’t notify” warnings in restricted categories; follow-up discussion led toward smaller, safer endpoint-level fixes (mentions) (read more)

#customization:plugin / #customization:theme-component

  • Communiteq Power Tools plugin: RGJ consolidated lots of “small but practical” admin enhancements into one maintained plugin—reducing the need for console access and bundling quality-of-life tweaks (#customization:plugin) (read more)

  • Serve Discourse content as Markdown: benword released a plugin that outputs “cooked → markdown” via Accept: text/markdown or .md URLs, aimed at cheaper LLM ingestion and simpler downstream processing (markdown, ai) (read more)

  • Combined login/signup button component: Lilly shipped a header-space saving theme component that merges auth buttons into one dropdown/modal—especially helpful on mobile where signup can be hard to spot (login, signup) (read more)

  • Show hidden categories component: pfaffman shared a theme component approach to “preview” hidden categories (via a “fake category” linking to group join/request), and compared it to existing options (#customization:theme-component) (read more)

General / #customization:extras (show-and-tell energy)

  • Domniq: a Discourse-native Android+iOS app preview: nicolsdennis showcased an app build with push notifications, moderation actions, and a polished UI—plus discussion of theme inspiration and chat styling (show-and-tell) (read more)

  • “I populated my forum with bots” sparked a philosophical debate: the experiment reframed bots as a personal briefing engine rather than simulated community, and the thread explored authenticity, value, and design aesthetics (show-and-tell) (read more)

  • Discourse Shortlink Router proposed a new way to share “support URLs” cleanly: swap your domain for a router domain to generate clickable admin/settings links, alongside a trust/privacy discussion (#customization:extras) (read more)


Activity by the @team Group

  • lindsey shipped multiple admin-facing improvements and updates this week: the April roadmap newsletter (Current Projects), more flexible category-level approvals (read more), bulk pin/unpin actions (read more), and Topic Voting enhancements (read more). She also continued the “make Discourse feel less technical in inboxes” push with simplified email subjects (read more) and documented new safeguards for permanent deletion settings becoming admin-visible (read more).

  • Falco advanced multilingual UX with localized emoji search (read more) and pointed translators back to the change when older support topics resurfaced (read more). He also kept driving embed-as-comments improvements and troubleshooting in the Tecnoblog embed thread (read more), helped isolate tracking/analytics issues via PR links (read more), and advised on Ghost integration behavior and expectations (read more). On AI translation operations, he clarified how switching LLMs affects translation progress (read more) and coached on improving AI triage examples/tool-call usage (read more).

  • nat focused on localization correctness and SEO: she confirmed that translated ?tl= pages should be self-canonical and shipped a fix quickly (read more), plus guided follow-up rollout questions (read more). She also clarified retry/backfill behavior and expectations in an AI translation reliability debate (read more), and closed the loop on multiple content-localization bugs with deployed fixes (read more; read more; read more). Separately, she announced richer Data Explorer charting to make community analytics more accessible (read more).

  • awesomerobot had a particularly UX-heavy week: he proposed a cleaner deletion flow to avoid giant mobile button labels (read more), addressed mobile event date styling inconsistency (read more), and pushed fixes for mobile review-queue alignment/spacing issues (read more). He also took on tricky mobile modal/viewport behavior with an “add user to list” modal fix attempt (read more) and explained why some “empty space” on topic lists is reserved for live presence UI (read more). On Meta’s redesign goals, he added important context about broadening Meta beyond developers in the homepage refresh thread (read more).

  • chapoi continued polishing the reactions/likes experience: he shared progress on making “display all reactions” better than the initial fix (read more) and clarified intended “new normal” behavior (reactions on the left) (read more). When users of likes-only sites objected to the new two-heart UI, he confirmed the team was working on restoring the single-like-button layout for reactions-disabled sites (read more). He also chimed in on Meta tag UX expectations around restricted tags (read more) and reacted to the AI-bot “show-and-tell” forum experiment with thoughtful framing (read more).

  • derek rolled out and supported the new Blocks-based Meta homepage, explaining design intent and tradeoffs (including surfacing educational content) (read more), and then quickly resolved a break caused by a core change interacting with the theme’s custom homepage model (read more).

  • zogstrip was active across multiple “small but sharp” bugfixes: he investigated restricted tags leaking into tag autocomplete and landed a core fix (read more), reviewed the “double-escaping underscores in image alt text” regression and opened a PR despite it being tricky (read more; read more), and handled draft deletion API inconsistencies with a fix proposal (read more). He also responded to mention-case-sensitivity issues by opting for safer incremental endpoint fixes (read more) and investigated a backups-page breadcrumb race condition (read more).

  • mcwumbly helped shape Meta’s culture/structure around “sharing builds” by proposing the show-and-tell convention (read more) and then encouraging spin-off topics for deeper feedback loops (read more). He also explored product-design space in a sensitive feature request about “post approval by future self / trusted friends,” including the idea of opt-in just-in-time AI feedback (read more), and apologized/clarified a Meta mishap where a topic became inaccessible due to category privacy changes (read more). Finally, he confirmed Discourse ID username changes are now available directly in user settings after recent work (read more).

  • supermathie tackled several technical/support edges: he highlighted how “private email” mode makes outgoing emails confusing when the topic link is removed (read more), participated in an older-but-active discussion about automating access to Discourse via external tools and clarified intent vs automation boundaries (read more), and dug into federated 2FA/MFA signaling limitations for Discourse ID (OAuth2 vs OIDC needs) (read more). He also confirmed an MCP permission fix for about.json access was merged (read more) and answered a self-hosting filesystem question with a pragmatic GeoIP symlink suggestion (read more).

  • pmusaraj stayed deep in Discourse AI and “diagnose + set expectations” support work: he explained token-cost implications and retry behavior in translation failures when upstream LLMs return errors (read more), and followed up with concrete improvements to category-targeting behavior and locale overrides in AI translation tooling (read more). He also encouraged contributions on Onebox behavior for Google Photos albums by tagging it pr-welcome (read more), and praised the “cooked-to-markdown” approach in the new Markdown export plugin thread (read more).


Thanks for reading, and I’ll see you again next week! :slight_smile:

This week on meta.discourse.org

Apr 26, 2026 → May 3, 2026

Key Stats

  • New posts: 480
  • New topics: 55

Top users (posts & likes received)

User Posts Likes
Lilly 47 120
RGJ 16 67
Falco 17 47
Moin 24 46
chapoi 8 43
lindsey 9 33
Canapin 10 30
Jonathan5 5 30
pfaffman 13 28
manuel 5 22

Interesting Topics

General

  • General Discourse’s “infinite scroll” sparked a nuanced debate about UI mechanics vs. algorithmic feeds, including accessibility/legal angles and whether “bottomlessness” is inherently addictive in a forum context. read more

  • General show-and-tell kirupa shared an update on resurrecting a quiet community with bots—now with full source code published for others to learn from. read more

#Announcements

  • #Announcements topic-voting badges New Topic Voting badges landed (Daydreamer → Visionary), plus thoughtful backfill/notification rules to avoid spamming users for ancient vote milestones. read more

  • #Announcements trust-levels Defaults for TL3 requirements are being adjusted via an upcoming change, aimed at making TL3 achievable on very active sites without admins needing to hand-tune caps. read more

  • #Announcements release-notes The April 2026 monthly release shipped, with the canonical changelog linked for the full list of improvements and fixes. read more

  • #Announcements calendar-and-event Calendar subscription UX got a real-world nudge: admins reported users grabbing the “wrong” subscription URL first, prompting discussion on re-ordering options to reduce confusion. read more

bug

  • bug data-explorer A Data Explorer UI regression limited report results to a cramped, scroll-boxed view—quickly confirmed and fixed for affected sites. read more

  • bug fixed Plugin/theme compilation logs got noisy and confusing due to missing ember-this-fallback helper modules; the underlying breakage was identified and patched (with a backport planned). read more

  • bug chat A “phantom ping spam” issue caused duplicate mention notifications from a single message; a fix was merged shortly after reports. read more

  • bug composer ai The new docked AI composer got early testing feedback: editing, quoting, sidebar interactions, and mobile scrolling issues were reported, triaged, and iterated on via follow-up fixes. read more

  • bug fixed After updating to 2026.4, some sites saw “Document tree depth limit exceeded” from crawler-related middleware paths; investigation led to targeted fixes. read more

ux

  • ux invites Invites UI oddities: users could create invites from other people’s profiles, which felt misleading because the invite still originates from the clicker—not the profile being viewed. read more

  • ux Relatedly, an Invite tab appearing on hidden profiles was flagged as a UI leak (even if it didn’t expose the hidden user’s data). read more

  • ux category-badge-styles Category badge text colors became unreadable for some themes due to foundation modernization CSS interactions; a component-level fix was proposed and PR’d. read more

  • ux Some users reported smaller mobile font sizes on certain hosted communities, with investigation pointing to the modernized Foundation theme being enabled on those instances. read more

  • ux tags mobile Long tags (or many tags) can get cut off at the screen edge without clear truncation affordances, raising questions about mobile readability and layout rules. read more

Support

  • Support The age requirement (13+) question turned into a practical guide on what differs between self-hosting and CDCK hosting, plus how compliance regimes (COPPA / UK OSA / EU DSA) shape obligations. read more

  • Support email A quick clarification on customizing digest/summary email subjects: admins can often do this via site texts like user_notifications.digest.subject_template. read more

  • Support Enabling Ruby YJIT via template led to a great debugging thread—ultimately boiling down to how environment variables were being checked (and how sudo can scrub env). read more

  • Support composer Admins asked how to hide category descriptions in the category chooser; a small CSS snippet solved it cleanly. read more

  • Support user-directory Partner-program “directories” came up again, with pointers to the built-in user directory and ways to present it as cards via theme components. read more

#customization:theme component / #customization:theme

  • #customization:theme component A “pagination-like” workaround arrived fast: Load More Button theme component intercepts auto-loading and requires manual input—useful for admins worried about “infinite scroll” semantics. read more

  • #customization:theme component Modern User Card work continues: restoring/modernizing the experimental usercard design surfaced deprecations and refactor needs as core evolves. read more

  • #customization:theme The new Verso theme dropped: lightweight, editorial-inspired styling with soft colors and both light/dark schemes. read more

development

  • development theme-guides blocks A new repo of Claude Code “skills” for Discourse theme + Blocks authoring was shared, including an example theme and patterns for layout frames/outlets. read more

  • development A candid “case study” write-up on learning plugin development while building a contact-form plugin—useful perspective for aspiring community builders who aren’t full-time engineers. read more

Marketplace

  • Marketplace A pre-launch community platform build request sparked candid scoping reality checks: “design-layer” tweaks, a custom member portal/profile, and auth-related flows likely exceed a tiny starter budget. read more

wordpress

blog

  • blog Discourse Discover: Hobbyist Edition highlighted communities built on deep, durable expertise—exactly the kind of “slow web” Discourse tends to enable. read more

Activity by the @team Group

  • Falco was everywhere this week: clarified hosting vs self-hosting responsibility in the age requirement thread (read more), fixed a duplicate-notification “ping spam” bug (read more), and untangled YJIT enablement confusion for self-hosters (read more). They also guided composer image resizing configuration—pointing out the difference between “threshold” and “target width” settings (read more), plus continued improvements around embedding Discourse as a full comment system (read more) and crawler middleware fixes (read more).

  • chapoi helped anchor two high-signal UX debates: the framing of “infinite scroll” vs algorithmic “infinite feeds” (read more) and the practical reality of footers/homepages in topic-list UIs (including a clear “not on the roadmap” answer on pagination) (read more). They also triaged a category badge contrast regression and committed to investigating root cause (read more).

  • lindsey shipped and enabled new Topic Voting badges, then explained how backfill notifications are intentionally throttled to avoid retroactive spam (read more). They also responded to calendar/event UX threads, including pointing to the newly added “All day event” checkbox (read more) and confirming .ics event descriptions now populate correctly (read more).

  • manuel published a practical, AI-assisted theming accelerator: theme + Blocks authoring skills and examples, plus follow-up notes on how Blocks shifts theme customization from “inject components” to “define layout frames.” (read more). They also reiterated that Meta’s branded theme isn’t intended for public reuse, while pointing builders to Blocks-based approaches to achieve similar outcomes (read more).

  • david posted the April 2026 release announcement pointing admins to the canonical changelog (read more) and jumped quickly on the ember-this-fallback deprecation crash report—shipping a fix and planning a backport (read more). They also clarified that OIDC group sync is now available and referenced the updated changelog/docs (read more).

  • pmusaraj released the Verso theme (editorial styling, light/dark, CSS-only) (read more) and diagnosed an iOS-only horizontal scrollbar issue affecting embedded comments/admin views—linking it to an in-flight fix (read more).

  • awesomerobot asked for sources and helped steer the “infinite scroll” thread toward evidence-based discussion (read more), and reinforced the practical constraints of hosting providers needing to follow regulations in jurisdictions they serve (read more).

  • martin announced upcoming default changes for TL3 promotion requirements, confirming how upcoming-change defaults interact with admin overrides and resets (read more).

  • HAWK provided an important compliance perspective: even self-hosted communities may have obligations (e.g., UK OSA) depending on where users can sign up from, and admins should plan accordingly (read more).

  • nat acknowledged and rapidly resolved the Data Explorer “5-row” layout regression, confirming when the fix landed for the reporter’s site (read more).

Thanks for reading, and I’ll see you again next week! :slight_smile:

This week on meta.discourse.org

Key Stats

Period covered: 2026-05-03 → 2026-05-10

  • New posts: 500
  • New topics: 62

Top users (posts + likes received)

User Posts Likes
Lilly 56 95
Moin 38 88
Falco 16 28
pmusaraj 13 25
david 12 23
NateDhaliwal 23 21
nat 4 21
awesomerobot 7 20
merefield 11 26
Ed_S 8 15

Team leaderboard (posts + likes received)

Team user Posts Likes
Falco 16 28
pmusaraj 13 25
david 12 23
nat 4 21
awesomerobot 7 20
chapoi 9 13
HAWK 3 10
gabriel 1 10
martin 2 7
derek 3 6

Fast-moving themes this week (with receipts)

  • Localization & translation UX kept surfacing in different corners of the product — from “what Discourse looks like in Japanese” (read more) to guidance on choosing one translation approach in the Translator plugin thread (read more) and schema / SEO edge cases tied to translated content (read more).

  • Embedding & comment experiences continued to get attention, including smoother embedded login flows (read more) and practical setup gotchas like cross-domain cookie behavior (read more) plus clarifications on auto-creating topics for embedded comment threads (read more).

  • AI operational reliability was a recurring thread: token / context sizing confusion (read more), translations getting stuck with “thinking” models (read more), and translation failures due to structured output / reasoning interactions (read more).

  • Admin UX & reporting: “Site traffic” visibility issues turned out to hinge on hidden settings (read more), and crawler counts differing between reports were clarified as rollout-date related (read more).


Interesting Topics

blog

  • “What It’s Actually Like to Use Discourse in Another Language” sparked practical discussion about what doesn’t translate (plugin UI, theme strings), and how quickly missing theme strings can be patched once spotted (read more).

  • “The Digg Lesson: Why Moderation Infrastructure Matters” revisited a classic cautionary tale and prompted thoughtful reflections on the tools and systems needed for moderation at scale (read more).

#Announcements

  • Discourse Discover got “Hot Topics”: a new cross-community surfacing mechanism was introduced (starting in DiscourseHub iOS), raising interesting implications for discovery and ranking across the network (read more).

  • Embedding Discourse as a full comment system got another round of practical Q&A, including confirmation that embedded threads can auto-create their backing topics on first visit (read more).

development

  • A plugin author’s “case study” on breakages, deprecations, and documentation turned into a broader conversation about pace, stability, and how docs should be maintained (GitHub PRs vs wikis, deprecation timelines, and expectations) (read more).

  • bin/lint regressions for non-bundled plugins were quickly reported, reproduced, and fixed, highlighting how linting workflows differ across plugin setups (read more).

#contribute:feature

  • Chat as “first-class content”: a prototype “single activity view” concept proposed interleaving topics, subcategories, and chat channels by recency — raising big questions about information architecture and discoverability (read more).

  • Parent categories vs muted subcategories: a high-volume publishing/community hybrid use case asked for better ways to surface “hot” discussions without flooding Latest, while still enabling an aggregated view inside a parent category (read more).

  • Translated quotes losing context: a feature request argued that translation should preserve the helpful “quoted from topic/post” metadata and dropdown context currently present in non-translated quotes (read more).

ux

  • Impersonation auto-timeout UX: when experimental impersonation ends automatically, the UI can become misleading — prompting ideas like timers, MessageBus UI updates, and graceful “Stop impersonating” behavior (read more).

  • Blank /custom page after a theme switch on login: when a logged-out user’s theme has a custom homepage but the logged-in theme doesn’t, users can end up on an empty page — with suggestions to show an actionable “Take me home” fallback (read more).

  • The missing tag “info” button: a UX regression report noted that non-admin users can’t easily find tag descriptions anymore if the info affordance is gone (only admins see the wrench) (read more).

bug

  • Full name requirement vs Discourse ID: enabling full-name requirements didn’t behave as expected in a Discourse ID signup flow, and the issue was reproducible enough to be moved into bug for fixing (read more).

  • OpenID Connect group sync ejecting users from “unsynced” groups: a serious membership-change edge case was described where losing one OIDC group could remove users from unrelated groups, with a fix proposed quickly (read more).

  • Survey editing error after transferring topic ownership: editing someone else’s survey (after transfer) threw an error, and the plugin fix was shipped promptly (read more).

  • AI translation failures tied to “reasoning” models and structured outputs: debugging showed how reasoning tokens can consume completion budgets, and how model capability mismatches (e.g., json_schema support) can break translations (read more).

Support

  • Bootstrap mode removal (“legacy?”): the rationale, what got replaced (admin onboarding panel), and which old “bootstrap niceties” might deserve a comeback (directory refresh cadence, first-admin-as-mod, etc.) made for a very constructive postmortem (read more).

  • Discourse Splash (“blue dots”) can’t be disabled anymore: the removal of the disable setting was explained, including performance/SEO implications and a practical workaround via an animated SVG replacement (read more).

  • Excluding a category from Latest site-wide: admins compared “default muted categories” vs plugins and settings for suppressing noisy daily categories from the global feed (read more).

  • “Site traffic report” missing: the root cause was traced to the hidden use_legacy_pageviews setting — and how that hides the newer report UI entirely (read more).

#Self-hosting

  • “File too large” wasn’t actually a Discourse build issue: a Russian self-hosting thread ended up being a provider firewall / payload blocking problem (uploads + signups), with a detailed recovery and tuning checklist shared (read more).

  • Installing Discourse behind a non-routable public IP: the install “connection test” hurdle and HTTPS requirements came up again, with practical workarounds (skip test / dev install / tunnels / cert setup) (read more).

  • AWS Lightsail + Ubuntu upgrade planning: the thread compared in-place OS upgrades vs “spin up a new server, restore backup, swap DNS” migration playbooks (and TTL prep) (read more).

Marketplace

  • Safeguarding/reporting workflow needs: a charity asked for a specialized reporting button and emergency-protocol flows; replies clarified the boundary between theme vs plugin work and pointed to built-in flag tooling and components (read more).

#community-building Building

  • Welcoming new users (especially via Chat): the community explored ways to notify regular users about new signups and how chat/email behavior affects “welcome” flows, especially under hosted constraints (read more).

Activity by the @team Group

  • nat focused on localization and translation expectations — showcasing multilingual UX in the companion blog topic (read more) and advising that communities should pick one translation experience (preferring newer automatic translations over the older Translator UX) (read more).

  • gabriel announced the new Discover feature “Hot Topics”, outlining how the crawler and subject clustering works and where it’s launching first (DiscourseHub iOS) (read more).

  • pmusaraj did a deep dive on “Bootstrap mode is legacy?”, explaining why it was removed, what replaced it (admin onboarding panel), and which parts might be worth reintroducing or rethinking (read more). They also clarified TestFlight availability and app UI scope in the Discover Hot Topics announcement thread (read more), engaged with “chat as first-class content” experiments (read more), reproduced and escalated the Discourse ID / full-name requirement issue into bug (read more), and posted a fix for OIDC group-sync membership removal edge cases (read more).

  • awesomerobot confirmed the removal of the splash-screen disable setting (and why it matters for Core Web Vitals), plus shared an animated SVG approach to replace the dots entirely (read more). They also clarified why crawler values can show as 0 in the newer Site Traffic report for older date ranges (read more), shipped accessibility polish for decorative badge images (empty alt tags) (read more), and continued tightening invites/profile UX by hiding confusing invite UI in unsupported contexts (read more; read more).

  • Falco was active across embedding, AI, and self-hosting guidance — including cross-domain embed login behavior via same_site_cookies settings (read more), confirming embedded-comment topic auto-creation behavior (read more), and steering AI translation debugging away from reasoning-model pitfalls (read more; read more). They also linked to fixes for ongoing crawler “document tree depth” errors (read more), and recommended a safe “new-server restore + DNS swap” path for Lightsail/Ubuntu migrations (read more).

  • david engaged on developer experience and maintenance tradeoffs — balancing stability/customization expectations in the plugin-author case study thread (read more) and clarifying deprecation timelines (read more). They also fixed and merged the bin/lint regression impacting non-bundled plugins (read more), explained Markdown link boundary behavior (and the angle-bracket escape hatch) (read more), requested plugin inventories in a self-hosting memory/precompile investigation (read more), and clarified that tests-passed remains a working alias for latest (read more).

  • derek shipped UI polish and theme-related fixes — quickly resolving a missing theme translation string spotted in multilingual browsing (read more), confirming a merge for category badge color/contrast issues (read more), and acknowledging investigation into the “blank custom homepage after theme switch” login edge case (read more).

  • chapoi provided context and guidance around constraints and implementation details — adding perspective on why documentation can lag during rapid platform evolution in the plugin-author case study (read more), pointing theme authors to the correct plugin outlet for inserting navigation headers (read more), and troubleshooting notification/trigger ambiguity in a UI-notification investigation thread (read more).

  • martin took ownership of improving the impersonation timeout experience, outlining a two-part approach (UI updates when time expires + graceful stop behavior), with an openness to PR collaboration (read more; read more).

  • HAWK drove community strategy discussion via a moderation-history lens in the Digg retrospective (read more) and shared community-building advice focused on intrinsic motivation and Communities of Practice dynamics (read more).


Thanks for reading, and I’ll see you again next week! :slight_smile:

本周在 meta.discourse.org

关键数据

过去 7 天(2026-05-10 → 2026-05-17)

  • 新帖子:457
  • 新话题:77

热门用户(帖子数 / 获得的点赞数):

用户 帖子数 点赞数
Lilly 53 130
markvanlan 6 58
Falco 9 54
lindsey 4 41
Moin 22 38
HAWK 9 31
martin 7 30
RGJ 8 29
NateDhaliwal 16 23
awesomerobot 9 21

值得关注的重大发布:嵌套回复(阅读更多)、新的客户端图像优化(阅读更多),以及针对未解决支持话题的新“我也遇到”信号功能(阅读更多)。


有趣的话题

#Announcements

  • markvanlan 为需要完整线程化对话的社区引入了嵌套回复,并展示了单线程视图和管理员控制功能的早期预览(阅读更多)。

  • lindsey 宣布了“已解决”功能的改进:在支持类别的未解决话题中添加了“我也遇到”按钮,该功能还会订阅成员,以便在解决方案被接受时收到通知(阅读更多)。

  • Falco 推出了新的客户端图像优化,包括将 GIF 转换为动画 WebP,以减少上传大小并提升感知性能(阅读更多)。

  • 批量操作得到了清理,新增了更好的批量标签管理功能:添加/替换/删除标签现在统一在一个“管理标签”模态框中完成(阅读更多)。

  • martin 分享了一个简化的设置流程,用于使用“日历与事件”插件创建事件类别,这是“类别设置计划”的延续(阅读更多)。

  • Horizon 主题用户迎来了默认刷新:高上下文话题卡片现已默认启用,展示了“已解决/投票/分配”等信号以及更丰富的预览(阅读更多)。

  • martin 引入了细粒度的伪组,以实现更清晰的权限管理:将匿名用户已登录用户分离,以减少在组列表站点设置中@everyone造成的混淆(阅读更多)。

bug

  • iOS PWA 推送通知:当服务工作者尚未控制应用时,订阅设置可能会静默失败,核心开发团队已提出并讨论了修复方案(阅读更多)。

  • Discourse 自动化中的一个边缘情况:每月 recurring 自动化未按预期触发,引发了对每月循环计算方式的深入探讨(阅读更多)。

  • 网格上传中的灯箱导航:图片显示顺序错误(例如 1, 3, 2, 4),相关修复已跟踪并链接(阅读更多)。

  • 群组页面回归问题:用户无法看到谁是群组所有者,尽管数据存在——这导致了一个用于重新渲染该信息的 PR(阅读更多)。

  • 嵌套回复早期的成长烦恼:帖子管理员扳手操作在嵌套视图中似乎无法使用,需要切换回平面模式作为临时解决方案(阅读更多)。

  • 主题创建者问题:在移动设备上导出主题会导致空白/白屏,而桌面端表现正常(阅读更多)。

  • 自托管更新小插曲:一次管理面板更新崩溃(插件 JS 编译超时)已通过执行 ./launcher rebuild app 重建应用得以恢复(阅读更多)。

ux

  • 书签模态框优化:关于编辑书签对话框中一个“多余”的切换按钮的讨论已达成,并通过 PR 将其移除(阅读更多)。

  • 类别编辑器的人体工程学:在简化的类别 UI 中,删除按钮比保存按钮更显眼,这被标记为存在风险/令人困惑(阅读更多)。

  • 个人资料微布局:用户简介中的斜体文本可能会略微被截断,这可能是由于溢出规则导致的(阅读更多)。

  • 移动端管理 UX:在手机视图中配置Discourse 自动化脚本显得拥挤且难以使用(阅读更多)。

  • 追踪行为问题:管理员注意到,进入话题后,话题在列表中失去“NEW”状态的速度似乎发生了变化(阅读更多)。

Support

  • 类别重组安全检查:讨论澄清了重命名类别名称/别名是安全的,因为 URL 通过 ID 解析,且旧的别名会进行重定向(阅读更多)。

  • 嵌入 Salesforce:iframe 和身份验证挑战导致了关于 Cookie 域名对齐和 same_site_cookies 调整的实际指导(阅读更多)。

  • 托管计费/升级困惑:一名免费计划的管理员无法看到Starter 升级选项,工作人员已介入调查并解决(阅读更多)。

  • 注重安全的自托管:关于 Nginx CVE-2026-42945 以及 Discourse 基础镜像/规则是否受影响的问题引发了团队的回应(阅读更多)。

#Theme_component

  • 一个新的主题组件旨在使回复按钮标签更清晰(且可翻译),这对于嵌套回复改变回复语义的情况尤为相关(阅读更多)。

  • 一个虽小但实用的主题组件,用于在话题投票 UI 中隐藏“剩余票数”(特别是在模拟“无限”票数时),并讨论了新的投票限制设置(阅读更多)。


@team 组的动态

  • markvanlan 领导了嵌套回复的发布和问答环节,解释了为什么线程化是管理员的选择(而非用户偏好),以及如何启用/禁用是可逆的(阅读更多阅读更多)。

  • Falco 发布并解释了新的客户端图像优化管道(包括 GIF 转动画 WebP)(阅读更多),并通过请求服务工作者更新方法协调了 iOS PWA 推送修复(阅读更多)。他还就 Salesforce 部署中的 iframe/嵌入登录限制提供了建议(阅读更多),并回应了涉及插件构建超时的自托管更新失败问题(阅读更多)。

  • lindsey 宣布并澄清了针对未解决支持话题的新“我也遇到”体验,并讨论了计数器应如何表现(从 1 开始以包含原始发帖人)(阅读更多阅读更多)。她还引入了用于工作人员工作流的综合批量标签管理模态框(阅读更多)。

  • HAWK 通过多个关于扩展性的线程推动了企业就绪度讨论的进展:社区增长时的瓶颈(阅读更多)、过早与过晚扩展的风险(阅读更多)、需要重新审视策略的早期阶段信号(阅读更多),以及用于反馈的企业就绪度检查表草案(阅读更多)。

  • martin 扩展了“类别类型设置”计划,使事件类别更易于配置(阅读更多),并在 Horizon 中默认启用高上下文话题卡片以丰富发现功能(阅读更多)。他还通过引入新的伪组来分离匿名用户已登录用户,从而改进了更清晰的组语义(阅读更多),改进了管理员“即将变更”UI 中的报告功能选项(阅读更多),并澄清了“即将变更”条目中可选的“预览”和“反馈”链接的工作原理(阅读更多)。

  • awesomerobot 澄清了新“我也遇到”按钮与 Boost 的区别(以及为何它与解决方案通知绑定)(阅读更多),修复了移动端 UI 摩擦问题(自动化中的“上次运行”覆盖了操作按钮)(阅读更多),并通过 PR 解决了诸如“默认 LLM 标签未更新”等产品小瑕疵(阅读更多)。他还恢复了非工作人员用户查看群组所有者的权限(阅读更多),在隐藏“剩余票数”的背景下讨论了话题投票的投票限制设置(阅读更多),甚至在注意到可能的负面含义后清理了一个官方主题模式选择(阅读更多)。

  • zogstrip 提供了一系列稳定的修复:网格灯箱排序问题(阅读更多)、Edge 浏览器中过窄的移动删除对话框(阅读更多)、多个中文语言的编辑/导航流程复现与修复(阅读更多阅读更多),以及针对与 silenced_till 序列化相关的 API 500 错误的支持排查(并指向相关修复)(阅读更多)。他还通过标记审查帮助引导了对 recurring 自动化“每月”错误的调查(阅读更多)。

  • chapoi 确认并解释了 UX 错误(包括移动端模态框问题和书签对话框的怪癖)(阅读更多阅读更多),随后通过 PR 移除了不必要的书签切换按钮(阅读更多)。他还帮助排查了插件繁重的自托管问题(徽章/管理 UI),反复引导报告采用安全模式隔离(阅读更多),并指出了本地化/翻译引号问题以供进一步思考(阅读更多)。

  • nat 迅速回应了 AI/本地化问题:解决了挪威语区域检测不匹配的问题,并在计划核心提示词更新期间建议基于提示词的变通方案(阅读更多阅读更多)。她还确认了翻译边缘情况,例如“标题已翻译但帖子未翻译”,指出了翻译长度阈值及后续调整(阅读更多),并讨论了翻译引号如何丢失重要元数据(特别是在德语中)(阅读更多)。

  • sam 处理了与安全相关和工程相关的事项:确认 Discourse 的默认重写规则不受影响,同时指出将发布基础镜像更新以应对 Nginx CVE 线程(阅读更多),合并/修复了 MCP 子文件夹安装问题(阅读更多),并跟进 AI 提供商配置的边缘情况(Gemini“思考预算”)(阅读更多)。

感谢您的阅读,我们下周再见!:slight_smile:

本周在 meta.discourse.org

(本周回顾覆盖时间:2026年5月17日至24日——从自托管更新崩溃报告等讨论开始,到周末的支持问题如邀请通知噪音等。)


关键数据

  • 新帖子:447
  • 新主题:71

活跃用户(过去7天内的帖子数 / 获得的点赞数):

  • Lilly46 篇帖子68 个点赞
  • awesomerobot9 篇帖子36 个点赞
  • Falco15 篇帖子35 个点赞
  • Moin26 篇帖子27 个点赞
  • NateDhaliwal15 篇帖子22 个点赞
  • darkpixlz12 篇帖子19 个点赞
  • sam3 篇帖子17 个点赞
  • Thomas_Rother6 篇帖子15 个点赞
  • david3 篇帖子15 个点赞
  • keegan1 篇帖子14 个点赞

本周吸引关注/点赞的一些线程(样本):

  • Discourse AI 用户体验改进成为焦点,包括收藏 AI 聊天阅读更多)以及用于机器人对话的固定式编辑器阅读更多)。
  • 博客讨论引发了关于“开放网络”和“AI 爬虫”的辩论:以网络为先的定位阅读更多)和为 Agent 做好准备的 Discourse阅读更多)。
  • “以阅读为先”的文档界面更改通过Doc Categories 简单模式阅读更多)收集了反馈。

有趣话题

blog

  • “Discourse 已为 Agent 做好准备”(ai引发了一场关于社区是否应该欢迎AI 代理/爬虫还是阻止它们的广泛辩论,其中包括一些现实情况,例如爬虫无视 robots.txt 以及 llms.txt 的价值尚不确定。 阅读更多

  • “Discourse 永远不会阻止你访问网络”将 Discourse 的网络立场与以应用为先的锁定趋势进行了对比,并引发了关于博客配套主题中作者署名/归属的讨论。 阅读更多

#Announcements

  • 收藏常见的 AI 对话(ai实现了一个虽小但意义重大的工作流改进:收藏的机器人聊天现在会浮动显示在你 AI 对话列表的顶部(位于“即将推出”开关之后)。 阅读更多

  • 用于 AI 机器人对话的固定式编辑器(composeraiai-bot为机器人主题引入了“连续聊天”的感觉,减少了反复打开编辑器的摩擦。 阅读更多

  • Doc Categories:“简单模式”(doc-categories将文档主题重新定义为以阅读为主的视图,回复折叠在开关后面,但直接回复链接仍会自动展开。 阅读更多

  • 中期版本(2026年5月19日)为管理员提供了关键安全修复的发布说明和版本链接,以便跟踪更新的紧迫性。 阅读更多

  • 改进的事件:重复事件的灵活 RSVP(calendar-and-event添加了能够仅对下一次出现进行 RSVP 而非所有未来出现的功能,防止不需要的提醒并提高出席率的清晰度。 阅读更多

  • 使用 Reactions 的站点的新帖子回复计数位置(reactions突出显示了一项旨在使反应行在帖子中更一致对齐的布局更改。 阅读更多

bug

  • 用户资料上的批准按钮不起作用升级了一个棘手的批准/审核队列边缘情况:未批准的用户未显示在审核中,出现幽灵批准通知,甚至在尝试从管理员界面批准时出现 500 错误。 阅读更多

  • 电子邮件“更新可用”消息链接到损坏的发布说明(发布说明 URL 中缺少 v 前缀),导致出现 404 错误,直到修复。 阅读更多

  • 标签图标主题组件:下划线变为连字符导致侧边栏与主题/标签页面之间的图标不一致地损坏,可能是由于 slug 处理更改所致。 阅读更多

  • 表情符号自动补全 + 特殊字符(如 ü在编辑器和聊天中显示出微妙但真实的用户体验中断,包括在插入表情符号后使用“更多…”时出现控制台错误。 阅读更多

  • Reactions 错误:“+1” 悬停弹出窗口卡住加载原来是 URL 编码问题(+ 被解释为空格),并通过针对性补丁快速修复。 阅读更多

  • NameError: ReactionsSerializerHelpers影响了某些使用捆绑反应插件的安装中的主题帖子流序列化,并已提交 PR 以解决加载顺序问题。 阅读更多

  • 嵌套回复 + 帖子投票 = 500 错误显示了一个不兼容的边缘情况,其中嵌套序列化器期望不存在元数据,导致 undefined method 'post_number' for nil阅读更多

  • 语法高亮在复制/粘贴时颜色不可靠深入探讨了剪贴板格式、浏览器差异(Firefox 与 Chromium)以及格式化丢失的位置(复制与粘贴)。 阅读更多

ux

  • 关于回复顺序(最新在前 vs 最旧在前)的跨文化反馈提出了一个关于可发现性/可用性的深思熟虑的问题,涉及年长用户和不同的阅读习惯,以及嵌套回复的复杂性(时间线用户体验不同)。 阅读更多

  • 取消删除帖子不会创建员工操作日志条目突出显示了一个审计差距:删除操作已记录,取消删除主题已记录,但取消删除帖子未记录——促使提交 PR。 阅读更多

  • 建议编辑横幅与 wiki 文档中的编辑历史/日期重叠标记了一个可能与文档/简单模式样式相关的 UI 冲突,降低了编辑元数据的清晰度。 阅读更多

Support

  • 免费计划/定价混淆:邮件入站 + 分类类型突然受限记录了托管免费计划持续演变带来的现实摩擦,包括对功能矩阵和 UI 升级提示的期望。 阅读更多

  • 免费托管站点的最小活动期望澄清了当前政策:早期不活跃通知约为 3 周,另一通知约为 6 周,如果在约 7 周内没有真正的社区活动,则进行销毁。 阅读更多

  • PostgreSQL 18 备份失败(已解决)逐步解决了当 Discourse 使用较旧 pg 工具从容器运行备份,而外部 PG18 集群较新时,pg_dump 客户端/服务器不匹配的问题。 阅读更多

#support:migration

  • phpBB → Discourse 迁移速度调整(phpbb收集了实际的导入性能故障排除(I/O 与 DB 与 Redis),以及关于批量导入器和重新运行大型迁移成本的提醒。 阅读更多

#Community_Building

  • 原生 iOS+Android Discourse 客户端应用(show-and-tell预览了第三方原生客户端概念(关于插件支持以及登录/推送限制的局限性,具体取决于托管方式)。 阅读更多

  • “新社区”入职 + Meta 上的边界混合了欢迎反馈,并提醒 Meta 不是推广/功能测试的合适场所——实验应使用 try.discourse.org阅读更多


@team 小组的活动

  • awesomerobot 直接参与了“为 Agent 做好准备”的 AI 爬虫权衡讨论(包括阻止爬虫的局限性)在 这个线程中,随后还在 这个后续中推动了产品打磨,确认了新“Solved”文本的可配置性。他们还在 这个功能请求中推荐了最佳实践垃圾邮件处理(“删除并阻止”),并在 这个支持回答中澄清了免费层级的活动阈值。

  • Falco 帮助诊断了自托管更新失败和资源限制问题(特别是具有非核心插件的 1 vCPU 安装)在 尝试更新后崩溃中,并继续在 回复顺序反馈中迭代嵌套回复用户体验约束(时间线可用性、撤销决定和设计差距)。Falco 还将嵌套回复读取状态 404 报告路由到正确的位置在 这个错误线程中,并指出了 这个嵌套错误报告中正在进行的嵌套模式管理员操作修复。

  • sam 通过 这个主题中的收藏 AI 对话公告发布了 AI 可用性改进,确认并定义了 这个聊天错误中的浮动聊天历史/后退按钮问题,并通过鼓励提交 PR(并确认已在团队视野中)回应了标记崩溃报告在 这个错误主题中。

  • david发布说明主题中发布了本周中期版本的关键修复指针,并在 这个更新崩溃线程中讨论了预构建资产在网络更新期间应如何表现(以及为什么某些插件+硬件组合仍然困难)。David 还指出,较旧的“基于视口的移动模式”切换按钮已过时,需要移除(如果关闭可能会导致错误)在 这个开发新闻后续中。

  • keegan这个公告中引入了用于 AI 机器人对话的固定式编辑器体验(位于“即将推出”标志之后)。

  • ducks 发布了“以网络为先”定位文章的配套主题在 Discourse 永远不会阻止你访问网络中。

  • saquetim这个公告中推出了Doc Categories 的简单模式(将回复折叠在开关后面,同时保持深层链接功能)。

  • zogstrip 在战术错误修复后续中无处不在:他们在 这个聊天错误中指出了收藏聊天后退行为的即将推出的改进,确认了 这个反应报告“+1”反应悬停URL 编码问题的快速修复,并链接了多个长期小问题的修复/PR——如 这个支持线程中的 Googlebot 分页 404,这个错误中标记帖子的恢复改进,以及 这个 UX 主题中的设置描述 UX 链接改进。他们还尝试(但未能)重现移动反应模态问题,要求在 这个错误主题中提供更好的步骤。

  • HAWK 通过确认日历/事件的活跃工作和视频聊天的路线图意图,回应了企业扩展的“断点”在 这个企业讨论中。他们还在 这个审核支持主题中提供了监视词功能的清晰概述(并指向参考指南),并解释了为什么托管免费计划正在被淡化,而产品市场契合度仍在测试中在 这个定价/免费计划线程中。

  • Danielle 发布了 MCP + Data Explorer 办公时间会议的录像和回顾(包括“像同事一样询问你的社区数据”的实用示例)在 这个事件帖子中。


感谢阅读,我们下周再见! :slight_smile:

本周 meta.discourse.org 动态…

关键数据

统计周期:2026-05-24 → 2026-05-31

  • 新帖子:440
  • 新主题:60

活跃用户(发帖数 + 获赞数)

用户 帖子数 获赞数
Lilly 53 72
david 4 41
Moin 23 34
sam 8 33
merefield 15 27
chapoi 13 25
awesomerobot 4 24
NateDhaliwal 14 23
darkpixlz 15 21
martin 3 19

本周的讨论热点主要集中在核心用户体验(UX)更新嵌套回复的稳定性以及管理员/自托管故障排查上——多条讨论线程直接关联到新的或正在进行中的平台变更,例如默认表情反应(阅读更多)和“小型操作”通知噪音问题(阅读更多)。


精彩话题

#announcements

  • Discourse 核心即将引入全新的 JavaScript 构建系统,从 ember-cli/webpack 迁移至rolldown(基于 Rust,与 Vite 对齐),预计实现约 80% 的开发构建速度提升,同时得益于预编译资源,生产环境的安装不会受到影响(阅读更多)。相关背景:自托管用户的预编译资源(阅读更多)。

  • 通过“即将变更”的发布流程,表情反应功能将默认对所有新站点和现有站点启用martin 解释了默认设置变更的原因以及退出机制的处理方式(阅读更多)。功能背景:Discourse Reactions 插件主题(阅读更多)。

  • “小型操作”帖子(如自动关闭通知、分配通知等)将被从“关注/追踪”列表中排除,以减少管理员的通知垃圾信息。由于实现限制,此操作不可选阅读更多)。

  • Calendar and Events 插件获得了更流畅的事件创建流程,直接在编辑器(富文本交互编辑器及 Markdown 预览)中完成,降低了举办活动的社区的摩擦成本(阅读更多)。官方插件主题:Calendar and Events(阅读更多)。

  • 2026 年 5 月月度版本已发布(v2026.05),为追踪自托管和托管安装升级的用户提供了完整的变更日志链接(阅读更多)。

  • Discourse 发布了「2026 年 5 月当前项目」,其中包括捆绑插件和各项倡议的进展说明( notably:主题投票改进和日历/事件设置 UX)(阅读更多)。

bug

  • 出现了一个经典的“幽灵未读”问题:用户看到 Unread (14),但 /unread 页面却是空的。团队已确认该 Bug 并正在修复中,同时分享了一个实用的 Rails/SQL 变通方案来清除全站未读状态(但需注意,这也会清除真正的未读内容)(阅读更多)。

  • 嵌套回复持续暴露边缘情况:指向嵌套路由的“推荐主题”链接出现 404 错误(并可能导致头部状态异常)。核心修复已上线,随后展开了关于嵌套主题中重定向和未读指示器的讨论(阅读更多)。

  • Form Templates 用户遇到了一个微妙的问题:当标签名包含大小写混合时,标签选择器字段会失效zogstrip 复现了问题并迅速提交了修复 PR,将一个令人困惑的 UX 问题转化为一条明确的原则:规范化标签命名(阅读更多)。

  • 一个 UX 小瑕疵演变成了后端验证的改进:创建没有所有者的仅请求加入群组时,会产生无用的“FAILED”提示。调查指出了分割表单的复杂性和遗留的 Ember 模式;一个 PR 恢复了描述性的错误消息(阅读更多)。

  • 一个棘手的升级问题:db:seed_fu 在创建新系统群组时,因anonymous 名称冲突而失败。该线程突出了导入时的边缘情况(用户名为 anonymous 的账号或群组),并引发了关于自动群组命名和兼容性的担忧(阅读更多)。

  • 法语实例暴露了一个排版陷阱:由于引号设置,某些撇号/引号替换将 ' 变成了 >。禁用 enable_markdown_typographer 解决了该问题,团队也指出了几个“快速改进点”以提升体验(阅读更多)。

#announcements nested-replies

  • 嵌套回复的测试继续引发争议:一名运营者报告了生产环境故障(路由变更、通知链接失效、主题不兼容以及移动端布局问题),并建议在启用前发出更强烈的警告,而其他人则探讨了测试策略和预期管理(阅读更多)。

  • 另一条关于嵌套回复兼容性的线程解决了帖子投票与嵌套回复的冲突;短期方向倾向于在嵌套上下文中明确禁用帖子投票行为,并考虑未来在嵌套回复本身中引入“投票”功能(阅读更多)。

#contribute:feature

  • 移动端引导流程的摩擦问题受到关注:Discourse 在移动端显著显示“登录”,却将“注册”隐藏在流程之后,导致用户困惑。该线程探讨了 UI 权衡、替代组件以及旨在不挤占头部空间的前提下提高发现性的 PR 工作(阅读更多)。相关组件构想:组合认证按钮(阅读更多)。

  • 一场关于安全性与可操作性的讨论:当“注册后编辑邮箱”被禁用时,管理员也无法通过 UI 编辑邮箱。提议实施更细粒度的控制(仅限管理员 vs 仅限用户),可能伴随类似密码/双因素认证的“超级用户模式”摩擦以及强审计日志(阅读更多)。

  • Discourse AI 反馈:提出了为 AI 工件更新添加 Webhook/事件支持(或禁用沙箱)的需求,团队指出将在“工作流”(一种新的自动化方法)上线后重新审视此问题(阅读更多)。

Support

  • 自托管用户比较了 VPS 供应商和 SMTP 现实情况:一条“Vultr vs DO”的线程迅速提醒人们,邮件送达率通常取决于供应商端口策略和正确配置,而非市场镜像——且官方安装路径通常比调试不受支持的市场设置更快(阅读更多)。相关的 SMTP 故障排查和 YAML 陷阱(如弯引号!)出现在“如果本地登录被禁用”(阅读更多)以及官方邮件故障排查指南(阅读更多)中。

  • 一个实际的存储问题:由于磁盘压力和大型容器层导致升级失败。该线程包含具体的清理指导(./launcher cleanup),并讨论了基础镜像是什么、旧层为何累积以及如何安全释放空间(阅读更多)。

  • “无法自动注册 Discourse ID”在跳过邮箱时阻断了安装,根本原因被确认为HTTPS 重定向 URI 要求;变通方案是通过 CLI 创建管理员并启用 force_https,然后完成设置(阅读更多)。

  • 管理员发现了一个身份冒充的防护机制:存在一个隐藏设置 experimental_impersonation_time_limit_minutes(默认 15 分钟),可通过 Rails 控制台修改(或通过重建修改配置文件,但这比较繁琐)(阅读更多)。

  • 关于“需要通过 API 创建聊天频道”的问题得到了回答,提供了相关端点(POST /chat/api/channels)及可用的参数示例——这对于通过编程方式配置数百个社区的平台非常有用(阅读更多)。

  • 站点反馈指出,一份长期的“创建 Bug 报告”指南在分类重构后包含了失效的分类链接;建议的修复方法是使用带 ID 的分类 URL,以便未来的移动操作不会破坏引用(阅读更多)。参考指南:「在 Meta 为 Discourse 创建 Bug 报告」(阅读更多)。

#customization:theme-component / #community-building:praise

  • 一个新的主题组件旨在通过自动隐藏用户菜单中的某些通知类型来减轻管理员的认知负担——对于拥有大量邀请或系统通知的站点尤其有用(阅读更多)。

  • 一篇深思熟虑的表扬帖指出,捆绑热门插件(默认禁用但预安装)实际上是一个重大胜利:管理员可以在不中断在线运营的情况下启用功能(阅读更多)。


@team 组活动

  • david 启动了一项重大开发新闻,介绍了 Discourse 核心的全新 JS 构建系统(rolldown + 原生 ES 模块),在保持生产环境稳定的同时大幅提升了开发模式性能(阅读更多)。他还建议通过检查浏览器控制台中的功能检测失败来调试与 Discourse 不兼容的浏览器(阅读更多),并更新了关于新的 d-compat/* 策略(用于插件/主题兼容性锁定)的文档(阅读更多)。

  • sam 发布/宣布了一项用户通知体验改进:小型操作不再计入追踪/关注活动,减少了批量关闭和计时器期间的“行政琐事打扰”(阅读更多)。他还将幽灵未读报告与小型操作变更的发布路径联系起来(阅读更多),并引导自托管故障排查者关注特定的提交集以修复中间件防护问题(阅读更多)。

  • chapoi 在 UX 和支持线程中保持活跃:确认幽灵未读 Bug 并表明团队正在处理(阅读更多);提出详细的心理模型论点,反对按用户设置嵌套/线性视图偏好(阅读更多);指出结构化布局的实用选项(并澄清建议适用于主题列表还是帖子正文)(阅读更多);并帮助集成商找到了聊天频道创建 API 端点(阅读更多)。

  • awesomerobot 宣布了 Calendar and Events 插件中改进的事件创建 UX,在编辑器中嵌入了交互式事件编辑器(阅读更多)。他们还协助排查 JAWS + Discourse 键盘快捷键的无障碍问题(解释屏幕阅读器如何拦截按键)(阅读更多),并就移动端注册发现性讨论发表了意见,引用了热门网站中看到的更广泛的 UX 模式(阅读更多)。

  • martin 宣布了即将推出的默认启用 Discourse 表情反应的发布计划,解释了产品理由,并说明“即将变更”机制如何使低风险发布比过去更加可行(阅读更多)。

  • rishabh 发布了 5 月“当前项目”更新,总结了插件和各项倡议的工作(阅读更多),并分享了一个重要的可用性胜利:GitHub 信息框现在内联显示 PR 状态阅读更多)。

  • Falco 在多个技术方面做出了贡献:标记嵌套路由错误以供调查并转交给相关负责人(阅读更多);讨论 Discourse AI 工件的未来事件/Webhook 选项(并将其与即将到来的工作流联系起来)(阅读更多);澄清客户端图像优化行为以及增加更多管理员控制器的权衡(阅读更多);并就嵌入 Discourse 评论作为更广泛集成方案的一部分提供建议(阅读更多)。

  • markvanlan 继续迭代嵌套回复:发布了修复损坏的嵌套链接和重定向行为预期的补丁(阅读更多),并概述了处理不兼容问题(如帖子投票)的方向,即在嵌套上下文中明确禁用它(并提出了关于在嵌套回复中集成投票的长期想法)(阅读更多)。

  • zogstrip 交付了多个快速修复:解决了Form Templates 标签组选择器的大小写混合 Bug(阅读更多),发布了“谁投票”可见性在已关闭主题投票上下文中的修复(阅读更多),并迭代处理了审批/通知正确性的边缘情况(阅读更多)。

  • loic 发布了2026 年 5 月月度版本的官方指针,引导管理员查看完整的变更日志(阅读更多)。

感谢您的阅读,我们下周再见!:slight_smile:

This week on meta.discourse.org

Key Stats

Period covered: 2026-05-31 → 2026-06-07 (a week that saw a new composer alpha land in “Post Type” composer actions and continued iteration on nested replies in the nested replies announcement thread).

  • Total new posts: 356
  • Total new topics: 54

Top users (posts / likes received this week):

User Posts Likes
jordan.vidrine 7 35
chapoi 25 31
NateDhaliwal 18 24
Lilly 16 24
haydenjames 10 23
Moin 9 20
pmusaraj 4 20
RGJ 10 17
sam 7 17
awesomerobot 15 16

Interesting Topics

#Announcements

  • Composer redesign (alpha): unified “Post Type” actions dropdown (#Announcements) — jordan.vidrine introduced a new composer actions menu behind enable_new_composer_actions, including moving whisper/no-bump/unlist toggles into the same dropdown for less “mode switching whiplash.” See details.

  • Nested replies: SEO, controls, and layout tradeoffs (#Announcements, nested-replies) — questions ranged from crawler behavior and canonical URLs to whether “view as flat” should remain available. markvanlan confirmed “view as flat” was removed after internal testing (read more).

  • “Small post actions” change (and its knock-on effects) (#Announcements) — the change to suppress “small actions” continues to surface implications for what gets tracked/watched; sam confirmed it applies broadly (including unlist/list actions) in the announcements thread (read more).

  • Events UX gets simpler… but mobile pain points remain (#Announcements, calendar-and-events) — “easier than ever to create events” is being tested hard in the wild, with reports about mobile discoverability and long descriptions in the events announcement topic (read more).

  • Enterprise: first iteration of a Discourse AI getting-started guide (#Enterprise) — fsasaki shared a structured, toggle-by-toggle guide to Discourse AI for enterprise stakeholders (read more).


bug

  • Unread count says “Unread (14)” but the unread list is empty (bug) — a regression affecting the /unread experience (and sometimes showing phantom or missing unreads) was triaged, linked to the “small actions” tracking change, and fixed via a commit referenced by sam (read more). Related report: “Unread” tab is not listing all thread with unread messages.

  • Nested replies + Horizon: old replies “stick” when navigating via related topics (bug, nested-replies) — Andry_Osminin reported intermittent UI state leakage that only cleared after a full reload; the diagnosis pointed to “instant navigation” not resetting state, and markvanlan flagged an upcoming PR to address it (read more).

  • Topic cards: “likes” broke after a linting update (bug, topic-cards) — RGJ spotted that refactors removed/changed getters but left code calling them, breaking likes; a PR was merged quickly (read more).

  • AI Helper suggests tags that aren’t allowed in a category (bug, ai) — AI-assisted tag suggestions ignored category/tag-group restrictions and allowed selecting invalid tags (then failing on submit). zogstrip shipped a fix via PR (read more).

  • Chat thumbnails bypass s3_cdn_url and leak raw bucket URLs (bug, cdn, chat) — Lilly traced broken thumbnails (notably with Cloudflare R2) to serializers not applying the CDN URL; sam rebaked content on Meta while the fix discussion continued (read more). Related R2 migration pain surfaced again in Cloudflare R2 image URL display issue.

  • Passkey login: “security key is not owned by the user” (bug, passkey) — a cross-site pattern (Meta + several other communities) suggested either a Discourse regression or an upstream platform change; pmusaraj investigated but couldn’t reproduce reliably and asked for more Windows-based data points (read more).

  • Upgrade failure: db:seed_fu group/user namespace conflict (bug) — name collisions in the shared user/group namespace caused upgrade failures; martin produced and merged a fix (and clarified the underlying conflict pattern) in the original report (read more).


Support

  • Odd bot signup/spam “attacks”: what to do when spam is at the account-creation layer (Support) — admins compared patterns (fake custom fields, “FirstLast1234” usernames), mitigation tactics (approve TL0, Data Explorer queries, Cloudflare rules), and tradeoffs of IP blocking vs VPN collateral damage. The thread includes a call for better built-in automation (read more). Helpful adjacent resources mentioned in-thread: the official hCaptcha plugin, a request for Cloudflare Turnstile support, spam-response playbooks like immediate actions during a spam attack and tips for preventing spam, and Cloudflare guidance in best practices.

  • “Registration challenge” without plugins on free hosting (Support, spam, signup) — on constrained plans, the discussion focused on what can still be done (must-approve-users, AI spam detection, and operational triage) even when you can’t install additional plugins (read more).

  • How to approximate Meta’s design on your own forum (Support) — the “how did Meta do that?” question brought together the custom homepage feature, the Blocks API work, and practical theming components (including hiding the sidebar by default) (read more). Related reading: Using the new custom homepage feature and the broader Meta theme rebuild notes in Rebuilding the Meta Branded theme.

  • Sidebar UX: “nest” group links under a collapsible parent (Support, sidebar) — while true nesting/collapsing isn’t available, the thread converged on restructuring via built-in custom sections, which solved the immediate need (read more).

  • Why can’t I install plugins “locally” in /var/discourse/plugins on production? (#Self-hosting) — the answer: it’s not blocked so much as “not how the production container build is wired,” so use app.yml (or spin up a dev environment and restore a backup locally). See the discussion (read more) and the related docs for installing plugins on a self-hosted site plus creating/restoring backups.

  • Webhooks suddenly firing ~24 minutes late (user_added_to_group) (Support, webhooks) — the key debugging path was Sidekiq latency/queue pressure (especially the low queue), with guidance to inspect /sidekiq for live queue health (read more).

  • Discourse install: port 443 “not accessible” connection test (and when to skip it) (Support) — a tricky install experience ended up using the --skip-connection-test flag once DNS/ports were verified; the thread also turned into a mini runbook for Virtualmin environments (read more). Related install edge case: skip connection test does not work.

  • Homepage topic links suddenly got smaller (Foundation modernization side-effects) (Support) — admins traced unexpected font-size changes to the Modernize Foundation theme upcoming change and toggled it off while awaiting further refinement (read more).


ux

  • Review queue cognitive trap: “Yes” sometimes means “remove spam,” sometimes means “approve” (ux, review-queue) — a UX consistency report highlighted muscle-memory risk when processing large queues; discussion centered on reframing prompts so “Yes” consistently confirms a problem (read more).

  • Theme import: “branch: main” is a placeholder (not a default), leading to wrong branch pulls (ux, fixed) — an admin-side form subtlety caused real-world update confusion; chapoi shipped a copy/UX fix after clarifying the intended “nil means auto d-compat branch” behavior (read more).

  • “New Topic” button still appears where users can’t create topics (and why that’s controversial) (ux) — a debate between reducing friction (“let users open composer and post elsewhere”) and avoiding confusion (“don’t show a primary CTA that can’t complete”). The thread also surfaced workarounds and a newly added hidden setting restoring old behavior (read more).


#customization:theme


Activity by the @team Group


Thanks for reading, and I’ll see you again next week! :slight_smile:

This week on meta.discourse.org

Key Stats

Period covered: 2026-06-07 → 2026-06-14

  • New posts: 416
  • New topics: 57

Top users (posts + likes received this week)

User Posts Likes
Moin 43 73
lindsey 8 50
awesomerobot 25 41
martin 9 32
HAWK 7 29
chapoi 16 29
davidb 5 20
Falco 5 18
nat 6 17
nathank 13 16

Interesting Topics

#Announcements

  • A preview of the redesigned admin dashboard (dashboard, #Announcements): lindsey shared an early look at a more modular dashboard (highlights, pin-able reports/Data Explorer, traffic, engagement), and the thread quickly turned into a discussion of which KPIs should be customizable per community (e.g. internal vs public support use-cases). read more

  • Introducing the unified new view for the topic list (#Announcements): martin announced “unified new” as an upcoming default, combining the mental model of New vs Unread into clearer subtabs (Topics / Replies / All). awesomerobot clarified default behaviors and why this should be easier to explain to members. read more

  • GIFs are moving to Discourse core! (#Announcements): davidb announced the GIF picker is moving from a theme component into core (now via Klipy), with migration notes for hosted/self-hosted and follow-ups around edge cases like domain download restrictions and translation overrides. read more

  • Livestream is now part of the Events plugin (calendar-and-events, discourse-livestream, #Announcements): lindsey shared that livestream functionality has been folded into the Events plugin (single system, migrated settings, and plan availability on hosted tiers). read more

  • Boosts testing on Meta paused (for now) (#Announcements): martin confirmed Boosts have been disabled on Meta temporarily while the team considers how boosts/likes/reactions might evolve into a more cohesive system later. read more

  • Solved improvements keep evolving (solved, #Announcements): lindsey posted updates making the “I’m experiencing this issue too” interaction configurable per-category and easier to relabel in category settings. read more

bug

  • Ads need a lot of space on topics with nested replies (nested-replies, bug): Moin reported that topic-list ads become visually intrusive (and sometimes broken) inside nested replies layouts; Falco tracked it to the custom topic list ads component and shipped fixes in component PRs. read more

  • Localization bug in recurring events (calendar-and-events, bug): a missing %{weekday} interpolation caused recurring events to render as “Every [missing…]”. awesomerobot pointed to a recent fix and the reporter confirmed an update resolved it. read more

  • Regression: PDFs download on click instead of opening (pdf-previews, bug): nathank reported PDFs attempting download rather than opening in a new tab when previews are enabled; zogstrip linked a fix for inconsistent display behavior between S3 vs local storage. read more

  • Trouble searching user custom fields in the directory (bug): pfaffman reported /u directory search didn’t respect custom fields even though global search did; zogstrip made the code paths consistent via a core fix. read more

  • SVG badge icons not displaying after import (badges, bug): AkarinLiu hit a Font Awesome SVG edge case (no dimensions → renders at 0px). awesomerobot added a Discourse-side fix so these icons display correctly. read more

  • Right Sidebar Blocks: Tags block conflicts with tag dropdowns (right-sidebar-blocks, bug): a repro on try.discourse led to a plugin-side fix; martin linked the PR resolving the behavior. read more

  • Try Discourse demo sending “account no longer on hold” PMs (Support): users noticed repeated automated PMs and an “empty” demo state; david linked the fix and noted it was deployed to try.discourse.com. read more

ux

  • Delete category button is more prominent than Save (categories, ux): chapoi suggested moving “Delete category” into a clearer “Danger zone” and restricting it to an appropriate tab; lindsey agreed the placement felt odd across every tab. read more

  • Nested replies: root post is too narrow on mobile (nested-replies, Support): feedback that the OP becomes cramped when rendered with the same left-avatar indentation as replies; Falco agreed the author block should shift above (flat-topic style) for readability. read more

  • Tags & Tag Groups deserve a more visible place in the admin menu (tags, tag-groups, ux): RGJ argued that tags/tag groups feel “accidentally discoverable” and should be surfaced more directly in the new admin navigation under Content. read more

  • Why does the Reply button have a background transition effect? (ux): a deep-dive into a subtle hover animation inconsistency; awesomerobot explained it’s a legacy behavior intended to draw attention to the hovered reply control and is now “up for debate.” read more

  • Category “new content” indicators (“pastille”) (Support): gilles asked why categories don’t always show a “new/unread” marker on category-focused homepages; awesomerobot noted it exists in some UI surfaces (like the sidebar) but not others. read more

Support

  • Hide admin user from user-directory and top contributors (user-directory, Support): a nuanced thread on why /u?exclude_groups=admins behaves differently for anon users when group membership is hidden; david explained the security model tradeoff, and the OP shared CSS workarounds to hide specific rows for anon. read more

  • AI Translation setting changed: “Translatable categories” → “Excluded categories” (ai, dynaloc, Support): Sara_Carmona_y_Lladó asked how scope and costs are determined; Moin explained the migration logic and suggested Data Explorer queries to audit translation volume. read more

  • Secondary Email Address missing (Support): JDParker couldn’t add a second email; the resolution was that email_editable (or auth overrides) can hide the UI entirely. read more

  • Change “click here” in email digest footer (Support): newbit1337 couldn’t find the string; awesomerobot pointed to the specific i18n key (user_notifications.digest.click_here) and where it is composed into the final digest template. read more

  • TooManyRecipientsError when emailing a group alias (email, Support): pHneutre found inbound mail rejected when a group alias expands beyond default recipient limits; chapoi connected it to anti-abuse settings and the relevant site setting threshold. read more

  • Free hosted site: can’t access admin functions (free-plan, Support): whitelabel was logged into the “wrong” Discourse ID session; awesomerobot advised logging out/in via id.discourse.com to regain the admin account. read more

development

  • Matrix protocol bridge for chat (revived with an LLM-built prototype) (chat, #contribute:feature): pmusaraj shared a proof-of-concept Discourse↔Matrix chat bridge; testing quickly surfaced TL0 chat access defaults and federation/room visibility gotchas. read more

  • Extending chat message blocks (plugin API request) (chat, plugin-api, development): Anton_Akhmerov proposed making chat “blocks” extensible so plugins can register new structured card types (instead of hacking internals or relying on Markdown). read more

  • AI Tools Test Runner: HTTP/HTTPS port behavior (rest-api, ai, Support): Falco clarified current behavior: only HTTP→80 stays HTTP; other ports default to HTTPS, which can surprise when testing http URLs. read more

  • Theme import UX: misleading “branch” input (ux): david added clarity so admins can see both the installed branch and the resolved target branch during theme updates, reducing d-compat vs main confusion. read more

#customization:theme component / #customization:plugin ecosystem

  • Avatar frame plugin effort (frames like Discord Nitro) (Support): an old “where can I find avatar frames?” question turned into a new plugin share—asa built and published a WIP avatar frames plugin and offered to share it with the community. read more

  • Modernizing the Foundation theme continues (#Announcements): Moin posted a dense set of UI consistency observations (borders, spacing, truncation). jordan.vidrine confirmed what’s intentional and linked a PR that will address the remaining items. read more


Activity by the @team Group

lindsey

  • Shared an early, highly experimental preview of the redesigned dashboard and collected feedback on which admin KPIs should be configurable per community (admin dashboard preview, plus follow-up questions in post 4).

  • Confirmed livestream is now integrated into Events (with hosted plan notes and migration behavior) in the formal announcement (livestream merge).

  • Backed a UX improvement proposal to move destructive category actions into a clearer “Danger zone” section (delete category UX).

  • Acknowledged and triaged a recurring-events RSVP behavior report for follow-up (recurring RSVP reset discussion).

  • Posted incremental updates to “Solved improvements” so admins can tune the “me too” indicator per category (Solved improvements update).

awesomerobot

  • Helped explain the reasoning and definitions behind “unified new” and the New / Unread / Unseen confusion, including how the new labels aim to reduce cognitive load (unified new explanation).

  • Shipped multiple quick UX/bugfix responses across core and official components, including:

  • Clarified gaps in Events reminder behavior and discussed what “email reminders” could look like if aligned with notification-email preferences (event reminder email feature discussion).

  • Flagged that discobot’s answer about “censored usernames” was incorrect, clarifying that watched/blocked/censored words do not apply to usernames and reserved usernames is the current option (with admin exemptions) (censoring names clarification).

  • Investigated odd behavior on try.discourse daily restores after reports of repeated “account no longer on hold” PMs (try.discourse restore suspicion).

  • Provided structured troubleshooting guidance for a “notifications not happening” report and emphasized updating a very out-of-date install as a likely fix path (notifications troubleshooting).

  • Helped a free hosted customer regain admin access by re-authing via Discourse ID (free plan admin access).

martin

  • Announced “unified new” becoming the default topic-list behavior via Upcoming Changes, including screenshots and rollout mechanics (unified new announcement).

  • Disabled Boosts on Meta temporarily and set expectations that it will return after more cohesive design work across likes/reactions/boosts (Boosts paused, and later reassurance in post 90).

  • Fixed an issue in the Right Sidebar Blocks plugin by linking and merging the relevant PR (sidebar tags block fix).

  • Confirmed an “Upcoming Changes notification for a hidden change” is a bug and agreed it should be fixed (upcoming changes notification bug).

  • Redirected “when will Foundation update everywhere?” support traffic to the canonical modernization thread and described the lifecycle from Upcoming Change → stable → permanent (Foundation rollout guidance).

  • Shared implementation nuance around group permissions in themes/components, noting currentUser?.groups is not reliable because it only includes visible groups (group visibility nuance).

chapoi

  • Helped users navigate multiple UX and admin-side regressions/fixes, including:

    • confirming the GIF button placement changes (moved into the regular toolbar) and linking users to the correct reference (GIF toolbar clarification),
    • proposing a safer placement for “Delete category” (Danger zone, fewer tabs) (delete category UX proposal),
    • providing the fix PR for an events sidebar label regression (“New Topic” vs “New Event”) in Horizon (events sidebar label fix).
  • Assisted with admin automation and email guardrails by diagnosing why group aliases can trigger TooManyRecipients rejections and pointing to the site setting involved (TooManyRecipients deep dive).

  • Supplied a working SQL pattern to tie SQL-triggered badge grants to a specific topic/post (post_id), solving the “link badge to a topic id” question (badge SQL pattern).

  • Nudged a Data Explorer UI issue report toward the simplest first step: update to latest after a recent plugin refresh (data explorer update suggestion).

  • Linked a completed fix for long personal-message titles overflowing in the composer UI (PM title overflow fix).

HAWK

  • Started a thoughtful discussion on enterprise community ownership models—whether community should sit under Marketing/Support/Product or be autonomous—and engaged replies about mandate, boundaries, and member-first decision-making (community ownership models).

  • Explained the strategic rationale behind Discourse’s free plan as a freemium acquisition tier that often behaves like an indefinite trial and a pathway to retention (free plan rationale).

  • Answered “what’s the point of primaries?” by quoting canonical purposes (styling, flair, identity, default title) and linking to a reference explanation (primary groups purpose).

  • Noted weekend timing expectations on a nested replies support thread (“you caught us on the weekend”) while the report awaited deeper technical follow-up (nested replies support timing).

  • Teased upcoming “Workflows” as a major leap for automations (triggers/actions/flows) in a community building automation discussion (workflow hint).

davidb

  • Announced the migration of GIF support into core using Klipy, with clear instructions for hosted vs self-hosted customers and a roadmap for improving migration scripts over the next couple weeks (GIFs to core announcement).

  • Followed up on migration details like mapping provider settings (Giphy → Klipy) and potential updates to handle disabled_image_download_domains and translation overrides (migration follow-up).

Falco

  • Responded to nested-replies ad layout issues and documented why prior attempts didn’t fully solve it, then provided the concrete PR links that address spacing/placement in the correct component (ads + nested replies).

  • Confirmed content localization language switching requires cookie-based locale selection (per the docs) when a user reported the switcher “does nothing” (content localization cookie requirement).

  • Agreed the nested replies mobile OP layout should be adjusted so author info moves above (not beside) the opening post (OP width on mobile).

  • Clarified current limitations/behavior in the AI Tools Test Runner around protocol/port assumptions (HTTP only on port 80; others default to HTTPS) (AI tools runner behavior).

nat

  • Engaged in the dashboard redesign thread (and GIF-based levity) while signaling that KPI customization is on the horizon but not immediate (dashboard thread participation).

  • Confirmed improvements to AI-generated tag translations on Meta after a thorough report, noting that the provided list made it straightforward to fix quickly (tag translation improvements).

  • Acknowledged a tricky content-localization edge case where interface language and translated content language can drift across tabs, and indicated it may be a quick fix (language mismatch report).

  • Confirmed the team is looking into broken category links/mentions resulting from category/subcategory structure changes and rebakes (category link breakage acknowledgement).

  • Confirmed a bug report about translated post links not using the translated language is on the team’s radar (translated links bug).

david

  • Helped clarify the security model behind hiding group membership and why anon users can’t reliably use exclude_groups without leaking membership data—while also acknowledging configuration realities (open registration vs invite-only) (exclude_groups explanation).

  • Delivered the fix that stopped try.discourse from spamming “account no longer on hold” PMs and confirmed deployment (try.discourse fix + deploy note).

  • Investigated CI bootability test failures with SKIP_DB_AND_REDIS and worked through reproduction attempts and environment knobs with reporters (CI bootability troubleshooting).

  • Improved theme import UX by adding visibility into what branch is truly installed vs what branch will be targeted during update checks (theme branch UX PR).

zogstrip

  • Confirmed Discourse hosted Free is available and pointed users to the official pricing page when asked whether free hosting exists (free plan confirmation).

  • Fixed RSVP/calendar behavior where “My events” could show every upcoming occurrence even when only RSVPing to the next one, and linked the PR for the correction (My events calendar fix).

  • Addressed a PDF preview regression by identifying inconsistency between S3 and non-S3 storage and linking the PR that standardizes behavior (PDF regression fix).

  • Fixed user-directory search inconsistencies for custom fields by aligning the relevant code paths, after a regression report (directory search fix).

  • Pointed to a just-landed fix for the recurring events localization string issue and advised updating to pull it in (recurring localization fix pointer).


Thanks for reading, and I’ll see you again next week! :slight_smile:

This week on meta.discourse.org

Key Stats

Period: 2026-06-14 → 2026-06-21
New posts: 267
New topics: 35

Top contributors (posts / likes received this week):

User Posts Likes
chapoi 20 47
awesomerobot 23 24
zogstrip 10 31
HAWK 8 26
Canapin 7 23
Helga_Razinkova 3 22
Falco 4 21
JammyDodger 2 19
noahl 2 19
sam 2 14

A couple of themes clearly dominated the week:

Quick link roundup (other active threads worth skimming):


Interesting Topics

#community-building Building

  • Support communities seeing a “drastic drop” in engagement? A thoughtful thread on whether LLMs are displacing peer-support patterns, and how communities might shift toward belonging, events, and human-to-human valueread more

  • Forums that forbid AI/LLM-generated content: what policies actually work? Practical moderation patterns emerged (policy clarity, case-by-case enforcement, and where “AI content” overlaps with spam) — read more

  • Triggering UX/help based on a search keyword (theme vs workflows)? A discussion about whether search terms could become workflow triggers (with performance considerations) — read more

#Announcements

  • AI Helper suggestions moved inline in the composer (ai, ux): category/tag suggestions now integrate directly into the chooser UI to reduce “ask → wait → choose” friction — read more

  • Redesigned admin dashboard: testing + early feedback (dashboard): guidance on previewing via Upcoming changes, plus questions on custom Data Explorer chart formats and traffic/country calculations — read more

  • Unified topic list view: parity/edge-case UI feedback (ux): an issue noted where a “New” link opened the wrong tab in the new topic list layout — read more

ux

  • Hover-to-preview larger emoji (especially custom emoji) (emoji): a request inspired by Discord interaction patterns, with a “totally unofficial” theme component prototype shared — read more

  • Event (calendar) UX issues: link targets, composer extensibility, and advanced settings quirks (calendar-and-events): a detailed list of friction points (including missing plugin outlets) — read more

  • Event email notifications feel “too lean” without the description (email, calendar-and-events): request to include event description in notification emails (not just post body) — read more

  • More recurrence options requested for events (calendar-and-events): “every 3rd week” and “xth weekday every other month/quarter/etc.” suggestions — read more

  • “Delete category” button more prominent than “Save” (now fixed) (categories): UI polish to reduce foot-gun risk — read more

  • Feedback wanted: sidebar topic-feed userscript → theme component/plugin/core? (chat, ux): a compact topic feed inside the sidebar to reduce tab overload and resource usage — read more

#contribute:feature

  • Android share target support for Discourse PWA (pwa): revisiting an older feature request now that Chrome supports PWAs as share targets, including UX expectations and a prototype PR — read more

  • Optionally allow other groups to open/close topics: a request aimed at delegating timer workflows without granting full mod/admin permissions — read more

  • “Simple mode” in doc categories: show all replies after posting (doc-categories): a UX request to avoid the “flash then hide under ‘Show comments’” effect — read more

  • Site setting type: group implemented (after being “never really implemented”) (completed): a neat example of docs/expectations mismatching reality, resulting in a quick core improvement — read more

bug

  • Large polls: users can’t return to amend votes (polls): a bug affecting large/long-lived polls where the “< Vote” button misbehaved; fixes landed in two parts — read more

  • Who closed the poll? (audit trail + UI attribution) (polls): poll closure is now stored/logged and shown directly on the poll for accountability — read more

  • Event custom fields: dashes/periods crash advanced settings, uppercase fields don’t persist (calendar-and-events): field name normalization and validation fixes — read more

  • Error creating events due to a “trust_level_0” edge-case (calendar-and-events): an unusual collision between a test username and event group-name validation; guard added — read more

  • Transparent PNG uploads getting a background (bug): PNG→JPG conversion side effects and workarounds, with follow-up improvements to avoid the workaround in future — read more

Support / #Self-hosting

  • Backup restore fails due to duplicate rows blocking a unique index rebuild (backups): deep debugging guidance (cleanup + reindex) helped unblock a multi-year upgrade path — read more

  • Login dialog offers auth providers that “aren’t enabled” (tabs UI gotcha): a self-host admin confusion resolved by finding the right “Social logins” tab/scroll location — read more

  • S3-compatible uploads failing with Cloudflare R2 (s3): troubleshooting endpoint/CDN URL formatting and bucket naming — read more

  • Search misses words split by inline HTML tags (e.g., <strong> + <sub>) (search): an example where indexing tokenization breaks expected queries after WordPress imports — read more

#Plugins / development

  • ActivityPub plugin disabled on Meta (maintenance mode elsewhere continues) (activitypub): rationale shared (low usage + UI confusion), alongside a reminder to update for security fixes — read more

Activity by the @team Group

  • chapoi shipped and supported across AI, settings, UX, and ops:

    • Announced the inline AI helper suggestions update in ai, #announcementsread more
    • Helped troubleshoot a long-running restore failure and pointed to root causes before others added deeper DB steps (#self-hosting, backups) — read more
    • Confirmed and then completed implementation of site setting type: group (moving from “text-only” to a proper selector) — read more
    • Responded to dashboard redesign feedback and clarified how sections/filters are intended to work (dashboard) — read more
    • Joined the broader conversation on AI’s impact on support communities (Community Building) — read more
  • zogstrip focused heavily on “small sharp fixes” with real-world admin impact:

  • HAWK bridged strategy, community, and operational “workarounds that scale”:

    • Published a companion discussion on using AI in remote-company operations (blog) — read more
    • Brought “first principles” thinking to the community engagement decline discussion (Community Building) — read more
    • Shared migration/SEO expectations and redirect hygiene advice for Bing ranking dips (#support:migration, seo) — read more
    • Offered a practical workaround for letting non-admin organizers “grant badges” via group-managed membership (badges) — read more
    • Engaged in the governance/ownership conversation about what Meta is for (#enterprise) — read more
  • awesomerobot did a bit of everything: community replies, UX confirmation, and rapid bug merges:

    • Added an important “information degradation cycle” lens to the engagement decline thread (Community Building) — read more
    • Investigated and merged a guard for an event creation edge-case involving test usernames (calendar-and-events) — read more
    • Reproduced and explained the HTML-tag tokenization search issue (search) — read more
    • Followed up on category-page UX limitations and what layouts do/don’t communicate activity (categories) — read more
    • Helped users resolve hosted signup/domain reservation confusion (Support) — read more
  • Falco pushed forward mobile/PWA and AI configuration support:

    • Moved the Android share-to-Discourse PWA feature forward with a prototype PR and demo (pwa) — read more
    • Explained how to reduce AI token usage by category-limiting the agent search tool (ai) — read more
    • Diagnosed AI endpoint configuration issues (“blank error” cases) and pointed to correct endpoints/logging (ai) — read more
    • Continued iterating on Resenha plugin capabilities (adding video/screen share behind settings) (#plugin) — read more
  • sam improved day-to-day UX experimentation and internal tooling:

    • Shared an unofficial emoji hover preview theme component for better custom emoji legibility (emoji) — read more
    • Ported the daily summary workflow to a new workflows-based setup (easier prompt iteration/testing) (#site-feedback) — read more
  • nat contributed analytics context + dashboard quality improvements:

    • Connected a sharp user-visits dip to Google Search’s May 2026 core update (helpful for anyone debugging “sudden drops”) — read more
    • Clarified how to opt into the redesigned dashboard via Upcoming changes (dashboard) — read more
    • Noted improved date-range chart heuristics (with credit to community feedback) (dashboard) — read more
  • southpaw reignited and shaped a long-requested mobile workflow:

    • Reopened the Android share-target discussion with concrete UX flow ideas (new topic/reply/PM options) (pwa) — read more
  • Bas helped steer early diagnostic questions in the engagement decline thread:

    • Asked for specificity on which metrics were actually falling (pageviews/topics/active users), keeping the discussion grounded (Community Building) — read more
  • pmusaraj provided a key platform decision update and nudged mobile work forward:

    • Announced that ActivityPub is disabled on Meta (while plugin support continues elsewhere), citing confusion/low usage (activitypub) — read more
    • Confirmed PWA share-target support could extend to the Discourse Hub app (separate process, but on the radar) (pwa) — read more

Thanks for reading, and I’ll see you again next week! :slight_smile: