fix(pipeline): move extra_gates after standard gate pass check
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -487,14 +487,10 @@ async def _process_one_slot(
|
|||||||
continue
|
continue
|
||||||
store.update_gates(item_id, report)
|
store.update_gates(item_id, report)
|
||||||
|
|
||||||
# 题型专属额外 gate
|
if not report.passed:
|
||||||
extra_results = strategy.extra_gates(candidate)
|
prev_reason = report.reject_reason
|
||||||
if any(r.verdict == GateVerdict.FAIL for r in extra_results):
|
|
||||||
prev_reason = "; ".join(
|
|
||||||
r.reason for r in extra_results if r.verdict == GateVerdict.FAIL
|
|
||||||
)
|
|
||||||
logger.info(
|
logger.info(
|
||||||
"slot {} 额外 gate 失败 (attempt {}/{}): {}",
|
"slot {} 门控失败 (attempt {}/{}): {}",
|
||||||
slot.slot_id,
|
slot.slot_id,
|
||||||
attempt,
|
attempt,
|
||||||
config.retry_limit,
|
config.retry_limit,
|
||||||
@@ -502,10 +498,14 @@ async def _process_one_slot(
|
|||||||
)
|
)
|
||||||
continue
|
continue
|
||||||
|
|
||||||
if not report.passed:
|
# 题型专属额外 gate(仅标准门通过后才执行)
|
||||||
prev_reason = report.reject_reason
|
extra_results = strategy.extra_gates(candidate)
|
||||||
|
if any(r.verdict == GateVerdict.FAIL for r in extra_results):
|
||||||
|
prev_reason = "; ".join(
|
||||||
|
r.reason for r in extra_results if r.verdict == GateVerdict.FAIL
|
||||||
|
)
|
||||||
logger.info(
|
logger.info(
|
||||||
"slot {} 门控失败 (attempt {}/{}): {}",
|
"slot {} 额外 gate 失败 (attempt {}/{}): {}",
|
||||||
slot.slot_id,
|
slot.slot_id,
|
||||||
attempt,
|
attempt,
|
||||||
config.retry_limit,
|
config.retry_limit,
|
||||||
|
|||||||
Reference in New Issue
Block a user