# 2026-10-21 | 短剧保存始终同步分集价格(幂等纠偏) ## 背景 承接 K104。短剧 `free_episodes=9` 重存后,分集 5~9 仍收费。 ## 根因 `DramaService.update()` 仅在 `freeEpisodes` / `unlockCoin` 相对更新前有变化时调用 `EpisodePriceSync`。历史数据已漂移时,同值重存不触发同步。 ## 方案 1. 测试:覆盖「规则字段未变、分集已漂移」仍纠正。 2. `DramaService.update()`:每次保存都调用 `EpisodePriceSync.syncByDramaRule(drama)`。 3. `EpisodePriceSync`:仅对有差异的行走 `updateById`(已具备,保持)。 ## 范围 只改 `fruitshorts-module-content` 的 `DramaService` / `EpisodePriceSync` / `DramaServiceTest`。不改 Controller / VO / 契约 / 前端。 ## 提交 1. `test(content): 覆盖免费集数未变但分集漂移的修复场景` 2. `fix(content): 短剧保存时始终同步分集价格`