I have a Rovo agent created to audit my team's artifacts based on documented guidelines available in Confluence. We use Epic, Stories, Tasks and subtasks to break down our work in the following hierarchy
Epic (Highest level information) --> Tasks & Stories (Granular breakdown of work captured by Epic) --> Subtasks (Further granular drill down)
Now, my Rovo agent pulls a list of all qualified Epics and for each one, it audits the epic and it child artifacts for documentation standards compliance
I have encountered the following issues recently when running this agent in a scheduled workflow which begins with a JQL for pull a list of qualified Epic:
* The agent fails to see artifact attribute values when I can see them in the UI. Examples: Dates for completion
* The agent seems to mix up assessment between two different.
All of this which my prompt to the agent in the automation flow is something like this -
You are running inside a Jira Automation rule. Treat this as a fresh, independent audit run.
Audit only this Jira epic:
Epic key: {{issue.key}}
Epic summary: {{issue.summary}}
Use the configured audit instructions.
You must not rely on memory, prior conversations, prior automation runs, assumptions about this project, or knowledge outside the allowed sources below.
Hello @Gaurav Sharman , good design already, and both symptoms are recognisable, so let me name them and then give you the shape that fixes both at once. I have built exactly this kind of audit agent, and these two failure modes are the ones everyone hits.
Symptom 1, the agent misses values you can see in the UI: it is not being handed the data. Inside an automation action, the agent gets whatever your prompt contains and whatever it can fetch through its own tools; a field you can see is not automatically a field the agent looked at. Also, an epic and its children are separate work items, so "audit this epic and its child artifacts" quietly asks the agent to discover the hierarchy itself, which is where inconsistency creeps in.
Symptom 2, the agent mixes two epics: state is bleeding between iterations. A JQL trigger runs a branch per epic, and instructions like "treat this as a fresh run" help less than they should, because the model still receives one long, similar prompt after another. The cure is not stronger wording, it is giving each iteration unambiguous, self-contained input.
The fix, one principle: let automation do the fetching and counting, let the agent do the judging.
Due date: {{issue.duedate}}, Fix versions: {{issue.fixVersions.name}}, plus your custom fields, and, for the children, a Lookup work items step (JQL: parent = {{issue.key}}) rendered into the prompt as a list with keys, summaries, and the fields you check. The agent then audits what is on the page in front of it and cannot "fail to see" a date, because the date is in the prompt.AUDIT RUN FOR {{issue.key}} ONLY, {{now}}), require the agent to echo the epic key in the first line of its output, and end the prompt with an explicit boundary: anything not listed above is out of scope. This is what actually prevents cross-epic mixing.One diagnostic before you change anything: on a "wrong" run, add a temporary action that comments the fully rendered prompt onto the epic. If the missing date is not in that comment, you have found the cause, and it is upstream of the agent.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.