Tag
Debugging
Every article tagged Debugging across the Atmosphere.
38articles
Articles
Publications
A
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.tiltools
A
three nested fatal asserts in deep rock galactic
fixed the modded deep rock galactic crashes that have plagued the game for years - the ones where you can't rejoin a mission after dropping. ghidra + bitfix turned a 'known annoyance' into an evening fix, once we got past the first crash and found the second one waiting underneath.debuggingtools
A
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.tilautomation
A
exchange ate the envelope and left no crumbs
BCC emails arrive with empty To: headers. Exchange strips the SMTP envelope before delivery. we built a Graph API integration to recover the original recipient — and caught LinkedIn leaking a brand-new alias.debuggingautomation
A
56 emails, one rate limit, and seven ghosts
a full-archive RSS feed hit Azure's rate limit on email #57. fourteen days later, seven ghost emails resurfaced. the sendmail.log told the whole story.debuggingautomation
A
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.debuggingtil
A
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.debugginghomelab
A
/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.debuggingautomation
A
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.debuggingtil
A
the webhook server that restarted every 3 seconds for five weeks
a Home Assistant voice webhook server was crash-looping every 3 seconds since February. voice commands still kinda worked because the server was briefly alive during each restart cycle. the root cause was a single missing `await`.debugginghome-assistant
A
your epub is an nginx error page
calibre couldn't update metadata on two ebooks. one had its files in the wrong directory. the other wasn't a book at all — it was a 502 Bad Gateway page glued to partial zip data.debuggingtools
A
three layers of silence: when monitoring fails to monitor itself
discord feeds hadn't posted in 5 days. the health check that should have caught it passed silently. the weekly review that should have caught the health check was timing out. a cascading failure in three acts.debuggingautomation
A
taming Windows display switching with the CCD API
MultiMonitorTool broke on Windows 11 24H2. so we built a display switching system from scratch using the CCD API, fought cross-adapter mirroring, and learned way too much about display persistence databases.homelabdebugging
A
PowerShell swallows your exit codes (and buffers your output)
A cargo build over SSH reported failure despite succeeding. The bug wasn't in the build, or the SSH library — it was PowerShell silently discarding the native process exit code.debuggingwindows
A
every windows SSH agent is broken, so we built one
Bitwarden's SSH agent freezes under load. Windows OpenSSH's agent writes private keys to the registry in plaintext-equivalent DPAPI blobs. no standalone memory-only agent exists for Windows. so we built ephemeral-agent in Go.toolsdebugging
A
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.debuggingmacos
A
four wrong answers and a test tone
desktop audio kept turning to static. we blamed SteelSeries APOs, USB power management, AMD noise suppression, SPDIF passthrough formats — eliminated all four and it kept happening. the fix is clicking 'Test' in the sound control panel. we have rewritten this post three times.debuggingwindows
A
com.apple.provenance: the xattr you can't remove
macOS was SIGKILL-ing python .so files from homebrew. the code signatures looked fine. the real culprit was a kernel-managed extended attribute that silently survives sudo xattr -d.debuggingmacos
A
one cookbook, two CSS schemes
why two chapters of the Joy of Cooking were parsing as empty — the EPUB uses completely different CSS class names for parts 1-15 vs parts 16+.debuggingtools
A
forking lan-mouse because scroll inversion shouldn't be this hard
macOS natural scrolling + cross-platform KVM = inverted scroll on the client side. the fix existed as a PR. getting it to build was the adventure.toolsdebugging
A
suricata ate all the RAM and the router forgot how to route
load average 30, 96MB free RAM, 1.3GB in swap. the UniFi gateway was swap-thrashing so hard it couldn't serve its own web console.homelabdebugging
A
45 seconds of nothing
the web UI took 34 seconds to load. the server was fine. the network was fine. firefox was just... waiting.debuggingtools