It Loves the Code It Just Wrote
Ask a session to review its own implementation and you usually get a glowing self-assessment. Makes sense: it's evaluating the reasoning that produced the code, not the code.
Use a second session with fresh context. One implements the rate limiter; the other gets "review this file for edge cases, race conditions, and consistency with our middleware patterns." Feed the findings back.
Fresh context has no attachment to what it just produced, so it evaluates the result rather than the path.
It's the same reason human code review works, and a plausible reason self-review usually doesn't.