fix: debug reasoning execution flow and fix JSON serialization
- Add debug log for execute_immediately, violations, steps_count - Fix JSON serialization in _store_session using default=str - Plan object might contain non-serializable types (e.g. datetime)
This commit is contained in:
parent
f9dac4ce7f
commit
356544853a
@ -470,6 +470,7 @@ class HermesReasoningEngine:
|
||||
})
|
||||
|
||||
# Step 5: Execute if requested and safe
|
||||
info(f"[reasoning] execute_immediately={execute_immediately}, violations={violations}, steps_count={len(plan.get('steps', []))}")
|
||||
if execute_immediately and not violations and plan.get('steps'):
|
||||
exec_results = await self._execute_plan(
|
||||
session_id, plan['steps'], config, context
|
||||
@ -602,12 +603,14 @@ class HermesReasoningEngine:
|
||||
plan: Dict, violations: List, status: str):
|
||||
"""Store reasoning session in database."""
|
||||
try:
|
||||
# Ensure plan is serializable
|
||||
plan_str = json.dumps(plan, ensure_ascii=False, default=str)
|
||||
data = {
|
||||
'id': session_id,
|
||||
'user_id': user_id,
|
||||
'initial_request': request,
|
||||
'context_summary': '',
|
||||
'execution_plan_json': json.dumps(plan, ensure_ascii=False),
|
||||
'execution_plan_json': plan_str,
|
||||
'reasoning_steps_json': '[]',
|
||||
'safety_violations_json': json.dumps(violations, ensure_ascii=False),
|
||||
'final_decision_json': json.dumps({'status': status}),
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user