fix(HEL-494): retry incomplete sector publications

Co-authored-by: multica-agent <github@multica.ai>
This commit is contained in:
总管
2026-09-09 00:46:18 +08:00
co-authored by multica-agent
parent c9e2d30780
commit 41f8509a98
5 changed files with 59 additions and 2 deletions
@@ -60,6 +60,22 @@ class ExtendedEodTests(unittest.TestCase):
names = {item["dataset"] for item in status["data"]}
self.assertTrue({"limit_events", "popularity", "dragon_tiger", "sector_daily"} <= names)
def test_partial_sector_families_are_retried_instead_of_skipped(self) -> None:
first = self.hub.pipeline.run_eod_batch_e(TRADE_DATE)
self.assertEqual(first["sector_daily"]["state"], "published")
batch_id = self.hub.pipeline.active_batch("sector_daily", TRADE_DATE)
with self.hub.db.write() as connection:
connection.execute(
"DELETE FROM eod_sector_daily WHERE trade_date = ? AND batch_id = ? AND family = 'sw'",
(TRADE_DATE, batch_id),
)
self.assertFalse(self.hub.pipeline.extended_publication_complete("sector_daily", TRADE_DATE))
retried = self.hub.pipeline.run_eod_batch_e(TRADE_DATE)
self.assertEqual(retried["sector_daily"]["state"], "published")
self.assertTrue(self.hub.pipeline.extended_publication_complete("sector_daily", TRADE_DATE))
if __name__ == "__main__":
unittest.main()