Slices show up as { ptr, len }, optionals are unreadable, and slice[0] just errors out. Python formatters help a bit but don’t fix expressions. zig-lldb fixes everything… if you’re willing to rebuild LLDB and maintain a fork.
zdb is a native LLDB plugin that sits in the middle:
Works with stock LLDB (Homebrew / system)
Native C++ type summaries (no Python)
Zig-style expressions work: slice[0], opt.?, err catch x
(lldb) p int_slice[0]
(int) $0 = 1
How? By calling LLDB’s internal APIs via versioned offset tables and rewriting expressions on the fly.
Limitations: no Variables View expansion (ABI issues with std::function). CLI debugging works great.
The problem is not that the code is AI generated, the problem is that it’s slop. Your blog post is slop, and the repo has a good dose of suboptimal choices and non sequiturs.
Zig communities exist so that those who take part to them can learn how to become better programmers. People reading your AI slop code will not learn good practices, and conversely mistakes in your code are not worth pointing out because your AI agent certainly won’t learn anything, and given that you can’t take a hint, chances are that you won’t learn anything either.