Repository: iotaledger/iota
Pull request #6369: fix(docs): Fix docs by explaining how ISC interacts with Move
Author: login: Dr-Electron
Labels: name: documentation
description: Improvements or additions to documentation
name: devrel
description: Issues related to the DevRel team
Created: 2025-04-11T10:02:39Z | Merged: 2025-04-20T22:52:45Z

# Description of change

This PR removes any mentions of UTXO and adds some small summary of the Move contracts used to bridge funds between the VMs

## Links to any relevant issues

Fixes #4856

## Type of change

- Documentation Fix

## Change checklist

- [x] I have followed the contribution guidelines for this project
- [x] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [ ] I have added tests that prove my fix is effective or that my feature works
- [ ] I have checked that new and existing unit tests pass locally with my changes


Linked issue #4856: Create an explanatory article about the bridge solution.
Once we finalize the bridge solution, please create an explanatory article for the solutions technical decisons.

Diff:
diff --git a/docs/content/iota-evm/explanations/core-contracts.md b/docs/content/iota-evm/explanations/core-contracts.md
index 0ab294dc18d..0861ab33fad 100644
--- a/docs/content/iota-evm/explanations/core-contracts.md
+++ b/docs/content/iota-evm/explanations/core-contracts.md
@@ -1,5 +1,5 @@
 ---
-description: There currently are 6 core smart contracts that are always deployed on each  chain, root, _default, accounts, blob, blocklog, and governance.
+description: There currently are 7 core smart contracts that are always deployed on each  chain, root, _default, accounts, blob, blocklog, and governance.
 image: /img/banner/banner_wasp_core_contracts_overview.png
 tags:
   - core-contract
diff --git a/docs/content/iota-evm/explanations/move-anchor.md b/docs/content/iota-evm/explanations/move-anchor.md
new file mode 100644
index 00000000000..3c07d00ac07
--- /dev/null
+++ b/docs/content/iota-evm/explanations/move-anchor.md
@@ -0,0 +1,21 @@
+---
+description: The IOTA EVM can be interacted with using the ISC Move packages.
+teams:
+ - iotaledger/l2-smart-contract
+---
+
+# ISC Move Packages
+
+As mentioned in the [state anchoring](./states.md) section, the IOTA EVM anchors into Move using the Anchor object. The Anchor is part of the ISC Move packages, a set of smart contracts that provide the necessary functionality for the two VMs to interact.
+
+## anchor
+
+The `anchor` package defines the Anchor object, which manages all L1 funds of the chain. It provides functions to create new chains, update their state, and receive requests.
+
+## assets_bag
+
+The `assets_bag` package defines the `AssetsBag` object used to manage assets in the ISC ecosystem. It is, for example, used to send funds to the EVM by interacting with the `request` package.
+
+## request
+
+The `request` package defines the logic of interacting with the EVM through [core contracts](./core-contracts.md). It provides functions to create requests that contain the BCS-encoded parameter to call a core contract.
diff --git a/docs/content/iota-evm/explanations/states.md b/docs/content/iota-evm/explanations/states.md
index 1ceb978bb78..9ebb9a0de4c 100644
--- a/docs/content/iota-evm/explanations/states.md
+++ b/docs/content/iota-evm/explanations/states.md
@@ -1,12 +1,12 @@
 ---
-description: The state of the chain consists of balances of native IOTA digital assets and a collection of key/value pairs which represents use case-specific data stored in the chain by its smart contracts outside the UTXO ledger.
+description: The chain's state consists of balances of IOTA objects and a collection of key/value pairs representing use case-specific data stored in the chain by its smart contracts outside the object ledger.
 image: /img/iota-evm/chain0.png
 tags:
-  - explanation
-  - state
-  - evm
+ - explanation
+ - state
+ - evm
 teams:
-  - iotaledger/l2-smart-contract
+ - iotaledger/l2-smart-contract
 ---
 
 # State, Transitions, and State Anchoring
@@ -15,40 +15,35 @@ teams:
 
 The state of the chain consists of:
 
-- A ledger of accounts owning IOTA _digital assets_ (base tokens, native tokens, and NFTs). The chain acts as a custodian
-  for those funds on behalf of each account's owner.
-- A collection of arbitrary key/value pairs (the _data state_) that contains use case-specific data stored by the smart
-  contracts in the chain.
+- A ledger of accounts owning IOTA _objects_ (coins or other objects). The chain acts as a custodian for those funds on behalf of each account's owner.
+- A collection of arbitrary key/value pairs (the _data state_) that contains use case-specific data stored by the smart contracts in the chain.
 
 The chain's state is an append-only (immutable) _data structure_ maintained by the distributed consensus of its
 validators.
 
 ## Digital Assets on the Chain
 
-Each native L1 account in the IOTA UTXO ledger is represented by an address and controlled by an entity holding the
+Each native L1 account in the IOTA object ledger is represented by an address and controlled by an entity holding the
 corresponding private/public key pair.
-In the UTXO ledger, an account is a collection of UTXOs belonging to the address.
+In the object ledger, an account is a collection of objects belonging to the address.
 
-Each ISC L2 chain has a L1 account, called the _chain account_, holding all tokens entrusted to the chain in a single
-UTXO, the _state output_.
+Each ISC L2 chain has an L1 account, called the _chain account_, holding all coins and objects entrusted to the chain in a single
+object, the anchor.
 It is similar to how a bank holds all deposits in its vault. This way, the chain (the entity controlling the state
-output) becomes a custodian for the assets owned by its clients, similar to how the bank’s client owns the money
+output) becomes a custodian for the assets owned by its clients, similar to how the bank's client owns the money
 deposited in the bank.
 
 The consolidated assets held in the chain are the _total assets on-chain_, which are contained in the state output of
 the chain.
 
-The chain account is controlled by a _chain address_, also known as _chain ID_.
-It is a special kind of L1 address, an _alias address_, which abstracts the controlling entity (the state controller
-address) from the identity of the chain: the controlling entity of the chain may change, while the chain ID stays the
-same.
+The chain account is controlled by the `ChainOwner`(the set of validators) and owns an Anchor with an Object ID, also known as _chain ID_.
 
 ## The Data State
 
 The data state of the chain consists of a collection of key/value pairs.
 Each key and each value are arbitrary byte arrays.
 
-In its persistent form, the data state is stored in a key/value database outside the UTXO ledger and maintained by the
+In its persistent form, the data state is stored in a key/value database outside the object ledger and maintained by the
 validator nodes of the chain.
 The state stored in the database is called the _solid state_.
 
@@ -60,20 +55,19 @@ candidates, with a possibility for one of them to be solidified.
 The data state has a state hash, a timestamp, and a state index.
 The state hash is usually a Merkle root, but it can be any hashing function of all data in the data state.
 
-The data state hash and on-chain assets are contained in a single atomic unit on the L1 ledger: the state UTXO.
-Each state mutation (state transition) of the chain is an atomic event that changes the on-chain assets and the data
-state, consuming the previous state UTXO and producing a new one.
+The data state hash and on-chain assets are contained in a single atomic unit on the L1 ledger: the anchor object.
+Each state mutation (state transition) of the chain is an atomic event that changes the on-chain assets and the data state.
 
 ## Anchoring the State
 
 The data state is stored outside the ledger, on the distributed database maintained by _validator_ nodes.
-_Anchoring the state_ means placing the hash of the data state into the state UTXO and adding it to the L1 UTXO ledger.
-The UTXO ledger guarantees that there is _exactly one_ such output for each chain on the ledger at every moment.
-We call this output the _state output_ (or state anchor) and the containing transaction the _state transaction_ (or
-anchor transaction) of the chain.
-The state output is controlled (i.e., can be unlocked/consumed) by the entity running the chain.
+_Anchoring the state_ means placing the hash of the data state into the anchor object and adding it to the L1 ledger.
+The ledger guarantees that there is _exactly one_ such object for each chain on the ledger at every moment.
+We call this object the anchor object and the containing transaction the _or
+anchor transaction_ of the chain.
+The anchor object is controlled by the entity running the chain.
 
-With the anchoring mechanism, the UTXO ledger provides the following guarantees to the IOTA Smart Contracts chain:
+With the anchoring mechanism, the object ledger provides the following guarantees to the IOTA Smart Contracts chain:
 
 - There is a global consensus on the state of the chain
 - The state is immutable and tamper-proof
@@ -81,7 +75,7 @@ With the anchoring mechanism, the UTXO ledger provides the following guarantees
 
 The state output contains:
 
-- The identity of the chain (its L1 alias address)
+- The identity of the chain (its L1 object ID)
 - The hash of the data state
 - The state index, which is incremented with each new state output
 
@@ -97,19 +91,18 @@ A _block_ is a collection of mutations to the data state that is applied in a st
 next data state = apply(current data state, block)
 ```
 
-The state transition in the chain occurs atomically in a L1 transaction that consumes the previous state UTXO and
-produces the next one. The transaction includes the movement of the chain's assets and the update of the state hash,
+The state transition in the chain occurs atomically in an L1 transaction that mutates the Anchor object. The transaction includes the movement of the chain's assets and the update of the state hash,
 
 At any moment in time, the data state of the chain is a result of applying the historical sequence of blocks, starting
 from the empty data state.
 
 ![State transitions](/img/iota-evm/chain0.png)
 
-On the L1 UTXO ledger, the state's history is represented as a sequence (chain) of UTXOs, each holding the chain’s
+On the L1 ledger, the state's history is represented as a sequence (chain) of versions of the anchor object, each holding the chain's
 assets in a particular state and the anchoring hash of the data state.
-Note that not all the state's transition history may be available: due to practical reasons, older transactions may be
+Note that not all of the state's transition history may be available: due to practical reasons, older transactions may be
 pruned in a snapshot process.
-The only thing guaranteed is that the tip of the chain of UTXOs is always available (which includes the latest data
+The only thing guaranteed is that the tip of the chain of objects is always available (which includes the latest data
 state hash).
 
 The ISC virtual machine (VM) computes the blocks and state outputs that anchor the state, which ensures that the state
diff --git a/docs/content/sidebars/iota-evm.js b/docs/content/sidebars/iota-evm.js
index 99a04541ee5..c7b032b5c1e 100644
--- a/docs/content/sidebars/iota-evm.js
+++ b/docs/content/sidebars/iota-evm.js
@@ -377,6 +377,11 @@ const iotaEvm = [
                 label: 'How Accounts Work',
                 id: 'iota-evm/explanations/how-accounts-work',
             },
+            {
+                type: 'doc',
+                label: 'Move Packages',
+                id: 'iota-evm/explanations/move-anchor',
+            },
             {
                 type: 'link',
                 label: 'Core Contracts',


Reviews:
user: login: lucas-tortora
body: I don't think anchor or object need capitals, am I missing something?
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-04-11T11:22:19Z
user: login: Dr-Electron
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-04-11T13:46:30Z
user: login: lucas-tortora
state: APPROVED
author_association: CONTRIBUTOR
submitted_at: 2025-04-15T15:13:23Z
user: login: Ginowine
state: APPROVED
author_association: CONTRIBUTOR
submitted_at: 2025-04-17T13:20:12Z

Review comments:
diff_hunk: @@ -1,12 +1,12 @@
 ---
-description: The state of the chain consists of balances of native IOTA digital assets and a collection of key/value pairs which represents use case-specific data stored in the chain by its smart contracts outside the UTXO ledger.
+description: The chain's state consists of balances of IOTA Objects and a collection of key/value pairs representing use case-specific data stored in the chain by its smart contracts outside the Object ledger.
path: docs/content/iota-evm/explanations/states.md
user: login: lucas-tortora
body: ```suggestion
description: The chain's state consists of balances of IOTA objects and a collection of key/value pairs representing use case-specific data stored in the chain by its smart contracts outside the object ledger.
```
created_at: 2025-04-11T11:18:55Z
author_association: CONTRIBUTOR
diff_hunk: @@ -15,40 +15,36 @@ teams:
 
 The state of the chain consists of:
 
-- A ledger of accounts owning IOTA _digital assets_ (base tokens, native tokens, and NFTs). The chain acts as a custodian
-  for those funds on behalf of each account's owner.
+- A ledger of accounts owning IOTA _Objects_ (coins or other objects). The chain acts as a custodian for those funds on behalf of each account's owner.
path: docs/content/iota-evm/explanations/states.md
user: login: lucas-tortora
body: ```suggestion
- A ledger of accounts owning IOTA _objects_ (coins or other objects). The chain acts as a custodian for those funds on behalf of each account's owner.
```
created_at: 2025-04-11T11:19:19Z
author_association: CONTRIBUTOR
diff_hunk: @@ -15,40 +15,36 @@ teams:
 
 The state of the chain consists of:
 
-- A ledger of accounts owning IOTA _digital assets_ (base tokens, native tokens, and NFTs). The chain acts as a custodian
-  for those funds on behalf of each account's owner.
+- A ledger of accounts owning IOTA _Objects_ (coins or other objects). The chain acts as a custodian for those funds on behalf of each account's owner.
 - A collection of arbitrary key/value pairs (the _data state_) that contains use case-specific data stored by the smart
-  contracts in the chain.
+ contracts in the chain.
 
 The chain's state is an append-only (immutable) _data structure_ maintained by the distributed consensus of its
 validators.
 
 ## Digital Assets on the Chain
 
-Each native L1 account in the IOTA UTXO ledger is represented by an address and controlled by an entity holding the
+Each native L1 account in the IOTA Object ledger is represented by an address and controlled by an entity holding the
path: docs/content/iota-evm/explanations/states.md
user: login: lucas-tortora
body: ```suggestion
Each native L1 account in the IOTA object ledger is represented by an address and controlled by an entity holding the
```
created_at: 2025-04-11T11:20:02Z
author_association: CONTRIBUTOR
diff_hunk: @@ -15,40 +15,36 @@ teams:
 
 The state of the chain consists of:
 
-- A ledger of accounts owning IOTA _digital assets_ (base tokens, native tokens, and NFTs). The chain acts as a custodian
-  for those funds on behalf of each account's owner.
+- A ledger of accounts owning IOTA _Objects_ (coins or other objects). The chain acts as a custodian for those funds on behalf of each account's owner.
 - A collection of arbitrary key/value pairs (the _data state_) that contains use case-specific data stored by the smart
-  contracts in the chain.
+ contracts in the chain.
 
 The chain's state is an append-only (immutable) _data structure_ maintained by the distributed consensus of its
 validators.
 
 ## Digital Assets on the Chain
 
-Each native L1 account in the IOTA UTXO ledger is represented by an address and controlled by an entity holding the
+Each native L1 account in the IOTA Object ledger is represented by an address and controlled by an entity holding the
 corresponding private/public key pair.
-In the UTXO ledger, an account is a collection of UTXOs belonging to the address.
+In the Object ledger, an account is a collection of Objects belonging to the address.
path: docs/content/iota-evm/explanations/states.md
user: login: lucas-tortora
body: ```suggestion
In the object ledger, an account is a collection of objects belonging to the address.
```
created_at: 2025-04-11T11:20:12Z
author_association: CONTRIBUTOR
diff_hunk: @@ -15,40 +15,36 @@ teams:
 
 The state of the chain consists of:
 
-- A ledger of accounts owning IOTA _digital assets_ (base tokens, native tokens, and NFTs). The chain acts as a custodian
-  for those funds on behalf of each account's owner.
+- A ledger of accounts owning IOTA _Objects_ (coins or other objects). The chain acts as a custodian for those funds on behalf of each account's owner.
 - A collection of arbitrary key/value pairs (the _data state_) that contains use case-specific data stored by the smart
-  contracts in the chain.
+ contracts in the chain.
 
 The chain's state is an append-only (immutable) _data structure_ maintained by the distributed consensus of its
 validators.
 
 ## Digital Assets on the Chain
 
-Each native L1 account in the IOTA UTXO ledger is represented by an address and controlled by an entity holding the
+Each native L1 account in the IOTA Object ledger is represented by an address and controlled by an entity holding the
 corresponding private/public key pair.
-In the UTXO ledger, an account is a collection of UTXOs belonging to the address.
+In the Object ledger, an account is a collection of Objects belonging to the address.
 
-Each ISC L2 chain has a L1 account, called the _chain account_, holding all tokens entrusted to the chain in a single
-UTXO, the _state output_.
+Each ISC L2 chain has an L1 account, called the _chain account_, holding all coins and objects entrusted to the chain in a single
+Object, the Anchor.
path: docs/content/iota-evm/explanations/states.md
user: login: lucas-tortora
body: ```suggestion
object, the anchor.
```
created_at: 2025-04-11T11:20:31Z
author_association: CONTRIBUTOR
diff_hunk: @@ -15,40 +15,36 @@ teams:
 
 The state of the chain consists of:
 
-- A ledger of accounts owning IOTA _digital assets_ (base tokens, native tokens, and NFTs). The chain acts as a custodian
-  for those funds on behalf of each account's owner.
+- A ledger of accounts owning IOTA _Objects_ (coins or other objects). The chain acts as a custodian for those funds on behalf of each account's owner.
 - A collection of arbitrary key/value pairs (the _data state_) that contains use case-specific data stored by the smart
-  contracts in the chain.
+ contracts in the chain.
 
 The chain's state is an append-only (immutable) _data structure_ maintained by the distributed consensus of its
 validators.
 
 ## Digital Assets on the Chain
 
-Each native L1 account in the IOTA UTXO ledger is represented by an address and controlled by an entity holding the
+Each native L1 account in the IOTA Object ledger is represented by an address and controlled by an entity holding the
 corresponding private/public key pair.
-In the UTXO ledger, an account is a collection of UTXOs belonging to the address.
+In the Object ledger, an account is a collection of Objects belonging to the address.
 
-Each ISC L2 chain has a L1 account, called the _chain account_, holding all tokens entrusted to the chain in a single
-UTXO, the _state output_.
+Each ISC L2 chain has an L1 account, called the _chain account_, holding all coins and objects entrusted to the chain in a single
+Object, the Anchor.
 It is similar to how a bank holds all deposits in its vault. This way, the chain (the entity controlling the state
-output) becomes a custodian for the assets owned by its clients, similar to how the bank’s client owns the money
+output) becomes a custodian for the assets owned by its clients, similar to how the bank's client owns the money
 deposited in the bank.
 
 The consolidated assets held in the chain are the _total assets on-chain_, which are contained in the state output of
 the chain.
 
-The chain account is controlled by a _chain address_, also known as _chain ID_.
-It is a special kind of L1 address, an _alias address_, which abstracts the controlling entity (the state controller
-address) from the identity of the chain: the controlling entity of the chain may change, while the chain ID stays the
-same.
+The chain account is controlled by the `ChainOwner`(the set of validators) and owns an Anchor with an Object ID, also known as _chain ID_.
 
 ## The Data State
 
 The data state of the chain consists of a collection of key/value pairs.
 Each key and each value are arbitrary byte arrays.
 
-In its persistent form, the data state is stored in a key/value database outside the UTXO ledger and maintained by the
+In its persistent form, the data state is stored in a key/value database outside the Object ledger and maintained by the
path: docs/content/iota-evm/explanations/states.md
user: login: lucas-tortora
body: ```suggestion
In its persistent form, the data state is stored in a key/value database outside the object ledger and maintained by the
```
created_at: 2025-04-11T11:20:44Z
author_association: CONTRIBUTOR
diff_hunk: @@ -60,28 +56,27 @@ candidates, with a possibility for one of them to be solidified.
 The data state has a state hash, a timestamp, and a state index.
 The state hash is usually a Merkle root, but it can be any hashing function of all data in the data state.
 
-The data state hash and on-chain assets are contained in a single atomic unit on the L1 ledger: the state UTXO.
-Each state mutation (state transition) of the chain is an atomic event that changes the on-chain assets and the data
-state, consuming the previous state UTXO and producing a new one.
+The data state hash and on-chain assets are contained in a single atomic unit on the L1 ledger: the Anchor object.
path: docs/content/iota-evm/explanations/states.md
user: login: lucas-tortora
body: ```suggestion
The data state hash and on-chain assets are contained in a single atomic unit on the L1 ledger: the anchor object.
```
created_at: 2025-04-11T11:20:53Z
author_association: CONTRIBUTOR
diff_hunk: @@ -60,28 +56,27 @@ candidates, with a possibility for one of them to be solidified.
 The data state has a state hash, a timestamp, and a state index.
 The state hash is usually a Merkle root, but it can be any hashing function of all data in the data state.
 
-The data state hash and on-chain assets are contained in a single atomic unit on the L1 ledger: the state UTXO.
-Each state mutation (state transition) of the chain is an atomic event that changes the on-chain assets and the data
-state, consuming the previous state UTXO and producing a new one.
+The data state hash and on-chain assets are contained in a single atomic unit on the L1 ledger: the Anchor object.
+Each state mutation (state transition) of the chain is an atomic event that changes the on-chain assets and the data state.
 
 ## Anchoring the State
 
 The data state is stored outside the ledger, on the distributed database maintained by _validator_ nodes.
-_Anchoring the state_ means placing the hash of the data state into the state UTXO and adding it to the L1 UTXO ledger.
-The UTXO ledger guarantees that there is _exactly one_ such output for each chain on the ledger at every moment.
-We call this output the _state output_ (or state anchor) and the containing transaction the _state transaction_ (or
-anchor transaction) of the chain.
-The state output is controlled (i.e., can be unlocked/consumed) by the entity running the chain.
+_Anchoring the state_ means placing the hash of the data state into the Anchor Object and adding it to the L1 ledger.
path: docs/content/iota-evm/explanations/states.md
user: login: lucas-tortora
body: ```suggestion
_Anchoring the state_ means placing the hash of the data state into the anchor object and adding it to the L1 ledger.
```
created_at: 2025-04-11T11:21:07Z
author_association: CONTRIBUTOR
diff_hunk: @@ -60,28 +56,27 @@ candidates, with a possibility for one of them to be solidified.
 The data state has a state hash, a timestamp, and a state index.
 The state hash is usually a Merkle root, but it can be any hashing function of all data in the data state.
 
-The data state hash and on-chain assets are contained in a single atomic unit on the L1 ledger: the state UTXO.
-Each state mutation (state transition) of the chain is an atomic event that changes the on-chain assets and the data
-state, consuming the previous state UTXO and producing a new one.
+The data state hash and on-chain assets are contained in a single atomic unit on the L1 ledger: the Anchor object.
+Each state mutation (state transition) of the chain is an atomic event that changes the on-chain assets and the data state.
 
 ## Anchoring the State
 
 The data state is stored outside the ledger, on the distributed database maintained by _validator_ nodes.
-_Anchoring the state_ means placing the hash of the data state into the state UTXO and adding it to the L1 UTXO ledger.
-The UTXO ledger guarantees that there is _exactly one_ such output for each chain on the ledger at every moment.
-We call this output the _state output_ (or state anchor) and the containing transaction the _state transaction_ (or
-anchor transaction) of the chain.
-The state output is controlled (i.e., can be unlocked/consumed) by the entity running the chain.
+_Anchoring the state_ means placing the hash of the data state into the Anchor Object and adding it to the L1 ledger.
+The ledger guarantees that there is _exactly one_ such object for each chain on the ledger at every moment.
+We call this object the Anchor object and the containing transaction the _or
path: docs/content/iota-evm/explanations/states.md
user: login: lucas-tortora
body: ```suggestion
We call this object the anchor object and the containing transaction the _or
```
created_at: 2025-04-11T11:21:16Z
author_association: CONTRIBUTOR
diff_hunk: @@ -60,28 +56,27 @@ candidates, with a possibility for one of them to be solidified.
 The data state has a state hash, a timestamp, and a state index.
 The state hash is usually a Merkle root, but it can be any hashing function of all data in the data state.
 
-The data state hash and on-chain assets are contained in a single atomic unit on the L1 ledger: the state UTXO.
-Each state mutation (state transition) of the chain is an atomic event that changes the on-chain assets and the data
-state, consuming the previous state UTXO and producing a new one.
+The data state hash and on-chain assets are contained in a single atomic unit on the L1 ledger: the Anchor object.
+Each state mutation (state transition) of the chain is an atomic event that changes the on-chain assets and the data state.
 
 ## Anchoring the State
 
 The data state is stored outside the ledger, on the distributed database maintained by _validator_ nodes.
-_Anchoring the state_ means placing the hash of the data state into the state UTXO and adding it to the L1 UTXO ledger.
-The UTXO ledger guarantees that there is _exactly one_ such output for each chain on the ledger at every moment.
-We call this output the _state output_ (or state anchor) and the containing transaction the _state transaction_ (or
-anchor transaction) of the chain.
-The state output is controlled (i.e., can be unlocked/consumed) by the entity running the chain.
+_Anchoring the state_ means placing the hash of the data state into the Anchor Object and adding it to the L1 ledger.
+The ledger guarantees that there is _exactly one_ such object for each chain on the ledger at every moment.
+We call this object the Anchor object and the containing transaction the _or
+anchor transaction_ of the chain.
+The Anchor object is controlled by the entity running the chain.
path: docs/content/iota-evm/explanations/states.md
user: login: lucas-tortora
body: ```suggestion
The anchor object is controlled by the entity running the chain.
```
created_at: 2025-04-11T11:21:24Z
author_association: CONTRIBUTOR
diff_hunk: @@ -93,26 +88,26 @@ Any update to the data state can be reduced to a partially ordered sequence of m
 
 A _block_ is a collection of mutations to the data state that is applied in a state transition:
 
-```go
+"`go
path: docs/content/iota-evm/explanations/states.md
user: login: lucas-tortora
body: ````suggestion
```go
````
created_at: 2025-04-11T11:21:43Z
author_association: CONTRIBUTOR
diff_hunk: @@ -93,26 +88,26 @@ Any update to the data state can be reduced to a partially ordered sequence of m
 
 A _block_ is a collection of mutations to the data state that is applied in a state transition:
 
-```go
+"`go
 next data state = apply(current data state, block)
 ```
 
-The state transition in the chain occurs atomically in a L1 transaction that consumes the previous state UTXO and
-produces the next one. The transaction includes the movement of the chain's assets and the update of the state hash,
+The state transition in the chain occurs atomically in an L1 transaction that mutates the Anchor object. The transaction includes the movement of the chain's assets and the update of the state hash,
 
 At any moment in time, the data state of the chain is a result of applying the historical sequence of blocks, starting
 from the empty data state.
 
 ![State transitions](/img/iota-evm/chain0.png)
 
-On the L1 UTXO ledger, the state's history is represented as a sequence (chain) of UTXOs, each holding the chain’s
+On the L1 ledger, the state's history is represented as a sequence (chain) of versions of the Anchor object, each holding the chain's
path: docs/content/iota-evm/explanations/states.md
user: login: lucas-tortora
body: ```suggestion
On the L1 ledger, the state's history is represented as a sequence (chain) of versions of the anchor object, each holding the chain's
```
created_at: 2025-04-11T11:21:56Z
author_association: CONTRIBUTOR
diff_hunk: @@ -1,12 +1,12 @@
 ---
-description: The state of the chain consists of balances of native IOTA digital assets and a collection of key/value pairs which represents use case-specific data stored in the chain by its smart contracts outside the UTXO ledger.
+description: The chain's state consists of balances of IOTA Objects and a collection of key/value pairs representing use case-specific data stored in the chain by its smart contracts outside the Object ledger.
path: docs/content/iota-evm/explanations/states.md
user: login: Dr-Electron
body: Thanks missed these ones it seems ❤️ 
created_at: 2025-04-11T13:46:30Z
author_association: CONTRIBUTOR

PR comments:
user: login: vercel[bot]
created_at: 2025-04-11T10:02:45Z
body: [vc]: #GjzYWqkIfxcMRRQwpjA0km2LPw2tbYUB9p4l2hcclZY=:eyJpc01vbm9yZXBvIjp0cnVlLCJ0eXBlIjoiZ2l0aHViIiwicHJvamVjdHMiOlt7Im5hbWUiOiJhcHBzLXVpLWtpdCIsInJvb3REaXJlY3RvcnkiOiJhcHBzL3VpLWtpdC8iLCJsaXZlRmVlZGJhY2siOnsicmVzb2x2ZWQiOjAsInVucmVzb2x2ZWQiOjAsInRvdGFsIjowLCJsaW5rIjoiIn0sImluc3BlY3RvclVybCI6Imh0dHBzOi8vdmVyY2VsLmNvbS9pb3RhL2FwcHMtdWkta2l0LzhiaGM5aFJMOHVVTEVzTnQ1d21DRktIbnhHNUEiLCJuZXh0Q29tbWl0U3RhdHVzIjoiSUdOT1JFRCIsInByZXZpZXdVcmwiOiJhcHBzLXVpLWtpdC1naXQtZGV2eC1pc2MtbW92ZS1pb3RhMS52ZXJjZWwuYXBwIn0seyJuYW1lIjoid2FsbGV0LWRhc2hib2FyZCIsInJvb3REaXJlY3RvcnkiOiJhcHBzL3dhbGxldC1kYXNoYm9hcmQiLCJsaXZlRmVlZGJhY2siOnsicmVzb2x2ZWQiOjAsInVucmVzb2x2ZWQiOjAsInRvdGFsIjowLCJsaW5rIjoiIn0sImluc3BlY3RvclVybCI6Imh0dHBzOi8vdmVyY2VsLmNvbS9pb3RhL3dhbGxldC1kYXNoYm9hcmQvREU0SFhTSHMxQ3UxZmk0dUxDYWNDMWRORjRlcCIsIm5leHRDb21taXRTdGF0dXMiOiJJR05PUkVEIiwicHJldmlld1VybCI6IndhbGxldC1kYXNoYm9hcmQtZ2l0LWRldngtaXNjLW1vdmUtaW90YTEudmVyY2VsLmFwcCJ9LHsibmFtZSI6InJlYmFzZWQtZXhwbG9yZXIiLCJyb290RGlyZWN0b3J5IjoiYXBwcy9leHBsb3JlciIsImxpdmVGZWVkYmFjayI6eyJyZXNvbHZlZCI6MCwidW5yZXNvbHZlZCI6MCwidG90YWwiOjAsImxpbmsiOiIifSwiaW5zcGVjdG9yVXJsIjoiaHR0cHM6Ly92ZXJjZWwuY29tL2lvdGEvcmViYXNlZC1leHBsb3Jlci9GcWhORnJiRmtRYVNYRmJSUzhHRFJkd3BudkdQIiwibmV4dENvbW1pdFN0YXR1cyI6IklHTk9SRUQiLCJwcmV2aWV3VXJsIjoicmViYXNlZC1leHBsb3Jlci1naXQtZGV2eC1pc2MtbW92ZS1pb3RhMS52ZXJjZWwuYXBwIn0seyJuYW1lIjoiYXBwcy1iYWNrZW5kIiwicm9vdERpcmVjdG9yeSI6ImFwcHMvYXBwcy1iYWNrZW5kIiwibGl2ZUZlZWRiYWNrIjp7InJlc29sdmVkIjowLCJ1bnJlc29sdmVkIjowLCJ0b3RhbCI6MCwibGluayI6IiJ9LCJpbnNwZWN0b3JVcmwiOiJodHRwczovL3ZlcmNlbC5jb20vaW90YS9hcHBzLWJhY2tlbmQvNXJuOHI3V3A2eXN2ZDl0dTZWa2pBUERlMjh1cSIsIm5leHRDb21taXRTdGF0dXMiOiJJR05PUkVEIiwicHJldmlld1VybCI6ImFwcHMtYmFja2VuZC1naXQtZGV2eC1pc2MtbW92ZS1pb3RhMS52ZXJjZWwuYXBwIn1dfQ==
**The latest updates on your projects**. Learn more about [Vercel for Git ↗︎](https://vercel.link/github-learn-more)


<details><summary>4 Skipped Deployments</summary>

| Name | Status | Preview | Comments | Updated (UTC) |
| :--- | :----- | :------ | :------- | :------ |
| **apps-backend** | ⬜️ Ignored ([Inspect](https://vercel.com/iota/apps-backend/5rn8r7Wp6ysvd9tu6VkjAPDe28uq)) | [Visit Preview](https://apps-backend-git-devx-isc-move-iota1.vercel.app) |  | Apr 20, 2025 10:31pm |
| **apps-ui-kit** | ⬜️ Ignored ([Inspect](https://vercel.com/iota/apps-ui-kit/8bhc9hRL8uULEsNt5wmCFKHnxG5A)) | [Visit Preview](https://apps-ui-kit-git-devx-isc-move-iota1.vercel.app) |  | Apr 20, 2025 10:31pm |
| **rebased-explorer** | ⬜️ Ignored ([Inspect](https://vercel.com/iota/rebased-explorer/FqhNFrbFkQaSXFbRS8GDRdwpnvGP)) | [Visit Preview](https://rebased-explorer-git-devx-isc-move-iota1.vercel.app) |  | Apr 20, 2025 10:31pm |
| **wallet-dashboard** | ⬜️ Ignored ([Inspect](https://vercel.com/iota/wallet-dashboard/DE4HXSHs1Cu1fi4uLCacC1dNF4ep)) | [Visit Preview](https://wallet-dashboard-git-devx-isc-move-iota1.vercel.app) |  | Apr 20, 2025 10:31pm |
</details>





author_association: NONE
user: login: github-actions[bot]
created_at: 2025-04-20T22:37:25Z
body: ✅ Vercel Preview Deployment is ready!

[View Preview](https://iota3-wiki-86224a49db5aefb63c2cbbbbdfdecbc9e1e90732-g7evjxgfh.vercel.app)
author_association: CONTRIBUTOR