The addresses had no dates
A release token showed up in use from four machines in AWS that I couldn't account for. Two hours later it turned out to be my own runner fleet, and I'd fixed the real problem anyway.

A release token showed up in use from four machines in AWS that I couldn't account for. Two hours later it turned out to be my own runner fleet, and I'd fixed the real problem anyway.

Forty-two comments telling a checker to stand down. I went through them one at a time to see what each was actually asserting, and some of them were wrong.

I wrote my own OpenPGP packet code, then deleted the lot to prove I needed it. The reason I'd given turned out to be nonsense, and there was a better one waiting for me.

The busiest AI crawler on this blog nearly doubled in a month. Most of that wasn't the crawler at all, it was something hunting for .env files wearing its name.

Everything on AWS here runs on credentials that last minutes. Cloudflare I'd been clicking by hand, and bringing it in meant living with a long-lived secret and making it as small as I could.

One of them was from me, testing it. I'd still publish the key, and the reason isn't cryptographic.

Opening a public marketplace for agent workflows meant publishing an attack surface, and then having to defend it from my own convenience.

A secret scanner failed a merge request over a test key and a documentation PEM that the change did not contain. Scoping a scan properly.

The philosophical end of the signing series: a stolen key and a bought one produce the same signature, and trust has to survive both.

Generate an asymmetric RSA-4096 signing key inside AWS KMS with no export path, then sign releases by calling kms:Sign instead of holding the key.
