@@ -42,16 +42,14 @@ async def run(self, query: str) -> None:
42
42
is_done = True ,
43
43
hide_checkmark = True ,
44
44
)
45
- self .printer .update_item (
46
- "start" , "Starting financial research..." , is_done = True )
45
+ self .printer .update_item ("start" , "Starting financial research..." , is_done = True )
47
46
search_plan = await self ._plan_searches (query )
48
47
search_results = await self ._perform_searches (search_plan )
49
48
report = await self ._write_report (query , search_results )
50
49
verification = await self ._verify_report (report )
51
50
52
51
final_report = f"Report summary\n \n { report .short_summary } "
53
- self .printer .update_item (
54
- "final_report" , final_report , is_done = True )
52
+ self .printer .update_item ("final_report" , final_report , is_done = True )
55
53
56
54
self .printer .end ()
57
55
@@ -76,8 +74,7 @@ async def _plan_searches(self, query: str) -> FinancialSearchPlan:
76
74
async def _perform_searches (self , search_plan : FinancialSearchPlan ) -> Sequence [str ]:
77
75
with custom_span ("Search the web" ):
78
76
self .printer .update_item ("searching" , "Searching..." )
79
- tasks = [asyncio .create_task (self ._search (item ))
80
- for item in search_plan .searches ]
77
+ tasks = [asyncio .create_task (self ._search (item )) for item in search_plan .searches ]
81
78
results : list [str ] = []
82
79
num_completed = 0
83
80
for task in asyncio .as_completed (tasks ):
@@ -112,8 +109,7 @@ async def _write_report(self, query: str, search_results: Sequence[str]) -> Fina
112
109
tool_description = "Use to get a short write‑up of potential red flags" ,
113
110
custom_output_extractor = _summary_extractor ,
114
111
)
115
- writer_with_tools = writer_agent .clone (
116
- tools = [fundamentals_tool , risk_tool ])
112
+ writer_with_tools = writer_agent .clone (tools = [fundamentals_tool , risk_tool ])
117
113
self .printer .update_item ("writing" , "Thinking about report..." )
118
114
input_data = f"Original query: { query } \n Summarized search results: { search_results } "
119
115
result = Runner .run_streamed (writer_with_tools , input_data )
@@ -126,8 +122,7 @@ async def _write_report(self, query: str, search_results: Sequence[str]) -> Fina
126
122
next_message = 0
127
123
async for _ in result .stream_events ():
128
124
if time .time () - last_update > 5 and next_message < len (update_messages ):
129
- self .printer .update_item (
130
- "writing" , update_messages [next_message ])
125
+ self .printer .update_item ("writing" , update_messages [next_message ])
131
126
next_message += 1
132
127
last_update = time .time ()
133
128
self .printer .mark_item_done ("writing" )
0 commit comments