# HASH_MISMATCH

A sha256 does not match its content.

- **HTTP class:** 400
- **Retryable:** no

## What happened

A file's `sha256` doesn't match the content sent with it.

## Fix

Recompute it as the lowercase hex SHA-256 of the decoded bytes (not of the base64 text), or omit it.

## What to tell the user

Nothing.

## Agent hint

The exact `error.hint` text; Carnival fills each `<…>` for the call.

```text
The sha256 for <path> doesn't match its content. Recompute it over the decoded bytes, or omit it.
```

## Related

- [`INVALID_ENCODING`](https://carnival-staging.dev/docs/errors/INVALID_ENCODING.md): A file could not be decoded.
- [`MISSING_CONTENT`](https://carnival-staging.dev/docs/errors/MISSING_CONTENT.md): Some files are missing.

All error codes: [error codes](https://carnival-staging.dev/docs/errors.md)
