heckman two step, a basic question

This is probably a very basic questions, but I cannot find a straight forward answer anywhere. I have a series of data were a selection method (like Heckman two-step) is necessary. Is it a basic assumption of Heckman two-step that the selection stage of the model include at least one variable not in the second stage? Similarly, is there any assumptions regarding any variables in the second step NOT being included in the first step?

Info on the specific data: I'm looking at data on the % of bills introduced by state legislators that are reported by a committee, or that become law (two different models). A selection method is needed to address the 0's in the data caused by members who did not introduce any bills at all (in predicting the % reported by a committee) or that did not have any bills reported by a committee (for the % that become law) as these actions have to precede the actions we are trying to predict.

The classic selection model is: $$y = x\beta + \epsilon$$ $$d = z\gamma + u$$ where $\epsilon, u \sim N(0,\Sigma)$ and $y$ is observed only if $d>0$. $d$ is unobserved, but the event $d>0$ is observed. In this setting, $$E[y|x,d=1,z] = x\beta + \rho \sigma_u \lambda(z\gamma),$$ where $\lambda()$ is the inverse mills ratio. This result relies on $\epsilon, u \sim N(0,\Sigma)$. If they are not normally distributed, you can still show that $$E[y|x,d=1,z] = x\beta + f(P(d=1|z\gamma))$$ where $f$ is some function that depends on the joint distribution of $\epsilon$ and $u$. Consider the case when $x=z$ and for simplicity imagine they're scalars. Suppose there is some true $\beta_0$ and $f_0$. Then for any value of $\beta$, you could set $f(P(d=1|x\gamma)) = x(\beta_0 - \beta) + f_0(P(d=1|x\gamma))$ and obtain the same $E[y|x,d=1,z]$. In other words, for any value of $\beta$, there is some distribution of $\epsilon$ and $u$ that makes that value of $\beta$ fit the observed data.
Having variation in $P(d=1|z\gamma)$ that is independent of $x$ prevents these sort of shenanigans. With enough variation in $P(d=1|z\gamma)$ there is a unique $\beta$ and $f()$ that match the observed $E[y|x,d=1,z]$. Having variables included in $z$ and excluded from $x$ gives you the necessary variation. Assuming normality and having excluded variables generally works okay even without normality because $\rho \sigma \lambda(z\gamma)$ serves as an approximation to $f(P(d=1|z\gamma))$.