DEV Community

Piotr Zielinski
Piotr Zielinski

Posted on

Why LinkShift’s simulator is not the same as live traffic

I built LinkShift to help people avoid breaking links during migration.

One thing I had to make very explicit in the product is that simulation is not live traffic.

POST /api/v1/redirect-rules/simulate uses the same matching and destination resolution as the live redirect engine, but it does not apply redirect rate limits.
It also only checks destination blacklists when you ask it to, with checkDestinationBlacklist: true.

At the same time, simulate still enforces organization access.
If an organization is suspended, the whole batch fails with 402, even though the rule matching itself is correct.

That split matters because people often assume “simulate” means “exact production replay”.
It doesn’t.
It is a routing check, not a perfect copy of every operational constraint.

I like being blunt about that in the docs because it saves confusion during migrations and rollout testing.
If you build tools around redirects, be precise about which layer you are simulating.

Top comments (0)