[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:2071](https://github.com/evoluhq/evolu/blob/037c390af081e9944d616ff298a729515c5c5ab7/packages/common/src/Task.ts#L2071)

Reports a defect.

[Run](https://evolu.dev/docs/api-reference/common/Task/interfaces/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`.