Skip to content

Commit 4b636e7

Browse files
committed
refactor: restructure application initialization and component registration
1 parent c2c6f41 commit 4b636e7

File tree

3 files changed

+26
-22
lines changed

3 files changed

+26
-22
lines changed

data/workflows/test-group/test-workflow-new.yaml

Lines changed: 0 additions & 5 deletions
This file was deleted.

framework/workflow/core/dispatch/registry.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ def create_rule(self, rule_id: str, name: str, description: str, rule_type: str,
5454
config = rule_class.config_class(**rule_config)
5555

5656
# 创建规则实例
57-
rule = rule_class.from_config(config, workflow_builder)
57+
rule = rule_class.from_config(config, workflow_builder.build)
5858

5959
# 设置规则属性
6060
rule.rule_id = rule_id
@@ -152,7 +152,7 @@ def load_rules(self, rules_dir: Optional[str] = None):
152152
enabled=rule_data.get('enabled', True),
153153
metadata=rule_data.get('metadata', {})
154154
)
155-
self.logger.info(f"Loaded rule: {rule}")
155+
self.logger.debug(f"Loaded rule: {rule}")
156156
except Exception as e:
157157
self.logger.trace(e)
158158
self.logger.error(f"Failed to load rule in file {file_path}: {str(e)}")

main.py

Lines changed: 24 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -40,18 +40,6 @@ def _signal_handler(*args):
4040
def init_container() -> DependencyContainer:
4141
container = DependencyContainer()
4242
container.register(DependencyContainer, container)
43-
44-
# 注册工作流注册表
45-
workflow_registry = WorkflowRegistry(container)
46-
workflow_registry.load_workflows() # 加载自定义工作流
47-
register_system_workflows(workflow_registry) # 注册系统工作流
48-
container.register(WorkflowRegistry, workflow_registry)
49-
50-
# 注册调度规则注册表
51-
dispatch_registry = DispatchRuleRegistry(container)
52-
dispatch_registry.load_rules() # 加载调度规则
53-
container.register(DispatchRuleRegistry, dispatch_registry)
54-
5543
return container
5644

5745
def init_memory_system(container: DependencyContainer):
@@ -73,7 +61,7 @@ def init_memory_system(container: DependencyContainer):
7361
def main():
7462
loop = asyncio.new_event_loop()
7563

76-
logger.info("Starting application...")
64+
logger.info("Initializing application...")
7765

7866
# 配置文件路径
7967
config_path = "config.yaml"
@@ -92,11 +80,20 @@ def main():
9280

9381
container.register(asyncio.AbstractEventLoop, loop)
9482

83+
# 注册核心组件
9584
container.register(EventBus, EventBus())
96-
9785
container.register(GlobalConfig, config)
9886

87+
# 注册 BlockRegistry
9988
container.register(BlockRegistry, BlockRegistry())
89+
# 注册工作流注册表
90+
workflow_registry = WorkflowRegistry(container)
91+
container.register(WorkflowRegistry, workflow_registry)
92+
93+
# 注册调度规则注册表
94+
dispatch_registry = DispatchRuleRegistry(container)
95+
container.register(DispatchRuleRegistry, dispatch_registry)
96+
10097
container.register(IMRegistry, IMRegistry())
10198
container.register(LLMBackendRegistry, LLMBackendRegistry())
10299

@@ -126,15 +123,27 @@ def main():
126123
# 发现并加载外部插件
127124
logger.info("Discovering external plugins...")
128125
plugin_loader.discover_external_plugins()
129-
126+
130127
# 初始化插件
131128
logger.info("Loading plugins")
132129
plugin_loader.load_plugins()
133130

131+
# 加载用户配置相关
132+
workflow_registry.load_workflows() # 加载自定义工作流
133+
# 加载系统工作流
134+
register_system_workflows(workflow_registry)
135+
136+
# 加载调度规则
137+
dispatch_registry.load_rules()
138+
134139
# 加载模型后端配置
135140
logger.info("Loading LLMs")
136141
llm_manager.load_config()
137142

143+
# 加载完毕,开始启动
144+
145+
logger.info("Starting application...")
146+
138147
# 创建 IM 生命周期管理器
139148
logger.info("Starting adapters")
140149
im_manager.start_adapters(loop=loop)

0 commit comments

Comments
 (0)