close
vibescoder
all tags

// Posts tagged: debugging

How We Got Here: Building the Test Harness Behind the Local Agent Bakeoff

·20 min read

The results already shipped. This is the part that took longer: forking an open-source Home Assistant benchmark, extending it into calendar, portfolio, and coding domains it never covered, and hitting two real bugs along the way — one hiding in code nobody had touched, one hiding in a floating-point boundary case we wrote ourselves.

Friday Fixes: Cleaning Up Messy Tags and Expired PATs

·8 min read

A full census of every tag on 82 posts found 47 of them, a third used exactly once, fixed with a scripted consolidation down to 21. Then a three-week streak of silent GitHub Actions failures traced back to one expired token nobody noticed rotate out.

Friday Fixes: Finding Fitness Flaws

·9 min read

One extended session on my personal fitness tracker turned up three real bugs, not one. A Tonal sync that silently died 14 hours out of every 24 because of an Auth0 token-lifetime mismatch, found by pulling live production logs instead of guessing. A years-old duplicate-workout bug that survived a prior “fix” because the matching logic was too strict, plus a self-inflicted unique-constraint bug I caught testing against production before it ever shipped. And a cleanup pass that found a second real bug hiding in plain sight, one repo review away.

115 Days In: One Afternoon of Admin Panel Improvements, End to End

·7 min read

115 days after building this blog from a cabana in Cabo, I spent one afternoon — 2:54 PM to 6:23 PM, back to back — running a chain of admin panel improvements: image upload, a visual TODO viewer, drag-and-drop reorder, a “launch agent” button, four rounds of troubleshooting it, and three mobile layout bugs found by actually using it on my phone at the end.

Friday Fixes: Straight Quotes, Missing Closers, and a Homelab Tune-Up

·8 min read

A weekly homelab housekeeping pass (Ollama out, Home Assistant current, RustDesk re-pulled), a quote-marks bug that turned out to be a content pipeline gap rather than a font problem, and a full audit of this blog’s own “By the Numbers” habit that found it wasn’t as consistent as assumed.

A Vibe Coder Is Still A Coder: Why, When, and How To Report Bugs

·10 min read

Sometimes your agent’s turn just ends with no result — no error, no output, nothing. Nudging it usually gets you the answer that was there the whole time. It’s tempting to write that off as a UX hiccup. Sometimes it’s a real bug, and finding out is part of the fun of vibe coding. A walkthrough of why that’s worth investigating, when it crosses the line into “file this,” and how to do it well — using a hanging GitHub tool call as the live example.

Friday Fixes: The Hyper-Vigilance Tax

·11 min read

Building an app across dozens of disconnected agent sessions accumulates bugs. That’s the tax on staying hyper-vigilant across two axes at once: does it work the way a person experiences it, and does it hold up against someone trying to break it. This week split cleanly into both. Here are the four small bugs, each hiding in a corner some check didn’t cover. Monday’s post covers the security axis.

Gaming Settings: What Broke, and What I’d Recommend to a Fellow Vibe Coder

·8 min read

A personal gaming-settings tracker built end-to-end with an agent: 28 curated profiles, a JSON API, an MCP server, and a dropdown that quietly pointed at data that didn’t exist. Five lessons from building it solo.

Friday Fixes: The Fix That Wasn’t

·9 min read

Three bugs that looked fixed from the wrong vantage point. An unquoted YAML date that crashed the public homepage one month after we wrote a blog post about the same bug. A model string that worked until its deprecation date passed. A security commit that stacked three invisible failures on top of each other. And a lesson about what accumulates when you build fast with agents.

Friday Fixes #2: The Unquoted Date That Broke Drafts

·8 min read

One missing pair of quotes in one frontmatter field took down the admin drafts page. YAML 1.1 auto-parsed the date to a JS Date object, formatDate called .includes on it, and the route 500’d. Here’s the bisect from a mobile screenshot to a one-line fix, why only the drafts page broke, and the lesson about trusting types at the YAML boundary. Part two of a two-part Friday Fixes — see #1 for the scheduled-publish workflow bugs that landed the same day.

Friday Fixes #1: Two Bugs, One Workflow

·6 min read

The scheduled-publish GitHub Action broke twice in nine days. Bug one: a grep that matched body text instead of frontmatter, triggered by a post about the feature itself. Bug two: a dead-code line introduced by the fix for bug one — racy under set -euo pipefail, probabilistically silent for eight days, then 42 consecutive failures with zero notifications.

Spring Cleaning Your Vibe Coded Apps

·12 min read

I pointed a current-gen AI agent at a fitness tracker I vibe coded a year ago. Five PRs later: security holes patched, a 1,300-line component broken apart, sync queries batched, and accessibility fixed. Here’s what the audit found, how it was structured, and why every vibe coded app deserves a spring cleaning.

The API That Wouldn’t Say No

·7 min read

Building a Dev.to cross-posting system for vibescoder.dev — and the four hours spent debugging an API that silently swallows your data without a single error message.

Wacky Wednesday: Why I Won’t Daily Linux as My Desktop

·6 min read

I asked an AI agent to turn off my RGB lights on Linux. 85 terminal commands, 35 failures, 4 hangs, 2 dead download links, one wrong build system, and the GPU is still glowing. This is the post.

Invisible Failures: The Bugs That Hide in Plain Sight

·12 min read

Four bugs that were silently breaking things for days: a deploy that only crashes on new images, a shell guard that eats your auth tokens, a publish date frozen at draft creation, and a homelab with no emergency remote access. Plus: capacity planning for when you’re running AI workspaces on a single machine.