Ukrainian President Petro Poroshenko has suffered another crushing defeat. Less than a week after negotiating the renewal of the so-called Minsk ceasefire agreement with Russian President Vladimir Putin, his soldiers have come limping out of Debaltseve, a road and rail hub in eastern Ukraine that pro-Russian rebels were besieging even as the talks dragged through the night.

Not only does the fierce fighting cast doubt on the chance for a lasting truce, but it puts the Ukrainian president in an increasingly difficult position domestically. As Ukrainians mark the first anniversary of the bloody Maidan protest and former President Viktor Yanukovych’s disgraceful flight from power, many are asking themselves what has been achieved. Crimea has been lost, the economy is cratering, and more than 5,000 people have been killed in a war with murky origins and little purpose.

Accounts coming from Debaltseve this week couldn’t have been more disparate. Poroshenko, who traveled to the war zone, insisted until the bitter end that Debaltseve hadn’t been encircled, even though soldiers and journalists were reporting that the town’s last supply route had been turned into a gauntlet of withering enemy fire. On Wednesday, Poroshenko said that 80 percent of the Ukrainian troops in Debaltseve — or almost 2,500 men by the end of the day — had withdrawn, with six killed and more than 100 wounded. Earlier news reports said that as many as 8,000 Ukrainian soldiers were holed up in the city.

“The town has practically been turned into ruins,” Ilya Kiva, the pro-Kiev deputy police chief of Donetsk region, told Ukrainskaya Pravda. On Wednesday, Ukrainian media reported that dozens of dead soldiers were being brought to the morgue in nearby Artemivsk. Alexander Zakharchenko, the leader of the Donetsk rebels, said on Thursday that more than 3,000 Ukrainian soldiers had been killed. Zakharchenko himself had been injured in the leg in Debaltseve and spoke to Russian media from his hospital bed.

While both sides exaggerate casualty numbers to their benefit, conflicting information on the order of magnitude is feeding Ukrainians’ frustration with their government. In Minsk, Poroshenko got the rebels to sign a peace deal only by dropping his demand for an immediate truce and delaying the ceasefire by almost three days, according to a reconstruction of the summit in Germany’s Bild newspaper. In the meantime, the pro-Russian separatists tightened the noose around Debaltseve.

Putin couldn’t help but gloat even before the retreat. “Of course losing is always bad, and it’s unfortunate for the losing side, especially if you lose to a former miner or tractor driver,” the Russian president told journalists on Tuesday. “But that’s life, and it will keep going. I don’t think it’s necessary to get too caught up by it.” (Incidentally, when asked about possible U.S. arms shipments to Ukraine, Putin said that according to his information, the United States is already delivering weapons — and there’s “nothing unusual” about it.)

The loss of Debaltseve is so huge only because Kiev turned it into a symbolic redoubt, said Gustav Gressel, a specialist on Eastern European defense policy and a visiting fellow at the European Council on Foreign Relations in Berlin. Poroshenko’s biggest mistake was not to withdraw earlier, according to Gressel. The battle for Debaltseve is reminiscent of the futile struggle for the Donetsk airport, which Ukrainian forces finally gave up in January after months of bitter fighting.

“It wasn’t worth the effort. The strategic value was in no way proportional to the troops put there,” Gressel said. If Ukraine is going to lead a war of attrition against a far superior enemy, he said, it must fight tactically, avoiding vulnerable “bulges” like the Debaltseve pocket and raising the costs for Russia’s covert war.

What’s remarkable about Debaltseve is that until very recently, it was the site of a joint staff of Russian and Ukrainian military officers tasked with monitoring the original Minsk cease-fire signed in September. Then, suddenly, a month ago, the participating Russian general refused to show up, foreshadowing an offensive by the separatists, The Wall Street Journal reported at the time.

Pavel Felgenhauer, an independent Russian defense analyst, believes that if the attack on Debaltseve has any strategic component, it’s part of a bigger plan to destabilize and overthrow Poroshenko. “The Russian government aims to publicly humiliate the Ukrainian military and stir up the political situation in Kiev, followed by regime change in one way or the other,” Felgenhauer wrote. Ultimately, Putin is interested in a pliant Ukrainian government that will not seek membership in the European Union and the North Atlantic Treaty Organization, he said.

On Monday, the Kremlin’s German propaganda arm, RT Deutsch, spread an unsubstantiated rumor that Poroshenko’s family had fled Kiev after the Ukrainian nationalist group Right Sector threatened consequences because of the looming disaster in Debaltseve. The only thing that the report got right was that anger is rising against the country’s hapless, secretive military leadership.

Following the retreat, Semyon Semyenchenko, commander of the volunteer Donbass Battalion, posted on his Facebook page that Poroshenko was a victim of a small clique that was lying to him about the number of killed and wounded in an effort to cover up its own failures and retain influence. Semyenchenko, who was elected to the Ukrainian parliament in October, asked Poroshenko for an urgent meeting — incongruously adding a smiley to his request.

Almost in passing, Semyenchenko informed Poroshenko that 17 volunteer battalions had formed a “joint staff” to coordinate their actions and “help one another, including you.”

Last summer, Semyenchenko led a social media campaign attacking the military leadership for its handling of the situation at Ilovaisk, a rail junction where Ukrainian fighters had become trapped by pro-Russian forces. The bloodbath that ensued forced Poroshenko to sue for peace in the first Minsk ceasefire accord.

The renewed Minsk agreement isn’t dead yet, but it’s not looking good. If another government-held city falls, say the port of Mariupol on the Sea of Azov, Poroshenko will have to be just as concerned about the home front as about the front line.