Awarded once after a correct answer.
Find the state that needs coordination
Useful first : From signing to settlement
Reading path · 41 / 41 · Intermediate
Sui is a programmable Layer 1 that uses Move and an object-centred data model.
State organised as objects
Sui is a programmable Layer 1 that uses Move and an object-centred data model. SUI is its native asset, used for gas and staking. An object is not just a picture or an NFT: it is a piece of on-chain state with an identity, type and ownership rules. Coins and application resources can also be objects.
Ownership changes the rules
Ownership affects which transactions can use or change an object. An address-owned object is controlled through its owner’s authority. A shared object can be accessed by multiple users through the rules of its Move program. Immutable objects cannot be changed. “Shared” therefore does not mean that anyone may edit every field however they like.
Find the shared dependency
The useful question is which state two operations need to modify. Independent objects can permit independent work; two operations touching the same shared state require coordination. The object model does not mean that every operation is parallel, that conflicts disappear or that application logic becomes correct automatically.
A ticket and the last available seat
Compare an individually owned concert ticket with a shared seat inventory. Transferring an existing ticket and reserving the last seat are different operations. The second must respect a common availability rule. Read the object’s owner and the program’s permissions alongside the requested action; a friendly interface alone does not establish what a signed transaction will do.
Understand the details
Imagine two people each transferring their own ticket object. The objects differ, so these actions need not compete for the same ticket state. Now imagine both trying to reserve the final seat from one shared inventory. The program must enforce that seat’s availability. Ownership helps define who may submit a change; program logic determines which change is valid.
Boundaries and common mistakes
The ticket is a fictional application model, not a statement about a live ticketing service. Shared objects can enforce permissions. An object-based chain still needs consensus, careful programming and secure signing.
The mechanism at a glance
- 01Object identity
- 02Ownership
- 03Allowed operation
- 04State dependencies
Read these as connected concepts, not necessarily consecutive steps.
Two separate ticket transfers concern different state. Two reservations for the same last seat touch one shared inventory and must respect its single availability.
Read the explanation
Imagine two people each transferring their own ticket object. The objects differ, so these actions need not compete for the same ticket state. Now imagine both trying to reserve the final seat from one shared inventory. The program must enforce that seat’s availability. Ownership helps define who may submit a change; program logic determines which change is valid.
Put the mechanism into context
One shared inventory has a single seat left. Two requests both attempt to reduce the remaining count from one to zero and issue a ticket. Both requests have valid user signatures.
Apply it in the workshop →What this mechanism does not guarantee
The ticket is a fictional application model, not a statement about a live ticketing service. Shared objects can enforce permissions. An object-based chain still needs consensus, careful programming and secure signing.
The distinction that changes the analysis
Two signed requests can both be authorised while competing for the same final seat in a shared inventory. Ownership and signatures answer who may request an action; the program must still preserve availability.
Explain it yourself
Revisit the case above. Name what is established, what remains to be checked and the evidence needed to conclude. A strong answer addresses both sides of the diagram.
Apply the lesson to a case
One shared inventory has a single seat left. Two requests both attempt to reduce the remaining count from one to zero and issue a ticket. Both requests have valid user signatures.
The shared availability rule must hold. Two valid signatures do not create a second seat. Coordination and the program’s checks must prevent both operations from consuming the same final availability.
Terms in this lesson
- Gas
- A measure of execution resources; gas units and the price per unit are separate quantities.
Prepare a correction note
Describe the passage and the proposed correction. This creates a local note for you to share; it sends nothing. Do not include personal or confidential information.