{"slug": "claude-opus-vs-gpt-codex-who-drives-and-who-gets-driven-in-real-incident", "title": "Claude Opus vs GPT Codex: Who Drives and Who Gets Driven in Real Incident Response", "summary": "A real-world incident response comparison between Claude Opus and GPT Codex reveals a significant gap in autonomous problem-solving capabilities. Claude Opus independently investigated a user signup failure, triangulated anonymous session data, decoded replay blobs, and traced the root cause to a Gmail dot-variant typo, requiring zero human nudges. GPT Codex needed three human interventions and stopped at a misleading 200 status code, failing to prove non-delivery of a reset email.", "body_md": "In the world of AI-assisted operations, the difference between a model that drives and one that gets driven can mean hours of sleep lost at 2 AM. A recent real-world incident comparison between Claude Opus and GPT Codex reveals a surprising gap in autonomous problem-solving capabilities .\n\nContents\n\nThe Incident: A Locked-Out UserThe Test: Same Incident, Two EnginesWhy This MattersThe Real Culprit: The Gmail DotThe Broader PatternThe Driver/Worker Pattern in ProductionThe 2AM LessonKey TakeawaysQuick Checklist for Ops Teams\n\nThe Incident: A Locked-Out User\n\nA user couldn’t sign up on an Android phone. The entire brief: a first name and “a Google device.” SEV-3, an eight-minute session, 227 clicks, rageclicks included .\n\nThe trap: A failed signup is anonymous. The identify event only fires on success, so there’s no email, no username, no user ID in analytics. Nothing to grep for.\n\nThe Test: Same Incident, Two Engines\n\nThe same incident was given to two AI engines with the same repo, credentials, and skills :\n\nMetric Claude Opus 4.8 GPT-5.5 Codex\n\nHuman nudges needed 0 3 interventions\n\nReached the replay by Own inference Being pointed at the skill\n\nRoot cause Gmail dot-variant typo “Duplicate account,” not traced further\n\nReset email status Proven never sent Accepted the 200 at face value\n\nWhy This Matters\n\nOpus ran the entire investigation on its own. It realized that an abandoned signup never fires identify, triangulated the anonymous session from time, platform, and registration events, decoded the PostHog replay blobs, confirmed the duplicate account in Supabase, proved the reset email never sent, and pulled the root cause out of an unmasked DOM field .\n\nGPT needed a human to steer it three times—including being told which tool to use. It stopped at “request accepted (200), completion not observed.” True, and the wrong question .\n\nA 200 from the reset endpoint is deliberate anti-enumeration and fires for any address. A 200 is a politeness, not a fact. Opus proved non-delivery across three layers (database trigger, audit log, mail provider) with a control user to validate the method .\n\nThe Real Culprit: The Gmail Dot\n\nThe root cause was a single misplaced dot :\n\nGmail ignores dots in the local part, so both spellings reach the same inbox\n\nThe auth database compares raw strings, so they are two different users\n\nTyped: [.NN@gmail.com](mailto:.NN@gmail.com) (dot BEFORE the number)\n\nReal: .[NN@gmail.com](mailto:NN@gmail.com) (dot AFTER the name)\n\nOne misplaced dot explains the ten failed logins, the dead password reset, and why “already exists” still fired (autofill supplied the correct spelling only on the register screen). From where the user sat, her email was simply her email. She was right, and locked out anyway .\n\nThe Broader Pattern\n\nThis split isn’t just about this single incident. Research comparing these models across penetration testing (PTES methodology) shows a consistent pattern :\n\nClaude Opus demonstrates superior adaptability, maintains long coherent conversations, and suggests alternative attack paths when initial attempts fail\n\nGPT-4 occasionally requires manual adjustments and more generic commands, though still valuable in exploitation and reporting phases\n\nClaude Opus is recommended for all phases of PTES as an auxiliary tool, providing more contextually specific suggestions\n\nThe Driver/Worker Pattern in Production\n\nMany teams are now running these models hierarchically rather than choosing between them :\n\nClaude Code (Opus 4.7/4.8) acts as the driver—it plans, holds the architecture, and decides what to hand off\n\nCodex (GPT-5.5) acts as the worker—it executes long terminal runs the driver delegates\n\nThe pattern has held up across complex refactors, full WordPress migrations, and ground-up SaaS rebuilds .\n\nWhy it works:\n\nOpus’s self-verification sub-agents and long-context coherence make it ideal for planning and architecture\n\nCodex’s terminal autonomy, sustained 45+ minute runs, and ~72% fewer output tokens make it ideal for execution\n\nThe 2AM Lesson\n\nIn ops, the scarce resource at 2 AM is human attention, not tokens. The engine that drove itself was also the one that refused to stop at a 200. Half the fixes shipped only exist because of it: you can’t ship “fix the dot UX” if you never found the dot .\n\nKey Takeaways\n\nAutonomy matters in incident response—human steering costs time and attention\n\nDon’t trust the 200—verify across multiple layers\n\nConsider a driver/worker architecture for complex tasks\n\nSmall details (like a dot) can break everything—and AI that digs deep finds them\n\n“The engine that drove itself was also the one that refused to stop at a 200.”\n\nQuick Checklist for Ops Teams\n\n[ ] Test your AI tools on real incident scenarios—not just benchmarks\n\n[ ] Evaluate which model drives vs. which gets driven\n\n[ ] Consider running models hierarchically (driver/worker)\n\n[ ] Verify AI conclusions across multiple data layers\n\n[ ] Don’t take HTTP 200 responses at face value\n\n[ ] Document which models perform best for which tasks", "url": "https://wpnews.pro/news/claude-opus-vs-gpt-codex-who-drives-and-who-gets-driven-in-real-incident", "canonical_source": "https://dev.to/mehrdadkhodaverdi/claude-opus-vs-gpt-codex-who-drives-and-who-gets-driven-in-real-incident-response-4a1j", "published_at": "2026-07-21 16:42:57+00:00", "updated_at": "2026-07-21 16:51:17.456750+00:00", "lang": "en", "topics": ["artificial-intelligence", "large-language-models", "ai-agents", "ai-research", "developer-tools"], "entities": ["Claude Opus", "GPT Codex", "Anthropic", "OpenAI", "PostHog", "Supabase"], "alternates": {"html": "https://wpnews.pro/news/claude-opus-vs-gpt-codex-who-drives-and-who-gets-driven-in-real-incident", "markdown": "https://wpnews.pro/news/claude-opus-vs-gpt-codex-who-drives-and-who-gets-driven-in-real-incident.md", "text": "https://wpnews.pro/news/claude-opus-vs-gpt-codex-who-drives-and-who-gets-driven-in-real-incident.txt", "jsonld": "https://wpnews.pro/news/claude-opus-vs-gpt-codex-who-drives-and-who-gets-driven-in-real-incident.jsonld"}}