Find and track flaky CI jobs in GitHub Actions with OpenAI and Slack
Ready for 3.0What this workflow does
This AI workflow has 19 nodes and runs on a schedule (every day at 08:00) (plus 1 other trigger). Along the way it connects OpenAI Chat Model, Slack and GitHub.
How it runs
Trigger: On a schedule (every day at 08:00) (plus 1 other trigger).
- Settings (Edit Fields (Set)): sets 10 fields: owner, repo, workflow_name…
- Ask For The Recent Runs (HTTP Request): calls an HTTP API (GET)
- Pick The Runs Worth Reading (Code): runs custom JavaScript code
- Read The Jobs In Each Run (HTTP Request): calls an HTTP API (GET)
- Score Every Job (Code): runs custom JavaScript code
- Read What You Reported (Data table): get
- Only The New Or Worse (Code): runs custom JavaScript code
- Anything Random? (If): checks a condition and branches into true / false
- One Row Per Job (Code): runs custom JavaScript code
- Group The Failures (Basic LLM Chain): sends a prompt to an LLM, with model: Flake Reader
…plus 5 more steps. See the full node list below.
Services it uses
Before you upgrade to n8n 3.0
Nothing in this workflow is removed in n8n 3.0, so it should import and run after the upgrade.
Nodes used (12)
- Schedule Trigger
n8n-nodes-base.scheduleTrigger - Manual Trigger
n8n-nodes-base.manualTrigger - Edit Fields (Set)
n8n-nodes-base.set - HTTP Request
n8n-nodes-base.httpRequest - Code
n8n-nodes-base.code - Data table
n8n-nodes-base.dataTable - If
n8n-nodes-base.if - Basic LLM Chain
@n8n/n8n-nodes-langchain.chainLlm - OpenAI Chat Model
@n8n/n8n-nodes-langchain.lmChatOpenAi - Slack
n8n-nodes-base.slack - No Operation, do nothing
n8n-nodes-base.noOp - GitHub
n8n-nodes-base.github
From the author
Quick Overview This workflow runs daily (or on demand) to analyze GitHub Actions re-runs for a specific workflow and branch, identify flaky jobs by comparing pass/fail history across attempts, summarize likely causes with OpenAI, post a report to Slack, file…