Since President Volodymyr Zelensky was elected in 2019, there has been more bluster about anti-corruption reforms than action taken.

Legislation is either emasculated in parliament or dies during the implementation stage, obviously one of the reasons why Zelensky has been leaning on the National Security and Defense Council to enact his boldest moves thus far, including the banning of pro-Kremlin TV stations linked to mogul Viktor Medvedchuk, Vladimir Putin’s friend.

In 2019, Zelensky submitted his first judicial reform bill. One and a half years later, no judicial reform has been implemented, and parliament is set to pass yet another controversial version. The legislation nullifies the role of foreign experts and has been criticized by Ukraine’s Western partners.

In April, Zelensky also submitted a bill to liquidate the Kyiv District Administrative Court, headed by Ukraine’s most notorious judge Pavlo Vovk, and marked it as urgent. However, the bill has been blocked by parliament’s legal policy committee for two months.

Meanwhile, in October the Constitutional Court destroyed the entire asset declaration system for officials.

On June 3, parliament — which is nominally controlled by the president’s Servant of the People party with 244 out of 422 seats — passed a bill reinstating jail terms for lying in asset declarations. But lawmakers inserted an amendment that allows officials not to declare the assets of their relatives, undermining its effectiveness. Zelensky vetoed the bill on June 15 but it’s not clear if jail terms will be restored.

At the same time, the assault on the independence of anti-corruption bodies never ends.

In May the Verkhovna Rada also passed a bill seeking to fire Artem Sytnyk, head of the National Anti-Corruption Bureau of Ukraine, before his authority expires in 2022, which may eliminate the NABU’s autonomy.

The selection of the chief anti-corruption prosecutor, who oversees NABU cases, has also faced a debacle. The selection of the prosecutor has been effectively blocked after the government’s preferred candidate for the job was vetoed by international experts on June 4.

If this trend continues, Ukraine will lose a chance to become a Western democracy with the rule of law, Western funding and visa-free travel with Europe.

Zelensky can always pass the buck to parliament, commissions or the Cabinet, saying that he has good intentions but his efforts are being blocked.

But the ultimate responsibility lies with the president. If his own party, his own Cabinet and his own law enforcement appointees fail to deliver, Zelensky is to blame. Two years into his presidency, excuses for failing to fulfill election promises to fight corruption are wearing thin. Zelensky needs to pull himself together and finally deliver.