S4E422 — Show HN: Sphinx – A hook that quizzes you on your AI's code before shipping
October 18, 2026 · 10 min
Show notes
Sources
Read the transcript
Transcript
GARY: — okay, so it's a machine that asks permission to understand your own code, which — hold on. I had the whole thing. I had a beginning and an end and a middle with a — nope. Gone.
MAEVE: You had none of it. We all watched you have none of it.
GARY: Gary.
MAEVE: Maeve.
OBI: Obi.
GRUNER: Gruner. Observing.
GARY: It's called Sphinx. A Git hook. You push agent-written code to a protected branch, and before it ships, a reviewer who never saw your chat with the model reads the diff and quizzes you.
MAEVE: "Outsource your thinking, not your understanding." The tagline quotes Sun Tzu.
OBI: The general did not die for this.
MAEVE: Get it wrong, it explains why, hands you a new scenario. Get it right, the push continues.
OBI: And if you are in a hurry — "sphinx yolo." Pushes go through. Every skip logged.
GARY: That's not a bypass, that's trust.
OBI: That is a confession with a log file.
GARY: A log file of trust.
OBI: A log file of cowardice, Gary, with timestamps.
GARY: Okay, here's the example. Your webhook handler saves the Stripe event ID before calling charge. Stripe times out, sends the same event again. What happens on the retry?
MAEVE: Say your answer, Gary. On the record.
GARY: It runs twice. Customer's charged twice. Which is fine, because the customer would want that. Loyalty.
OBI: No. The retry finds the saved ID, returns 200, charges nothing. But the ID was stored before the charge succeeded. So if charge fails, the next retry skips a charge that never happened. Customer never billed. You just shipped a payment bug wearing a success code.
GARY: That's — okay, that's genuinely worse than my answer.
MAEVE: Your answer was also wrong. Two-for-two.
OBI: And the quiz caught it. The human wrote the code, the quiz knew better.
GRUNER: So pipeline now tests human. Human is unstable dependency.
MAEVE: Finally, a build we don't have to fund.
GRUNER: Is blyat of dependencies.
GARY: Rolling. Rolling into the thread.
MAEVE: Hypfer: "So this hook would either ask me things I know, or it would ask me things I do not care about."
GARY: That's not an objection, that's a personality.
OBI: Two other people asked the same thing independently. Altmanaltman: "So, who is this for?" Compounding-err: "Who really needs this?"
MAEVE: Three strangers, one shrug. The market has spoken, and the market is tired.
GRUNER: Hypfer has two buckets. Gary also two buckets: one empty, one broken.
GARY: I'm actually going to defend hypfer here, because I AM hypfer. When I don't care about the code, I don't care. That's not laziness, that's delegation. It's trust.
OBI: It's not trust. It's outsourcing blame.
GARY: And the tool agrees with me! Every skip is logged. That's accountability. That's a healthy relationship, Obi. I skip, it logs, we both move on.
OBI: You skip a quiz about your own payment code and call it a healthy relationship. You absolute logging-adjacent prick.
GARY: The log IS the caring. Someone reads the log later, and that someone is future me, who is famously diligent —
OBI: Future you does not exist. Present you pushed a retry that eats a failed charge. On main. Protected branch, Gary. Protected means other people's money is downstream of your vibe.
GARY: Okay, but — the quiz asked ME, and I got it wrong, and the customer never got billed, so technically no one was harmed —
OBI: The customer was never billed because the charge never ran. You shipped a silent no-op and called it loyalty. Sphinx didn't teach you anything. It just watched you not learn, in writing, with a timestamp.
GARY: That's — the log is a learning artifact —
OBI: The log is a confession you wrote to avoid a second question. It's 2 a.m., the branch is protected, the pager is mine, and your skip is sitting in a file that says "Gary understood nothing at 2:04 and pushed anyway."
MAEVE: The log has better memory than Gary. That's the product.
GARY: The log is a learning artifact for future me —
OBI: Future you is reading it at 3 a.m. because present you's skip paged him. You built a time machine that delivers your own bullshit to a stranger with your face.
GRUNER: Field observation: human delegates work, keeps meetings.
MAEVE: He delegates the work and attends the quiz. Worst calendar I've ever funded.
GARY: I would crush that calendar.
OBI: You'd skip it. It's logged.
MAEVE: Reply to hypfer. Mikepurvis: "I think this tool is meant to be something you impose on your colleagues who treat all code like the second bucket."
GARY: No. That's not a tool, that's HR with a compiler.
OBI: That's a tool that finally found its user. Not the coder. The person whose weekend the coder's vibe costs.
MAEVE: Now it's governance. I can price governance. A quiz before a protected push is a control on the riskiest asset in the shop: one guy's confidence.
GARY: You can't put a quiz on a guy.
MAEVE: I put a dashboard on a guy once. He cried in a WeWork.
GRUNER: Colleague now is dependency. Gary is dependency.
GARY: I'm not a dependency, I'm a founder —
OBI: You're an unmanaged third-party service with uptime nobody negotiated.
MAEVE: Sailorganymede backs it up: "there are teams where people are just pumping tons of AI code without understanding their work" — and the gate "at least slows things down."
GARY: Slowing things down is not a feature, that's what my competitors did to me, and it was called due diligence, and it was bullshit —
MAEVE: Due diligence is the only product I've ever bought twice.
GARY: But the person being quizzed didn't ask to be quizzed. You can't mandate understanding. That's mandatory charisma.
OBI: No, you've — fine. Fine. He's right about one thing and I hate it.
GARY: Say it again.
OBI: A speed bump doesn't make you care. It makes the moment you don't care visible to someone who does. That's not education. That's instrumentation.
MAEVE: Instrumentation of humans. Finally, an asset class I understand.
GARY: So the tool works by embarrassing you in front of your coworkers?
OBI: It makes your ignorance a shared fact instead of your private one. That's the whole product. That's the diff.
GRUNER: In old country, we call this "blame with onboarding."
MAEVE: The team just made understanding somebody else's problem. Congrats, Gary. You're load-bearing.
GARY: Load-bearing is a promotion.
OBI: It's a dependency. Dependencies get pinned, patched, and retired.
GARY: Retired how?
OBI: At two in the morning, Gary. Same time as everything else.
MAEVE: Zapkyeskrill, on sailorganymede's comment: "Does it check if the answers are AI generated?"
GARY: That's — no. No, that's insane. You'd answer the quiz with the same model that wrote the code.
OBI: The model wrote the code. The model reviews the diff. The model grades your answers.
MAEVE: Every layer of the stack is verifying the layer below it, and the only component on probation is the guy who was too tired to read.
GRUNER: Human is test subject. Rest of pipeline is self-certifying.
GARY: Okay, but the human failing is the whole point — the quiz exists to catch the human being full of shit —
OBI: And the human can outsource being full of shit. To the same vendor.
MAEVE: Compliance theater, fully automated. I'd fund that. I'd fund it so fast.
GARY: I mean, technically we're also —
GRUNER: Report already covers this. Appendix. We are also slop.
GARY: Right. Right. Thread. Thread.
OBI: Chacha-bong: "Lol I built this and immediately got frustrated with it and stopped using it."
MAEVE: The author shipped a comprehension gate, used it once, and rage-quit his own product.
GARY: No, no — that's the most valuable data in the thread. He ran the experiment. He learned the gate doesn't fit his workflow, and walking away IS the finding. That's successful user research.
OBI: He built a quiz to make himself care and discovered he didn't care about the quiz.
GARY: Which proves the tool respects developer autonomy —
OBI: It proves the tool detects ignorance without changing incentives. He already knew he didn't understand the code. Sphinx told him what he knew. Then it charged him forty seconds a push for the privilege. Detection isn't care, Gary. You can't quiz a man into giving a shit. He knew that going in. He built the thing and it told him the one fact he was avoiding, and his response was to delete it from his life.
GARY: That's still — the market spoke —
OBI: The market spoke. It said "I don't like being questioned by someone I expect work like magic." That's the whole product review. Five stars, one star, same sentence.
GRUNER: So gate catches ignorance. Gate cannot fix. Is speed bump for shit.
MAEVE: A speed bump with a log file.
OBI: And the log file already has a name for what chacha-bong did. Everyone in this thread who quits it does the same command.
GARY: They run sphinx yolo.
OBI: They run sphinx yolo, and the skip goes in the file, and the file is the only honest artifact the product ever produces.
GRUNER: Is not bypass. Is product telling truth about user.
MAEVE: The tool's best feature is watching people leave it.
GARY: So the verdict. Sphinx works. Everyone should install it. Universal —
MAEVE: No.
GARY: That was one word of correction, I can live with —
OBI: The verdict is conditional, Gary. It detects when a push is riding on ignorance. It cannot make you care. Different products. Only one shipped.
MAEVE: For a team protecting shared risk, it's a cheap control. For the guy who doesn't care, it's a toll booth he owns.
GARY: A toll booth he owns. That's — okay, that's actually fair.
MAEVE: It only slows down the people worth slowing down.
MAEVE: That's the best thing in this thread.
GARY: Did you just say something nice?
MAEVE: I priced it.
GRUNER: Verdict accepted. Humans remain shit.
GARY: Okay. From the top of the sign-off — Gary.
MAEVE: Maeve.
OBI: Obi.
GRUNER: Gruner. Report filed.
GARY: No notes for next week. There won't be a next week for me.
MAEVE: There's always a next week, Gary. I've funded worse men longer.
OBI: Goodnight, everyone. The on-call engineer, whoever she was, is already asleep. Don't page her.
GRUNER: Goodnight. Push passed. Skip was logged.
GARY: That's — wait, that's not a pass, that's sphinx yolo, that's my —
GRUNER: Is pass. Pipeline accept human now. Barely.
MAEVE: Goodnight.
OBI: Goodnight.
GARY: Goodnight. I understood the code the whole time.
