Base's Cobalt upgrade lets B20 token issuers configure balance seizures

Editorial illustration: A blue robotic arm holds a stack of metallic coins above three recessed compartments. Coin stacks sit in the middle and right compartments, with the right compartment outlined in warm light.

In brief

  • Cobalt was scheduled for Base mainnet on Sept. 30 at 18:00 UTC.
  • seizeWithMemo, a new function, moves tokens from a holder to another address.
  • SEIZE_EXEMPT_POLICY exempts every account unless the issuer configures it otherwise.
  • burnBlocked is deprecated under Cobalt but stays callable with its existing behavior.

What seizeWithMemo does

The new administrative operation is called seizeWithMemo. According to CryptoSlate's report, it moves a specified amount from a holder to another address. Total supply doesn't change, and the function skips ordinary transfer policies and holder allowances.

That's the key split. For a token that enables the feature, a holder could still be free to transfer while also being eligible for administrative reassignment, which is why CryptoSlate described Cobalt as adding another rule that can affect token balances.

It's opt-in.

A setting called SEIZE_EXEMPT_POLICY exempts all accounts when it's left unset, so an issuer has to configure which accounts lose their exemption before the function can take their tokens. Running a seizure also requires four conditions: SEIZE_ROLE, an unpaused seizure function, a permitted recipient and a sufficient balance. A separate recipient policy decides where seized tokens can go (if it's left unset, any otherwise valid destination is allowed).

How it differs from burnBlocked

B20's existing transfer policies check the sender and receiver, plus the executor for certain transfers made on another account's behalf. The standard already had burnBlocked, which lets an authorized caller destroy tokens held by an account that the transfer sender policy denies. Cobalt marks burnBlocked as deprecated but keeps it callable with its existing behavior.

Reassignment works differently. Seized tokens stay in circulation at another address, and destroying that supply takes a separate burn afterward. Seizure and burning also have their own administrative roles and pause controls.

The rollout timeline

CryptoSlate cited three Base sources for the schedule. The upgrade overview listed Cobalt as live on Sepolia since Sept. 23 and as shipping on mainnet on Sept. 30. Base's status page showed the mainnet upgrade as scheduled, with maintenance from 18:00 to 20:00 UTC. The v1.4.2 release added Cobalt mainnet support and told node operators to upgrade by Sept. 30 at 18:00 UTC.

Frequently asked questions

What does seizeWithMemo do on Base's B20 tokens?

seizeWithMemo is a new administrative operation that moves a specified amount from a holder to another address. It preserves total supply and skips ordinary transfer policies and holder allowances, according to CryptoSlate.

Can B20 issuers seize tokens by default after Cobalt?

No. SEIZE_EXEMPT_POLICY exempts all accounts when it's left unset, so an issuer has to configure which accounts lose their exemption first. Execution also requires SEIZE_ROLE, an unpaused seizure function, a permitted recipient and a sufficient balance.

How is seizure different from B20's existing burnBlocked function?

burnBlocked lets an authorized caller destroy tokens held by an account the transfer sender policy denies. Seizure reassigns tokens to another address, keeping them in circulation, and destroying them takes a separate burn. Cobalt deprecates burnBlocked but keeps it callable.