---
date: 2026-05-08
type: backend-fix
module: hl-mp-service/message
priority: low
notify: ["@mmg"]
status: tested-passed
restart_service: hl-mp-service
gitea_pr: 1862
gitea_issue: [1857]
---

# /mp/message/summary 接口排序稳定化

## 现象

小程序消息中心首页消息分类汇总接口 `GET /mp/message/summary` 返回的分类列表偶发出现顺序不一致,同一账号多次调用同一份数据,前端展示的分类顺序会跳变。

## 根因

Service 层查询 message_category 时只按 `sort_order ASC` 排序,当多条记录 `sort_order` 相同时,MySQL 不保证返回顺序稳定 → 不同次查询可能返回不同顺序。

修复方式:加二级排序 `id ASC` 作为 tie-breaker,保证同 `sort_order` 内顺序稳定。

## 前端可见变化

**API 路径/响应结构/字段/类型完全不变**,前端无需任何改动。

行为变化(更可预期):
- 改前:同 `sort_order` 的分类顺序可能跳变
- 改后:稳定按 `sort_order ASC, id ASC` 返回

## 重启服务

测试服已部署:`hl-mp-service`(PR #1862 合 dev → deploy panel)。

## 关联

- Closes wx/HL #1857
- PR #1862
