@@ -247,12 +247,10 @@ async def show_user_message(message: str, message_type: str) -> None:
247247def deserialize_action_payload (raw_payload : dict [str , str ]) -> dict [str , typing .Any ]:
248248 deserialized_payload = {}
249249 for key , value in raw_payload .items ():
250- if (value .startswith ("{" ) and value .endswith ("}" )) or (value .startswith ('[' ) and value .endswith (']' )):
251- try :
252- deserialized_value = json .loads (value )
253- except json .JSONDecodeError :
254- deserialized_value = value
255- else :
250+ try :
251+ # use json deserialize for objects, arrays, numbers, booleans
252+ deserialized_value = json .loads (value )
253+ except json .JSONDecodeError :
256254 deserialized_value = value
257255 deserialized_payload [key ] = deserialized_value
258256 return deserialized_payload
@@ -408,7 +406,11 @@ def run(ctx) -> None:
408406 wal_enabled = wal_enabled ,
409407 )
410408 )
411- click .echo (result .output )
409+
410+ # if partial results were printed, final result is empty
411+ if result .output != "" :
412+ click .echo (result .output )
413+
412414 if save_results :
413415 results_dir = pathlib .Path (sys .executable ).parent .parent / "cache" / "finecode" / "results"
414416 results_dir .mkdir (parents = True , exist_ok = True )
0 commit comments