# AUR0226

## Error Message

`AUR0226: Maximum number of recursive effect run reached. Consider handle effect dependencies differently.`

## Description

This error occurs when an effect re-triggers itself repeatedly (directly or indirectly) until Aurelia’s recursion safeguard stops it. This usually means the effect both depends on and mutates the same observed state (creating a feedback loop).

## Example Trigger

```ts
// ❌ Effect writes to the same state it reads
this.observation.run(() => {
  this.count = this.count + 1;
});
```

## Solutions

* Avoid writing to reactive dependencies inside the same effect that reads them.
* Split responsibilities: compute derived values without side effects, and trigger side effects from explicit actions or separate effects with different dependencies.

## Troubleshooting

* Identify which assignment inside the effect causes the re-run and refactor it out.
* Use logs/breakpoints to see which dependencies are being observed.
