diff --git a/pages/chain/identity/_meta.json b/pages/chain/identity/_meta.json index c6787594a..734d61bbf 100644 --- a/pages/chain/identity/_meta.json +++ b/pages/chain/identity/_meta.json @@ -3,5 +3,7 @@ "about-attestations": "About Attestations", "contracts-eas": "Contracts (EAS)", "schemas": "Schemas", - "applications": "Apps" + "applications": "Apps", + "organization": "Organization", + "projects": "Projects" } \ No newline at end of file diff --git a/pages/chain/identity/organizations b/pages/chain/identity/organizations.mdx similarity index 73% rename from pages/chain/identity/organizations rename to pages/chain/identity/organizations.mdx index 0a5f23919..558e73de0 100644 --- a/pages/chain/identity/organizations +++ b/pages/chain/identity/organizations.mdx @@ -8,7 +8,7 @@ description: Learn about the organization entity within the Optimism Collective' Within the Optimism Collective, the organization entity is used to represent teams, squads, DAOs and other organizations that may work on multiple projects. Organizations can apply to Retroactive Public Goods Funding (Retro Funding) with specific [projects](https://docs.optimism.io/chain/identity/projects), never with just the organization. This is because projects represent contributions that created impact in the Collective, and Retro Rounds award OP to past impact. -The organization entity is represented onchain by an attestation. The attestation UID is the organization’s unique identifier for its lifecycle in the Collective. To create a new organization, an attestation is issued using [this schema](https://optimism.easscan.org/schema/view/0xff0b916851c1c5507406cfcaa60e5d549c91b7f642eb74e33b88143cae4b47d0). The only metadata included in the schema is the Farcaster Id of the person who created the organization, and the entity type (in this case “organization”). +The organization entity is represented onchain by an attestation. The attestation UID is the organization's unique identifier for its lifecycle in the Collective. To create a new organization, an attestation is issued using [this schema](https://optimism.easscan.org/schema/view/0xff0b916851c1c5507406cfcaa60e5d549c91b7f642eb74e33b88143cae4b47d0). The only metadata included in the schema is the Farcaster Id of the person who created the organization, and the entity type (in this case "organization"). All other organization metadata is stored or referenced in the [Organization Metadata Attestation](https://optimism.easscan.org/schema/view/0xc2b376d1a140287b1fa1519747baae1317cf37e0d27289b86f85aa7cebfd649f). The Organization Metadata Attestation is re-issued anytime there is a change in metadata. Apps displaying organization metadata should look to the most recent attestation for the up-to-date metadata. diff --git a/pages/stack/protocol/rollup/withdrawal-flow.mdx b/pages/stack/protocol/rollup/withdrawal-flow.mdx index 19834c55f..dd2ae78b6 100644 --- a/pages/stack/protocol/rollup/withdrawal-flow.mdx +++ b/pages/stack/protocol/rollup/withdrawal-flow.mdx @@ -17,7 +17,7 @@ Withdrawals require the user to submit three transactions: 3. **Withdrawal finalizing transaction**, which the user submits on L1 after the fault challenge period has passed, to actually run the transaction on L1. - You can see an example of how to do this [in the bridging tutorials](/builders/app-developers/tutorials/cross-dom-bridge-erc20). + You can see an example of how to do this [in the bridging tutorials](/builders/app-developers/tutorials/cross-dom-bridge-erc20). ## Withdrawal initiating transaction @@ -79,6 +79,27 @@ The next step is to wait the fault challenge period, to ensure that the L2 outpu Finally, once the fault challenge period passes, the withdrawal can be finalized and executed on L1. +## Expected Internal Reverts in Withdrawal Transactions + +During the withdrawal process, users may observe internal reverts when viewing the transaction on **Etherscan**. This is a common point of confusion but is expected behavior. + +These internal reverts often show up in yellow on the Etherscan UI and may cause concern that something went wrong with the transaction. However, these reverts occur due to the non-standard proxy used in Optimism, specifically the **Chugsplash Proxy**. The Chugsplash Proxy sometimes triggers internal calls that revert as part of the designed flow of the withdrawal process. + +### Why Do These Reverts Happen? + +The Chugsplash Proxy operates differently than standard proxies. During a withdrawal transaction, it may trigger internal contract calls that result in reverts, but these reverts do not indicate that the withdrawal has failed. Instead, they are part of the internal logic of the system and are expected in certain scenarios. + +### Key Takeaways: + +* **Internal Reverts Are Expected**: These reverts are part of the normal operation of the Chugsplash Proxy during withdrawal transactions and do not represent an error. +* **No Cause for Concern**: Although Etherscan highlights these reverts, they do not affect the final success of the transaction. +* **User Assurance**: If you encounter these reverts during a withdrawal transaction, rest assured that the withdrawal will still finalize as expected. + +For more information about the withdrawal process and how it works on Optimism, refer to the following resources: + +* [Smart Contracts Overview](https://docs.optimism.io/stack/protocol/rollup/smart-contracts) +* [Withdrawal Flow](https://docs.optimism.io/stack/protocol/rollup/withdrawal-flow#withdrawal-initiating-transaction) + ### Offchain processing 1. A user calls the SDK's [`CrossDomainMessenger.finalizeMessage()`](https://github.com/ethereum-optimism/optimism/blob/62c7f3b05a70027b30054d4c8974f44000606fb7/packages/sdk/src/cross-chain-messenger.ts#L1473-L1493) with the hash of the L1 message. diff --git a/words.txt b/words.txt index d8db1cc44..3db2e2558 100644 --- a/words.txt +++ b/words.txt @@ -53,6 +53,7 @@ Chainlink chainlist Chainstack chaosnet +Chugsplash Clabby codebases collateralized