If you imported those descriptors with specified "range" and "next_index" arguments, it'll use that address_index in your next transaction.
It was imported from an empty wallet so range was [0,999] by default.
Have you been testing transaction-related commands recently?
No, did not do any testing commands, only thing I did was to simulate a send transaction, just go to send set an address to see which fees was advising and I've did a few times during this mempool crazy high fees period.
Anyways, you can see the current candidate change address in the "next" output of listdescriptors command.
Yeah, I've realized that, what I just did is to create a new empty wallet, import the same descriptor and the current candidate is 46 as in sparrow while the "old watch only" is at 110, so I was wondering if there's a way to manually select previous change for the future transactions.