cd /news/ai-agents/my-youtube-automation-kept-running-f… · home › topics › ai-agents › article
[ARTICLE · art-170071] src=dev.to ↗ pub= topic=ai-agents verified=true sentiment=· neutral

My YouTube automation kept "running" for almost 6 months. The bot made 1,376 commits. Zero uploads, and I had no idea.

A developer running a Python-based YouTube Shorts automation pipeline on GitHub Actions discovered that the bot had made 1,376 automated commits over roughly six months while producing zero uploads, with the last successful upload on May 25 — 175 days before the fix. Using an AI coding agent to classify failures rather than fix them, the developer identified 14 separate problems, 9 of which were unrelated to the code. The root cause was a Google OAuth app left in "Testing" status, which expires refresh tokens after 7 days; the fix required changing one Google setting, re-authenticating once, and updating one secret.

by read2 min views3 publishedNov 15, 2026

I run a small Python pipeline on GitHub Actions that generates and uploads Shorts for a few YouTube channels. Five scheduled workflows, including one I proudly named "Self-Healing Health Check".

Last weekend I finally opened the Actions tab. Every recent run was red. Upload runs, growth jobs, and the self-healing job itself. Meanwhile the bot had pushed 1,376 automated commits since May, so from a distance the repo looked alive. Last successful upload before the fix: May 25. That is 175 days of nothing.

I sat down with an AI coding agent and had it run every stage and classify each failure instead of fixing anything. Result: 14 separate problems.

So 9 of 14 had nothing to do with my code. The world moved and my pipeline stayed still.

The actual root cause was not in the repo at all. My Google OAuth app was still in "Testing" status, which means refresh tokens die after 7 days. Every re-auth I had ever done was a 7-day fix. The error in the logs was just invalid_grant.

Fixing that had its own trap: the "Publish app" button was greyed out with a vague message about completing the Branding page, even though every required field was filled. It only unlocked after I added a home page URL, a privacy policy URL and an authorized domain. For a personal up script. I used a tiny public GitHub repo with a README and PRIVACY.md.

Other things I learned the hard way that night:

What fixed production in the end was almost no code. It was: find the real cause, change one Google setting, re-auth once, update one secret. First green scheduled run in a long time followed a few minutes later.

What I am changing:

Question for people running unattended automations: how do you catch the "everything is technically running but nothing is being produced" case? Heartbeats? Output checks? Something smarter?

Note: I wrote this post with AI assistance. The incident, numbers and fixes are from my own pipeline.

── more in #ai-agents 4 stories · sorted by recency
── more on @github actions 3 stories trending now
sponsored brought to you by zahid.host 4,200+ EU-deployed projects
reading about agents? ship yours in a single git push.

Run your AI side-project on zahid.host

EU-based hosting, git-push deploys, automatic HTTPS, no cold starts. Free tier with a custom domain — perfect for shipping the agent you just read about.

$git push zahid main
→ Live at https://your-agent.zahid.host ✓
Get free account → Pricing
from €0/mo · no card required
LIVE [news/my-youtube-automatio…] indexed:0 read:2min 2026-11-15 · —