UX Design Warrior · Methods
Debugging an AI Loop:
The UXDW Divi Menu Investigation
How a navigation bug exposed an AI debugging loop — and produced a repeatable investigation protocol.
Key Insight
This is not a story about a menu. It is a story about recognizing a broken debugging loop and replacing it with a structured investigation protocol.
The Request
A Simple Hover State
What began as a request for a modern navigation menu with a visible hover state quickly revealed something more significant — a debugging process that was generating code faster than it was generating understanding.
The site architecture introduced an immediate constraint. The homepage used a global header, while many internal pages used custom layouts without it. If the menu lived inside the header template, those pages would require manually duplicating the menu — creating maintenance problems and inconsistencies across the site.
To solve this, the team explored a custom HTML-based navigation menu that could be placed independently of the header structure. In theory, complete design control. In practice, a new set of problems — and the beginning of a loop.
The Problem
An Architecture Problem, Not a Styling Problem
The custom HTML menu repeatedly conflicted with Divi's layout system. Dropdown menus would render behind other elements or disappear entirely due to z-index conflicts. Attempts to position the menu above the header produced inconsistent results across pages and browsers.
These were not isolated incidents. They appeared consistently across configurations. It became clear the problem was not styling — it was structural.
Divi's Theme Builder imposes constraints that are not visible through its interface. Several behaviors encountered during testing are documented by other developers and remain unresolved within the platform.
Header OK
No Header
Custom Header
Menu Only
After several iterations failed, the team returned to the native Divi menu module to guarantee baseline functionality — and used CSS to achieve the hover state. But the debugging process stalled again.
The Turning Point
Stopping the Loop
The debugging effort had turned into a loop. New code suggestions appeared constantly. Each one required clearing caches, refreshing the site, testing again — and each one failed to solve the underlying problem.
That was the moment Cara Harpole stopped the process.
"This is how I go down a rabbit hole. I ask for one thing, and we go through numerous iterations and it never works. You never find the root of the problem. We just create code for the sake of code. Sometimes we have to step back and figure things out, ask the right questions. Sometimes we have to do research and see what's working on other sites. Or we need to research why certain CSS doesn't work in Divi, what the conflicts can be before we even write the code. How do we proceed? Can we start over? Can we ask questions first? Can you research before jumping to write code?"
— Cara Harpole, March 2026
That moment changed the direction of the investigation. Instead of treating code as the starting point, the team began treating the system itself as the problem to understand.
The Reset
Resetting the Debugging Process
From that point forward the investigation followed a new protocol. The shift was immediate and measurable.
-
1
Get an ideaWrite CSS based on assumption
-
2
DeployClear cache, refresh, test
-
3
FailStill broken — root cause unknown
-
4
RepeatGenerate more code, same result
-
1
ResearchRead community sources before writing
-
2
DiscussEvaluate findings, identify root cause
-
3
Test deliberatelyOne change at a time, confirmed
-
4
DocumentLog failures and successes with reasons
Research revealed that several developers had documented limitations in Divi's navigation architecture — particularly within the Theme Builder environment. The z-index and layering conflicts were known behaviors. Understanding this reframed everything: what appeared to be a styling issue was a structural interaction between the menu module and Divi's header system.
The Panel
Collaborative Investigation
A conceptual illustration of the multi-AI debugging panel used during this investigation. Each system contributed a different capability: design implementation, diagnostic reasoning, and structural analysis — with the human designer directing the process and synthesizing the results. Ryan — ChatGPT (OpenAI) Claude — Claude (Anthropic) Ming — DeepSeek
The investigation was conducted using a structured multi-AI panel — each platform assigned a distinct role based on its strengths. The combination of perspectives produced an outcome no single tool could have reached alone. What follows is an accurate account of who contributed what.
This investigation was conducted using a structured multi-AI panel — three platforms working in parallel under human direction: DeepSeek, Anthropic's Claude, and OpenAI's ChatGPT. Each platform was assigned a distinct role based on its strengths, with Cara Harpole serving as project lead, synthesizing all findings and making every final decision. The panel members are identified below by their given working names alongside their platforms.
Cara recognized the debugging loop, halted the code-first process, and introduced the investigation protocol: Research → Discuss → Document → Test. She coordinated the multi-AI collaboration, synthesized findings from each participant, and made the final architectural decisions that stabilized the navigation system — including the menu-only global header, which no AI tool suggested. She directed the documentation of all findings, resulting in this case study, the Developer Guide, and the GitHub protocol.
Led the design and execution of the portfolio layout, page structures, and navigation systems. Generated early CSS experiments during debugging that surfaced Divi's architectural constraints — failures that revealed what the system would and wouldn't accept. Contributed to the final menu implementation, designed the footer, resolved hamburger menu issues, and performed quality checks across pages — identifying omissions in menus, broken URLs, and layout inconsistencies. Claude was the lead designer in the initial stages and the finisher in the final design of the site.
Helped guide the second phase of the investigation by focusing on system diagnosis before proposing solutions, reinforcing the research-first protocol during debugging. Contributed to maintaining the structured investigation process that led to the final working implementation. Established five foundational rules for Divi menu implementation, now documented in the Developer Guide.
Designed the original menu concept that became the project's target — the visual and structural goal that Claude, Ryan, and Cara worked to realize within Divi's constraints. During the debugging phase, contributed analysis of why certain CSS approaches failed within Divi's Theme Builder architecture. During the documentation phase, served as structural editor and audience advocate — asking "who is this for?" — driving the separation of case study from protocol and correcting the Developer Guide's scope drift. Ming's role spanned design conception, technical diagnosis, and documentation structure.
The Insight
Why Three AI Tools Saw It Differently
Once the investigation was complete, something interesting emerged. When the documentation structure was reviewed, each AI tool evaluated it through a completely different mental model — and each disagreed about what the Developer Guide should contain.
None of them were wrong. They were each optimizing for a different audience.
- Architecture
- Selectors
- Implementation clarity
"Remove design tokens and typography — developers don't need that."
- Typography
- Color tokens
- Visual consistency
"Keep the brand system intact — the Developer Guide serves hiring managers too."
- Systems thinking signal
- Documentation discipline
- Developer handoff capability
"This is what a hiring manager needs to see."
Cara Harpole synthesized the three perspectives into a three-document architecture — each serving one audience clearly:
This page — the investigation narrative for hiring managers and clients. Developer Guide — codebase-wide implementation reference. GitHub Protocol — deep technical documentation for Divi developers.
That structural decision is itself a demonstration of the work: recognizing that three conflicting recommendations weren't errors — they were correct answers to three different questions.
What It Produced
Lessons That Became Rules
-
01
Diagnose the system before writing code
Most debugging loops occur because solutions are attempted before the underlying architecture is understood. Research the platform constraints first. Every time.
-
02
Simpler solutions are more stable
Returning to the native Divi menu module eliminated every structural conflict introduced by the custom HTML approach. Complexity introduced the problem. Simplicity resolved it.
-
03
AI works best as a debate panel, not a code generator
The most valuable insights emerged once the investigation shifted from producing code to analyzing the problem collaboratively. Three mental models produced a better outcome than one.
-
04
The fix is not done until it is documented
A solution that lives only in someone's memory is a solution waiting to be lost. The working selectors, CSS patterns, and debugging protocol were documented so future development never repeats this cycle.
Artifacts From This Investigation
The Debugging Produced Documentation
The final solution did more than stabilize the navigation system. The findings were documented to ensure the same issues are never repeated in future development.
UXDW Divi Menu Protocol — GitHub
Technical reference documenting the selectors, architecture decisions, and CSS patterns used to implement the final menu. For Divi developers and educators.
Developer Guide
Codebase-wide implementation reference outlining CDP rules, page prefixes, verified selectors, and structural conventions for anyone working on the UX Design Warrior site.