From 8e1e6f38c3757d18e253fdedd3ff403b75d33eea Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Wed, 3 Jun 2026 22:12:23 +0000 Subject: [PATCH 1/3] Initial plan From c01fbe6b4bd097d9c194fea5c23c9f66cb5104d4 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Wed, 3 Jun 2026 22:16:06 +0000 Subject: [PATCH 2/3] Reduce false positives in music update detection --- .github/workflows/music-social.yml | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/.github/workflows/music-social.yml b/.github/workflows/music-social.yml index d0efe8d1..650da943 100644 --- a/.github/workflows/music-social.yml +++ b/.github/workflows/music-social.yml @@ -53,7 +53,7 @@ jobs: ADDED=$(echo "$DIFF" | grep "^+" | grep -v "^+++" | sed 's/^+//' | head -50) # Extraire uniquement la section auto YouTube (source réelle des nouvelles entrées musicales) - MUSIC_LINK_PATTERN='https?://(www\.)?(youtube\.com|youtu\.be|soundcloud\.com|bandcamp\.com)' + MUSIC_LINK_PATTERN='https?://(www\.)?(youtube\.com/watch\?v=[^"[:space:]<]+|youtu\.be/[^"[:space:]<]+|soundcloud\.com/[^"[:space:]<]+|[^"[:space:]<]+\.bandcamp\.com/[^"[:space:]<]+)' NEW_MUSIC_BLOCK=$(git show "$TARGET_REF:music.html" | sed -n '//,//p') if [ "$BASE_REF" = "$EMPTY_TREE" ]; then OLD_MUSIC_BLOCK="" @@ -74,8 +74,14 @@ jobs: # Sauvegarder le diff dans un fichier temporaire pour l'issue echo "$ADDED" > /tmp/music_changes.txt - # Détecter une vraie nouveauté musicale (nouveaux liens de contenu dans le bloc auto YouTube) - if echo "$MUSIC_BLOCK_ADDED" | grep -qiE "$MUSIC_LINK_PATTERN"; then + # Détecter une vraie nouveauté musicale (nouveaux liens de contenu par rapport à l'état précédent) + extract_music_links() { + echo "$1" | grep -oiE "$MUSIC_LINK_PATTERN" | sort -u + } + OLD_MUSIC_LINKS=$(extract_music_links "$OLD_MUSIC_BLOCK" || true) + NEW_MUSIC_LINKS=$(extract_music_links "$NEW_MUSIC_BLOCK" || true) + NEW_LINKS_ONLY=$(comm -13 <(echo "$OLD_MUSIC_LINKS") <(echo "$NEW_MUSIC_LINKS") || true) + if [ -n "$NEW_LINKS_ONLY" ]; then echo "has_music_content=true" >> "$GITHUB_OUTPUT" else echo "has_music_content=false" >> "$GITHUB_OUTPUT" From 2b6037d8c61750da37eda6b503d0b604b7496eec Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Wed, 3 Jun 2026 22:19:51 +0000 Subject: [PATCH 3/3] Fix music-social new content detection --- .github/workflows/music-social.yml | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/.github/workflows/music-social.yml b/.github/workflows/music-social.yml index 650da943..50d00533 100644 --- a/.github/workflows/music-social.yml +++ b/.github/workflows/music-social.yml @@ -53,7 +53,10 @@ jobs: ADDED=$(echo "$DIFF" | grep "^+" | grep -v "^+++" | sed 's/^+//' | head -50) # Extraire uniquement la section auto YouTube (source réelle des nouvelles entrées musicales) - MUSIC_LINK_PATTERN='https?://(www\.)?(youtube\.com/watch\?v=[^"[:space:]<]+|youtu\.be/[^"[:space:]<]+|soundcloud\.com/[^"[:space:]<]+|[^"[:space:]<]+\.bandcamp\.com/[^"[:space:]<]+)' + YOUTUBE_VIDEO_PATTERN='https?://(www\.)?(youtube\.com/watch\?v=[^"[:space:]<]+|youtube\.com/shorts/[^"[:space:]<]+|youtu\.be/[^"[:space:]<]+)' + SOUNDCLOUD_PATTERN='https?://(www\.)?soundcloud\.com/[^"[:space:]<]+' + BANDCAMP_PATTERN='https?://([^"[:space:]<]+\.)?bandcamp\.com/[^"[:space:]<]+' + MUSIC_LINK_PATTERN="$YOUTUBE_VIDEO_PATTERN|$SOUNDCLOUD_PATTERN|$BANDCAMP_PATTERN" NEW_MUSIC_BLOCK=$(git show "$TARGET_REF:music.html" | sed -n '//,//p') if [ "$BASE_REF" = "$EMPTY_TREE" ]; then OLD_MUSIC_BLOCK="" @@ -76,11 +79,13 @@ jobs: # Détecter une vraie nouveauté musicale (nouveaux liens de contenu par rapport à l'état précédent) extract_music_links() { - echo "$1" | grep -oiE "$MUSIC_LINK_PATTERN" | sort -u + echo "$1" | grep -oiE "$MUSIC_LINK_PATTERN" | LC_ALL=C sort -u } - OLD_MUSIC_LINKS=$(extract_music_links "$OLD_MUSIC_BLOCK" || true) - NEW_MUSIC_LINKS=$(extract_music_links "$NEW_MUSIC_BLOCK" || true) - NEW_LINKS_ONLY=$(comm -13 <(echo "$OLD_MUSIC_LINKS") <(echo "$NEW_MUSIC_LINKS") || true) + if extract_music_links "$NEW_MUSIC_BLOCK" | grep -q .; then + NEW_LINKS_ONLY=$(LC_ALL=C comm -13 <(extract_music_links "$OLD_MUSIC_BLOCK") <(extract_music_links "$NEW_MUSIC_BLOCK") || true) + else + NEW_LINKS_ONLY="" + fi if [ -n "$NEW_LINKS_ONLY" ]; then echo "has_music_content=true" >> "$GITHUB_OUTPUT" else