diff --git a/.test.env b/.test.env index 953a105..38d5ab8 100644 --- a/.test.env +++ b/.test.env @@ -80,6 +80,7 @@ ROLE_ACADEMY_CWEE=1257697240949167235 ROLE_ACADEMY_CAPE=1318971191586979861 ROLE_ACADEMY_CJCA=1400475445455224902 ROLE_ACADEMY_CWPE=1466407288758599821 +ROLE_ACADEMY_COAE=1491875933756330015 ROLE_UNICTF2022=6148613121047893215 diff --git a/scripts/seed_dynamic_roles.py b/scripts/seed_dynamic_roles.py index 7f5d525..712ce2e 100644 --- a/scripts/seed_dynamic_roles.py +++ b/scripts/seed_dynamic_roles.py @@ -83,6 +83,10 @@ "cert_full_name": "HTB Certified Wi-Fi Pentesting Expert", "cert_integer_id": 8, }), + ("ACADEMY_COAE", RoleCategory.ACADEMY_CERT, "COAE", "Certified Offensive AI Expert", { + "cert_full_name": "HTB Certified Offensive AI Expert", + "cert_integer_id": 9, + }), ] # Joinable roles: multiple display names can share the same env var / discord_role_id. diff --git a/src/core/config.py b/src/core/config.py index 8c69337..5fe1dd2 100644 --- a/src/core/config.py +++ b/src/core/config.py @@ -141,6 +141,7 @@ class Roles(BaseSettings): ACADEMY_CAPE: Optional[int] = None ACADEMY_CJCA: Optional[int] = None ACADEMY_CWPE: Optional[int] = None + ACADEMY_COAE: Optional[int] = None # Joinable roles UNICTF2022: Optional[int] = None BIZCTF2022: Optional[int] = None diff --git a/src/services/role_manager.py b/src/services/role_manager.py index 3167d8f..33aa5f1 100644 --- a/src/services/role_manager.py +++ b/src/services/role_manager.py @@ -51,6 +51,7 @@ "ACADEMY_CAPE": (RoleCategory.ACADEMY_CERT, "CAPE"), "ACADEMY_CJCA": (RoleCategory.ACADEMY_CERT, "CJCA"), "ACADEMY_CWPE": (RoleCategory.ACADEMY_CERT, "CWPE"), + "ACADEMY_COAE": (RoleCategory.ACADEMY_CERT, "COAE"), }