AffinityRule / AffinityLevel / AffinitySetting 三表共 13 条 CheckConstraint 覆盖 min ≤ max / 各类 cap > 0 / cooldown ≥ 0 / companion_time 配套字段必填 / decay 区间合法 / initial ≤ max 等不变量。 AffinitySetting 加 pk=1 单例硬约束(CR-002 + WR-001 联动)+ save() 强制 pk=1, 形成事实单例防御并发首次插入重复行。 模型 clean() 提供 Python 级兜底(给 DRF / admin 友好错误信息); AffinityLevel.save() 自动 full_clean 触发跨行区间不重叠校验(为 WR-009 铺路)。 详见 docs/REVIEW-affinity-P1.md CR-002 / WR-001。
Description
洛天依
Languages
TypeScript
57.8%
Python
40.3%
HTML
1.3%
CSS
0.3%
Dockerfile
0.1%
Other
0.1%