Bangladesh needed 29 off the last 14. Saifuddin, with 51 off 38, had just taken a single and left #10 Rubel Hosain to face the last two deliveries of Jasprit Bumrah’s final over. The game was poised on a knife edge – and two balls later, it wasn’t.

The first of those two deliveries started just outside the off stump, curved in wickedly late, went past Hosain’s wild mow, and crashed into the base of middle stump. Just how badly India needed that wicket, and how much pressure they were feeling, was evident when the normally phlegmatic Bumrah, not given to displays of emotion, cut loose with a Hindi cuss word with Oedipal overtones, the kind more usually associated with his captain.

The next ball, to Mustafizur, was the mirror image. From around the wicket to the left-hander, curving in from outside off, almost scything the batsman’s feet out from under him and crashing, again, into the base of the middle stump. Two yorkers, two wickets, a. win for India by 28 runs, and a sense that we had just witnessed a jailbreak.

India, despite its own deficiencies, sealed its semifinal berth. And Bangladesh, which has consistently punched above its weight through the tournament, found its hopes snuffed.

Here are the key takeaways:

 The politician’s syllogism: The BBC political sitcom Yes Prime Minister introduced us to the logical fallacy that goes: We must do something. This is ‘something’. Therefore, we must do this.

 48 hours after a defeat at the hands of England, the Indian team exemplified this fallacy with its choices. At the toss, Virat Kohli said he expected the wicket – the same that was used in the India vs England game — to wear as the day progressed. Fair call, but if that was the read of the pitch, why drop a spinner? Again, if India was going into a game with just five bowlers against a batting side with serious chops, why impose on the bowlers the added pressure of defending?

The chart above makes a point – a bitter one for fans weaned on the notion that India are the best batting side of them all. In this tournament, Bangladesh is level with, or has outperformed, India in almost every phase of the game. Their batting is clearly their core strength, which is why it made sense to put them in first, so you had an idea of what score you had to chase against a bowling lineup with more weak points than strengths.

“I love chasing,” Kohli said at the toss the other day against England – and his record in chases beggars belief. Here the choice was his; opting to bat first meant that a team with a shaky, unsettled middle order had to play with the pressure of not being sure what a good target to set on this wicket was.

The changes in personnel, and the decision to bat first, had the feel of ‘We lost to England, we must do something, this is something, so let’s do this.’

The correlation/causation conundrum: The interim between the game against England and this one was full of noise about the short boundary on one side of the Edgbaston ground.

At the toss we heard even more about the short boundary – which, according to Kohli, dictated the choice of Bhuvi over Kuldeep, among other things.

When India batted, the short boundary they had been fretting about was very much on their mind. Rohit Sharma was just 9 when, off the fourth ball of the 5th over, he attempted to thwack Mustafizur over that short boundary. Rohit’s pull is one of the glorious sights of the game; here he looked plain clumsy as he attempted to muscle the ball and was lucky Tamim Iqbal managed to make a mess of a comfortable outfield catch – and with it, as it turned out, the match.

In the 39th over, again off Fizz bowling one of his patented cutters, Virat Kohli looked to take advantage of that same short boundary; like Rohit, he overhit the ball and holed out to Rubel Hossain who was fielding in the exact same spot where Tamim had previously dropped Rohit.

To add a coating of irony, Dinesh Karthik was reportedly included because of his penchant for the slog sweep which, it was felt, was optimal for that boundary. In the event, he came to bat with Shakib having just five balls left in his spell; he was beaten once, played out a dot ball, and managed just one run off the three balls he faced.

India did not lose to England because of the short boundary; correlation is not always causation. And, while on this, it is possible to obsess way too much on one thing and allow it to dictate your strategy and tactics – and that never ends well.

Old failings, new fault-lines: There were two bright spots in the Indian innings. The first was an opening partnership of 180 between Rohit Sharma (104 off 92) and KL Rahul (71/85).

From the off, Rohit batted as if he was intent to prove a point. His slow starts have become a talking point, so this time he got off the blocks like a rocket, playing shots against his character – a slashed four behind point early in the power play is just one instance, as was the ugly hoik that nearly got him out. He also played a sufficiency of dreamy drives and lazy-seeming front foot pulls. Barring a heavy-handed pulled six off Shakib, his seven fours and five sixes had the ‘vintage’ stamp.

Rahul played as you would expect a person who is perennially unsure of his role in the side – reserve opener? Stand-in number four? Seat-warmer for Dhawan? – to play. Like porcupines making love: cautiously, reining in his free-stroking instinct, only occasionally providing glimpses of his natural elegance.

Together, they put on 69 in the opening power play – the best for India in this tournament by a distance. Aside: Since I – among others – have been keeping an eye on India’s dot ball issues, the two openers did better at strike rotation than they have in their previous outings, but still managed to play 31 dot balls out of the first 60.

The reason they had a high-impact power play was the shoddiness of Bangladesh’s bowling and fielding. The latter was highlighted by that dropped chance and any number of fumbles; the former by the fact that the bowlers strayed in line and length often enough to allow the openers eight fours and two sixes in that period. In the final analysis, this was to be where Bangladesh lost the game.

Rohit fell, immediately after completing his fourth century of this World Cup, to the short boundary syndrome; Rahul to the ‘omigawd they’ll be looking at my strike rate’ dilemma,  and Kohli, again, to an ill-judged attempt to clear that short.

And the wheels came off. Hardik Pandya used one bat for one ball, changed it for the second, and used it to tap an angled Fizz delivery to wide slip, giving the bowler his second wicket in the over. Dinesh Karthik was another victim of the short-boundary mindset, trying to fetch a Fizz delivery angled outside off stump and muscle it over that enticing fence but failing even to clear midwicket inside the ring.

MS Dhoni played a couple of cover drives that reminded you of those long-gone good times, but then lapsed into his now regular bad habit: turning down singles (including off the first two balls of the 50th over) under the assumption that he can “make up”, and then tamely skying a Fizz bouncer.

The final ten overs produced a mere 63 for the loss of five wickets – a shambolic waste of a great platform.

The bright spark amidst the shambles was Rishabh Pant who, played the role of hustler to great effect. With just two balls under his belt, he played out four dots against Mossadek Hussain, decided he had seen enough, ran down the track and hit the bowler straight back over his head for six. When Shakib was brought back in the 37th, he paddled him for four. When Fizz bowled a double wicket-maiden in the 39th Pant – in defiance of the dogma that you try to rebuild after a blow or two – cover drove the first ball of the 40th, swatted the next to the midwicket fence, and then square drove the ball after that past point. He died by the sword he had lived by (48 off 41 balls), but before that he contributed 23 off 20 to a 43-off-34 partnership with his captain, and 25 off 21 in a 40-run partnership off 33 balls with MS Dhoni.

Bangla’s two and a half bowlers: Mustafizur – 10-1-59-5 — was outstanding, particularly in the middle and the death where he used his extensive arsenal of variations to deceive Kohli, Pandya, Dhoni and Karthik. Shakib – 10-0-41-1 – is a premium all-rounder, the most consistent in this tournament. He showed why here, working the angles and, despite bowling from the end where the short boundary loomed temptingly close, operating with economy and control.

Saumya Sarkar, pressed into service because seam bowlers Mortaza, Shaifuddin and Rubel Hussain were leaking runs, did his captain proud with adamant adherence to the virtues of line and length. But that was it, and this lack of bowlers to back up Fizz and Shakib cost Bangladesh – particularly when taken with a fielding effort that bordered on slapstick.

Pandya’s passive aggression: The foundational principle of the 134-year-old martial arts form Judo is jū yoku gō o seisu, which its founder the Japanese polymath Jigoro Kano defined as “softness controls hardness.”

In a bowling line-up featuring just five bowlers, the Bangladesh think-tank had clearly identified Pandya as the weak link, and predetermined that they would go hard at him. It says a lot, all of it good, for the street smarts of the young all-rounder that he outthought the opposition – and “softness” was the key.

Pandya’s usual routine is to hit the deck as hard as he can, bowl the permitted two bouncers in each over and use hard lengths for the rest. Here, he used “softness” – in each over, the pace swung wildly between the 140-142 that he tops out at, and the change-down to 120 or lower, and always, you were never sure which was coming. More to the point, he bowled both variants of the bouncer – the quick one and the one with pace off. And always, he anticipated what the batsman was looking to do, and countered it with the appropriate variation of pace.

His first wicket was fortuitous – Soumya Sarkar, who seemed to be finding prime form, got a half-tracker he felt was an invitation to mayhem; the over-eager swipe ended up as a simple take for Kohli at cover.

The other wickets, though, were planned and executed to perfection. A 41-run stand off 40 balls between Shakib al Hasan and Liton Das cued memories of their unbeaten, match-winning stand against the West Indies. Pandya had beaten both Das and Shakib with slower bouncers in his previous over; here he bowled the same short length, but at top pace. Das went for the pull, the extra pace meant the ball got onto the bat quicker than he anticipated, and he holed out to midwicket.

The icing was the wicket of Shakib. In the 34th over, Pandya foxed the star all-rounder with a 127k delivery that held on the pitch and produced tennis ball bounce; the next ball was angling in to middle and leg – exactly right for Shakib’s go-to shot, where he steps away to make room and carves behind point. Only, Pandya had dropped the pace even more; Shakib – who by then had gone past his customary 50 and seemed capable of batting forever – tamely patted it to extra cover.

(Trivia alert: Shakib, at the end of his innings of 66 off 74 balls, has 542 runs in this World Cup thus far – two runs behind table topper Rohit Sharma on 544. And he has 11 wickets to go with it.)

Pandya, the weak link, ended with Soumya, Liton, Shakib – three scalps any bowler would be proud to own. And the normally aggressive youngster did it by going “soft” and outthinking batsmen who were looking to out-muscle him.

The chart above tells many stories. Of how the Indian innings lost momentum after the first ten overs. Of how India’s batting messed up the end. Of how, thanks in part to a Shami slower ball that Tamim Iqbal dragged on, Bangladesh failed to get its usual 50-plus start in the initial powerplay. And, not least, how the weak Indian middle overs and finish created an opportunity for the chasing side – one that Bangladesh could not capitalize on because of the Pandya show with the ball, and the consequent loss of the batsmen most capable of seeing such a chase home.

There was a glimmer of hope for Bangladesh when Shabbir Rahman and Shaifuddin produced a 66-run partnership off just 56 balls for the seventh wicket, but Bumrah snuffed it out by taking a leaf out of the Pandya playbook and producing a straight, good length ball at about 25k less than his normal speed. Shabbir misread the pace and swiped all over it to lose his middle stump. And then came the 48th over, and those two searing yorkers.

Among other things, Bumrah’s masterclass meant that Mohammed Shami, whose 8 overs at that point had gone for 61 – including 17 in his 7th over, 11 in his 8th, and 7 in his 9th – was off the hook.

That was the story of this match: It was about India wriggling off the hook it had impaled itself on.

NB: If this analysis tends to focus on India’s deficiencies despite its win to seal a semifinal spot, it is precisely because India is in the semis. The men in blue have one more game to work out their kinks – from then on, the follies and foibles that have been a constant could spell finis to the “Do sau gyaara dobara” dream cooked up by the marketing mavens.

(A version of this report was posted on cricket.com last night)