Make sure Feishu notification gets sent on 'main' branch push - #39
Make sure Feishu notification gets sent on 'main' branch push#39wilhelm-tiger wants to merge 1 commit into
Conversation
📝 WalkthroughWalkthroughThe CI workflow’s ChangesCI notification flow
Estimated code review effort: 1 (Trivial) | ~3 minutes Suggested reviewers: 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In @.github/workflows/ci-cd.yml:
- Line 64: Update the notify job’s needs configuration to depend on both test
and code-review, and adjust its condition to allow execution when code-review is
skipped while preserving notification after successful tests or completed
review.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: defaults
Review profile: CHILL
Plan: Pro Plus
Run ID: 38cab1de-ffd5-412a-9894-05c03b730d52
📒 Files selected for processing (1)
.github/workflows/ci-cd.yml
| notify: | ||
| needs: [test, code-review] | ||
| if: ${{ always() && needs.test.result == 'success' && (needs.code-review.result == 'success' || needs.code-review.result == 'skipped') }} | ||
| needs: [test] |
There was a problem hiding this comment.
🎯 Functional Correctness | 🟠 Major | ⚡ Quick win
🧩 Analysis chain
🏁 Script executed:
#!/bin/bash
set -euo pipefail
printf '\n== Files ==\n'
git ls-files .github/workflows/ci-cd.yml AGENTS.md
printf '\n== .github/workflows/ci-cd.yml (relevant lines) ==\n'
nl -ba .github/workflows/ci-cd.yml | sed -n '1,220p'
printf '\n== AGENTS.md (relevant lines) ==\n'
nl -ba AGENTS.md | sed -n '1,240p'Repository: Waybox-AI/roadtrip-skill
Length of output: 305
🏁 Script executed:
#!/bin/bash
set -euo pipefail
python3 - <<'PY'
from pathlib import Path
p = Path('.github/workflows/ci-cd.yml')
text = p.read_text()
for key in ['notify:', 'code-review:', 'needs:', 'if:']:
print(f'-- {key} occurrences --')
for i, line in enumerate(text.splitlines(), 1):
if key in line:
print(f'{i}: {line}')
PYRepository: Waybox-AI/roadtrip-skill
Length of output: 459
🏁 Script executed:
#!/bin/bash
set -euo pipefail
python3 - <<'PY'
from pathlib import Path
for name in ['.github/workflows/ci-cd.yml', 'AGENTS.md']:
p = Path(name)
print(f'## {name}')
if p.exists():
for i, line in enumerate(p.read_text().splitlines(), 1):
if 'notify' in line or 'code-review' in line or 'needs:' in line or 'if:' in line or 'feishu' in line.lower():
print(f'{i}: {line}')
else:
print('MISSING')
PYRepository: Waybox-AI/roadtrip-skill
Length of output: 585
🏁 Script executed:
#!/bin/bash
set -euo pipefail
python3 - <<'PY'
from pathlib import Path
p = Path('.github/workflows/ci-cd.yml')
lines = p.read_text().splitlines()
for start, end in [(1, 120)]:
for i in range(start, min(end, len(lines)) + 1):
print(f"{i:>4}: {lines[i-1]}")
PYRepository: Waybox-AI/roadtrip-skill
Length of output: 2457
🏁 Script executed:
#!/bin/bash
set -euo pipefail
python3 - <<'PY'
from pathlib import Path
p = Path('.github/workflows/ci-cd.yml')
lines = p.read_text().splitlines()
for i in range(35, 76):
if i <= len(lines):
print(f"{i:>4}: {lines[i-1]}")
PYRepository: Waybox-AI/roadtrip-skill
Length of output: 1467
🏁 Script executed:
#!/bin/bash
set -euo pipefail
python3 - <<'PY'
from pathlib import Path
p = Path('.github/workflows/ci-cd.yml')
print(p.read_text())
PYRepository: Waybox-AI/roadtrip-skill
Length of output: 2044
Keep notify waiting on code-review
needs: [test] lets notify start as soon as tests pass, even while code-review is still running or has failed. Add code-review back to needs and allow the skipped case so push builds still notify:
Suggested change
- needs: [test]
+ needs: [test, code-review]
+ if: ${{ always() && needs.test.result == 'success' && (needs.code-review.result == 'success' || needs.code-review.result == 'skipped') }}This keeps the tests → PR-agent review → Feishu notification order intact.
📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| needs: [test] | |
| needs: [test, code-review] | |
| if: ${{ always() && needs.test.result == 'success' && (needs.code-review.result == 'success' || needs.code-review.result == 'skipped') }} |
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In @.github/workflows/ci-cd.yml at line 64, Update the notify job’s needs
configuration to depend on both test and code-review, and adjust its condition
to allow execution when code-review is skipped while preserving notification
after successful tests or completed review.
Source: MCP tools
Summary by CodeRabbit