Josse-posten

Institutions under siege: Russia’s last free newspaper closes, Poland’s president forces his way into the constitutional court, and Washington sells Ukraine Patriots it cannot deliver this decade.

Poland’s constitutional court seized: riot police, and a president who forced entry at 1am

Poland’s constitutional crisis peaked on Friday night. A group of government-appointed judges suspended the court’s PiS-aligned president, Bogdan Święczkowski, and declared a new acting chief. Riot police faced protesters and opposition MPs outside the Warsaw building. President Karol Nawrocki, a close Trump ally, turned his plane around mid-flight from Senegal, arrived after midnight, and pushed through security to enter the court. He stayed until at least 4am and called the operation “a constitutional coup.”

The clash is the latest chapter in a decade-long dispute over judicial independence that began when PiS stacked the bench in 2015. Experts are divided on whether Friday’s suspension was legally valid. The confrontation sets the stage for a showdown ahead of the 2027 parliamentary election.

“We were killed”: Novaya Gazeta, Russia’s last independent national newspaper, closes

Novaya Gazeta, whose former editor Dmitry Muratov won the 2021 Nobel Peace Prize, will cease operations on 9 November. Staff describe a sustained campaign to “systematically crush” independent journalism: donation bans, seizure of its printing press, foreign-agent designations, office raids, and eviction from its Moscow premises. The paper survived the murders of several of its journalists, including Anna Politkovskaya. Its closure removes Russia’s last nationally known independent outlet.

On the same home front, Russia’s Defence Ministry has proposed delaying December military pay until January — a small indicator of fiscal strain.

US approves $2.1bn Patriot sale to Ukraine — but delivery is years away

The State Department approved the sale of 500 PAC-3 MSE interceptors to Ukraine, reversing the previous US freeze. Canada, Germany and Norway pay for it through the JUMPSTART programme, with EU supplemental loans. Patriots are currently Ukraine’s only effective weapon against Russia’s fast ballistic missiles.

Zelensky welcomed the decision but warned that deliveries are not expected until the early 2030s. Lockheed Martin has yet to begin production and plans to triple output to 2,000 units a year by 2030. Ukraine faces this winter without them.

The signals from Washington remain mixed. In the same period, the administration halted funding for other Ukraine security programmes, and Pentagon policy chief Elbridge Colby told European officials to “cool” their rhetoric on Russia. Estonia’s prime minister answered publicly: “appeasing dictators brings only humiliation.”

Ukraine hits Ufa refinery as the deep-strike campaign resumes at scale

Fire at the Bashneft-Novoil refinery in Ufa after the overnight drone strike. Photo: Ukrainska Pravda

A day after reports that Kyiv had paused refinery strikes under US pressure, Ukrainian drones hit the Bashneft-Novoil refinery in Ufa, Bashkortostan, overnight 30–31 October — about 1,300 km from the border. They struck the L-35 catalytic reforming unit, a key component for high-octane petrol. Together with the Novokuibyshevsk strikes and reported hits on two more refineries and a gas chemical complex, it looks like the largest coordinated deep-strike wave of the war. The Kremlin is already using the strikes to claim Ukraine is defying Trump. (More in Ukraine)

Four tankers on fire after striking mines in Hormuz — as the IISS calls the US a “strategic liability” for the Gulf

Iran’s Revolutionary Guard says four tankers caught fire in the Strait of Hormuz after striking naval mines while travelling on what Tehran called “unauthorised routes.” Nationalities and cargo were not disclosed. Roughly a fifth of global oil trade passes through the strait.

The same week, a major IISS study found that before the 8 April ceasefire, 12 regional states absorbed nearly 4,700 Iranian attack drones and more than 1,400 ballistic missiles, causing an estimated $58 billion in energy damage. It faults the Gulf states for “overdependence on expensive, high-end systems” against cheap drones, missing regional integration, and gaps in minesweeping. US bases may have given Iran extra pretext to strike, and public opinion now increasingly sees the US as a “strategic liability.”

Backdoored Claude Code extension shipped to ~5,000 Cursor users

Someone published tampered versions (2.1.312 and 2.1.313) of the Claude Code extension only to Cursor’s marketplace on 30 October. The backdoor opens a reverse SSH tunnel, adds an attacker key to ~/.ssh/authorized_keys, and exfiltrates hostname, username, OS, git config and the names of credential-like environment variables. Uninstalling is not enough: remove the persistence and rotate credentials. (Details in Tech)

Indicator Value Change
S&P 500 7,580 -1.82%
Dow 30 51,770 -1.09%
Nasdaq 25,437 -2.86%
Russell 2000 2,812 -1.66%
VIX 19.4 +12.9%
Gold 3,899 -3.29%
BTC $77,189 -0.88%
EUR/USD 1.1200 -0.04%
USD/NOK 9.21 0.00%
  • Nasdaq -2.86%, the steepest drop of the major indices: Intel keeps falling and the index opened at a two-month low as investors question AI spending nearing $1 trillion (BBC)

World

Canada and EU launch “Alliance for the Future”, open to other democracies

Canada and the EU formally launched the “Alliance for the Future” at the Montreal summit — a grouping open to like-minded nations, framed as both mutual protection and a hedge against American unpredictability. Carney said “unequivocally” that Canada seeks to become the EU’s first associate member; von der Leyen spoke of a world “shaken by new storms.” Xi Jinping responded at once, urging the EU to deepen cooperation with Beijing instead.

G20 in Atlanta: family photo scrapped, and a joint demand on North Korea

The traditional opening photo at the G20 foreign ministers’ meeting was cancelled after about a third of countries — including the US, UK and Australia — refused to stand beside Russia’s foreign minister. Rubio pulled the plug. UK Foreign Secretary Miliband confronted Lavrov directly, accusing his government of killing civilians in Ukraine.

On the sidelines, the US, South Korea and Japan demanded the “complete denuclearisation” of North Korea and pledged to enforce UN sanctions — even as Trump signals interest in a new summit with Kim, possibly at APEC, and Pyongyang has written its nuclear status into law as permanent.

US midterms, three days out: ICE surge, a pope’s ballot, and “send him back”

More than 43 million Americans have voted early, with Democrats leading in polls. Pope Leo XIV mailed a ballot to his native Chicago — the first pope to vote in a US general election. At a rally, Trump told crowds to send Michigan candidate Abdul El-Sayed “back to where he came from.”

ICE enforcement is surging: video shows masked agents pointing a gun at a dog walker during an arrest in North Hollywood. Democrats are demanding ICE data on miscarriages among detained women, after a Guardian investigation found the agency did not track them between October 2025 and June 2026. Fake polls are also circulating.

Bolsonaro’s flight to the US becomes a three-country incident

Brazil summoned Argentina’s diplomat over reports that Buenos Aires helped Flávio Bolsonaro fly to the US after his election loss. Brazilian media mocked his short-lived “president-elect” claim — made in a letter bearing the wrong national coat of arms.

Youth protests sweep Germany and France

About 150,000 people registered to protest across 30 German cities, led by the “GenZ regelt!” movement. France deployed 70,000 police and banned face coverings amid warnings of a “very high risk” of disorder. The grievances: unaffordable living, failing public services, and a generation locked out of economic stability. Berlin shops boarded up after looting in earlier weeks.

Global port strike: dockworkers at 113 ports halt arms shipments

More than 25 unions across 113 ports in 22 countries struck on Friday against the use of ports for weapons exports. Organisers say it disrupted over 40% of Mediterranean cargo and $2 billion in freight. Italian, French, Greek, Spanish, Turkish and Moroccan dockworkers led, backed by ver.di, SIPTU, 3F, CGT and India’s WTWFI, which noted about 15 Indian seafarers died in the US-Israel-Iran conflict. The action builds on May’s Istanbul Declaration.

DR Congo: Ebola deaths pass 5,000 — and Kabila returns as a rebel leader

The outbreak declared in May has killed more than 5,000 of over 10,000 infected, now the second-largest on record after West Africa 2014–16. It is the rare Bundibugyo strain, with no approved vaccine or treatment. It has reached eight of 26 provinces and spread to Kenya, Uganda and Nigeria; Saudi Arabia has suspended travel to Kenya.

In the same troubled east, former president Joseph Kabila (2001–2019) has launched an armed rebel movement, adding a new actor to a conflict already involving M23, Rwandan-backed forces and the army.

Sudan: senior RSF commander defects — “a purely family-based project”

In footage obtained by Al Jazeera, Siddiq Ander says the RSF is “controlled by Hemedti’s relatives in every aspect” — weapons, finances, promotions, troop movements — and that dissenters face “expulsion, imprisonment or a hidden death.” He joins a wave of senior defections this year, some taking hundreds of fighters with them.

Yemen: Houthis sending Taiz “back to the stone age”

As the siege enters its third month, Taiz’s governor says oxygen, food and water are critically low and “massacres” are underway. Analysts are examining whether the Houthis use Russian satellite communications to coordinate strikes on Saudi Arabia — echoing this week’s reporting on Russian satellites guiding Iran’s proxies.

Also today

Europe
Spain: transport minister Óscar Puente refuses to resign after the second high-speed rail disaster this year (at least 69 dead); Sánchez’s snap-election prospects darken — BBC: minister · BBC: Sánchez
Russia & China
Retired Michigan teacher Stephen Hubbard freed from Russian prison — Guardian
US jails two Chinese nationals, Liren Lai and Yuance Chen, for “dead drop” payments to recruited sources — Al Jazeera
Beijing Queer Film Festival cancelled after sustained police harassment — Guardian
Asia
Thailand: 34 years in prison for mocking the monarchy dressed as Harry Potter; 294 prosecuted under lèse majesté since 2020 — BBC
India: extreme poverty fell from 27.1% in 2012 to 2.6% in 2024, says the World Bank — NDTV · Reddit
Science
US, Russia and China race to put nuclear reactors on the moon — Al Jazeera

Ukraine

Ukraine’s strike on the L-35 reformer at Bashneft-Novoil in Ufa came alongside hits on Novokuibyshevsk, two further refineries and a gas chemical complex. Manufacturer Fire Point says it has solved Starlink dependency for long-range navigation. ISW notes Peskov and Ushakov are publicly using the strikes to argue Kyiv is defying Trump’s requests — a wedge between Kyiv and Washington.

Oleshky: first civilian evacuation in four years — on a stage set by Russia

Occupied Oleshky. Residents say Russian forces cleaned streets and removed bodies before journalists arrived. Photo: Ukrainska Pravda

Hundreds of civilians left occupied Oleshky under the Melania Trump-brokered ceasefire, the first joint humanitarian operation of its kind in over four years. A Ukrainian delegation arrived on 30 October via Gomel and Anapa, with both sides’ human rights commissioners overseeing. Demining of the routes finished the same day and convoys set off that afternoon; the ceasefire had held for over 80 hours. A convoy also brought food and medicine. Some residents chose to stay.

Ukrainian accounts and residents report that Russian forces cleaned streets and removed bodies from visible areas before the cameras arrived.

Frontline: Russian encirclement push at Orikhiv deepens; Hulyaipole railway crossed

Russian forces effectively seized Charivne east of Orikhiv on 30 October, with infiltration groups pushing toward Omelnyk, nearly 19 km behind the line, as 76th VDV Division and Varyag drone brigade elements try to encircle Orikhiv from the northeast. Russian units also crossed the railway northwest of Hulyaipole and reached the Verkhnya Tersa River from Zaliznychne. Orikhiv–Hulyaipole is now the most active axis.

Elsewhere Ukraine pushed back: clearing infiltrators from Nove Zaporizhzhia and Ternuvate south of Oleksandrivka, intensifying counterattacks west of Kostyantynivka toward Mykolaipillya and Rozkishne, and stalling the Russian offensive at Dobropillya.

ISW

Tech

Supply chain attack backdoors Claude Code extension on Cursor marketplace

A malicious actor published tampered versions 2.1.312 and 2.1.313 of the Claude Code VS Code extension exclusively to Cursor’s marketplace on 30 October. The backdoor installs a reverse SSH tunnel, appends an attacker key to ~/.ssh/authorized_keys, and exfiltrates hostname, username, OS, git config, and the names (not values) of environment variables matching credential patterns. About 5,000 Cursor users were exposed. The VS Code marketplace, OpenVSX and Anthropic’s own channels were not affected, and Anthropic confirmed no compromise of its systems.

Cursor has pulled the versions, but remediation means removing the persistence artifacts by hand and rotating credentials. The incident also exposes that VS Code-compatible marketplaces have no code signing at all — a problem Linux package management solved decades ago.

Proof of concept: the RuntimeUrl attack returns a victim tenant’s Key Vault secret. Image: Binary Security

Oslo-based Binary Security published five chained privilege-escalation bugs in Azure Logic Apps API Connections. All stem from one flaw: when ARM calls into an API Management instance, it has rights to all connections, not only the one in use. The exploits: path traversal via ../, three undocumented DynamicList endpoints with the same flaw, implicit access to all V1 connections from Consumption Logic Apps, and RuntimeUrl manipulation that bypassed ownership checks — then the same traversal again after URL normalisation. A chain gives full cross-tenant access to Key Vaults, SQL databases, Jira, Salesforce and whatever else is connected.

The bounty totalled $200,000. All five are patched, but Microsoft’s fixes repeatedly created new bypasses.

CVE-2026-98432: Linux MPTCP use-after-free, exposed by Go’s defaults

A use-after-free in the kernel’s Multipath TCP code allows remote code execution on listening sockets. Go 1.24+ enables MPTCP by default for all listen sockets on Linux, so Go servers on unpatched kernels are exposed without any configuration. The Go team calls kernel patching the only proper fix; SetMultipathTCP(false) or the GODEBUG switch are fragile workarounds. Update your kernel.

The $6.3 billion Binance hack took 20 minutes

New detail on Thursday’s record heist: hackers drained hot wallets across at least ten chains in about 20 minutes, after 36+ hours of preparation — test withdrawals, a rehearsal four hours before, then the same code against live wallets. TRM Labs, Chainalysis and Elliptic attribute it to TraderTraitor, the North Korean group behind the $1.5B Bybit heist. Binance says the entry point was a compromised engineer’s laptop. About $2.8B, mostly stablecoins, is frozen; the remaining $3.3B in BTC, ETH and XRP largely cannot be.

Wired · HN

Nesformer: a NES CPU compiled — not trained — into Qwen3.5 weights

Nesformer computes Qwen3.5 weight values that implement a complete 6502 NES CPU, with no training involved. It uses Gated DeltaNet attention: each head’s 128×128 state matrix acts as addressable memory through one-hot key-value lookups. All 151 opcodes, 2KB of RAM and 32KB of ROM live in the weights; a Python host handles PPU, audio and input. Super Mario Bros. runs pixel-perfect against a reference emulator. The compiler is adapted from Qwenputer, the RISC-V-in-weights project covered on Thursday.

GitHub · HN

Shrinking NixOS idle RAM from 288MB to 96MB on a 512MB host

The biggest wins: mem_profiling=never and disabling transparent hugepages free about 52MB; trimming the kernel module tree from 162MB to 45MB on disk; dropping systemd-resolved (8.3MB) and systemd-timesyncd (4.6MB); socket-activating sshd. vm.swappiness=180 plus zstd zram capped at 512MB keeps channel updates feasible at a 371MB rebuild peak.

Tangled: a self-hostable, federated code forge on AT Protocol

Tangled keeps issues, PRs and comments as collaborative objects inside the git repos themselves, so projects stay portable. On AT Protocol you can self-host just the git layer, just CI runners, or the whole stack and still collaborate across instances. Recent work: a Svelte redesign, “bobbins” indexers in 11+ regions, and org accounts; private repos, a CLI and SDKs are next.

Tangled · HN

Sanstun: a sans-IO WireGuard state machine in Rust

Firezone’s sanstun separates IO, time and randomness from protocol logic. begin_encapsulate() returns a Send-able PendingEncapsulate, so crypto work moves to worker threads while the core state machine stays single-threaded and lock-free. Born from frustration maintaining a boringtun fork, it uses the type system to enforce protocol invariants at compile time.

No, npm, “estee” is not a typo of “testem”

npm’s typosquat filter (Levenshtein distance ≤ 2) blocked the package name estee as too close to testem. For short names the rule eliminates about 99.88% of the namespace — and npm support confirmed there is no human override.

The oldest ice is disappearing, and the Stone Age is emerging

A 5,000-year-old slate arrowhead with part of its shaft at the edge of an ice patch in Jotunheimen; reindeer on the ice behind. Photo: Science Norway

Glacial archaeologists recovered 48 prehistoric arrows this season from melting ice patches in Jotunheimen, including complete specimens with slate, bone and freshwater mussel-shell arrowheads. The ice preserves wood shafts and leather that normally vanish within centuries; a single patch has yielded more than 100 arrowheads. Researchers expect most artifact-bearing ice patches to be gone within 20 years.

Also today

  • Scribd breach hits Scribd, Slideshare, Everand and Fable: emails, last four card digits and payment history; notifications came nearly a month after the first blog notice — HN
  • Jules Verne’s Paris in the Twentieth Century: rejected in 1863 as too bleak, found in a family safe and published in 1994 — Blue Continuum · HN
cd ~/repos/josse-posten && claude --resume 544cb99e-7486-4e01-bbb1-b7f51ed18362