routing jtag signals through an FPGA
The JTAG (boundary scan) state machine moves through states based on the level of TMS at the rising edge of TCK.

Routing TMS through the FPGA is adding (some unknown) delay to TMS so it not surprising the chain fails to operate as expected.

There are devices designed to operate multiple chains, such as the devices from Firecron (if that was what you were attempting to do).

In normal circumstances (boundary scan controllers have come a long way), I just connect every TMS together (TCK gets the same treatment). The only signals passed through are TDI / TDO (not through your fabric - let the implemented boundary scan do it).

One interesting note: if you have a device without TRST, pull TCK low by default to avoid a potential power up race consition.