Operations · · 4 min read
An empty report can mean the query ran as the wrong person
How to tell a genuine empty result from missing access in an agent's scheduled report: check the identity, the scope, and the sources before trusting a zero.
The weekly blocker report says there are no overdue customer tasks. A manager opens the project board and sees several. The agent ran on schedule, but its query used a different identity and returned a different slice of the data. “No results” became “no problems” with no evidence behind it.
An Atlassian Community question describes a query that finds issues for the person testing it but differs under the automation actor. Report correctness includes who performs the read as well as the query text.
Define the report's intended population#
Before scheduling, state the accounts, projects, teams, statuses, and time period the report covers. Include exclusions that affect interpretation. “Open onboarding blockers for the enterprise team” is a population the owner can check, while “all relevant blockers” hides the scope in the agent's retrieval choices.
Say a report spans three customer regions. The interactive agent reads all three through the leader's access; the scheduled connection reads two. The report names the missing region and never presents the combined result as complete.
Choose the identity and connection deliberately. A team service connection works when it has the intended access and an owner. Check the report's business scope before widening permissions to fix a missing result.
Separate successful retrieval from business interpretation#
| Retrieval state | Permitted conclusion | Useful next action |
|---|---|---|
| Complete authorized read, zero matches | No matching items in the stated scope | Quiet result or expected empty report |
| Some sources unreadable | Report coverage is incomplete | Name the affected source and owner |
| Query depends on current user | Result varies by identity | Use the intended actor or explicit scope |
| Pagination incomplete | Count is not final | Finish retrieval before summarizing |
| Source data is older than required | Current condition is unknown | Refresh or label the stale portion |
A successful HTTP response or an empty array does not establish complete coverage. The report method checks the access errors, source failures, and pagination state the integration exposes before composing a confident narrative.
Keep a small set of known records in a controlled environment so the owner can confirm each intended region or project is included. Avoid a hard-coded production count, which changes and teaches people to ignore warnings.
Test under the scheduled identity#
Run the actual scheduled path, with its real authorized connection and configuration, because an interactive preview misses the difference that matters. Check a known included task, a known excluded task, and a deliberately unavailable source.
Also inspect queries that use phrases such as “mine,” “current user,” or “my team,” whose meaning changes when a human request becomes an unattended job. Replace them with explicit scope where the provider supports it, or document the identity dependency.
If a source becomes unavailable after the report has been working, keep the last reliable result as history and never reuse it silently as today's result. The recipient sees whether the report is current, partial, or unavailable, and which decision it affects.
Repair the cause of the empty result#
When a report is wrong, inspect identity, permissions, filters, pagination, and source freshness before changing the summary prompt. A correct query with the wrong actor needs connection ownership repaired; the wrong project needs the scope definition repaired. Keep the failure evidence as a test for future configuration changes.
Publish a correction when people decided from the inaccurate report, naming the affected population and revised finding. The business owner should know exactly which prior conclusion is no longer safe to use.
Give the report a stable definition and an owner who approves scope changes. When a new region or project joins the process, add it explicitly and verify inclusion before calling the report company-wide, since a correct report over an old population misleads without any query error. The agent carries the coverage description into its output so readers know which question the result answers.
Deixic tool connection guidance and action history show where to inspect the access and results of connected agent work. If your team uses its own agent, verify its unattended reading path.