Debug your application with Elle

Aha! Builder

You own the applications you build in Aha! Builder — the code, the data, and the way they behave — so debugging is part of building. You do not need to know how to code to do it well. Elle can read every line of your application's code and much of what happens when it runs. Your role is to supply what Elle cannot see: what you expected to happen and what happened instead.

Elle generates responses automatically, and they might include inaccurate information. Please carefully review the results for errors. Aha! never uses your account data to train the AI model.

Click any of the following links to skip ahead:

Expect to iterate

The most important debugging skill is perseverance. Even with AI writing the code, a new page, workflow, or integration might not work perfectly on the first pass. Integrations with other systems nearly always take a few rounds of troubleshooting, because your application now depends on credentials, data, and behavior that live outside Aha! Builder.

Experienced engineers routinely work through many attempts before a fix lands. Plan for the same, and let Elle make each iteration easier.

  • Try again before you move on: A prompt that does not fix the problem has not ruled out the approach. Rephrase it, add detail, and try again.

  • Stop only when you have evidence: Move to a different technique when you are confident the current one makes no difference, or when you and Elle are going in circles.

  • Slow down between attempts: Wait for Elle to finish and for the preview to reload before you judge the result.

Top

Read the error message again

The error message or unexpected behavior in front of you probably already contains the answer. It is natural to skim an error the first time you see it. Read it a second and third time, slowly, and you will often find it describes the problem exactly.

  • Read the full message, not only the first line. Details like a field name, a file name, or a status code often point straight at the cause.

  • Copy the exact text into the Elle chat instead of paraphrasing it. "The page shows an error" gives Elle little to work with, and the actual message gives Elle a starting point.

  • Return to the original error when a fix does not work. Read it again with what you now know.

Top

Test your assumptions

When something does not work, the cause is often an assumption you are making. Your application runs the way its code says, not the way you believe it works. Start by writing down what you assume should be happening, then check whether each assumption is true.

If you find yourself thinking, "I know this part works and that part does not," test the part you trust. Is it actually working? Confirm it before you move on.

For example, suppose your application pulls customer records from another system and shows them on a dashboard. The dashboard is empty, so you assume the integration is broken and ask Elle to fix it. Elle reports that the request to the other system succeeds. Instead of asking Elle to fix the integration again, act on the new information: the data arrives, so the problem likely sits in how the page displays it. Tell Elle, "The request succeeds, but I cannot see the customer records on the dashboard."

Top

Describe the gap to Elle

Elle needs the difference between what you expected and what happened. "It is not working" does not include that information. The most common reason Elle does not fix a problem is that Elle cannot tell anything is wrong: the code runs without errors, so from Elle's side the feature looks complete. Elle cannot see your screen the way you do, and Elle's idea of "done" may not match yours.

Close that gap with specifics:

  • State what you expected: "When I click Save, I expect the new vendor to appear at the top of the Vendors list."

  • State what you see instead: "The form closes, but the list does not change until I reload the page."

  • Share a screenshot: Click the + icon in the Elle panel, select Upload files & images, and attach a screenshot. Elle interprets screenshots well but may not focus on the detail you care about, so point out the part that looks wrong.

  • Select the element: In the Preview, click Select elements and pick the component that misbehaves to focus Elle on it.

  • Report what remains: After each change, check the result and describe the gap that is left. Elle often makes a small improvement that looks complete from its side. If the improvement does not go far enough, say so, with specifics.

Repeat this loop as many times as it takes. Very often, it solves the problem.

Top

Ask Elle questions

You do not have to diagnose the problem yourself. Ask Elle what it knows, what it tested, and how you can confirm the result. A question often surfaces a mismatch faster than another request for a fix.

When you want to

Ask Elle

Understand the cause

"Why do you think this is not working?"

Learn what to rule out

"What is working correctly right now?"

Check Elle's work

"Tell me what you did to verify that it is working."

Test it yourself

"How can I verify that it is working? Tell me step by step how I can see the functionality."

Set your expectations

"What should I expect to see when this works?"

Understand before anything changes

"Explain what is causing this before you change any code."

Let Elle run a test

"Is there a way for you to test this yourself? Run the test and tell me what you find."

Ask Elle to test the parts it can reach. If you are building an integration, ask Elle to call the other system and report what comes back. Ask Elle to review your application's server logs to confirm whether a request succeeds.

Top

Narrow down the problem

Many problems have more than one cause, and the part that looks broken may not be the part that is broken. Data can fail to load and fail to display at the same time. Rule out the parts that work so you and Elle know where to focus.

  • Split the problem into parts: Check each link in the chain on its own. Does the data exist? Does the application fetch it? Does the page display it?

  • Tell Elle what you ruled out: "The records are in the database, and the request succeeds. The table on the Orders page is still empty." Every part you rule out narrows the search.

  • Change one thing at a time: Make a single change per prompt so you can tell which one helped.

  • Undo changes that make things worse: Roll back to an earlier version in code history, then try a different prompt.

Elle applies these divide-and-conquer techniques automatically. Your observations add facts that Elle cannot gather from the code alone.

Top

Use the debugging tools in Aha! Builder

Aha! Builder gives you several views into what your application does as it runs. You do not need to understand everything you see. Notice what looks off, and bring it to Elle.

Note: Prototypes do not include a server or database. In a prototype, the Server logs and Issues tabs do not appear, and the Database tab prompts you to convert the prototype to an application.

Let Elle fix detected issues

Aha! Builder detects crashes and runtime errors, then records them on the Issues tab at Operate -> Configuration -> Issues.

  • Open an issue on the Issues tab, then click Fix to have Elle work on it.

    • Click it once, then wait for Elle to finish. Clicking it again for the same problem starts a second request that competes with the first.

  • Click Analyze instead when you want Elle to explain the cause before Elle changes any code.

  • Wait for Elle to finish before you test again if your preview crashes while Elle is working.

    • Crashes are a normal part of development while the code changes. Reload the preview when Elle is done.

Run the latest code

Aha! Builder reloads your preview after Elle makes changes. If a fix does not seem to take effect, your preview may still show older code.

  • Click Refresh in the preview navigation bar, or reload the page in your browser.

  • Click Home to return to your application's homepage and start the workflow from the beginning.

Check the server logs

Navigate to Operate -> Configuration -> Server logs to see a record of requests, database queries, and errors. Look for a message that hints at the problem, then copy it into the Elle chat and point it out. You can also ask Elle to review the server logs, but you may spot something Elle skips over when Elle assumes that part works. Use the Preview and Production toggle to view each environment's logs.

Compare the database with what you see

Navigate to Operate -> Configuration -> Database and compare what the tables hold with what your application shows. A table may hold records that never appear on screen, or the screen may show data the table does not contain. You might see a name where a description belongs because the application reads the two fields in the wrong order. Describe the mismatch to Elle. You can also query your database in plain language to check specific records.

Top

Know when to ask for help

The techniques in this article resolve most application problems. When you have worked through them and are still stuck, you will have the exact information someone else needs to help you.

  • Something in Aha! Builder itself does not work as documented: Contact our Customer Success team.

  • Your application needs a developer's eye: Aha! Builder Scale customers can invite a developer for a two-hour session with a developer guest pass.

  • You are ready to share the details: Include the error message, what you expected, what you saw, and what you and Elle already tried.

Every problem you debug teaches you more about how your application works, and about how to work with Elle. Over time, you will spot mismatched assumptions sooner, describe gaps more precisely, and reach a fix in fewer rounds. Keep these prompting best practices close as you build.

Top

If you get stuck, please reach out to our Customer Success team. Our team is made up entirely of product experts and responds fast.

Feedback received!

Error submitting feedback, please try again later