Cardstack, a framework for the development of decentralized applications today announced the deployment of its second major upgrade for the Cardstack Token (CARD) smart contract, and will be adopting the ZeppelinOS framework for upgradable contracts, which employs a proxy pattern.
To prepare for this upgrade, the Cardstack team reviewed the latest ZeppelinOS codebase and decided previous security vulnerabilities had been addressed.
The deployment is currently planned for Tuesday, September 11, 2018. Cardstack expects to proceed on third-party integrations soon after the upgrade is complete.
Background
The core idea behind Cardstack is to allow end-users and developers to “mix and match” features to fit their workflow. To achieve that, Cardstack has been designed as a full-stack application development platform complemented by a modular smart contract architecture.
Since its initial Ethereum mainnet deployment, end-users can always find the latest version of the Cardstack Token (CARD) smart contract using our Ethereum Name Service (ENS) address: cardstack.eth.
With the recent announcement of their technical roadmap, Cardstack explained their intention for CARD to serve as a universal fuel, so users can pay for any dApp, app, or cloud service using their CARD token balance.
To achieve this, we plan to roll out steady, iterative updates to integrate Cardstack with decentralized exchanges, stablecoins, and oracles, as well as enable compliance mechanisms such as CLUTCH (Conditionally Locked Until Token is Handed over), to grow the Cardstack ecosystem.
Important notes for the upgrade
- Transactions will be disabled for the duration of the upgrade.
- The upgrade is planned to begin Tuesday, September 11 at 9:00 AM EST (15:00 CEST) and will last an estimated 8–12 hours.
- Cardstack Token’s Ethereum address will change. The new address can be found at the ENS address, eth, once the upgrade is complete.
- This upgrade means the address will not need to change again when deploying new versions in the future.
- Cardstack will provide updates on the upgrade via its official Telegram channels.
For those who are interested, below are the full list of changes:
- Transition the Cardstack contract to the ZeppelinOS transparent proxy pattern, in line with the latest industry standards;
- Allow future smart contract upgrades to deploy without changing the token contract address;
- Refactor the ledger contract to significantly reduce gas usage for the transfer function by about 50%, to lessen the possibility of unexpected failures;
- Update Solidity code to the latest version specifically;
- Declare the maximum circulation cap and ensure all future token issuance is within this limit;
- Add back functionality for transactions of zero tokens to comply to the ERC20 standard.