## ADDED Requirements ### Requirement: 热点数据注入 TopicEngine 系统 SHALL 提供 `feed_hotspot_to_engine(topic_engine: TopicEngine) -> list[dict]` 函数,将缓存的热点分析结果传入 `TopicEngine.recommend_topics()`。 #### Scenario: 有缓存分析结果时注入并返回推荐 - **WHEN** 调用 `feed_hotspot_to_engine(topic_engine)` 且 `get_last_analysis()` 返回非空 dict - **THEN** SHALL 调用 `topic_engine.recommend_topics(hotspot_data=data)` 并返回推荐结果列表 #### Scenario: 无缓存分析结果时返回空推荐 - **WHEN** 调用 `feed_hotspot_to_engine(topic_engine)` 且 `get_last_analysis()` 返回 `None` - **THEN** SHALL 调用 `topic_engine.recommend_topics(hotspot_data=None)` 并返回其结果(仅基于权重数据推荐) #### Scenario: 函数位于 hotspot 模块避免循环依赖 - **WHEN** `feed_hotspot_to_engine` 被定义 - **THEN** SHALL 位于 `services/hotspot.py` 中,接受 `TopicEngine` 实例作为参数,不在 `topic_engine.py` 中反向引用 hotspot 模块