diff --git a/arbitrum-docs/intro/glossary.mdx b/arbitrum-docs/intro/glossary.mdx index 1507187ad4..802c70c2ec 100644 --- a/arbitrum-docs/intro/glossary.mdx +++ b/arbitrum-docs/intro/glossary.mdx @@ -7,6 +7,6 @@ content_type: glossary import GlossaryPartial from '../partials/_glossary-partial.mdx'; -
+
diff --git a/arbitrum-docs/partials/_glossary-partial.mdx b/arbitrum-docs/partials/_glossary-partial.mdx index 26ff747f57..cd19ccbd6a 100644 --- a/arbitrum-docs/partials/_glossary-partial.mdx +++ b/arbitrum-docs/partials/_glossary-partial.mdx @@ -1,17 +1,17 @@ ### Active Validator {#active-validator} -A staked [Validator](/intro/glossary#validator) that makes disputable assertions to advance the state of an Arbitrum chain or to challenge the validity of others' assertions. (Not to be confused with the [Sequencer](/intro/glossary#sequencer) ). +A bonded [Validator](/intro/glossary#validator) that makes disputable assertions to advance the state of an Arbitrum chain or to challenge the validity of others' assertions. (Not to be confused with the [Sequencer](/intro/glossary#sequencer) ). ### Address Alias {#address-alias} -An address deterministically generated from an L1 contract address used on L2 to safely identify the source of an L1 to L2 message. +An address deterministically generated from a parent chain contract address used on child chain to safely identify the source of an parent to child chain message. ### Arb Token Bridge {#arb-token-bridge} -A series of contracts on an Arbitrum chain and its underlying chain that facilitate trustless movement of ERC-20 tokens between the two layers. +A series of contracts on an Arbitrum chain and its underlying chain that facilitate trustless movement of `ERC-20` tokens between the two layers. ### Arbified Token List {#arbified-token-list} A token list that conforms to [Uniswap's token list specification](https://github.com/Uniswap/token-lists); Arbified lists are generated by inputting externally maintained list ([i.e., coinmarketcap's list](https://api.coinmarketcap.com/data-api/v3/uniswap/all.json)) and outputting a list that includes all of the instances of token contracts on the Arbitrum chain bridged via the canonical [Arb Token Bridge](/intro/glossary#arb-token-bridge) from tokens on the inputted list. (See code [here](https://github.com/OffchainLabs/arbitrum-token-lists).) ### Arbitrum {#arbitrum} -A suite of Ethereum layer-2 scaling technologies built with the [Arbitrum Nitro](/intro/glossary#arbitrum-nitro) tech stack that includes [Arbitrum One](/intro/glossary#arbitrum-one) (a live implementation of the [Arbitrum Rollup Protocol](/intro/glossary#arbitrum-rollup-protocol)) and [Arbitrum Nova](/intro/glossary#arbitrum-nova) (a live implementation of the [Arbitrum AnyTrust Protocol](/intro/glossary#arbitrum-anytrust-protocol)). +A suite of Ethereum child chain scaling technologies built with the [Arbitrum Nitro](/intro/glossary#arbitrum-nitro) tech stack that includes [Arbitrum One](/intro/glossary#arbitrum-one) (a live implementation of the [Arbitrum Rollup Protocol](/intro/glossary#arbitrum-rollup-protocol)) and [Arbitrum Nova](/intro/glossary#arbitrum-nova) (a live implementation of the [Arbitrum AnyTrust Protocol](/intro/glossary#arbitrum-anytrust-protocol)). ### Arbitrum AnyTrust Chain {#arbitrum-anytrust-chain} An [Arbitrum chain](/intro/glossary#arbitrum-chain) that implements the [Arbitrum AnyTrust Protocol](/intro/glossary#arbitrum-anytrust-protocol). @@ -25,11 +25,14 @@ Web application built and maintained by [Offchain Labs](/intro/glossary#offchain ### Arbitrum chain {#arbitrum-chain} A blockchain that runs on the Arbitrum protocol. Arbitrum chains are EVM compatible, and use an underlying EVM chain (e.g., Ethereum) for settlement and for succinct fraud-proofs (as needed). Arbitrum chains come in two forms: [Arbitrum Rollup Chain](/intro/glossary#arbitrum-rollup-chain)s and [Arbitrum AnyTrust Chain](/intro/glossary#arbitrum-anytrust-chain)s. +### Arbitrum Chains {#arbitrum-chains} +Arbitrum chains (Orbit) refers to the ability for anyone to permissionlessly deploy [Layer 3 (L3)](/intro/glossary#layer-3-l3) chains on top of Arbitrum [Layer 2 (L2)](/intro/glossary#layer-2-l2) chains. + ### Arbitrum Classic {#arbitrum-classic} -[Old Arbitrum stack](https://github.com/OffchainLabs/arbitrum) that used custom virtual machine ("AVM"); no public Arbitrum chain uses the classic stack as of 8/31/2022 (they instead use [Arbitrum Nitro](/intro/glossary#arbitrum-nitro) ). +[Old Arbitrum stack](https://github.com/OffchainLabs/arbitrum) that used custom virtual machine ("AVM"); no public Arbitrum chain uses the classic stack as of 8/31/2022 (they instead use [Arbitrum Nitro](/intro/glossary#arbitrum-nitro) ). ### Arbitrum Full Node {#arbitrum-full-node} -A party who keeps track of the state of an Arbitrum chain and receives remote procedure calls (RPCs) from clients. Analogous to a non-staking L1 Ethereum node. +A party who keeps track of the state of an Arbitrum chain and receives remote procedure calls (RPCs) from clients. Analogous to a non-staking parent Ethereum node. ### Arbitrum Nitro {#arbitrum-nitro} Current Arbitrum tech stack; runs a fork of [Geth](/intro/glossary#geth) and uses WebAssembly as its underlying VM for fraud proofs. @@ -40,9 +43,6 @@ The first [Arbitrum AnyTrust Chain](/intro/glossary#arbitrum-anytrust-chain) run ### Arbitrum One {#arbitrum-one} The first [Arbitrum Rollup Chain](/intro/glossary#arbitrum-rollup-chain) running on Ethereum mainnet. Great for decentralized finance and other use-cases that demand strong security guarantees. Governed by the [Arbitrum DAO](https://docs.arbitrum.foundation/gentle-intro-dao-governance). -### Arbitrum Orbit {#arbitrum-orbit} -Arbitrum Orbit refers to the ability for anyone to permissionlessly deploy [Layer 3 (L3)](/intro/glossary#layer-3-l3) chains on top of Arbitrum [Layer 2 (L2)](/intro/glossary#layer-2-l2) chains. - ### Arbitrum Rollup Chain {#arbitrum-rollup-chain} An [Arbitrum chain](/intro/glossary#arbitrum-chain) that implements the [Arbitrum Rollup Protocol](/intro/glossary#arbitrum-rollup-protocol). @@ -53,13 +53,13 @@ A trustless, permissionless Arbitrum protocol that uses its underlying base laye Arbitrum's "operating system" that trustlessly handles system-level operations; includes the ability to emulate the EVM. ### Assertion {#assertion} -A staked claim made by an Arbitrum [Validator](/intro/glossary#validator) representing a claim about an Arbitrum chain's state. An [Assertion](/intro/glossary#assertion) may, e.g., propose a new assertion, or may be a step in a [Challenge](/intro/glossary#challenge). +A bonded claim made by an Arbitrum [Validator](/intro/glossary#validator) representing a claim about an Arbitrum chain's state. An [Assertion](/intro/glossary#assertion) may, e.g., propose a new assertion, or may be a step in a [Challenge](/intro/glossary#challenge). ### Auction Contract {#auction-contract} A smart contract that handles the state, accounting of funds for bids, and various operations of the [Timeboost](/intro/glossary#timeboost) auction. The contract is deployed on the target chain for which Timeboost is enabled. ### Autonomous Auctioneer {#autonomous-auctioneer} -Off chain software that receives bids from [Timeboost](/intro/glossary#timeboost) participants, processes and validates bids, and then posts the top valid bid (or top two valid bids in the case of a tie) to the [Auction Contract](/intro/glossary#auction-contract) to resolve the on-going Timeboost auction. The autonomous auctioneer, for a given chain, is provisioned & deployed by an entity designated by the chain's owner. +Off chain software that receives bids from [Timeboost](/intro/glossary#timeboost) participants, processes and validates bids, and then posts the top valid bid (or top two valid bids in the case of a tie) to the [Auction Contract](/intro/glossary#auction-contract) to resolve the on-going Timeboost auction. The autonomous auctioneer, for a given chain, is provisioned and deployed by an entity designated by the chain's owner. ### Batch {#batch} A group of Arbitrum transactions posted in a single transaction on the [Underlying Chain](/intro/glossary#underlying-chain) into the [Fast Inbox](/intro/glossary#fast-inbox) by the [Sequencer](/intro/glossary#sequencer). @@ -73,6 +73,10 @@ A cryptographic scheme that allows multiple signatures to be aggregated and comp ### BoLD {#bold} Short for "Bounded Liquidity Delay"; latest version of the Arbitrum [Challenge protocol](/intro/glossary#challenge-protocol) designed to eliminate [delay attack vectors](https://medium.com/offchainlabs/solutions-to-delay-attacks-on-rollups-434f9d05a07a) (see [here](https://medium.com/offchainlabs/bold-permissionless-validation-for-arbitrum-chains-9934eb5328cc) for more). Not currently on mainnet. +### Bonder {#bonder} +A [Validator](/intro/glossary#validator) who deposits a bond (in Ether on [Arbitrum One](/intro/glossary#arbitrum-one) and [Arbitrum Nova](/intro/glossary#arbitrum-nova) ) to vouch for a particular [Assertion](/intro/glossary#assertion) in an Arbitrum Chain. A validator who bonds on a false assertion can expect to lose their bond. An honest bonder can recover their bond once the assertion they are bonded on has been confirmed. +_Also known as: staker_ + ### Bridge {#bridge} A set of smart contracts for sending [Cross-chain message](/intro/glossary#crosschain-message)s between blockchains. Every [Arbitrum chain](/intro/glossary#arbitrum-chain) includes a bridge to/from its [Parent chain](/intro/glossary#parent-chain). @@ -83,7 +87,7 @@ An entity (i.e., a smart contract) with affordance to carry out critical upgrade A particular point in the history of an [Arbitrum chain](/intro/glossary#arbitrum-chain). A chain's state is determined by applying Arbitrum state-transition function to sequence of transactions (i.e., the chain's history). ### Challenge {#challenge} -When two [Staker](/intro/glossary#staker)s disagree about the correct verdict on an [Assertion](/intro/glossary#assertion), those stakers can be put in a challenge. The challenge is refereed by the contracts on the underlying chain. Eventually one staker wins the challenge. The protocol guarantees that an honest party will always win a challenge; the loser forfeits their stake. +When two [Bonders](/intro/glossary#bonder)s disagree about the correct verdict on an [Assertion](/intro/glossary#assertion), those bonders can be put in a challenge. The challenge is refereed by the contracts on the underlying chain. Eventually one bonder wins the challenge. The protocol guarantees that an honest party will always win a challenge; the loser forfeits their bond. ### Challenge Period {#challenge-period} Window of time (one week on Arbitrum One) over which an [Assertion](/intro/glossary#assertion) can be challenged, and after which the assertion can be confirmed. @@ -98,16 +102,16 @@ An Arbitrum Chain that settles to an underlying [Parent chain](/intro/glossary#p A program running on a user's machine, often in the user's browser, that interacts with contracts on an [Arbitrum chain](/intro/glossary#arbitrum-chain) and provides a user interface. ### Confirmation {#confirmation} -The decision by an [Arbitrum chain](/intro/glossary#arbitrum-chain) to finalize an assertion as part of the chain's history. Once an [Assertion](/intro/glossary#assertion) is confirmed its [L2 to L1 Message](/intro/glossary#l2-to-l1-message)s (e.g., withdrawals) can be executed. +The decision by an [Arbitrum chain](/intro/glossary#arbitrum-chain) to finalize an assertion as part of the chain's history. Once an [Assertion](/intro/glossary#assertion) is confirmed its [Child to parent chain Message](/intro/glossary#l2-to-l1-message)s (e.g., withdrawals) can be executed. ### Cross-chain message {#crosschain-message} An action taken on some chain A which asynchronously initiates an additional action on chain B. ### Custom Arb-Token {#custom-arbtoken} -Any L2 token contract registered to the [Arb Token Bridge](/intro/glossary#arb-token-bridge) that isn't a standard arb-token (i.e., a token that uses any gateway other than the [StandardERC20 gateway](/intro/glossary#standarderc20-gateway) ). +Any child chain token contract registered to the [Arb Token Bridge](/intro/glossary#arb-token-bridge) that isn't a standard arb-token (i.e., a token that uses any gateway other than the [`StandardERC20` gateway](/intro/glossary#standarderc20-gateway) ). ### Custom gateway {#custom-gateway} -Any [Token Gateway](/intro/glossary#token-gateway) that isn't the [StandardERC20 gateway](/intro/glossary#standarderc20-gateway). +Any [Token Gateway](/intro/glossary#token-gateway) that isn't the [`StandardERC20` gateway](/intro/glossary#standarderc20-gateway). ### dApp {#dapp} Short for "decentralized application." A dApp typically consists of smart contracts as well as a user-interface for interacting with them. @@ -128,7 +132,7 @@ Signed promise from a [Data Availability Committee (DAC)](/intro/glossary#data-a

### Defensive Validator {#defensive-validator} -A [Validator](/intro/glossary#validator) that watches an Arbitrum chain and takes action (i.e., stakes and challenges) only when and if an invalid [Assertion](/intro/glossary#assertion) occurs. +A [Validator](/intro/glossary#validator) that watches an Arbitrum chain and takes action (i.e., bonds and challenges) only when and if an invalid [Assertion](/intro/glossary#assertion) occurs. ### Delayed Inbox {#delayed-inbox} A contract that holds [Parent chain](/intro/glossary#parent-chain) initiated messages to be eventually included in the [Fast Inbox](/intro/glossary#fast-inbox). Inclusion of messages doesn't depend on the [Sequencer](/intro/glossary#sequencer). @@ -155,7 +159,7 @@ An address, defined in the [Auction Contract](/intro/glossary#auction-contract), BFT algorithm in which a committee comes to consensus on transaction ordering; current single-party [Sequencer](/intro/glossary#sequencer) on Arbitrum may eventually be replaced by a fair-ordering committee. ### Fast Exit / Liquidity Exit {#fast-exit--liquidity-exit} -A means by which a user can bypass an Arbitrum chain's [Challenge Period](/intro/glossary#challenge-period) when withdrawing fungible assets (or more generally, executing some "fungible" L2 to L1 operation); for trustless fast exits, a liquidity provider facilitates an atomic swap of the asset on L2 directly to L1. +A means by which a user can bypass an Arbitrum chain's [Challenge Period](/intro/glossary#challenge-period) when withdrawing fungible assets (or more generally, executing some "fungible" child chain to parent chain operation); for trustless fast exits, a liquidity provider facilitates an atomic swap of the asset on a child chain directly to a parent chain. ### Fast Inbox {#fast-inbox} Contract that holds a sequence of messages sent by clients to an Arbitrum Chain; a message can be put into the fast Inbox directly by the [Sequencer](/intro/glossary#sequencer) or indirectly through the [Delayed Inbox](/intro/glossary#delayed-inbox). @@ -170,13 +174,13 @@ Censorship resistant path for including a message into an Arbitrum chain via the The means by which an [Active Validator](/intro/glossary#active-validator) proves to its underlying chain that an invalid state transition has taken place. ### Gas Price Floor {#gas-price-floor} -Protocol-enforced minimum gas price on an Arbitrum chain; currently 0.1 gwei on [Arbitrum One](/intro/glossary#arbitrum-one) and 0.01 gwei on [Arbitrum Nova](/intro/glossary#arbitrum-nova). +Protocol-enforced minimum gas price on an Arbitrum chain; currently 0.1 `gwei` on [Arbitrum One](/intro/glossary#arbitrum-one) and 0.01 `gwei` on [Arbitrum Nova](/intro/glossary#arbitrum-nova). ### Gateway Router {#gateway-router} Contracts in the [Arb Token Bridge](/intro/glossary#arb-token-bridge) responsible for mapping tokens to their appropriate [Token Gateway](/intro/glossary#token-gateway). ### Generic-Custom Gateway {#genericcustom-gateway} -A particular [Custom gateway](/intro/glossary#custom-gateway) via which an L1 token contract can be registered to a token contract deployed to L2. A useful alternative to the [StandardERC20 gateway](/intro/glossary#standarderc20-gateway) for projects that wish to control the address of their L2 token contract, maintain L2 token contract upgradability, and for various other use-cases. +A particular [Custom gateway](/intro/glossary#custom-gateway) via which a parent chain token contract can be registered to a token contract deployed to a child chain. A useful alternative to the [`StandardERC20` gateway](/intro/glossary#standarderc20-gateway) for projects that wish to control the address of their child chain token contract, maintain the child chain token contract upgradability, and for various other use-cases. ### Geth {#geth} An execution-layer client that defines the Ethereum state transition function and handles network-layer logic like transaction memory pooling. [Arbitrum Nitro](/intro/glossary#arbitrum-nitro) utilizes a fork of Geth to implement Arbitrum's state transition function. @@ -188,7 +192,7 @@ The equivalent of gas in the [Stylus](/intro/glossary#stylus) vm. Ink is introdu Data structure that represents a group of L2 transactions (analogous to L1 blocks). ### L2 to L1 Message {#l2-to-l1-message} -A message initiated from within an Arbitrum chain to be eventually executed on [Layer 1 (L1)](/intro/glossary#layer-1-l1) (e.g., token or Ether withdrawals). On Rollup chains like [Arbitrum One](/intro/glossary#arbitrum-one), the [Challenge Period](/intro/glossary#challenge-period) must pass before an L2 to L1 message is executed. +A message initiated from within an Arbitrum chain to be eventually executed on [Layer 1 (parent chain)](/intro/glossary#layer-1-l1) (e.g., token or Ether withdrawals). On Rollup chains like [Arbitrum One](/intro/glossary#arbitrum-one), the [Challenge Period](/intro/glossary#challenge-period) must pass before a child to parent chain message is executed. ### Layer 1 (L1) {#layer-1-l1} The base protocol and underlying blockchain of the Ethereum network. Responsible for maintaining the integrity of the distributed ledger and executing smart contracts. Contains both Ethereum's execution layer and consensus layer. @@ -200,7 +204,7 @@ Trustless scaling solutions built on top of Ethereum's [Layer 1 (L1)](/intro/glo An Arbitrum chain whose core contract reside on an Arbitrum [Layer 2 (L2)](/intro/glossary#layer-2-l2) chain. ### Native Fee Token {#native-fee-token} -An ERC-20 token used as the native currency for gas fees on an [Arbitrum chain](/intro/glossary#arbitrum-chain) (i.e., as opposed to using Ether). [Arbitrum Orbit](/intro/glossary#arbitrum-orbit) introduced the option for chains to use native fee tokens. +An `ERC-20` token used as the native currency for gas fees on an [Arbitrum chain](/intro/glossary#arbitrum-chain) (i.e., as opposed to using Ether). [Arbitrum chains](/intro/glossary#arbitrum-chains) introduced the option for chains to use native fee tokens. ### Offchain Labs {#offchain-labs} The initial builders Arbitrum; current contributors to the Arbitrum ecosystem and service providers to the [Arbitrum DAO](https://docs.arbitrum.foundation/gentle-intro-dao-governance). Offchain also runs and maintains the [Sequencer](/intro/glossary#sequencer)s for [Arbitrum One](/intro/glossary#arbitrum-one) and [Arbitrum Nova](/intro/glossary#arbitrum-nova). @@ -209,7 +213,7 @@ The initial builders Arbitrum; current contributors to the Arbitrum ecosystem an Final step in a challenge; a single operation of the Arbitrum VM ([WASM](/intro/glossary#wasm) ) is executed on the underlying chain, and the validity of its state transition is verified. ### Outbox {#outbox} -An L1 contract responsible for tracking [L2 to L1 Message](/intro/glossary#l2-to-l1-message)s, including withdrawals, which can be executed once they are confirmed. The outbox stores a Merkle Root of all outgoing messages. +A parent chain contract responsible for tracking [Child to parent chain Message](/intro/glossary#l2-to-l1-message)s, including withdrawals, which can be executed once they are confirmed. The outbox stores a Merkle Root of all outgoing messages. ### Parent chain {#parent-chain} EVM compatible chain that acts as the settlement layer for one or more Arbitrum Chains (aka [Child chain](/intro/glossary#child-chain) ). E.g., Ethereum is the parent chain of both Arbitrum One and Arbitrum Nova. Parent chain is synonymous with "underlying chain." @@ -227,10 +231,10 @@ A situation in which transactions on a chain that were at some point considered The "automatic" (i.e., requiring no additional user action) execution of a [Retryable Ticket](/intro/glossary#retryable-ticket) on an Arbitrum chain. ### Retryable Redeem {#retryable-redeem} -The execution of a [Retryable Ticket](/intro/glossary#retryable-ticket) on L2; can be automatic (see [Retryable Autoredeem](/intro/glossary#retryable-autoredeem)) or manual via a user-initiated L2 transaction. +The execution of a [Retryable Ticket](/intro/glossary#retryable-ticket) on a child chain; can be automatic (see [Retryable Autoredeem](/intro/glossary#retryable-autoredeem)) or manual via a user-initiated child chain transaction. ### Retryable Ticket {#retryable-ticket} -An L1 to L2 cross chain message initiated by an L1 transaction sent to an Arbitrum chain for execution (e.g., a token deposit). +A parent to child cross chain message initiated by a parent chain transaction sent to an Arbitrum chain for execution (e.g., a token deposit). ### Reverse Token Gateway {#reverse-token-gateway} A [Token Gateway](/intro/glossary#token-gateway) in which the [Child chain](/intro/glossary#child-chain) gateway contract escrows and releases tokens, which the [Parent chain](/intro/glossary#parent-chain) Gateway contract mints and burns tokens. This in the inverse to how "typical" gateways work. @@ -239,7 +243,7 @@ A [Token Gateway](/intro/glossary#token-gateway) in which the [Child chain](/int An entity (currently a single-party on Arbitrum One) given rights to reorder transactions in the [Fast Inbox](/intro/glossary#fast-inbox) over a fixed window of time, who can thus give clients sub-blocktime [Soft Confirmation](/intro/glossary#soft-confirmation)s. (Not to be confused with a [Validator](/intro/glossary#validator)). ### Sequencer Feed {#sequencer-feed} -Off chain data feed published by the [Sequencer](/intro/glossary#sequencer) which clients can subscribe to for [Soft Confirmation](/intro/glossary#soft-confirmation)s of transactions before they are posted in [Batch](/intro/glossary#batch)es. +Offchain data feed published by the [Sequencer](/intro/glossary#sequencer) which clients can subscribe to for [Soft Confirmation](/intro/glossary#soft-confirmation)s of transactions before they are posted in [Batch](/intro/glossary#batch)es. ### Shared Sequencing {#shared-sequencing} A protocol design space in which multiple rollups use the same entity as their [Sequencer](/intro/glossary#sequencer); potential benefits include enhanced interoperability and credible neutrality. @@ -251,19 +255,16 @@ A computer program whose operations are defined and executed within a blockchain A semi-trusted promise from the [Sequencer](/intro/glossary#sequencer) to post a user's transaction in the near future; soft-confirmations happen prior to posting on the [Parent chain](/intro/glossary#parent-chain), and thus can be given near-instantaneously (i.e., faster than the parent chain's block times) ### Speed Limit {#speed-limit} -Target computation limit for an Arbitrum chain. [Arbitrum One](/intro/glossary#arbitrum-one) and [Arbitrum Nova](/intro/glossary#arbitrum-nova) currently target 7,000,000 gas / second. When computation exceeds this limit, fees rise, ala [EIP-1559](https://notes.ethereum.org/@vbuterin/eip-1559-faq). - -### Staker {#staker} -A [Validator](/intro/glossary#validator) who deposits a stake (in Ether on [Arbitrum One](/intro/glossary#arbitrum-one) and [Arbitrum Nova](/intro/glossary#arbitrum-nova) ) to vouch for a particular [Assertion](/intro/glossary#assertion) in an Arbitrum Chain. A validator who stakes on a false assertion can expect to lose their stake. An honest staker can recover their stake once the assertion they are staked on has been confirmed. +Target computation limit for an Arbitrum chain. [Arbitrum One](/intro/glossary#arbitrum-one) and [Arbitrum Nova](/intro/glossary#arbitrum-nova) currently target 7,000,000 gas / second. When computation exceeds this limit, fees rise, via [EIP-1559](https://notes.ethereum.org/@vbuterin/eip-1559-faq). ### Standard Arb-Token {#standard-arbtoken} -An token contract on an Arbitrum chain deployed via the [StandardERC20 gateway](/intro/glossary#standarderc20-gateway); offers basic ERC20 functionality in addition to deposit / withdrawal affordances. +An token contract on an Arbitrum chain deployed via the [`StandardERC20` gateway](/intro/glossary#standarderc20-gateway); offers basic `ERC-20` functionality in addition to deposit / withdrawal affordances. ### StandardERC20 gateway {#standarderc20-gateway} -[Token Gateway](/intro/glossary#token-gateway) via which any underlying chain's ERC20 token can permissionlessly bridge; the StandardERC20 gateway contracts deploy a [Standard Arb-Token](/intro/glossary#standard-arbtoken) on the [Child chain](/intro/glossary#child-chain) for each bridged token. +[Token Gateway](/intro/glossary#token-gateway) via which any underlying chain's `ERC-20` token can permissionlessly bridge; the `StandardERC20` gateway contracts deploy a [Standard Arb-Token](/intro/glossary#standard-arbtoken) on the [Child chain](/intro/glossary#child-chain) for each bridged token. ### State Transition Function {#state-transition-function} -The STF (State Transition Function) defines how new blocks are produced from input messages (i.e. transactions) in an Arbitrum chain. +The STF (State Transition Function) defines how new blocks are produced from input messages (i.e., transactions) in an Arbitrum chain. ### Stylus {#stylus} Upgrade to the [Arbitrum Nitro](/intro/glossary#arbitrum-nitro) virtual machine that allows smart contract support for languages like Rust and C++ by taking advantage of Nitro's use of WASM. Currently on testnet ([read more](https://docs.arbitrum.io/stylus/stylus-gentle-introduction)). @@ -272,7 +273,7 @@ Upgrade to the [Arbitrum Nitro](/intro/glossary#arbitrum-nitro) virtual machine A transaction ordering policy in which entities can bid for the right to access an express lane on the [Sequencer](/intro/glossary#sequencer) for faster transaction inclusion. See the [research specification](https://github.com/OffchainLabs/timeboost-design/tree/main) to learn more. ### Token Gateway {#token-gateway} -A pair of contracts in the token bridge — one on the [Parent chain](/intro/glossary#parent-chain) , one on the [Child chain](/intro/glossary#child-chain) — that provide a particular mechanism for handling the transfer of tokens between layers. Token gateways currently active in the bridge include the [StandardERC20 gateway](/intro/glossary#standarderc20-gateway) , the [Generic-Custom Gateway](/intro/glossary#genericcustom-gateway) , and the [WETH Gateway](/intro/glossary#weth-gateway). +A pair of contracts in the token bridge — one on the [Parent chain](/intro/glossary#parent-chain) , one on the [Child chain](/intro/glossary#child-chain) — that provide a particular mechanism for handling the transfer of tokens between layers. Token gateways currently active in the bridge include the [`StandardERC20` gateway](/intro/glossary#standarderc20-gateway) , the [Generic-Custom Gateway](/intro/glossary#genericcustom-gateway) , and the [WETH Gateway](/intro/glossary#weth-gateway). ### Transaction {#transaction} A user-initiated interaction with a Blockchain. Transactions are typically signed by users via wallets and are paid for via transaction fees. @@ -306,7 +307,7 @@ Widely supported binary code format for executable programs. Used by [Arbitrum N A popular WebAssembly runtime for executing [WASM](/intro/glossary#wasm) binaries. [A fork of WASMer](https://github.com/OffchainLabs/wasmer) is used for executing [Stylus](/intro/glossary#stylus) programs. WASMer executes considerably faster than Geth executes EVM code, contributing to Stylus's lower fees. ### Watchtower Validator {#watchtower-validator} -A [Validator](/intro/glossary#validator) that never stakes / never takes on chain action, who raises the alarm (by whatever off-chain means it chooses) if it witnesses an invalid assertion. +A [Validator](/intro/glossary#validator) that never bonds / never takes on chain action, who raises the alarm (by whatever offchain means it chooses) if it witnesses an invalid assertion. ### WETH Gateway {#weth-gateway} -[Token Gateway](/intro/glossary#token-gateway) for handing the bridging of wrapped Ether (WETH). WETH is unwrapped on L1 and rewrapped on L1 upon depositing (and vice-versa upon withdrawing), ensuring WETH on L2 always remains collateralized. \ No newline at end of file +[Token Gateway](/intro/glossary#token-gateway) for handing the bridging of wrapped Ether (`WETH`). `WETH` is unwrapped on the parent chain and rewrapped on the parent chain upon depositing (and vice-versa upon withdrawing), ensuring `WETH` on the child chain always remains collateralized. \ No newline at end of file diff --git a/notion-docs/scripts/genGlossary.ts b/notion-docs/scripts/genGlossary.ts deleted file mode 100644 index 40b0e1e1c4..0000000000 --- a/notion-docs/scripts/genGlossary.ts +++ /dev/null @@ -1,144 +0,0 @@ -import { Client } from '@notionhq/client' -import { - Definition, - escapeForJSON, - lookupProject, - lookupGlossaryTerms, - handleRenderError, - renderGlossary, - Record, - renderGlossaryJSON, - KnowledgeItem, - LinkableTerms, - LinkValidity, - renderRichTexts, - renderBlocks, - formatAnchor, - RenderMode, - RenderKnowledgeItemError, -} from '@offchainlabs/notion-docs-generator' -import fs from 'fs' -import dotenv from 'dotenv' -dotenv.config() - -// Notion client -const notion = new Client({ - auth: process.env.NOTION_TOKEN, -}) - -// Helper functions -export function recordValidity(record: Record): LinkValidity { - if (record.status != '4 - Continuously publishing') { - return { reason: 'page not yet marked as ready' } - } - if (record.publishable != 'Publishable') { - return { reason: 'page not marked as publishable' } - } - return 'Valid' -} -const isValid = (item: KnowledgeItem) => { - return recordValidity(item) === 'Valid' -} - -// Content getter -const getContentFromCMS = async (): Promise => { - const devDocsV2Project = await lookupProject( - notion, - 'Arbitrum developer docs portal v2.0' - ) - - return lookupGlossaryTerms(notion, { - filter: { - property: 'Project(s)', - relation: { - contains: devDocsV2Project, - }, - }, - }) -} - -export function renderKnowledgeItem( - item: KnowledgeItem, - linkableTerms: LinkableTerms -): {md: string, key: string} { - try { - const title = renderRichTexts( - item.title, - linkableTerms, - RenderMode.Markdown - ) - const titleforSort = renderRichTexts( - item.title, - linkableTerms, - RenderMode.Plain - ) - const dashDelimitedKey = formatAnchor(item.title, linkableTerms) - - let renderedText = renderBlocks(item.blocks, linkableTerms) - if (renderedText.length == 0) { - renderedText = renderRichTexts( - item.text, - linkableTerms, - RenderMode.Markdown - ) - } - return {md:`--- -title: ${title} -key: ${dashDelimitedKey} -titleforSort: ${titleforSort} ---- -${renderedText} -`, key: dashDelimitedKey} - } catch (e) { - throw new RenderKnowledgeItemError(item, e) - } -} - -async function generateFiles() { - const linkableTerms: LinkableTerms = {} - - // Getting content from the CMS - const glossaryTerms = await getContentFromCMS() - - // Glossary - // -------- - const addItems = (items: KnowledgeItem[], page: string) => { - for (const item of items) { - linkableTerms[item.pageId] = { - text: item.title, - anchor: item.title, - page: page, - valid: recordValidity(item), - notionURL: item.url, - } - } - } - - const validGlossaryTerms = glossaryTerms.filter(isValid) - addItems(validGlossaryTerms, '/intro/glossary') - for (const item of validGlossaryTerms) { - let {md, key} = renderKnowledgeItem(item, linkableTerms) - fs.writeFileSync( - `../arbitrum-docs/partials/glossary/_${key}.mdx`, - md - ) - } -} - -async function main() { - try { - await generateFiles() - } catch (e: unknown) { - if (await handleRenderError(e, notion)) { - process.exit(1) - } - throw e - } -} - -main() - .then(() => process.exit(0)) - .catch(err => { - console.error(err) - process.exit(1) - }) diff --git a/website/src/css/partials/_page-specific-styles.scss b/website/src/css/partials/_page-specific-styles.scss index 96b10ef0e4..4f1c893394 100644 --- a/website/src/css/partials/_page-specific-styles.scss +++ b/website/src/css/partials/_page-specific-styles.scss @@ -130,3 +130,11 @@ margin-bottom: 5px; } } + +[data-glossary-origin-slug='glossary-faq'] { + /* CSS properties */ + h3 { + font-size: 16px; + margin-bottom: 5px; + } +} diff --git a/website/static/glossary.json b/website/static/glossary.json index 55e0fba3b1..f5d0ed6533 100644 --- a/website/static/glossary.json +++ b/website/static/glossary.json @@ -1,45 +1,46 @@ { -"active-validator":{"title":"Active Validator","text":"

A staked Validator that makes disputable assertions to advance the state of an Arbitrum chain or to challenge the validity of others' assertions. (Not to be confused with the Sequencer ).

\n"}, -"address-alias":{"title":"Address Alias","text":"

An address deterministically generated from an L1 contract address used on L2 to safely identify the source of an L1 to L2 message.

\n"}, -"arb-token-bridge":{"title":"Arb Token Bridge","text":"

A series of contracts on an Arbitrum chain and its underlying chain that facilitate trustless movement of ERC-20 tokens between the two layers.

\n"}, +"active-validator":{"title":"Active Validator","text":"

A bonded Validator that makes disputable assertions to advance the state of an Arbitrum chain or to challenge the validity of others' assertions. (Not to be confused with the Sequencer ).

\n"}, +"address-alias":{"title":"Address Alias","text":"

An address deterministically generated from a parent chain contract address used on child chain to safely identify the source of an parent to child chain message.

\n"}, +"arb-token-bridge":{"title":"Arb Token Bridge","text":"

A series of contracts on an Arbitrum chain and its underlying chain that facilitate trustless movement of ERC-20 tokens between the two layers.

\n"}, "arbified-token-list":{"title":"Arbified Token List","text":"

A token list that conforms to Uniswap's token list specification; Arbified lists are generated by inputting externally maintained list (i.e., coinmarketcap's list) and outputting a list that includes all of the instances of token contracts on the Arbitrum chain bridged via the canonical Arb Token Bridge from tokens on the inputted list. (See code here.)

\n"}, -"arbitrum":{"title":"Arbitrum","text":"

A suite of Ethereum layer-2 scaling technologies built with the Arbitrum Nitro tech stack that includes Arbitrum One (a live implementation of the Arbitrum Rollup Protocol) and Arbitrum Nova (a live implementation of the Arbitrum AnyTrust Protocol).

\n"}, +"arbitrum":{"title":"Arbitrum","text":"

A suite of Ethereum child chain scaling technologies built with the Arbitrum Nitro tech stack that includes Arbitrum One (a live implementation of the Arbitrum Rollup Protocol) and Arbitrum Nova (a live implementation of the Arbitrum AnyTrust Protocol).

\n"}, "arbitrum-anytrust-chain":{"title":"Arbitrum AnyTrust Chain","text":"

An Arbitrum chain that implements the Arbitrum AnyTrust Protocol.

\n"}, "arbitrum-anytrust-protocol":{"title":"Arbitrum AnyTrust Protocol","text":"

An Arbitrum protocol that manages data availability with a permissioned set of parties known as the Data Availability Committee (DAC). This protocol reduces transaction fees by introducing an additional trust assumption for data availability in lieu of Ethereum's Trustless data availability mechanism. Arbitrum Nova is an example of an AnyTrust chain; Arbitrum One is an alternative chain that implements the purely trustless (and more L1-gas intensive) Arbitrum Rollup Protocol.

\n"}, "arbitrum-bridge-ui":{"title":"Arbitrum Bridge UI","text":"

Web application built and maintained by Offchain Labs for user-interactions with the Arb Token Bridge; visit it here.

\n"}, "arbitrum-chain":{"title":"Arbitrum chain","text":"

A blockchain that runs on the Arbitrum protocol. Arbitrum chains are EVM compatible, and use an underlying EVM chain (e.g., Ethereum) for settlement and for succinct fraud-proofs (as needed). Arbitrum chains come in two forms: Arbitrum Rollup Chains and Arbitrum AnyTrust Chains.

\n"}, -"arbitrum-classic":{"title":"Arbitrum Classic","text":"

Old Arbitrum stack that used custom virtual machine ("AVM"); no public Arbitrum chain uses the classic stack as of 8/31/2022 (they instead use Arbitrum Nitro ).

\n"}, -"arbitrum-full-node":{"title":"Arbitrum Full Node","text":"

A party who keeps track of the state of an Arbitrum chain and receives remote procedure calls (RPCs) from clients. Analogous to a non-staking L1 Ethereum node.

\n"}, +"arbitrum-chains":{"title":"Arbitrum Chains","text":"

Arbitrum chains (Orbit) refers to the ability for anyone to permissionlessly deploy Layer 3 (L3) chains on top of Arbitrum Layer 2 (L2) chains.

\n"}, +"arbitrum-classic":{"title":"Arbitrum Classic","text":"

Old Arbitrum stack that used custom virtual machine ("AVM"); no public Arbitrum chain uses the classic stack as of 8/31/2022 (they instead use Arbitrum Nitro ).

\n"}, +"arbitrum-full-node":{"title":"Arbitrum Full Node","text":"

A party who keeps track of the state of an Arbitrum chain and receives remote procedure calls (RPCs) from clients. Analogous to a non-staking parent Ethereum node.

\n"}, "arbitrum-nitro":{"title":"Arbitrum Nitro","text":"

Current Arbitrum tech stack; runs a fork of Geth and uses WebAssembly as its underlying VM for fraud proofs.

\n"}, "arbitrum-nova":{"title":"Arbitrum Nova","text":"

The first Arbitrum AnyTrust Chain running on Ethereum mainnet. Introduces cheaper transactions; great for gaming and social use-cases. Implements the Arbitrum AnyTrust Protocol, not the Arbitrum Rollup Protocol protocol. Governed by the Arbitrum DAO.

\n"}, "arbitrum-one":{"title":"Arbitrum One","text":"

The first Arbitrum Rollup Chain running on Ethereum mainnet. Great for decentralized finance and other use-cases that demand strong security guarantees. Governed by the Arbitrum DAO.

\n"}, -"arbitrum-orbit":{"title":"Arbitrum Orbit","text":"

Arbitrum Orbit refers to the ability for anyone to permissionlessly deploy Layer 3 (L3) chains on top of Arbitrum Layer 2 (L2) chains.

\n"}, "arbitrum-rollup-chain":{"title":"Arbitrum Rollup Chain","text":"

An Arbitrum chain that implements the Arbitrum Rollup Protocol.

\n"}, "arbitrum-rollup-protocol":{"title":"Arbitrum Rollup Protocol","text":"

A trustless, permissionless Arbitrum protocol that uses its underlying base layer for data availability and inherits its security. This protocol is implemented by our Arbitrum One chain.

\n"}, "arbos":{"title":"ArbOS","text":"

Arbitrum's "operating system" that trustlessly handles system-level operations; includes the ability to emulate the EVM.

\n"}, -"assertion":{"title":"Assertion","text":"

A staked claim made by an Arbitrum Validator representing a claim about an Arbitrum chain's state. An Assertion may, e.g., propose a new assertion, or may be a step in a Challenge.

\n"}, +"assertion":{"title":"Assertion","text":"

A bonded claim made by an Arbitrum Validator representing a claim about an Arbitrum chain's state. An Assertion may, e.g., propose a new assertion, or may be a step in a Challenge.

\n"}, "auction-contract":{"title":"Auction Contract","text":"

A smart contract that handles the state, accounting of funds for bids, and various operations of the Timeboost auction. The contract is deployed on the target chain for which Timeboost is enabled.

\n"}, -"autonomous-auctioneer":{"title":"Autonomous Auctioneer","text":"

Off chain software that receives bids from Timeboost participants, processes and validates bids, and then posts the top valid bid (or top two valid bids in the case of a tie) to the Auction Contract to resolve the on-going Timeboost auction. The autonomous auctioneer, for a given chain, is provisioned & deployed by an entity designated by the chain's owner.

\n"}, +"autonomous-auctioneer":{"title":"Autonomous Auctioneer","text":"

Off chain software that receives bids from Timeboost participants, processes and validates bids, and then posts the top valid bid (or top two valid bids in the case of a tie) to the Auction Contract to resolve the on-going Timeboost auction. The autonomous auctioneer, for a given chain, is provisioned and deployed by an entity designated by the chain's owner.

\n"}, "batch":{"title":"Batch","text":"

A group of Arbitrum transactions posted in a single transaction on the Underlying Chain into the Fast Inbox by the Sequencer.

\n"}, "blockchain":{"title":"Blockchain","text":"

A distributed digital ledger that is used to record transactions and store data in a secure, transparent, and tamper-resistant way, notably in cryptocurrency protocols.

\n"}, "bls-signature":{"title":"BLS Signature","text":"

A cryptographic scheme that allows multiple signatures to be aggregated and compacted into one efficiently verifiable, constant-sized signature. Used in the Arbitrum AnyTrust Protocol for the Data Availability Committee (DAC)'s signatures.

\n"}, "bold":{"title":"BoLD","text":"

Short for "Bounded Liquidity Delay"; latest version of the Arbitrum Challenge protocol designed to eliminate delay attack vectors (see here for more). Not currently on mainnet.

\n"}, +"bonder":{"title":"Bonder","text":"

A Validator who deposits a bond (in Ether on Arbitrum One and Arbitrum Nova ) to vouch for a particular Assertion in an Arbitrum Chain. A validator who bonds on a false assertion can expect to lose their bond. An honest bonder can recover their bond once the assertion they are bonded on has been confirmed.\nAlso known as: staker

\n"}, "bridge":{"title":"Bridge","text":"

A set of smart contracts for sending Cross-chain messages between blockchains. Every Arbitrum chain includes a bridge to/from its Parent chain.

\n"}, "chain-owner":{"title":"Chain Owner","text":"

An entity (i.e., a smart contract) with affordance to carry out critical upgrades to an Arbitrum chain's core protocol; this includes upgrading protocol contracts, setting core system parameters, and adding and removing other chain owners.

\n"}, "chain-state":{"title":"Chain state","text":"

A particular point in the history of an Arbitrum chain. A chain's state is determined by applying Arbitrum state-transition function to sequence of transactions (i.e., the chain's history).

\n"}, -"challenge":{"title":"Challenge","text":"

When two Stakers disagree about the correct verdict on an Assertion, those stakers can be put in a challenge. The challenge is refereed by the contracts on the underlying chain. Eventually one staker wins the challenge. The protocol guarantees that an honest party will always win a challenge; the loser forfeits their stake.

\n"}, +"challenge":{"title":"Challenge","text":"

When two Bonderss disagree about the correct verdict on an Assertion, those bonders can be put in a challenge. The challenge is refereed by the contracts on the underlying chain. Eventually one bonder wins the challenge. The protocol guarantees that an honest party will always win a challenge; the loser forfeits their bond.

\n"}, "challenge-period":{"title":"Challenge Period","text":"

Window of time (one week on Arbitrum One) over which an Assertion can be challenged, and after which the assertion can be confirmed.

\n"}, "challenge-protocol":{"title":"Challenge protocol","text":"

The protocol by which assertions are submitted, disputed, and ultimately confirmed. The Challenge Protocol guarantees that only valid Assertion will be confirmed provided that there is at least one honest Active Validator.

\n"}, "child-chain":{"title":"Child chain","text":"

An Arbitrum Chain that settles to an underlying Parent chain . For example, Arbitrum One and Arbitrum Nova are child chains of Ethereum.

\n"}, "client":{"title":"Client","text":"

A program running on a user's machine, often in the user's browser, that interacts with contracts on an Arbitrum chain and provides a user interface.

\n"}, -"confirmation":{"title":"Confirmation","text":"

The decision by an Arbitrum chain to finalize an assertion as part of the chain's history. Once an Assertion is confirmed its L2 to L1 Messages (e.g., withdrawals) can be executed.

\n"}, +"confirmation":{"title":"Confirmation","text":"

The decision by an Arbitrum chain to finalize an assertion as part of the chain's history. Once an Assertion is confirmed its Child to parent chain Messages (e.g., withdrawals) can be executed.

\n"}, "crosschain-message":{"title":"Cross-chain message","text":"

An action taken on some chain A which asynchronously initiates an additional action on chain B.

\n"}, -"custom-arbtoken":{"title":"Custom Arb-Token","text":"

Any L2 token contract registered to the Arb Token Bridge that isn't a standard arb-token (i.e., a token that uses any gateway other than the StandardERC20 gateway ).

\n"}, -"custom-gateway":{"title":"Custom gateway","text":"

Any Token Gateway that isn't the StandardERC20 gateway.

\n"}, +"custom-arbtoken":{"title":"Custom Arb-Token","text":"

Any child chain token contract registered to the Arb Token Bridge that isn't a standard arb-token (i.e., a token that uses any gateway other than the StandardERC20 gateway ).

\n"}, +"custom-gateway":{"title":"Custom gateway","text":"

Any Token Gateway that isn't the StandardERC20 gateway.

\n"}, "dapp":{"title":"dApp","text":"

Short for "decentralized application." A dApp typically consists of smart contracts as well as a user-interface for interacting with them.

\n"}, "data-availability-certificate":{"title":"Data Availability Certificate","text":"

Signed promise from a Data Availability Committee (DAC) attesting to the availability of a batch of data for an Arbitrum AnyTrust Chain.

\n"}, "data-availability-committee-dac":{"title":"Data Availability Committee (DAC)","text":"

\n A permissioned set of parties responsible for enforcing data availability in an{' '}\n Arbitrum AnyTrust Protocol chain. See{' '}\n \n \n Introducing AnyTrust Chains: Cheaper, Faster L2 Chains with Minimal Trust Assumptions\n \n {' '}\n to learn more.\n

"}, -"defensive-validator":{"title":"Defensive Validator","text":"

A Validator that watches an Arbitrum chain and takes action (i.e., stakes and challenges) only when and if an invalid Assertion occurs.

\n"}, +"defensive-validator":{"title":"Defensive Validator","text":"

A Validator that watches an Arbitrum chain and takes action (i.e., bonds and challenges) only when and if an invalid Assertion occurs.

\n"}, "delayed-inbox":{"title":"Delayed Inbox","text":"

A contract that holds Parent chain initiated messages to be eventually included in the Fast Inbox. Inclusion of messages doesn't depend on the Sequencer.

\n"}, "devtools-dashboard":{"title":"Dev-Tools Dashboard","text":"

Web application built and maintained by Offchain Labs for developers and users to debug Arbitrum transactions; i.e., executing or checking the status of Cross-chain messages; visit it here.

\n"}, "dissection":{"title":"Dissection","text":"

A step in the Challenge protocol in which two challenging parties interactively narrow down their disagreement until they reach a One Step Proof.

\n"}, @@ -48,46 +49,45 @@ "express-lane":{"title":"Express Lane","text":"

A component of Timeboost, the express lane is a special endpoint on the Sequencer that immediately sequences incoming, valid transactions signed by the current express lane controller.

\n"}, "express-lane-controller":{"title":"Express Lane Controller","text":"

An address, defined in the Auction Contract, that is granted the privilege to use the Express Lane. These privileges are granted after verifying that the incoming transactions were properly signed by the express lane controller, among other checks.

\n"}, "fair-ordering-algorithm":{"title":"Fair Ordering Algorithm","text":"

BFT algorithm in which a committee comes to consensus on transaction ordering; current single-party Sequencer on Arbitrum may eventually be replaced by a fair-ordering committee.

\n"}, -"fast-exit--liquidity-exit":{"title":"Fast Exit / Liquidity Exit","text":"

A means by which a user can bypass an Arbitrum chain's Challenge Period when withdrawing fungible assets (or more generally, executing some "fungible" L2 to L1 operation); for trustless fast exits, a liquidity provider facilitates an atomic swap of the asset on L2 directly to L1.

\n"}, +"fast-exit--liquidity-exit":{"title":"Fast Exit / Liquidity Exit","text":"

A means by which a user can bypass an Arbitrum chain's Challenge Period when withdrawing fungible assets (or more generally, executing some "fungible" child chain to parent chain operation); for trustless fast exits, a liquidity provider facilitates an atomic swap of the asset on a child chain directly to a parent chain.

\n"}, "fast-inbox":{"title":"Fast Inbox","text":"

Contract that holds a sequence of messages sent by clients to an Arbitrum Chain; a message can be put into the fast Inbox directly by the Sequencer or indirectly through the Delayed Inbox.

\n"}, "first-come-first-serve-fcfs":{"title":"First Come First Serve (FCFS)","text":"

A type of Transaction Ordering Policy used by the sequencer in Arbitrum chains whereby incoming transactions are sequenced into a block in the order that the transactions arrived.

\n"}, "forceinclusion":{"title":"Force-Inclusion","text":"

Censorship resistant path for including a message into an Arbitrum chain via the Delayed Inbox on its Parent chain; bypasses any Sequencer involvement.

\n"}, "fraud-proof":{"title":"Fraud proof","text":"

The means by which an Active Validator proves to its underlying chain that an invalid state transition has taken place.

\n"}, -"gas-price-floor":{"title":"Gas Price Floor","text":"

Protocol-enforced minimum gas price on an Arbitrum chain; currently 0.1 gwei on Arbitrum One and 0.01 gwei on Arbitrum Nova.

\n"}, +"gas-price-floor":{"title":"Gas Price Floor","text":"

Protocol-enforced minimum gas price on an Arbitrum chain; currently 0.1 gwei on Arbitrum One and 0.01 gwei on Arbitrum Nova.

\n"}, "gateway-router":{"title":"Gateway Router","text":"

Contracts in the Arb Token Bridge responsible for mapping tokens to their appropriate Token Gateway.

\n"}, -"genericcustom-gateway":{"title":"Generic-Custom Gateway","text":"

A particular Custom gateway via which an L1 token contract can be registered to a token contract deployed to L2. A useful alternative to the StandardERC20 gateway for projects that wish to control the address of their L2 token contract, maintain L2 token contract upgradability, and for various other use-cases.

\n"}, +"genericcustom-gateway":{"title":"Generic-Custom Gateway","text":"

A particular Custom gateway via which a parent chain token contract can be registered to a token contract deployed to a child chain. A useful alternative to the StandardERC20 gateway for projects that wish to control the address of their child chain token contract, maintain the child chain token contract upgradability, and for various other use-cases.

\n"}, "geth":{"title":"Geth","text":"

An execution-layer client that defines the Ethereum state transition function and handles network-layer logic like transaction memory pooling. Arbitrum Nitro utilizes a fork of Geth to implement Arbitrum's state transition function.

\n"}, "ink":{"title":"Ink","text":"

The equivalent of gas in the Stylus vm. Ink is introduced for finer granularity than gas offers since Stylus's operations are considerably cheaper than their EVM analogs.

\n"}, "l2-block":{"title":"L2 Block","text":"

Data structure that represents a group of L2 transactions (analogous to L1 blocks).

\n"}, -"l2-to-l1-message":{"title":"L2 to L1 Message","text":"

A message initiated from within an Arbitrum chain to be eventually executed on Layer 1 (L1) (e.g., token or Ether withdrawals). On Rollup chains like Arbitrum One, the Challenge Period must pass before an L2 to L1 message is executed.

\n"}, +"l2-to-l1-message":{"title":"L2 to L1 Message","text":"

A message initiated from within an Arbitrum chain to be eventually executed on Layer 1 (parent chain) (e.g., token or Ether withdrawals). On Rollup chains like Arbitrum One, the Challenge Period must pass before a child to parent chain message is executed.

\n"}, "layer-1-l1":{"title":"Layer 1 (L1)","text":"

The base protocol and underlying blockchain of the Ethereum network. Responsible for maintaining the integrity of the distributed ledger and executing smart contracts. Contains both Ethereum's execution layer and consensus layer.

\n"}, "layer-2-l2":{"title":"Layer 2 (L2)","text":"

Trustless scaling solutions built on top of Ethereum's Layer 1 (L1) base protocol, such as state channels, plasma chains, optimistic rollups, and ZK-rollups. Layer 2 solutions aim to increase scalability and reduce the cost of transactions on Ethereum's Layer 1 without introducing additional trust assumptions.

\n"}, "layer-3-l3":{"title":"Layer 3 (L3)","text":"

An Arbitrum chain whose core contract reside on an Arbitrum Layer 2 (L2) chain.

\n"}, -"native-fee-token":{"title":"Native Fee Token","text":"

An ERC-20 token used as the native currency for gas fees on an Arbitrum chain (i.e., as opposed to using Ether). Arbitrum Orbit introduced the option for chains to use native fee tokens.

\n"}, +"native-fee-token":{"title":"Native Fee Token","text":"

An ERC-20 token used as the native currency for gas fees on an Arbitrum chain (i.e., as opposed to using Ether). Arbitrum chains introduced the option for chains to use native fee tokens.

\n"}, "offchain-labs":{"title":"Offchain Labs","text":"

The initial builders Arbitrum; current contributors to the Arbitrum ecosystem and service providers to the Arbitrum DAO. Offchain also runs and maintains the Sequencers for Arbitrum One and Arbitrum Nova.

\n"}, "one-step-proof":{"title":"One Step Proof","text":"

Final step in a challenge; a single operation of the Arbitrum VM (WASM ) is executed on the underlying chain, and the validity of its state transition is verified.

\n"}, -"outbox":{"title":"Outbox","text":"

An L1 contract responsible for tracking L2 to L1 Messages, including withdrawals, which can be executed once they are confirmed. The outbox stores a Merkle Root of all outgoing messages.

\n"}, +"outbox":{"title":"Outbox","text":"

A parent chain contract responsible for tracking Child to parent chain Messages, including withdrawals, which can be executed once they are confirmed. The outbox stores a Merkle Root of all outgoing messages.

\n"}, "parent-chain":{"title":"Parent chain","text":"

EVM compatible chain that acts as the settlement layer for one or more Arbitrum Chains (aka Child chain ). E.g., Ethereum is the parent chain of both Arbitrum One and Arbitrum Nova. Parent chain is synonymous with "underlying chain."

\n"}, "portal":{"title":"Portal","text":"

A web application maintained by Offchain Labs showcasing the Arbitrum ecosystem; visit it here.

\n"}, "rblock":{"title":"RBlock","text":"

Refer to Assertion

\n"}, "reorg":{"title":"Reorg","text":"

A situation in which transactions on a chain that were at some point considered accepted then get rejected. In the context of an Arbitrum chain, once transactions are posted in the chain's Fast Inbox, the only way the chain can experience a reorg is if its Underlying Chain itself reorgs. Of note, Fraud proofs do not cause reorgs.

\n"}, "retryable-autoredeem":{"title":"Retryable Autoredeem","text":"

The "automatic" (i.e., requiring no additional user action) execution of a Retryable Ticket on an Arbitrum chain.

\n"}, -"retryable-redeem":{"title":"Retryable Redeem","text":"

The execution of a Retryable Ticket on L2; can be automatic (see Retryable Autoredeem) or manual via a user-initiated L2 transaction.

\n"}, -"retryable-ticket":{"title":"Retryable Ticket","text":"

An L1 to L2 cross chain message initiated by an L1 transaction sent to an Arbitrum chain for execution (e.g., a token deposit).

\n"}, +"retryable-redeem":{"title":"Retryable Redeem","text":"

The execution of a Retryable Ticket on a child chain; can be automatic (see Retryable Autoredeem) or manual via a user-initiated child chain transaction.

\n"}, +"retryable-ticket":{"title":"Retryable Ticket","text":"

A parent to child cross chain message initiated by a parent chain transaction sent to an Arbitrum chain for execution (e.g., a token deposit).

\n"}, "reverse-token-gateway":{"title":"Reverse Token Gateway","text":"

A Token Gateway in which the Child chain gateway contract escrows and releases tokens, which the Parent chain Gateway contract mints and burns tokens. This in the inverse to how "typical" gateways work.

\n"}, "sequencer":{"title":"Sequencer","text":"

An entity (currently a single-party on Arbitrum One) given rights to reorder transactions in the Fast Inbox over a fixed window of time, who can thus give clients sub-blocktime Soft Confirmations. (Not to be confused with a Validator).

\n"}, -"sequencer-feed":{"title":"Sequencer Feed","text":"

Off chain data feed published by the Sequencer which clients can subscribe to for Soft Confirmations of transactions before they are posted in Batches.

\n"}, +"sequencer-feed":{"title":"Sequencer Feed","text":"

Offchain data feed published by the Sequencer which clients can subscribe to for Soft Confirmations of transactions before they are posted in Batches.

\n"}, "shared-sequencing":{"title":"Shared Sequencing","text":"

A protocol design space in which multiple rollups use the same entity as their Sequencer; potential benefits include enhanced interoperability and credible neutrality.

\n"}, "smart-contract":{"title":"Smart Contract","text":"

A computer program whose operations are defined and executed within a blockchain consensus protocol.

\n"}, "soft-confirmation":{"title":"Soft Confirmation","text":"

A semi-trusted promise from the Sequencer to post a user's transaction in the near future; soft-confirmations happen prior to posting on the Parent chain, and thus can be given near-instantaneously (i.e., faster than the parent chain's block times)

\n"}, -"speed-limit":{"title":"Speed Limit","text":"

Target computation limit for an Arbitrum chain. Arbitrum One and Arbitrum Nova currently target 7,000,000 gas / second. When computation exceeds this limit, fees rise, ala EIP-1559.

\n"}, -"staker":{"title":"Staker","text":"

A Validator who deposits a stake (in Ether on Arbitrum One and Arbitrum Nova ) to vouch for a particular Assertion in an Arbitrum Chain. A validator who stakes on a false assertion can expect to lose their stake. An honest staker can recover their stake once the assertion they are staked on has been confirmed.

\n"}, -"standard-arbtoken":{"title":"Standard Arb-Token","text":"

An token contract on an Arbitrum chain deployed via the StandardERC20 gateway; offers basic ERC20 functionality in addition to deposit / withdrawal affordances.

\n"}, -"standarderc20-gateway":{"title":"StandardERC20 gateway","text":"

Token Gateway via which any underlying chain's ERC20 token can permissionlessly bridge; the StandardERC20 gateway contracts deploy a Standard Arb-Token on the Child chain for each bridged token.

\n"}, -"state-transition-function":{"title":"State Transition Function","text":"

The STF (State Transition Function) defines how new blocks are produced from input messages (i.e. transactions) in an Arbitrum chain.

\n"}, +"speed-limit":{"title":"Speed Limit","text":"

Target computation limit for an Arbitrum chain. Arbitrum One and Arbitrum Nova currently target 7,000,000 gas / second. When computation exceeds this limit, fees rise, via EIP-1559.

\n"}, +"standard-arbtoken":{"title":"Standard Arb-Token","text":"

An token contract on an Arbitrum chain deployed via the StandardERC20 gateway; offers basic ERC-20 functionality in addition to deposit / withdrawal affordances.

\n"}, +"standarderc20-gateway":{"title":"StandardERC20 gateway","text":"

Token Gateway via which any underlying chain's ERC-20 token can permissionlessly bridge; the StandardERC20 gateway contracts deploy a Standard Arb-Token on the Child chain for each bridged token.

\n"}, +"state-transition-function":{"title":"State Transition Function","text":"

The STF (State Transition Function) defines how new blocks are produced from input messages (i.e., transactions) in an Arbitrum chain.

\n"}, "stylus":{"title":"Stylus","text":"

Upgrade to the Arbitrum Nitro virtual machine that allows smart contract support for languages like Rust and C++ by taking advantage of Nitro's use of WASM. Currently on testnet (read more).

\n"}, "timeboost":{"title":"Timeboost","text":"

A transaction ordering policy in which entities can bid for the right to access an express lane on the Sequencer for faster transaction inclusion. See the research specification to learn more.

\n"}, -"token-gateway":{"title":"Token Gateway","text":"

A pair of contracts in the token bridge — one on the Parent chain , one on the Child chain — that provide a particular mechanism for handling the transfer of tokens between layers. Token gateways currently active in the bridge include the StandardERC20 gateway , the Generic-Custom Gateway , and the WETH Gateway.

\n"}, +"token-gateway":{"title":"Token Gateway","text":"

A pair of contracts in the token bridge — one on the Parent chain , one on the Child chain — that provide a particular mechanism for handling the transfer of tokens between layers. Token gateways currently active in the bridge include the StandardERC20 gateway , the Generic-Custom Gateway , and the WETH Gateway.

\n"}, "transaction":{"title":"Transaction","text":"

A user-initiated interaction with a Blockchain. Transactions are typically signed by users via wallets and are paid for via transaction fees.

\n"}, "transaction-ordering-policy":{"title":"Transaction Ordering Policy","text":"

The rules and logic employed by a chain to order incoming transactions into a block.

\n"}, "trustless":{"title":"Trustless","text":"

\nIn the context of Ethereum, trustless refers to the ability of a system to operate without reliance on a central authority or intermediary. Instead, users place their trust in math and protocols.\n
\n\n
\nThis is achieved through the use of cryptographic techniques and decentralized consensus mechanisms that let users verify the integrity of network transactions using open-source software. Trustless systems are considered to be more secure and resistant to fraud or tampering because they don't rely on a single point of failure that can be exploited by attackers.\n

\n\n

\n\n

"}, @@ -95,6 +95,6 @@ "validator":{"title":"Validator","text":"

An Arbitrum Full Node that tracks the status of the chains' Assertions. A validator may be a Watchtower Validator, a Defensive Validator, or an Active Validator.

\n"}, "wasm":{"title":"WASM","text":"

Widely supported binary code format for executable programs. Used by Arbitrum Nitro for Fraud proofs , and more broadly used by Stylus to support performant smart contracts in a wide variety of languages.

\n"}, "wasmer":{"title":"WASMer","text":"

A popular WebAssembly runtime for executing WASM binaries. A fork of WASMer is used for executing Stylus programs. WASMer executes considerably faster than Geth executes EVM code, contributing to Stylus's lower fees.

\n"}, -"watchtower-validator":{"title":"Watchtower Validator","text":"

A Validator that never stakes / never takes on chain action, who raises the alarm (by whatever off-chain means it chooses) if it witnesses an invalid assertion.

\n"}, -"weth-gateway":{"title":"WETH Gateway","text":"

Token Gateway for handing the bridging of wrapped Ether (WETH). WETH is unwrapped on L1 and rewrapped on L1 upon depositing (and vice-versa upon withdrawing), ensuring WETH on L2 always remains collateralized.

\n"} +"watchtower-validator":{"title":"Watchtower Validator","text":"

A Validator that never bonds / never takes on chain action, who raises the alarm (by whatever offchain means it chooses) if it witnesses an invalid assertion.

\n"}, +"weth-gateway":{"title":"WETH Gateway","text":"

Token Gateway for handing the bridging of wrapped Ether (WETH). WETH is unwrapped on the parent chain and rewrapped on the parent chain upon depositing (and vice-versa upon withdrawing), ensuring WETH on the child chain always remains collateralized.

\n"} } \ No newline at end of file