DEVOPS
Fail GitLab MR when Vercel preview regresses Lighthouse vs production baseline
Compares the Vercel preview's Lighthouse scores against the current production deployment's scores and blocks the GitLab MR only when a category drops more than the allowed delta.
How it runs
The automated pipeline, trigger to output.
- TriggerVercel preview deployment readyVercel
- ActionLighthouse on preview URLShell
- ActionLighthouse on production URL (baseline)Shell
- LogicCompute per-category delta vs tolerance
- ActionFail GitLab MR on regressionGitLab
- OutputComment baseline-vs-preview diff on MRGitLab
What it does
Instead of fixed thresholds, this gate measures regression: it scores the preview, scores the live production URL as a baseline, and fails the MR only when a category falls by more than the configured tolerance. This avoids blocking branches that were already below an absolute floor before the change.
When to use it
Use it on mature apps where absolute thresholds are unrealistic but silent regressions are unacceptable. It answers "did this change make things worse?" rather than "is this perfect?"
How it works
- 1A Vercel deployment-ready webhook provides the preview URL and MR reference.
- 2A shell step runs Lighthouse against the preview URL.
- 3A second shell step runs Lighthouse against the production URL to establish the baseline.
- 4A logic branch computes per-category deltas and flags any drop beyond tolerance.
- 5If a regression is flagged, the GitLab MR pipeline is set to failed.
- 6A comment posts the baseline-vs-preview table with the deltas highlighted.
Set it up
What you configure once, before turning it on.
- 1Connect VercelDeploys, runtime logs, analytics.
- 2Connect ShellRun sandboxed commands inside the workspace.
- 3Connect GitLabRepos, MRs, pipelines, registry.
- 4Set each agent's modelWe leave models unset so you pick the tier — fast + cheap, or top-quality.
- 5Tune it to your dataEdit the prompts, filters, and field mappings so it matches how your team works.
- 6Test, then turn it onRun once against a sample, confirm the output, then enable the trigger.
More DevOps workflows
Slack-approved pause for idle Hugging Face Spaces
On a daily scan it finds idle paid Spaces and posts an interactive Slack approval; on approve it pauses the Space and logs the decision to a GitHub issue audit trail.
Block costly Hugging Face Space hardware upgrades in PR review
When a pull request changes a Space's hardware config, it estimates the new monthly cost and posts a GitHub PR comment that flags upgrades crossing a budget ceiling.
Hugging Face Spaces idle-runtime sweep with auto-pause
On a schedule, scans all Hugging Face Spaces for ones running idle past a threshold, pauses them to stop billing, and posts a Slack summary with the estimated monthly savings.
Open a Zoom war-room from a Datadog multi-alert storm
When a Datadog monitor crosses a critical threshold, this workflow dedupes against active incidents, and only for a genuinely new outage it creates a Zoom bridge.
Auto-spin a Zoom war-room when PagerDuty hits SEV-1
When a PagerDuty incident escalates to a critical severity, this workflow creates a dedicated Zoom meeting and posts the bridge link to the incident's Slack channel so responders…
Spin up a war-room on demand from a Slack slash command
When an engineer runs a Slack command, this workflow creates a Zoom bridge, opens a tracking Sentry-linked incident, files a Linear issue for follow-up.
Run it inside a business
This workflow drops into a full company template. Import the org, and this is one of the playbooks its agents run.

Run this workflow in your colony.
14-day trial. No DevOps. No Sales call. Provisioned in under a minute.
