# snapshot_assertion_failed: Snapshot 'test_render' does not match.
Received value does not match the stored snapshot.
Use --snapshot-update to regenerate.

- **ID:** `python/pytest-snapshot-mismatch`
- **Domain:** python
- **Category:** data_error
- **Verification:** ai_generated
- **Fix Rate:** 80%

## Root Cause

snapshot testing (pytest-snapshot, syrupy, snapshottest) compares output to a stored file; any change in output (intentional or not) causes a mismatch.

## Version Compatibility

| Version | Status | Introduced | Deprecated |
|---------|--------|------------|------------|
| 0.9 | active | — | — |

## Workarounds

1. **** (95% success)
   ```
   pytest tests/test_render.py -k test_render --snapshot-details
# review the diff, then
pytest --snapshot-update tests/test_render.py
   ```
2. **** (90% success)
   ```
   def sanitize(output):
    output.pop('timestamp', None)
    output['id'] = '<id>'
    return output

def test_render(snapshot):
    snapshot.assert_match(sanitize(render()), 'render.json')
   ```

## Dead Ends

- **** — Accepts whatever the code currently produces, including regressions; snapshots become rubber stamps. (90% fail)
- **** — Next run recreates it from current (possibly buggy) output, losing the historical baseline. (85% fail)
- **** — Hides the diff and prevents catching real regressions; xfail state tends to linger. (80% fail)
