From 36618db651485379a9f544d5ed37707e58190fce Mon Sep 17 00:00:00 2001 From: Weather Date: Wed, 18 Mar 2026 21:15:05 -0400 Subject: [PATCH 1/5] Deep Copy DM Template --- src/core/slack.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/core/slack.py b/src/core/slack.py index 54346e7..1df3583 100644 --- a/src/core/slack.py +++ b/src/core/slack.py @@ -1,4 +1,5 @@ import re +import copy from logging import getLogger, Logger @@ -68,7 +69,7 @@ async def request_upload_via_dm(user_id: str, announcement_text: str) -> None: logger.info("Requesting upload announcement permission!") try: - message: dict = SLACK_DM_TEMPLATE.copy() + message: dict = copy.deepcopy(SLACK_DM_TEMPLATE) message[0]["text"]["text"] += announcement_text message[1]["elements"][0]["value"] = str( From be2b411c655aed3a4ba68f54214b5c7a3ff66aea Mon Sep 17 00:00:00 2001 From: Weather Date: Thu, 19 Mar 2026 00:42:11 -0400 Subject: [PATCH 2/5] IT WILL WORK --- src/api/endpoints.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/api/endpoints.py b/src/api/endpoints.py index 0020cbe..07ae329 100644 --- a/src/api/endpoints.py +++ b/src/api/endpoints.py @@ -107,7 +107,7 @@ async def message_actions(payload: str = Form(...)) -> JSONResponse: if slack.convert_user_response_to_bool(form_json): logger.info("User approved the announcement!") - slack.add_announcement(form_json.get("value", {}).get("text", None)) + slack.add_announcement(form_json.get("actions", [])[0].get("text", None)) if response_url: await httpx.post( From 304d8951866bea91295af2d84fa00789abde1101 Mon Sep 17 00:00:00 2001 From: Weather Date: Thu, 19 Mar 2026 00:42:59 -0400 Subject: [PATCH 3/5] IT WILL WORK 2 --- src/api/endpoints.py | 2 +- src/core/slack.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/api/endpoints.py b/src/api/endpoints.py index 07ae329..7bfef29 100644 --- a/src/api/endpoints.py +++ b/src/api/endpoints.py @@ -107,7 +107,7 @@ async def message_actions(payload: str = Form(...)) -> JSONResponse: if slack.convert_user_response_to_bool(form_json): logger.info("User approved the announcement!") - slack.add_announcement(form_json.get("actions", [])[0].get("text", None)) + slack.add_announcement(form_json.get("actions", [{}])[0].get("text", None)) if response_url: await httpx.post( diff --git a/src/core/slack.py b/src/core/slack.py index 1df3583..6b7202b 100644 --- a/src/core/slack.py +++ b/src/core/slack.py @@ -101,7 +101,7 @@ def convert_user_response_to_bool(message_data: dict) -> bool: try: user_response = ( - message_data.get("actions", [])[0].get("action_id", "no_j") == "yes_j" + message_data.get("actions", [{}])[0].get("action_id", "no_j") == "yes_j" ) except Exception as e: logger.error(f"Failed to parse data: {e}") From bd0c036aaf68371359c5e32938209f920c6e2d48 Mon Sep 17 00:00:00 2001 From: Weather Date: Thu, 19 Mar 2026 00:42:11 -0400 Subject: [PATCH 4/5] IT WILL WORK --- src/api/endpoints.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/api/endpoints.py b/src/api/endpoints.py index 6762105..07ae329 100644 --- a/src/api/endpoints.py +++ b/src/api/endpoints.py @@ -107,7 +107,7 @@ async def message_actions(payload: str = Form(...)) -> JSONResponse: if slack.convert_user_response_to_bool(form_json): logger.info("User approved the announcement!") - slack.add_announcement(form_json.get("value", None)) + slack.add_announcement(form_json.get("actions", [])[0].get("text", None)) if response_url: await httpx.post( From 35dfa8da84f41a44a23217a3344b7908be7285d9 Mon Sep 17 00:00:00 2001 From: Weather Date: Thu, 19 Mar 2026 00:42:59 -0400 Subject: [PATCH 5/5] IT WILL WORK 2 --- src/api/endpoints.py | 2 +- src/core/slack.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/api/endpoints.py b/src/api/endpoints.py index 07ae329..7bfef29 100644 --- a/src/api/endpoints.py +++ b/src/api/endpoints.py @@ -107,7 +107,7 @@ async def message_actions(payload: str = Form(...)) -> JSONResponse: if slack.convert_user_response_to_bool(form_json): logger.info("User approved the announcement!") - slack.add_announcement(form_json.get("actions", [])[0].get("text", None)) + slack.add_announcement(form_json.get("actions", [{}])[0].get("text", None)) if response_url: await httpx.post( diff --git a/src/core/slack.py b/src/core/slack.py index 1df3583..6b7202b 100644 --- a/src/core/slack.py +++ b/src/core/slack.py @@ -101,7 +101,7 @@ def convert_user_response_to_bool(message_data: dict) -> bool: try: user_response = ( - message_data.get("actions", [])[0].get("action_id", "no_j") == "yes_j" + message_data.get("actions", [{}])[0].get("action_id", "no_j") == "yes_j" ) except Exception as e: logger.error(f"Failed to parse data: {e}")