diff --git a/dev/gitlab_classique.R b/dev/gitlab_classique.R
index bfb98f42cea725322ebdadaec9ef0b17d855d3f5..023964f0ebddb869a9c96b00e9dbcb75038b49af 100644
--- a/dev/gitlab_classique.R
+++ b/dev/gitlab_classique.R
@@ -129,10 +129,24 @@ get_gitlab_events <- function(base_url, project_id, private_token) {
   data <- data %>%
     mutate(
       project_name = as.character(project_id),
-      type = if_else((is.null(target_type) | target_type == "") | as.character(target_type) == "Issue" | as.character(action_name) == "joined", # remplecer par  |  as.ch(target-type)=="Issue"
-                     as.character(action_name),
-                     as.character(target_type)),
-      message = note.body,
+
+      type = case_when(
+        is.null(target_type) | target_type == "" ~ as.character(action_name),
+        as.character(action_name) == "joined" ~ as.character(action_name),
+        TRUE ~ as.character(target_type)
+      ),
+
+      message = case_when(
+        # Cas spécifique : MergeRequest avec action_name == "accepted"
+        as.character(target_type) == "MergeRequest" & as.character(action_name) == "accepted" ~ as.character(target_title),
+
+        # Cas général : autres MergeRequest ou WikiPage::Meta
+        as.character(target_type) %in% c("WikiPage::Meta") ~ as.character(target_title),
+
+        # Si ce n'est pas un cas spécial, garder note.body
+        TRUE ~ as.character(note.body)
+      ),
+
       updated_at = created_at,
       author = author.username
     ) %>%
diff --git a/dev/gitlab_forge.R b/dev/gitlab_forge.R
index 87158a13962e18fab81a3ccffb98583da5e7496c..6955bc672599be3377166a209c15c5f8de239ed7 100644
--- a/dev/gitlab_forge.R
+++ b/dev/gitlab_forge.R
@@ -170,13 +170,27 @@ get_gitlab_events <- function(base_url, project_id, private_token) {
   data <- data %>%
     mutate(
       project_name = as.character(project_id),
-      type = if_else((is.null(target_type) | target_type == "") | as.character(target_type) == "Issue" | as.character(action_name) == "joined", # remplecer par  |  as.ch(target-type)=="Issue"
-                     as.character(action_name),
-                     as.character(target_type)),
-      message = ifelse(as.character(target_type) == "WikiPage::Meta",as.character(target_title),as.character(note.body)),
+
+      type = case_when(
+        is.null(target_type) | target_type == "" ~ as.character(action_name),
+        as.character(action_name) == "joined" ~ as.character(action_name),
+        TRUE ~ as.character(target_type)
+      ),
+
+      message = case_when(
+        # Cas spécifique : MergeRequest avec action_name == "accepted"
+        as.character(target_type) == "MergeRequest" & as.character(action_name) == "accepted" ~ as.character(target_title),
+
+        # Cas général : autres MergeRequest ou WikiPage::Meta
+        as.character(target_type) %in% c("WikiPage::Meta") ~ as.character(target_title),
+
+        # Si ce n'est pas un cas spécial, garder note.body
+        TRUE ~ as.character(note.body)
+      ),
+
       updated_at = created_at,
       author = author.username
-    ) %>%
+    )%>%
     left_join(name_gitlab, by = c("project_name" = "id")) %>%
     mutate(project_name = name) %>%
     select(-name)