chore: remove code nothing uses

- is_yahoo_safe, has_checkpoint, get_wall_times, the graph's curr_state and the project_dir config key
- the CLI's final_report and current_agent state, its duplicate get_analysis_date and the save_report_to_disk wrapper
- the dotenv import guard (a hard dependency) and a warning filter for langgraph-checkpoint 4.0.3
This commit is contained in:
Yijia-Xiao
2026-09-24 04:31:05 +00:00
parent 41fc25ac0d
commit 9b14233a24
11 changed files with 22 additions and 175 deletions
+9 -10
View File
@@ -10,7 +10,6 @@ from tradingagents.graph.checkpointer import (
checkpoint_step,
clear_checkpoint,
get_checkpointer,
has_checkpoint,
thread_id,
)
@@ -63,7 +62,7 @@ class TestCheckpointResume(unittest.TestCase):
graph.invoke({"count": 0}, config=cfg)
# Checkpoint should exist at step 1 (analyst completed)
self.assertTrue(has_checkpoint(self.tmpdir, self.ticker, self.date))
self.assertIsNotNone(checkpoint_step(self.tmpdir, self.ticker, self.date))
step = checkpoint_step(self.tmpdir, self.ticker, self.date)
self.assertEqual(step, 1)
@@ -90,11 +89,11 @@ class TestCheckpointResume(unittest.TestCase):
with self.assertRaises(RuntimeError):
graph.invoke({"count": 0}, config=cfg)
self.assertTrue(has_checkpoint(self.tmpdir, self.ticker, self.date))
self.assertIsNotNone(checkpoint_step(self.tmpdir, self.ticker, self.date))
# Clear it
clear_checkpoint(self.tmpdir, self.ticker, self.date)
self.assertFalse(has_checkpoint(self.tmpdir, self.ticker, self.date))
self.assertIsNone(checkpoint_step(self.tmpdir, self.ticker, self.date))
# Fresh run succeeds from scratch
_should_crash = False
@@ -119,10 +118,10 @@ class TestCheckpointResume(unittest.TestCase):
with self.assertRaises(RuntimeError):
graph.invoke({"count": 0}, config={"configurable": {"thread_id": tid1}})
self.assertTrue(has_checkpoint(self.tmpdir, self.ticker, self.date))
self.assertIsNotNone(checkpoint_step(self.tmpdir, self.ticker, self.date))
# date2 should have no checkpoint
self.assertFalse(has_checkpoint(self.tmpdir, self.ticker, date2))
self.assertIsNone(checkpoint_step(self.tmpdir, self.ticker, date2))
# Run with date2 — should start fresh and succeed
_should_crash = False
@@ -137,7 +136,7 @@ class TestCheckpointResume(unittest.TestCase):
self.assertEqual(result["count"], 11)
# Original date checkpoint still exists (untouched)
self.assertTrue(has_checkpoint(self.tmpdir, self.ticker, self.date))
self.assertIsNotNone(checkpoint_step(self.tmpdir, self.ticker, self.date))
class TestCheckpointSignature(unittest.TestCase):
@@ -178,9 +177,9 @@ class TestCheckpointSignature(unittest.TestCase):
with self.assertRaises(RuntimeError):
graph.invoke({"count": 0}, config={"configurable": {"thread_id": tid1}})
self.assertTrue(has_checkpoint(self.tmpdir, self.ticker, self.date, sig1))
self.assertIsNotNone(checkpoint_step(self.tmpdir, self.ticker, self.date, sig1))
# A different graph shape has no checkpoint to resume from.
self.assertFalse(has_checkpoint(self.tmpdir, self.ticker, self.date, sig2))
self.assertIsNone(checkpoint_step(self.tmpdir, self.ticker, self.date, sig2))
_should_crash = False
tid2 = thread_id(self.ticker, self.date, sig2)
@@ -190,7 +189,7 @@ class TestCheckpointSignature(unittest.TestCase):
result = graph.invoke({"count": 0}, config={"configurable": {"thread_id": tid2}})
self.assertEqual(result["count"], 11)
# sig1's checkpoint remains untouched.
self.assertTrue(has_checkpoint(self.tmpdir, self.ticker, self.date, sig1))
self.assertIsNotNone(checkpoint_step(self.tmpdir, self.ticker, self.date, sig1))
def test_run_signature_captures_graph_shape(self):
from tradingagents.graph.trading_graph import TradingAgentsGraph