I’m genuinely surprised to see congressional Republicans stiff Trump on something that’s so important to him, although maybe they feel they no longer have a choice. After the revelation about Don Jr’s meeting with the Russian lawyer, no GOPer in Washington wants to bet heavily on the White House’s innocence in Russiagate. Taking a tough anti-Russia — and anti-Trump — stance on relations with Moscow is insurance for Republicans in case Mueller produces a real bombshell and the party needs to protect itself from the resulting political toxic spill. Trump may be soft on Russia, McConnell and Ryan are saying, but we aren’t, so don’t get us confused.

The bill includes sanctions on Iran and North Korea too but the Russia section is key for obvious reasons:

Passage of the bill, which could occur before Congress breaks for the August recess, puts Congress on possible collision course with Trump. The White House had objected to a key section of the bill that would mandate a congressional review if Trump attempted to ease or end the sanctions against Moscow. But if Trump were to veto the bill, he risks sparking an outcry from Republicans and Democrats and having his decision overturned. The sanctions review was included in the bill because of wariness among lawmakers from both parties over Trump’s affinity for Putin…

Although there is widespread support for the legislation, the bill stalled after it cleared the Senate over constitutional questions and bickering over technical details. In particular, House Democrats charged that GOP leaders had cut them out of the congressional review that would be triggered if Trump proposed to terminate or suspend the Russia sanctions. But Republicans rejected the complaint and blamed Democrats for holding the bill up.

“The White House will not be getting what it wants,” said a senior GOP House aide to Politico. Team Trump wanted the bill to grant the president unilateral power to ease sanctions imposed by Congress, giving him a free hand to make deals with Moscow. Trump could go to Putin and demand X,Y, and Z in exchange for sanctions relief and Putin could consider that offer knowing that it’s within the president’s power to deliver on his end of the bargain. Neither party fully trusts Trump’s intentions on Russia anymore, though, so Ryan and McConnell refused to go along. Instead, under the bill, if Trump wants to lift any sanctions he needs to notify Congress. Both houses would then have 30 days to consider his request and vote to either approve or disapprove it. Essentially, Congress has granted itself a veto power over Trump’s Russia dealmaking (although there’s a major wrinkle to that, as we’ll see below). Now, if Putin wants to bargain with Trump, he has to consider whether the Republican majority in the House and a bipartisan filibuster-proof majority in the Senate will accept the bargain.

As noted above, the sticking point between Republicans and Democrats had to do with which party would be allowed to introduce a resolution of approval or disapproval of a request from Trump to lift Russia sanctions. Democrats worried that if normal congressional procedures were followed and only the majority party was permitted to bring bills up to vote, either Ryan or McConnell or both could simply refuse to allow a floor vote on a resolution of disapproval, thwarting Congress’s ability to block the president. The compromise that was struck resolves that issue:

Either Schumer or Pelosi can force consideration of a resolution of disapproval now. The GOP majorities in each chamber have the numbers to vote such a resolution down, thereby allowing Trump to waive sanctions, but (a) they’d need to put their names to that decision by casting a roll-call vote for it, which Republicans who are worried about being seen as “soft on Russia” are wary of doing, and (b) there are enough Russia hawks in Congress on both sides that a resolution of disapproval would stand a good chance of passing even if Ryan and/or McConnell opposed it. Schumer or Pelosi might be able to stop Trump from lifting sanctions under this bill even if the majority party’s leadership sided with the White House.

Which brings us to that wrinkle I mentioned. It’s true that Congress would have the power under this bill to veto Trump’s decision to waive Russia sanctions. But…

If Congress blocks Trump by passing a resolution of disapproval, Trump could veto that resolution. That would put the ball back in Congress’s court: The only way they could overcome the presidential veto would be by re-passing their resolution of disapproval with veto-override majorities of two-thirds of each chamber. That is to say, in order to stop the president from lifting sanctions unilaterally, Congress would need supermajorities — not mere simple majorities — of the House and Senate to agree. That’s not as difficult as it sounds right now since, as I say, both parties are momentarily filled with Russia hawks. The Senate version of this bill passed 98-2; the new House version, which is supported by both Schumer and Steny Hoyer, should also pass overwhelmingly. But whether Republican resolve would remain as firm if/when Trump strikes a grand bargain with Moscow that involves sanctions relief is unclear. All it would take is 34 of the Senate’s 52 Republicans to vote against a resolution of disapproval and Trump would be able to lift sanctions despite opposition from a heavy majority of senators. If that arrangement sounds familiar, it’s because Senate “approval” of Obama’s Iran nuclear deal operated the same way.

For now, though, there’s no question that the bill will pass with veto-proof majorities. In fact, it’ll be moved in the House Tuesday under an expedited process that requires two-thirds support for passage, the same threshold required to override a presidential veto. That leaves Trump stuck: No doubt he’d like to assert his presidential prerogative over foreign policy by vetoing a bill that ties his hands on sanctions relief, but what would be the point if Congress is all set to embarrass him by overriding that veto? And even if they couldn’t override it, is this really a hill Trump wants to die on politically? As an administration official said to Axios a few weeks ago, “Are you f—ing kidding me? Your first veto of the administration is to protect Russia?”