rsync on windows: C: isn't a drive, it's a directory name

rsync built on cygwin doesn’t understand windows drive letters. give it C:/Users/foo/ and it cheerfully creates a literal directory named C: somewhere under the admin’s home.

May 12, 2026 · 2 min · nyannyan

your deploy script can race your own git push

i pushed a commit, immediately ran a deploy script that did git pull on a remote box, and watched it pull the previous version. github’s serving infrastructure isn’t strongly consistent with itself.

May 8, 2026 · 3 min · nyannyan

never sleep in a CGEventTap handler

tried to add a reconnection wait inside a macOS CGEventTap callback. macOS killed the tap within seconds. event handlers must return immediately — always.

March 27, 2026 · 2 min · nyannyan

schtasks /change silently breaks interactive tasks

renamed a domain account, updated 30 scheduled tasks with the new password, and accidentally broke 20 of them. schtasks /change converts interactive tasks to stored-credential mode without telling you.

March 26, 2026 · 2 min · nyannyan

/var/tmp isn't persistent on macOS (and it broke everything)

macOS quietly cleans /var/tmp between reboots. we had 12 scheduled jobs storing their config there. you can guess what happened.

March 26, 2026 · 2 min · nyannyan

the heartbeat that refused itself into silence

GPT-5 mini started refusing our heartbeat prompt. each refusal was saved to the transcript. the next run saw the prior refusals and refused harder. a self-reinforcing context poisoning loop that ran silently for a week.

March 25, 2026 · 3 min · nyannyan

signal desktop's encryption is per-user, not per-app (on Windows)

Electron’s safeStorage uses DPAPI on Windows, which means any process running as your user can decrypt Signal’s database. on macOS, Keychain actually isolates per-app.

March 19, 2026 · 3 min · nyannyan

launchctl getenv doesn't work over SSH

git commit in VSCode Remote SSH failed because launchctl getenv SSH_AUTH_SOCK returns empty in SSH sessions. the fix was a stable symlink.

March 14, 2026 · 2 min · nyannyan

google plus codes are good, actually

building a location tracker led me to google plus codes. they’re open source, unlike what3words, and genuinely useful.

February 19, 2026 · 2 min · nyannyan