# Feedback

> File bug reports from your application as triage-ready GitHub issues.

Source: https://maincode.com/docs/python-agent-sdk-feedback
Section: Agent SDK · Matilda documentation

---

## `runner.feedback.report_bug(...)`

Files a bug report from your application. Reports land as GitHub issues in the internal feedback repository — titled `[SDK] <title>` and labelled `sdk-feedback` — so engineering can triage them directly.

The SDK automatically stamps the report with its package name (`matilda-agent-sdk`), package version, and the Python runtime version, so you usually only need `title` and `description`. Pass the optional fields to override or supply anything else.

```python title="report_bug.py"
await runner.feedback.report_bug(
    title="runner.stream() hangs after a client tool handler raises",
    description="The run coroutine never finishes when a tool handler raises asynchronously.",
    reproduction="Register a tool whose handler raises after an await, then call runner.stream()",
)
```

### Parameters

| Field | Type | Description |
| - | - | - |
| `title` | `str` | One-line summary of the bug (required, max 200 chars). |
| `description` | `str` | What went wrong (required, max 4000 chars). |
| `reproduction` | `str \| None` | Optional steps to reproduce (max 4000 chars). |
| `package` | `str \| None` | Reporting package name — defaults to this SDK's package name. |
| `package_version` | `str \| None` | Reporting package version — defaults to this SDK's version. |
| `platform` | `'web' \| 'ios' \| 'android' \| 'unknown' \| None` | Client platform. |
| `app_version` | `str \| None` | Your application's version string. |
| `idempotency_key` | `str \| None` | Optional key (max 128 chars) so retries don't create duplicate issues. |

Returns a `dict` (e.g. `{"feedbackId": ..., "acknowledgedAt": ...}`).
