fix(ext/node): guard sqlite deserialize during callbacks (#36023)
This prevents `DatabaseSync.deserialize()` from replacing database
contents while a user-defined SQLite callback is active.
`deserialize()` finalizes existing statements, so calling it reentrantly
could invalidate the statement SQLite is currently executing. The method
now uses the existing callback-depth guard and returns
`ERR_INVALID_STATE`, matching `DatabaseSync.close()` behavior.
Validation:
- `./tools/format.js`
- `cargo build --bin deno`
- focused `DatabaseSync.deserialize` callback regression
- full `tests/unit_node/sqlite_test.ts` suite (78 tests)