feat: 公共 Feed 游标分页 + 作者公开资料链路(T3-05 / D3-9 方案 B,ADR-002/017)
CI / backend-test (push) Successful in 8m0s
CI / backend-test (push) Successful in 8m0s
- GET /api/v1/feed:仅 published+public+未删,(published_at DESC, id DESC) keyset
游标恰合 ix_posts_feed,{items,nextCursor,hasMore},禁 OFFSET
- FeedCard 定型:author/category/title/contentPreview(200 码点截断)/coverImage
(唯一 is_cover 行)/mediaCount/三计数(posts 冗余列)/likedByMe/bookmarkedByMe/publishedAt
- AuthorSummary 定型并回填 Post 详情(T3-04 偏差① authorId 占位闭环):
userId+nickname+avatarUrl;Feign 批量调 user /internal/users/profiles,
60s 进程内 TTL 缓存,avatarAssetId 经 media.assets 只读解析后本地签名
- 降级语义:user 服务不可达/出错时 Feed/详情照常 200,作者摘要退为仅 userId,
失败不入缓存;Feign 1s/2s 超时兜底
- compose 为 community 注入 PATBOND_USER_SERVICE_URL/PATBOND_INTERNAL_TOKEN
- 新增分页专项 8 例、卡片定型 5 例、作者链路 7 例、Feign 线路 3 例
(community 32→55;全仓 251→282 全绿,check-secrets --all 通过)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
@@ -4,3 +4,12 @@
|
||||
spring:
|
||||
application:
|
||||
name: patbond-community
|
||||
|
||||
patbond:
|
||||
# Feign client wiring must resolve at context start. Author-profile tests
|
||||
# either replace the client bean with a DB-backed stub or (the wire test)
|
||||
# override this URL with an in-test HTTP server; nothing ever calls this
|
||||
# unroutable address.
|
||||
user-service:
|
||||
url: http://127.0.0.1:1
|
||||
internal-token: test-internal-token
|
||||
|
||||
Reference in New Issue
Block a user