# X_STREAM_ALREADY_FLUSHED

## Means

a response header was written after the stream flushed

## Typical cause

`setCookie()`, `deleteCookie()` or `setRedirect()` ran inside a `<Hole>` on a `render: 'stream'` page, after the status and headers left with the first flush. The hole shows its `error` markup and the monitor hears it

## Fix

`load: async () => { setCookie(name, value); return data; }` in `defineRoute`, never under a `<Hole>`

[CLI and verify](/error-codes#cli-and-verify)
