Fix and add test for ignoring a macro field (#4869)
### Description
https://github.com/vercel/turbo/pull/4828 changed the order of the
`.enumerate()` and `.filter()` operations, which causes the index
tracking to break. We need the input's indexes before the filter
mutates, so that ignoring a field actually takes affect on the ignored
field itself and not the later fields.
### Testing Instructions
```bash
cargo nextest run -p turbo-tasks-macros
```
---------
Co-authored-by: Alex Kirszenberg <alex.kirszenberg@vercel.com>