1. Account/Contract Merge

  • Merge Overview:
    • Casper currently uses separate Accounts and Contracts. Condor merges these into one record called AddressableEntity.
    • Existing Account and Contract records will migrate upon on-chain interaction (e.g., transactions, native transfers).
    • New “accounts” and “contracts” will create an AddressableEntity record.
    • PublicKeys and AccountHashes for existing Account records will remain functional with the new AddressableEntity.
  • Changes to Named Keys:
    • Named keys are now top-level and stored directly in global state.
    • Entry points for smart contracts are now stored directly in global state.
  • Action Items:
    • Off-chain logic that retrieves Account or Contract records must be modified to use the AddressableEntity record structure.

2. Fee Elimination

  • New Support Features:
    • Condor introduces configurable fee, refund, and pricing strategies.
    • The initial rollout will be in “NoFee” mode, where tokens are placed on hold instead of transferred from a paying purse.
    • A configurable interval determines how long a balance hold remains. The available balance is the actual balance minus non-expired holds.
    • Off-chain logic can continue using the existing query_balance endpoint or the new query_balance_details RPC endpoint for detailed balance information.
  • Action Items:
    • Wallet providers benefit from holds instead of fees as gas costs are returned over time.
    • Existing implementations generally do not need changes.
    • Advanced platforms with automated funding should consider the new behavior for optimal scheduling strategies.

3. Dynamic Pricing

  • Gas Price Changes:
    • Current gas price is 1 mote per unit of gas. Condor introduces a configurable gas price multiplier.
    • Gas price adjustment is based on block usage in the current era, adjusting up or down by 1 within set thresholds.
    • Minimum and maximum gas prices, and adjustment thresholds are configurable.
    • Gas price is included in the block header.
  • Action Items:
    • Plan for potential cost increases during high network usage.
    • Use the gas_tolerance field to specify maximum gas price for transactions.

4. Transaction Types

  • Transition to Transaction Model:
    • The Deploy structure is deprecated; Condor introduces a Transaction model.
    • Condor supports native / Wasm-less user-land mint and stake management actions.
  • Action Items:
    • Off-chain systems should verify compatibility with the legacy Deploy model.
    • Upgrade to the Transaction model may be necessary for incompatibilities or to leverage new features.

5. Block Restructure

  • Changes to Block Structure:
    • Block records are modified. New blocks post-Condor will use the new format; historical blocks retain their original format.
  • Action Items:
    • Client software must be upgraded to parse new blocks while retaining the ability to handle historical blocks.

6. Contract Level Events

  • New Feature:
    • Smart contracts can now define message topics and emit messages as contract level events.
  • Action Items:
    • Existing systems do not need changes.
    • Smart contracts using dictionaries for events should consider migrating to the new system for better security and support.

7. Zug Consensus Protocol

  • New Consensus Protocol:
    • Zug Consensus Protocol replaces Highway on the Casper network.
    • Private/hybrid networks can choose between Highway or Zug.
  • Action Items: None.

8. Server-Sent Event (SSE) Endpoint Changes

  • Event Stream Changes:
    • Structural changes to Block records and the transition from Deploy to Transaction model affect the event stream.
    • New event types: TransactionProcessed, TransactionExpired, etc., replace Deploy-related events.
  • Action Items:
    • Update existing software and SDKs to handle the new event stream post-Condor.