This one started with a very relatable moment from @Darryl Lee :
Rovo gave me invalid JQL… and the JQL Assistant said it was wrong too.
Oof. We’ve all been there.

What happened here?
Darryl asked Rovo to:
- Analyze ticket history
- Split results into “Done” vs “Rejected”
- Generate JQL to support it
Rovo responded with… something that looked like JQL But:
- It didn’t parse
- It mixed incompatible operators
- And even the JQL Assistant struggled to recover it cleanly
Why this happens
Let’s clear up the core issue: Rovo can generate JQL… but it cannot validate it. More specifically:
- It does not run queries through Jira’s parser
- It does not use the JQL Assistant validation layer
- It does not fully understand your instance schema (fields, workflows, statuses)
So what does it do? It guesses based on patterns it has seen. That’s fine for simple queries… but breaks down quickly with:
- Status history logic (
CHANGED FROM, WAS, etc.)
- Complex conditions
- Filter chaining
- Edge cases in workflows
Why the AI button in Jira works better
This was the mic-drop moment by @Darryl Lee:
Use the AI button next to the JQL search box — it’s better.
And it is. Here’s why:
- It’s connected to Jira’s native query engine
- It understands your actual schema
- It validates queries before returning them
It’s not guessing. It’s grounded in your data model.
So where does Rovo still help?
Rovo is still useful—but in a different role:
✔ Explaining logic
✔ Translating requirements into plain language
✔ Helping you think through conditions
Example:
What logic would separate tickets that moved from Completed → Closed vs everything else?
Then you take that logic and: Build or refine the JQL using the Jira AI button or JQL Assistant
Current limitation (and a very reasonable ask)
This part of the thread nailed it:
If Rovo sees JQL… why not pass it through the JQL validator?
Honestly? That would solve a lot. A stronger future state would look like:
- Rovo generates JQL
- Then passes it through Jira’s validation layer
- Returns only valid, parseable queries
Right now, that connection isn’t there.
Champion takeaway
If you remember one thing:
Rovo = idea generator
Jira AI (search) = execution engine
Use them together, not interchangeably.
One practical workflow
- Ask Rovo:
- “Help me define the logic for…”
- Take that logic → Jira search
- Use:
- Validate and refine
Why this matters for adoption
This is a great example of something we see often. AI feels inconsistent when:
- It’s used outside its “zone of reliability”
- Or expected to integrate with systems it’s not connected to
The fix isn’t “stop using it”. It’s, use the right tool at the right layer