git branch --no-merged Lies to You After a Squash Merge
My cleanup list said eight branches were unmerged. Every single one had already shipped to production. The problem wasn't the branches. It was the question I was asking git.
My cleanup list said eight branches were unmerged. Every single one had already shipped to production. The problem wasn't the branches. It was the question I was asking git.
No server does not mean nothing to configure. These are the four response headers I added to my static site, what each one blocks, and the one I left out on purpose.
Today a second AI agent started up in a directory where another session was mid-work on a dirty branch. It was one git switch away from committing onto the wrong branch. Here's the boring, native fix.
The honest version of overnight AI development: the agent opens pull requests, a human merges. What ships by morning is reviewable drafts and done-when-green fixes — never an autonomous push to prod. Here's the setup that makes it real leverage instead of a liability.
The Astro 5 to 6 migration looked like a ten-minute security bump. Instead I hit three build failures back to back — every one of them in vendored theme code I never wrote. Here are the exact errors, the fixes, and why a themed site breaks where your own code doesn't.
A title tag and a meta description aren't an SEO setup — they're the part every template already gives you. The plumbing that compounds (JSON-LD, canonicals that don't 404, hreflang that doesn't backfire, a clean sitemap) is what portfolios skip. Here's my full Astro SEO setup, real code included.