The Journey to General Availability

GA has always been one of those milestones we talked about. Something that sat in the distance while we were still figuring out what the product wanted to become. For the longest time, it never felt close. The engine was evolving, the ideas were shifting, and every few months we would learn something new that changed the direction again. But somewhere in these last few cycles, the conversations changed. The engine stopped feeling like a prototype. The results stopped surprising us. We reached a version that didn’t need us hovering behind the scenes to explain how things worked. That’s when GA actually started to feel real.

This release is not just “we’re live.” It’s the moment where the engine is finally strong enough for anyone to use without someone from our team sitting beside them. It’s the moment where the system can stand on its own, handle real apps and run flows the way they were described instead of the way a script was written. More than reaching a deadline, GA is a standard we’ve met.

How We Got Here

Looking back, the idea has changed more times than we can count. Quash started with a simple problem: capturing better bug reports. Our open-source SDK solved that well enough, but it also made something clear. Context alone doesn’t replace the work of testing. You still had to run the flows yourself.

From there, we moved to automation. We tried starting from code, assuming it would reveal the truth about how apps behave. It didn’t. Code tells you what was built, not what was intended and that gap pushed us to rethink the whole approach.

So we went closer to how QAs think, following the trail of use cases, PRDs and design flows. The early generators worked surprisingly well and even got copied, but it surfaced a bigger point: generation is only half the job. Real testing requires execution that adapts in real time.

That’s where things got difficult. Early execution attempts were brittle. Small UI shifts broke everything. Prompt-based runs helped, but without memory the system couldn’t move through a flow with any real awareness.

The turning point was building episodic memory and layering it with visual understanding and cognitive planning. That combination became Mahoraga—our execution engine that actually behaves like someone using the app, not a script following instructions.

It didn’t click all at once. We had plenty of days where a tiny detail derailed a long flow. But the moments where the engine completed a messy, unpredictable scenario exactly the way it was described… those were the ones that told us we were finally on the right track.

Ebook Preview

Get the Mobile Testing Playbook Used by 800+ QA Teams

Discover 50+ battle-tested strategies to catch critical bugs before production and ship 5-star apps faster.

100% Free. No spam. Unsubscribe anytime.

The Last Mile

If there’s one thing this last stretch taught us, it’s patience. The closer we got to something stable, the more the small things mattered. We had days where everything ran smoothly and days where a single odd device behavior forced us to rethink entire parts of the pipeline. Working with real devices in real conditions is humbling. Nothing is predictable. A flow that succeeds ten times can fail on the eleventh because a keyboard behaved differently or a transition took slightly longer.

But those swings shaped the rhythm that got us here: test, break, fix, repeat. Eventually the engine stopped needing handholding. We reached a point where we trusted it to handle long flows on its own. That’s when the idea of GA stopped feeling premature.

What GA Unlocks

GA means anyone can finally use the same version we use every day inside the team. You can sign up, connect a device or an emulator, describe the scenario, and watch the engine run it end to end. No scripts or locators. Everything begins with a prompt, and the engine handles the rest.

That simplicity has always been the goal. Not to hide complexity, but to make the act of testing feel natural again. For the first time, we’re confident that the system behaves consistently enough for the outside world to rely on it without friction.

Looking Ahead

GA is not the finish line. It’s the point where the product finally has enough depth and stability to open it up to everyone and see how it behaves in the real world. The next phase will be shaped as much by you as by us.

We’ve spent years getting the foundation right. Now it’s your chance to put it to work.