From 7cdac10aace866f2461cf33e8c99d20a7f4d8bf1 Mon Sep 17 00:00:00 2001 From: mariarosaria Date: Thu, 26 Mar 2026 06:47:15 -0400 Subject: [PATCH 1/2] fall back to chat model if is not specified in redmine --- .../redmine_mailer_integration/redmine.py | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/src/interfaces/redmine_mailer_integration/redmine.py b/src/interfaces/redmine_mailer_integration/redmine.py index 49f17aa8..5e0d4c8d 100644 --- a/src/interfaces/redmine_mailer_integration/redmine.py +++ b/src/interfaces/redmine_mailer_integration/redmine.py @@ -42,8 +42,14 @@ def __init__(self): self.redmine_config = self.services_config.get("redmine_mailbox", {}) self.data_path = self.global_config["DATA_PATH"] + chat_app_config = self.services_config.get("chat_app", {}) + # agent - agent_class = self.redmine_config.get("agent_class") or self.redmine_config.get("pipeline", "CMSCompOpsAgent") + agent_class = (self.redmine_config.get("agent_class") + or self.redmine_config.get("pipeline") + or chat_app_config.get("agent_class") + or chat_app_config.get("pipeline", "CMSCompOpsAgent")) + agents_dir = Path( self.redmine_config.get("agents_dir") or self.services_config.get("chat_app", {}).get("agents_dir", "/root/archi/agents") @@ -52,8 +58,10 @@ def __init__(self): agent_spec = select_agent_spec(agents_dir) except AgentSpecError as exc: raise ValueError(f"Failed to load agent spec: {exc}") from exc - default_provider = self.redmine_config.get("default_provider") - default_model = self.redmine_config.get("default_model") + default_provider = (self.redmine_config.get("default_provider") + or chat_app_config.get("default_provider")) + default_model = (self.redmine_config.get("default_model") + or chat_app_config.get("default_model")) self.archi = archi( pipeline=agent_class, agent_spec=agent_spec, From d1d06ff72585aa9bfa7e61f3a1fd5588bd55c4b3 Mon Sep 17 00:00:00 2001 From: mariarosaria Date: Thu, 26 Mar 2026 06:52:53 -0400 Subject: [PATCH 2/2] avoid to overwrites the imported module --- src/bin/service_mailbox.py | 4 ++-- src/bin/service_redmine.py | 8 ++++---- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/bin/service_mailbox.py b/src/bin/service_mailbox.py index b82c7b77..1d5519a9 100755 --- a/src/bin/service_mailbox.py +++ b/src/bin/service_mailbox.py @@ -27,9 +27,9 @@ PostgresServiceFactory.set_instance(factory) mailbox_config = get_services_config().get("redmine_mailbox", {}) -redmine = redmine.Redmine('Redmine_Helpdesk_Mail') # this name tells redmine class to not initialize archi() class +redmine_instance = redmine.Redmine('Redmine_Helpdesk_Mail') # this name tells redmine class to not initialize archi() class while True: mail = mailbox.Mailbox(user = user, password = password) - mail.process_messages(redmine) + mail.process_messages(redmine_instance) time.sleep(int(mailbox_config["mailbox_update_time"])) diff --git a/src/bin/service_redmine.py b/src/bin/service_redmine.py index d47594de..43035485 100755 --- a/src/bin/service_redmine.py +++ b/src/bin/service_redmine.py @@ -25,10 +25,10 @@ PostgresServiceFactory.set_instance(factory) redmine_config = get_services_config().get("redmine_mailbox", {}) -redmine = redmine.Redmine('Redmine_Helpdesk') +redmine_instance = redmine.Redmine('Redmine_Helpdesk') while True: - redmine.load() - redmine.process_new_issues() - redmine.process_resolved_issues() + redmine_instance.load() + redmine_instance.process_new_issues() + redmine_instance.process_resolved_issues() time.sleep(int(redmine_config["redmine_update_time"]))