[API reference](https://evolu.dev/docs/api-reference) › [@evolu/common](https://evolu.dev/docs/api-reference/common) › [Task](https://evolu.dev/docs/api-reference/common/Task) › ReportDefect

```ts
type ReportDefect = (reported: unknown) => void;
```

Defined in: [packages/common/src/Task.ts:2070](https://github.com/evoluhq/evolu/blob/a18269a1b822c670b507c6a9b73b23eed32551fe/packages/common/src/Task.ts#L2070)

Reports a defect.

Run uses this dependency in two cases: [DisposableRun.panic](https://evolu.dev/docs/api-reference/common/Task/interfaces/DisposableRun#panic) reports the
[AbortError](https://evolu.dev/docs/api-reference/common/Task/variables/AbortError) whose reason is [PanicAbortReason](https://evolu.dev/docs/api-reference/common/Task/interfaces/PanicAbortReason), and event
monitoring reports observer defects without panicking the Run. The original
panic defect is available at `abortError.reason.defect`.