summaryrefslogtreecommitdiffstats
path: root/.github/scripts/tests/mute/fast_unmute_comments.py
blob: 5e9076480be93e8d1045f901ccf282086f9f494a (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
"""User-visible GitHub comments for the manual fast-unmute flow."""


def format_bullet_list(tests):
    return '\n'.join(f"- `{name}`" for name in sorted(set(tests)))


COMMENT_ENTER = """🚀 **Fast-unmute started**

{closer_mention_line}
**Status** → **Observation**

These tests will be monitored in CI for {window_days} days:

{tests_bullet_list}

**Two ways to get unmuted early**
- **Test was deleted** — no runs at all in the window → unmuted.
- **Test is stable** — at least {min_runs} clean runs in the window → unmuted.

If all tests meet the criteria before the deadline — **Status** → **Unmuted**.
If any test stays red — **Status** → **Muted** (the issue may reopen).

> ✋ No action needed — the bot will handle everything. Please don't edit `muted_ya.txt` manually.

🔗 [Workflow run]({workflow_run_url})
"""


COMMENT_SUCCESS = """✅ **Fast-unmute succeeded**

All tests on this issue went green in CI before the deadline.

**Status** → **Unmuted**. Label `manual-fast-unmute` removed.

🔗 [Workflow run]({workflow_run_url})
"""


COMMENT_PROGRESS = """📊 **Fast-unmute progress**

These tests are already unmuted in CI (removed from tracking):

{unmuted_bullets}

Other tests on this issue are still being monitored.

🔗 [Workflow run]({workflow_run_url})
"""


COMMENT_ABANDON_NOT_COMPLETED = """🛑 **Fast-unmute stopped**

Tracking was cancelled. **Status** → **Muted**.

🔗 [Workflow run]({workflow_run_url})
"""


COMMENT_TTL_INCOMPLETE = """❌ **Fast-unmute: deadline passed**

Not all tests went green within {ttl_days} days. Issue reopened, **Status** → **Muted**.

**Green** (already unmuted or will be shortly):
{graduated_bullets}

**Still red** (these caused the reopen):
{stuck_bullets}

**Other tests cleared in this run:**
{cleared_other_bullets}

🔗 [Workflow run]({workflow_run_url})
"""