fix: prompt_override 시 parse_response 건너뛰어 Missing fields 경고 제거 (#247)
Some checks failed
CI / test (pull_request) Has been cancelled
Some checks failed
CI / test (pull_request) Has been cancelled
pre_market_planner처럼 prompt_override를 사용하는 호출자는 플레이북 JSON 등 TradeDecision이 아닌 raw 텍스트를 기대한다. 기존에는 parse_response를 통과시켜 항상 "Missing fields" 경고가 발생했다. decide()에서 prompt_override 감지 시 parse_response를 건너뛰고 raw 응답을 rationale에 담아 직접 반환하도록 수정한다. 정상 응답인데 경고가 뜨는 문제가 해결된다. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -441,6 +441,15 @@ class GeminiClient:
|
||||
action="HOLD", confidence=0, rationale=f"API error: {exc}", token_count=token_count
|
||||
)
|
||||
|
||||
# prompt_override callers (e.g. pre_market_planner) expect raw text back,
|
||||
# not a parsed TradeDecision. Skip parse_response to avoid spurious
|
||||
# "Missing fields" warnings and return the raw response directly. (#247)
|
||||
if "prompt_override" in market_data:
|
||||
self._total_decisions += 1
|
||||
return TradeDecision(
|
||||
action="HOLD", confidence=0, rationale=raw, token_count=token_count
|
||||
)
|
||||
|
||||
decision = self.parse_response(raw)
|
||||
self._total_decisions += 1
|
||||
|
||||
|
||||
Reference in New Issue
Block a user