Reland "[turbopack] Fix some modification tracking bugs in TaskStorage" (#90098)
Reverts vercel/next.js#90096
* always `track_mutation()` before the mutation
* only `track_mutation()` if we are actually going to mutate
The previous attempt was reverted because we would call `track_modification` too often which lead to a test failure in the filesystem-cache-test because the DB grew too much.