The gaining and losing of subtypes for Lycan should be tracked as a running total. For example, if the Runner plays Tinkering on a Lycan with an odd number of tokens on it, it is still a sentry because it has lost one instance of sentry and gained another instance of sentry, net resulting in one instance of sentry.:Ruling
I have a Wendigo installed and advanced once. Runner is Kit and makes a run, and Wendigo is the first piece of ice she encountered this turn. Is Wendigo Code Gate or not?
And what if instead of Kit it was any other runner using Tinkering instead? and what about Paintbrush? When a card gains and loses a trait multiple times, you should keep a running total to see if the card has that trait. So if you advance Wendigo so that it loses code gate, but then it gains a second code gate subtype with Tinkering, Kit, or Paintbrush, then it is considered a code gate since it has two instances of code gate and has only lost it once.