Hacker News with Generative AI: Debugging

Differential Coverage for Debugging (swtch.com)
I have been debugging some code I did not write and was reminded of this technique.
Show HN: BugStalker - a modern Rust debugger (github.com/godzie44)
Writing a Linux Debugger (2017) (tartanllama.xyz)
Searching for the cause of hung tasks in the Linux kernel (cloudflare.com)
Depending on your configuration, the Linux kernel can produce a hung task warning message in its log.
Why Does My eBPF Program Work on One Kernel but Fail on Another? (ebpfchirp.substack.com)
In a perfect world, everyone’s systems would be fully updated, patched regularly, and running the latest kernel.
Kmemdump Proposed for the Linux Kernel to Help with Memory Dumping and Debugging (phoronix.com)
Eugen Hristev of Linaro sent out a "request for comments" patch series today proposing kmemdump for the Linux kernel as a new means to assist in debugging driver/system problems by making it easier to dump memory for specific areas/regions.
Show HN: An Useful MCP Server (github.com/snagasuri)
Deebo is an autonomous debugging system that works alongside AI coding agents (Claude, Cline, Cursor, etc.) using MCP to solve bugs. It runs parallel experiments in isolated Git branches and delivers validated fixes—no human intervention needed.
Show HN: A VS Code extension to visualise Rust logs in the context of your code (github.com/hyperdrive-eng)
🐞 A VS Code extension to recreate a debugger-like experience from logs
An Update on Pahole (lwn.net)
Pahole (originally "Poke-a-hole") is a Swiss Army knife for exploring and editing debug information.
I gave up on self-hosted Sentry (2024) (bugsink.com)
In the early 2010s, I was a big fan of Sentry. It was a great tool for tracking errors in web applications. At the time, I was making software for law firms, so sending error reports to a third-party service was out of the question, I needed to host it myself. So I did.
Show HN: Serverless MCP – Debug AWS serverless resources in your IDE (serverless.com)
Using Python's .__dict__ to Work with Attributes – Real Python (realpython.com)
Python’s .__dict__ is a special attribute in classes and instances that acts as a namespace, mapping attribute names to their corresponding values. You can use .__dict__ to inspect, modify, add, or delete attributes dynamically, which makes it a versatile tool for metaprogramming and debugging.
The case of the UI thread that hung in a kernel call (microsoft.com)
A customer asked for help with a longstanding but low-frequency hang that they have never been able to figure out.
AI isn't ready to replace human coders for debugging, researchers say (arstechnica.com)
Even when given access to tools, AI agents can't reliably debug software.
Debugging Nginx: why my SSL certificates don't apply after reload? (nathanaelbonfim.com)
Recently, an automation that creates new nginx hosts stopped working properly. The process would go through flawlessly, but when I tried to access the site, it redirected to another host. The same thing also occurred in certificate renewals. Only after a full nginx restart would the site work correctly.
Peering into the Linux Kernel with Trace (alexdowad.github.io)
Recently, I was working on a patch for a popular open-source project, and discovered that the test suite was failing intermittently.
AI models still struggle to debug software, Microsoft study shows (techcrunch.com)
A new study from Microsoft Research, Microsoft’s R&D division, reveals that models, including Anthropic’s Claude 3.7 Sonnet and OpenAI’s o3-mini, fail to debug many issues in a software development benchmark called SWE-bench Lite.
Pdeathsig is almost never what you want (recall.ai)
It was a fine Sunday evening. I had just landed in LA for our company offsite, and I met the whole team in person for the first time.
Diagnosing bugs preventing sleep on Windows (wordpress.com)
TL;DR: Diagnosing programs causing insomnia is quite straightforward on Windows.
Show HN: Await-Tree – Visualize Async Rust Task Execution in Real-Time (github.com/risingwavelabs)
await-tree allows developers to dump this execution tree at runtime, with the span of each Future annotated by instrument_await.
Debugging Lotus 1-2-3 by fax (jgc.org)
There isn't a lot to this story beyond the fact that in around 1990 I helped debug someone's Lotus 1-2-3 set up via fax. But it's a good reminder of how important the Zeroth Law of Debugging is (see below).
Bringing Record and Replay debugging everywhere on Linux (github.com/sidkshatriya)
I've modified the awesome rr debugger so that it can run without needing access to CPU Hardware Performance counters.
I made AI fix my bugs in production for 27 days straight – lessons learned (reddit.com)
For the past 27 days, I’ve had AI automatically fix my bugs in production, all the way to creating a full PR, and I wanted to share the results!
A Debugger is a REPL is a Debugger (matklad.github.io)
I love debuggers! The last time I used a debugger seriously was in 2017 or so, when I was still coding in Kotlin. I’ve since switched to working with native code, and, sadly gdb and lldb are of almost no help for me. This is because they are mere “debuggers”, but what I need is a REPL, and a debugger, all in one. In this article I show a more productive way to use debuggers as REPLS.
JEP Draft: JFR Method Timing and Tracing (openjdk.org)
Extend JDK Flight Recorder (JFR) to support bytecode-based method timing and tracing for quick and easy use.
War story: the hardest bug I ever debugged (clientserver.dev)
All of a sudden, without any ostensible cause, Google Docs was flooded with errors. How it took me 2 days and a coworker to solve the hardest bug I ever debugged.
The case of the critical section that let multiple threads enter a block of code (microsoft.com)
One of my colleagues in enterprise product support runs a weekly debug talk consisting of a walkthrough of a debug session.
Show HN: We made an MCP server so Cursor can debug Node.js on its own (npmjs.com)
An MCP server that gives Claude Code access to NodeJS at runtime to help you debug: mcp-nodejs-debugger.
When you deleted /lib on Linux while still connected via SSH (2022) (tinyhack.com)
Let’s first not talk about why this can happen, but deleting /lib, /usr/lib, or some other essential runtime files happens quite a lot (as you can see: here, here, here, and here). In this post, I will only discuss what happens when you delete /lib on Linux and how to recover from that.
Debugging with GDB (sourceware.org)
This file describes GDB, the GNU symbolic debugger.