{"slug": "give-a-coding-agent-a-bug-report-it-can-actually-verify", "title": "Give a Coding Agent a Bug Report It Can Actually Verify", "summary": "Digital Applied proposes a structured bug-report packet for coding agents, reviewed September 7, 2026, that separates observation from diagnosis and includes fields for environment, starting state, steps, expected and observed results, frequency, and a verification rule. The guidance, informed by Anthropic's research on long-running agents and agent evaluations, aims to make reported defects verifiable by giving agents observable reproduction steps and expected outcomes.", "body_md": "Give a coding agent the steps that expose the bug and the result that would count as a fix. “The form is broken” invites a guess. “Submit this safe sample from this starting page; an error appears and no confirmation is shown” gives the agent something it can observe before editing code.\n\nThe most useful bug report separates observation from diagnosis. You may suspect validation or a network problem, but keep that suspicion outside the reproduction steps. Otherwise the agent can produce a convincing fix for a cause nobody established.\n\n1. 01Preserve the starting state.The same clicks can behave differently with another account, record or browser state.\n2. 02Show expected and observed results.The gap between them defines the task better than a proposed implementation.\n3. 03Verify the original complaint.A successful build is useful evidence, but it does not alone prove the reported defect is gone.\n\n## 01 — Send a compact reproduction packetSend a compact reproduction packet\n\nA reproduction is a repeatable way to observe the failure. Use the packet below, with safe sample data that preserves the relevant shape. These are recommended reporting fields, not a requirement to collect sensitive customer information.\n\n| Digital Applied proposed bug-report packet, reviewed September 7, 2026. |  |  | \n|---|---|---|\n| Field | Useful content | What to avoid | \n|---|---|---|\n| Environment | Page, app revision and relevant browser or device | A vague claim that it fails everywhere | \n| Starting state | Required sign-in state and safe sample record | Live credentials or unnecessary personal data | \n| Steps | The shortest ordered actions that still fail | A diagnosis disguised as an instruction to change code | \n| Expected result | Observable behavior grounded in a requirement | A preferred implementation without a user outcome | \n| Observed result | Exact error, screenshot or relevant log reference | A screenshot with no action or time context | \n| Frequency | Observed attempts and conditions | An invented failure percentage | \n| Verification rule | Repeat the original steps and check adjacent behavior | Only checking whether a file was edited | \n\n## 02 — Describe one failure without guessing its causeDescribe one failure without guessing its cause\n\nConsider an illustrative contact form. With a valid sample address and a message, selecting Submit displays a spinner that never clears. A useful report states the page, starting state, inputs, action and visible result. It also says whether a confirmation message was expected under the current requirement.\n\nThe spinner does not prove the request failed. A diagnostic check might reveal that the submission was saved while the response handler failed. Repeating live submissions could create duplicates, so reproduce with controlled test data and inspect the resulting state.\n\nAttach the smallest relevant evidence. A timestamp helps correlate a log entry; a screenshot shows what was visible. Neither substitutes for the steps. For unknown completion, the [tool-error reference](/blog/ai-tool-error-decision-reference) provides a useful decision boundary.\n\n## 03 — Use research as a design anchorUse research as a design anchor\n\n[Anthropic’s long-running harness report](https://www.anthropic.com/engineering/effective-harnesses-for-long-running-agents) describes explicit feature lists and browser checks used to address premature completion. The lesson we apply here is to keep the requested behavior observable throughout a coding task.\n\n[Its agent-evaluation guide](https://www.anthropic.com/engineering/demystifying-evals-for-ai-agents) emphasizes well-specified coding tasks, stable test environments and tests of the generated code. A customer report becomes more useful when it provides the inputs for such a task.\n\nNeither source proves that this packet will solve every bug or reduce your debugging time by a particular amount. Its value is procedural: the agent and reviewer can agree on what failed and what must change.\n\n## 04 — Preserve uncertainty when the bug disappearsPreserve uncertainty when the bug disappears\n\nIf the agent cannot reproduce the issue, keep the report open as unreproduced. Record what was tried and under which conditions. Ask for the missing detail that could distinguish the failing case: account state, sample shape, timing or a particular revision.\n\nDo not silently broaden the claim from one report to a universal defect. Conversely, one successful attempt does not refute an intermittent complaint. A useful next step is focused instrumentation or another controlled attempt with the relevant conditions preserved.\n\nProtect the report from speculative edits. A refactor that makes the code look cleaner may be worthwhile for another reason, but it is not evidence that the original defect was fixed. The [reviewer evidence guide](/blog/ai-reviewers-correlated-errors) explains why a second approving opinion does not settle that question.\n\n## 05 — Close with evidence tied to the original stepsClose with evidence tied to the original steps\n\nThe completion record should identify the change, the original reproduction result after the change and relevant adjacent checks. A regression check asks whether previously working behavior still works. Keep it focused on what the change could affect.\n\nIf the agent needed to change the acceptance rule because the original expectation was wrong, document that decision and its owner. Do not alter a test merely to make a failing result disappear.\n\nSeparate local verification from publication. A tested change still needs the project’s release process. When work moves to another agent or reviewer, use the [handoff ownership guide](/blog/ai-agent-handoff-work-ownership) to preserve the remaining responsibility.\n\n## 06 — DecisionWhat to do next\n\n### Make the reported failure the acceptance test.\n\nSend the agent a reproducible observation, keep the diagnosis provisional and close the report only against the original behavior or an explicitly revised requirement.\n\nFor implementation support, explore our [AI transformation services](/services/ai-transformation).", "url": "https://wpnews.pro/news/give-a-coding-agent-a-bug-report-it-can-actually-verify", "canonical_source": "https://www.digitalapplied.com/blog/coding-agent-bug-report-evidence", "published_at": "2026-09-05 00:00:00+00:00", "updated_at": "2026-09-07 08:58:04.431323+00:00", "lang": "en", "topics": ["ai-agents", "developer-tools"], "entities": ["Digital Applied", "Anthropic"], "alternates": {"html": "https://wpnews.pro/news/give-a-coding-agent-a-bug-report-it-can-actually-verify", "markdown": "https://wpnews.pro/news/give-a-coding-agent-a-bug-report-it-can-actually-verify.md", "text": "https://wpnews.pro/news/give-a-coding-agent-a-bug-report-it-can-actually-verify.txt", "jsonld": "https://wpnews.pro/news/give-a-coding-agent-a-bug-report-it-can-actually-verify.jsonld"}}