编辑活动结束日期 → 主题标题中的活动后日期未更新

你好,

我针对此问题创建了 FIX: Refresh event dates in topic lists - Pull Request #43285 - discourse/discourse - GitHub 这个 PR。

随后,我录制了一段针对该 PR 头提交(head commit)进行手动测试的屏幕录像:

该 PR 基于 main 分支。

录像中的红色计时器倒计时至相关事件边界,而绿色时钟显示当前的实际时间,因此录像应当是完整自洽的。

我在下方以补充说明的形式附上了我确切的测试时间和 BBCode。

第一次测试 — 仅编辑结束时间

预期时间:

开始 编辑后的开始 结束 编辑后的结束
16:22 未编辑 16:25 16:28

初始的 BBCode 为:

[event start="2026-09-04 16:22" status=public timezone=Europe/London end="2026-09-04 16:25"]
this is an event description
[/event]

我明确将其更改为:

[event start="2026-09-04 16:22" status=public timezone=Europe/London end="2026-09-04 16:28"]
this is an event description
[/event]
第二次测试 — 仅编辑开始时间

预期时间:

开始 编辑后的开始 结束 编辑后的结束
16:31 16:32 16:35 未编辑

本次运行中我犯了一个设置错误:初始的 BBCode 实际上是:

[event start="2026-09-04 17:00" end="2026-09-04 18:00" status="public" timezone="Europe/London" reminders="notification.15.minutes"]
[/event]

随后我明确将其更改为:

[event start="2026-09-04 16:32" status=public timezone=Europe/London end="2026-09-04 16:35" reminders=notification.15.minutes]
[/event]

因此,本次特定的运行不应被视为一次干净的 16:3116:32 仅开始时间对比。

第三次测试 — 编辑开始和结束时间

预期时间:

开始 编辑后的开始 结束 编辑后的结束
16:38 16:39 16:42 16:45

初始的 BBCode 为:

[event start="2026-09-04 16:38" status=public timezone=Europe/London end="2026-09-04 16:42" reminders=notification.15.minutes]
[/event]

我明确将其更改为:

[event start="2026-09-04 16:39" status=public timezone=Europe/London end="2026-09-04 16:45" reminders=notification.15.minutes]
[/event]
第四次测试 — 仅编辑结束时间

预期时间:

开始 编辑后的开始 结束 编辑后的结束
16:47 未编辑 16:50 16:53

初始的 BBCode 为:

[event start="2026-09-04 16:47" status=public timezone=Europe/London end="2026-09-04 16:50"]
[/event]

我明确将其更改为:

[event start="2026-09-04 16:47" status=public timezone=Europe/London end="2026-09-04 16:53"]
[/event]
第五次测试 — 仅编辑开始时间

预期时间:

开始 编辑后的开始 结束 编辑后的结束
16:56 16:57 17:00 未编辑

最终的 BBCode 为:

[event start="2026-09-04 16:57" status=public timezone=Europe/London end="2026-09-04 17:00" reminders=notification.15.minutes]
[/event]

事后的数据库检查确认,该帖子在其作者于 Discourse 的 300 秒编辑宽限期内被编辑了一次(self_edits = 1)。由于编辑发生在该宽限期内,帖子保持为版本 1,且未创建可见的修订/铅笔标记。

因此,原始 raw 值无法再从 post_revisions 中获取,但该测试并非未编辑的帖子。

第六次测试 — 编辑开始和结束时间

预期时间:

开始 编辑后的开始 结束 编辑后的结束
17:03 17:04 17:07 17:10

最终的 BBCode 为:

[event start="2026-09-04 17:04" end="2026-09-04 17:10" status="public" timezone="Europe/London" reminders="notification.15.minutes"]
[/event]

事后的数据库检查确认,该帖子在其作者于 Discourse 的 300 秒编辑宽限期内被编辑了一次(self_edits = 1)。由于编辑发生在该宽限期内,帖子保持为版本 1,且未创建可见的修订/铅笔标记。

因此,原始 raw 值无法再从 post_revisions 中获取,但该测试并非未编辑的帖子。