fix: align rule rollback version resolution

This commit is contained in:
wren
2026-05-07 10:58:42 +08:00
parent 7cf551018b
commit 75c2111209
2 changed files with 7 additions and 8 deletions
@@ -54,12 +54,13 @@ class RuleServiceImpl(IRuleService):
FROM leaudit_rule_sets rs
LEFT JOIN leaudit_rule_versions current_rv
ON current_rv.id = rs.current_version_id
AND current_rv.status IN ('published', 'rollback')
AND current_rv.status = 'published'
LEFT JOIN LATERAL (
SELECT rv.id
FROM leaudit_rule_versions rv
WHERE rv.rule_set_id = rs.id
AND rv.status IN ('published', 'rollback')
AND rv.status = 'published'
AND (rs.current_version_id IS NULL OR rv.id <> rs.current_version_id)
ORDER BY rv.version_seq DESC, rv.id DESC
LIMIT 1
) fallback_rv ON TRUE