# sqlalchemy.orm.exc.UnmappedInstanceError: Class 'builtins.dict' is not mapped

- **ID:** `python/sqlalchemy-orm-session-merge-error`
- **Domain:** python
- **Category:** runtime_error
- **Verification:** ai_generated
- **Fix Rate:** 80%

## Root Cause

Passing a dictionary instead of a mapped class instance to session.merge().

## Version Compatibility

| Version | Status | Introduced | Deprecated |
|---------|--------|------------|------------|
| 3.x | active | — | — |

## Workarounds

1. **Create mapped instance from dict.** (95% success)
   ```
   user_data = {'id': 1, 'name': 'Alice'}
user = User(**user_data)
merged_user = session.merge(user)
   ```
2. **Use session.execute() with insert statement.** (90% success)
   ```
   from sqlalchemy import insert
stmt = insert(User).values(**user_data)
session.execute(stmt)
   ```

## Dead Ends

- **Converting dict to object manually without proper mapping.** — Object still not recognized by ORM. (80% fail)
- **Using session.add() with dict.** — Same error; session expects mapped instances. (90% fail)
