-
Notifications
You must be signed in to change notification settings - Fork 56
chore(framework): Remove the Bridge package and all its functionalities #6863
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
miker83z
merged 62 commits into
vm-lang/chore/bridge-removal
from
vm-lang/chore-issue-6847-remove-bridge
Jun 6, 2025
Merged
chore(framework): Remove the Bridge package and all its functionalities #6863
miker83z
merged 62 commits into
vm-lang/chore/bridge-removal
from
vm-lang/chore-issue-6847-remove-bridge
Jun 6, 2025
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
|
The latest updates on your projects. Learn more about Vercel for Git ↗︎ 4 Skipped Deployments
|
…6847-remove-bridge
Contributor
|
✅ Vercel Preview Deployment is ready! |
Contributor
|
✅ Vercel Preview Deployment is ready! |
muXxer
reviewed
Jun 4, 2025
DaughterOfMars
approved these changes
Jun 4, 2025
richardmands
approved these changes
Jun 4, 2025
muXxer
approved these changes
Jun 4, 2025
piotrm50
approved these changes
Jun 5, 2025
FranCerdan
approved these changes
Jun 5, 2025
samuel-rufi
approved these changes
Jun 6, 2025
15 tasks
miker83z
added a commit
that referenced
this pull request
Jun 12, 2025
…es (#6863) This PR completely removes a package from the iota-framework that was never enabled/used: the `bridge`. Associated to that there was a whole set of tools to setup and run the bridge infra: - `iota-bridge` - `iota-bridge-cli` - `iota-bridge-indexer` - `bridge` directory for managing the EVM side 1. So the first step was simply to delete these crates and the package from `iota-framework`. 1. The second step was to remove the remaining dependencies on these. This means mostly tests and iota-types. 1. The protocol flag `bridge` was removed (because it was never set to true), while the `bridge_should_try_to_finalize_committee` flag was left because it was previously set to `Some` (and removing this means we would modify previous protocol config digests, [discussion](#6863 (comment))) 1. Two variants from the `EndOfEpochTransactionKind` were removed: `BridgeStateCreate` and `BridgeCommitteeInit`. Transactions of these kinds SHOULD NOT exist in Devnet, Testnet and Mainnet because the `bridge` protocol flag was never enabled. This has implications on all crates related to public APIs. 1. `EpochStartConfiguration` was modified to remove `bridge_obj_initial_shared_version` and `bridge_committee_initiated`. 1. Genesis changes: - given that genesis on the Testnet and Mainnet was run with a framework including the `bridge`, we need to support the replay of such process. - This means being able to run a genesis with protocol versions <= 8 with no issues (because the framework-snapshot of protocol versions <= 8 will forever include the `bridge` package snapshot). - No bridge objects were created during genesis, however the `bridge` package was verified before being published. In order to pass the verification, the `0xb::bridge::create` function should be treated as privileged because it uses a UID parameter to create a new object (not a valid operation normally). So, this function is kept in the list of `FUNCTIONS_TO_SKIP` in the `iota-verifier`. This also means we SHOULD NOT reuse the `0xb` address in the future or handle it carefully. 1. iota-framework-snapshot changes: - some changes were required to enable the `check_manifest_against_tomls` test - this test checks that the name and id of each entry in `manifest.json` match the metadata in the `Move.toml` files of the `iota-framework` packages. - as suggested by the function comment that was there, this test now checks out the git revision of the package listed in the manifest and then use those files for the check. This allows us to modify name, id and remove packages every time we create a new protocol version. - it was necessary to use the long version of git revision in the `manifest.json` so that the fetch of commits during the `check_manifest_against_tomls` test execution would be more efficient (it fetches each commit instead of the whole history). Moreover, some revs in the manifest were pointing to commits not belonging to any branch (squashed), so these were manually updated. - update the sdk2 repo and then openapi -> iotaledger/iota-rust-sdk#36 and #7262 - update the TS types (should be just EndOfEpochTransactionKind) -> fixes #6847 - Breaking change (fix or feature that would cause existing functionality to not work as expected) CI. - [x] Basic tests (linting, compilation, formatting, unit/integration tests) - [ ] Patch-specific tests (correctness, functionality coverage) TODO @iotaledger/infrastructure - [ ] Synchronization of the indexer from genesis for a network including migration objects. - [ ] Restart of indexer synchronization locally without resetting the database. - [ ] Restart of indexer synchronization on a production-like database. - [ ] Deployment of services using Docker. - [ ] Verification of API backward compatibility. <!-- Check each box that your changes affect. If none of the boxes relate to your changes, release notes aren't required. For each box you select, include information after the relevant heading that describes the impact of your changes that a user might notice and any actions they must take to implement updates. --> - [x] Protocol: Removed bridge flag (never enabled) and disabled bridge_should_try_to_finalize_committee flag. Now the bridge functionalities won't be present anymore. Removed the bridge framework package. - [x] Nodes (Validators and Full nodes): Removed `bridge_obj_initial_shared_version` and `bridge_committee_initiated` from `EpochStartConfiguration` - [ ] Indexer: - [x] JSON-RPC: Removed `BridgeReadApi` including `getLatestBridge` and `getBridgeObjectInitialSharedVersion`. Removed `EndOfEpochTransactionKind::BridgeStateCreate` and `EndOfEpochTransactionKind::BridgeCommitteeInit` variants. - [x] GraphQL: Removed `EndOfEpochTransactionKind::BridgeStateCreate` and `EndOfEpochTransactionKind::BridgeCommitteeInit` variants and related types. - [x] CLI: Removed `bridge-committee-init`, `validator register-bridge-committee` and `update-bridge-committee-node-url` commands. - [x] Rust SDK: Removed `EndOfEpochTransactionKind::BridgeStateCreate` and `EndOfEpochTransactionKind::BridgeCommitteeInit` variants. - [ ] REST API: --------- Co-authored-by: Dkwcs <[email protected]> Co-authored-by: miker83z <[email protected]> Co-authored-by: Mirko Zichichi <[email protected]> Co-authored-by: Thibault Martinez <[email protected]>
miker83z
added a commit
that referenced
this pull request
Jun 19, 2025
# Description of change This PR completely removes a package from the iota-framework that was never enabled/used: the `bridge`. ## Stack - #6863 - #7314 - iotaledger/iota-rust-sdk#41 - #7379 ## Links to any relevant issues fixes #6847 ## Type of change - Breaking change (fix or feature that would cause existing functionality to not work as expected) ## How the change has been tested CI. - [x] Basic tests (linting, compilation, formatting, unit/integration tests) - [ ] Patch-specific tests (correctness, functionality coverage) ### Infrastructure QA - [ ] Synchronization of the indexer from genesis for a network including migration objects. - [x] Restart of indexer synchronization locally without resetting the database. - [ ] Restart of indexer synchronization on a production-like database. - [x] Deployment of services using Docker. - [ ] Verification of API backward compatibility. ### Release Notes <!-- Check each box that your changes affect. If none of the boxes relate to your changes, release notes aren't required. For each box you select, include information after the relevant heading that describes the impact of your changes that a user might notice and any actions they must take to implement updates. --> - [x] Protocol: Removed bridge flag (never enabled) and disabled bridge_should_try_to_finalize_committee flag. Now the bridge functionalities won't be present anymore. Removed the bridge framework package. - [x] Nodes (Validators and Full nodes): Removed `bridge_obj_initial_shared_version` and `bridge_committee_initiated` from `EpochStartConfiguration` - [ ] Indexer: - [x] JSON-RPC: Removed `BridgeReadApi` including `getLatestBridge` and `getBridgeObjectInitialSharedVersion`. Removed `EndOfEpochTransactionKind::BridgeStateCreate` and `EndOfEpochTransactionKind::BridgeCommitteeInit` variants. - [x] GraphQL: Removed `EndOfEpochTransactionKind::BridgeStateCreate` and `EndOfEpochTransactionKind::BridgeCommitteeInit` variants and related types. - [x] CLI: Removed `bridge-committee-init`, `validator register-bridge-committee` and `update-bridge-committee-node-url` commands. - [x] Rust SDK: Removed `EndOfEpochTransactionKind::BridgeStateCreate` and `EndOfEpochTransactionKind::BridgeCommitteeInit` variants. - [x] REST API: Removed `EndOfEpochTransactionKind::BridgeStateCreate` and `EndOfEpochTransactionKind::BridgeCommitteeInit` variants.
itsyaasir
pushed a commit
that referenced
this pull request
Jun 30, 2025
…es (#6863) This PR completely removes a package from the iota-framework that was never enabled/used: the `bridge`. Associated to that there was a whole set of tools to setup and run the bridge infra: - `iota-bridge` - `iota-bridge-cli` - `iota-bridge-indexer` - `bridge` directory for managing the EVM side 1. So the first step was simply to delete these crates and the package from `iota-framework`. 1. The second step was to remove the remaining dependencies on these. This means mostly tests and iota-types. 1. The protocol flag `bridge` was removed (because it was never set to true), while the `bridge_should_try_to_finalize_committee` flag was left because it was previously set to `Some` (and removing this means we would modify previous protocol config digests, [discussion](#6863 (comment))) 1. Two variants from the `EndOfEpochTransactionKind` were removed: `BridgeStateCreate` and `BridgeCommitteeInit`. Transactions of these kinds SHOULD NOT exist in Devnet, Testnet and Mainnet because the `bridge` protocol flag was never enabled. This has implications on all crates related to public APIs. 1. `EpochStartConfiguration` was modified to remove `bridge_obj_initial_shared_version` and `bridge_committee_initiated`. 1. Genesis changes: - given that genesis on the Testnet and Mainnet was run with a framework including the `bridge`, we need to support the replay of such process. - This means being able to run a genesis with protocol versions <= 8 with no issues (because the framework-snapshot of protocol versions <= 8 will forever include the `bridge` package snapshot). - No bridge objects were created during genesis, however the `bridge` package was verified before being published. In order to pass the verification, the `0xb::bridge::create` function should be treated as privileged because it uses a UID parameter to create a new object (not a valid operation normally). So, this function is kept in the list of `FUNCTIONS_TO_SKIP` in the `iota-verifier`. This also means we SHOULD NOT reuse the `0xb` address in the future or handle it carefully. 1. iota-framework-snapshot changes: - some changes were required to enable the `check_manifest_against_tomls` test - this test checks that the name and id of each entry in `manifest.json` match the metadata in the `Move.toml` files of the `iota-framework` packages. - as suggested by the function comment that was there, this test now checks out the git revision of the package listed in the manifest and then use those files for the check. This allows us to modify name, id and remove packages every time we create a new protocol version. - it was necessary to use the long version of git revision in the `manifest.json` so that the fetch of commits during the `check_manifest_against_tomls` test execution would be more efficient (it fetches each commit instead of the whole history). Moreover, some revs in the manifest were pointing to commits not belonging to any branch (squashed), so these were manually updated. - update the sdk2 repo and then openapi -> iotaledger/iota-rust-sdk#36 and #7262 - update the TS types (should be just EndOfEpochTransactionKind) -> fixes #6847 - Breaking change (fix or feature that would cause existing functionality to not work as expected) CI. - [x] Basic tests (linting, compilation, formatting, unit/integration tests) - [ ] Patch-specific tests (correctness, functionality coverage) TODO @iotaledger/infrastructure - [ ] Synchronization of the indexer from genesis for a network including migration objects. - [ ] Restart of indexer synchronization locally without resetting the database. - [ ] Restart of indexer synchronization on a production-like database. - [ ] Deployment of services using Docker. - [ ] Verification of API backward compatibility. <!-- Check each box that your changes affect. If none of the boxes relate to your changes, release notes aren't required. For each box you select, include information after the relevant heading that describes the impact of your changes that a user might notice and any actions they must take to implement updates. --> - [x] Protocol: Removed bridge flag (never enabled) and disabled bridge_should_try_to_finalize_committee flag. Now the bridge functionalities won't be present anymore. Removed the bridge framework package. - [x] Nodes (Validators and Full nodes): Removed `bridge_obj_initial_shared_version` and `bridge_committee_initiated` from `EpochStartConfiguration` - [ ] Indexer: - [x] JSON-RPC: Removed `BridgeReadApi` including `getLatestBridge` and `getBridgeObjectInitialSharedVersion`. Removed `EndOfEpochTransactionKind::BridgeStateCreate` and `EndOfEpochTransactionKind::BridgeCommitteeInit` variants. - [x] GraphQL: Removed `EndOfEpochTransactionKind::BridgeStateCreate` and `EndOfEpochTransactionKind::BridgeCommitteeInit` variants and related types. - [x] CLI: Removed `bridge-committee-init`, `validator register-bridge-committee` and `update-bridge-committee-node-url` commands. - [x] Rust SDK: Removed `EndOfEpochTransactionKind::BridgeStateCreate` and `EndOfEpochTransactionKind::BridgeCommitteeInit` variants. - [ ] REST API: --------- Co-authored-by: Dkwcs <[email protected]> Co-authored-by: miker83z <[email protected]> Co-authored-by: Mirko Zichichi <[email protected]> Co-authored-by: Thibault Martinez <[email protected]>
itsyaasir
pushed a commit
that referenced
this pull request
Jun 30, 2025
# Description of change This PR completely removes a package from the iota-framework that was never enabled/used: the `bridge`. ## Stack - #6863 - #7314 - iotaledger/iota-rust-sdk#41 - #7379 ## Links to any relevant issues fixes #6847 ## Type of change - Breaking change (fix or feature that would cause existing functionality to not work as expected) ## How the change has been tested CI. - [x] Basic tests (linting, compilation, formatting, unit/integration tests) - [ ] Patch-specific tests (correctness, functionality coverage) ### Infrastructure QA - [ ] Synchronization of the indexer from genesis for a network including migration objects. - [x] Restart of indexer synchronization locally without resetting the database. - [ ] Restart of indexer synchronization on a production-like database. - [x] Deployment of services using Docker. - [ ] Verification of API backward compatibility. ### Release Notes <!-- Check each box that your changes affect. If none of the boxes relate to your changes, release notes aren't required. For each box you select, include information after the relevant heading that describes the impact of your changes that a user might notice and any actions they must take to implement updates. --> - [x] Protocol: Removed bridge flag (never enabled) and disabled bridge_should_try_to_finalize_committee flag. Now the bridge functionalities won't be present anymore. Removed the bridge framework package. - [x] Nodes (Validators and Full nodes): Removed `bridge_obj_initial_shared_version` and `bridge_committee_initiated` from `EpochStartConfiguration` - [ ] Indexer: - [x] JSON-RPC: Removed `BridgeReadApi` including `getLatestBridge` and `getBridgeObjectInitialSharedVersion`. Removed `EndOfEpochTransactionKind::BridgeStateCreate` and `EndOfEpochTransactionKind::BridgeCommitteeInit` variants. - [x] GraphQL: Removed `EndOfEpochTransactionKind::BridgeStateCreate` and `EndOfEpochTransactionKind::BridgeCommitteeInit` variants and related types. - [x] CLI: Removed `bridge-committee-init`, `validator register-bridge-committee` and `update-bridge-committee-node-url` commands. - [x] Rust SDK: Removed `EndOfEpochTransactionKind::BridgeStateCreate` and `EndOfEpochTransactionKind::BridgeCommitteeInit` variants. - [x] REST API: Removed `EndOfEpochTransactionKind::BridgeStateCreate` and `EndOfEpochTransactionKind::BridgeCommitteeInit` variants.
jkrvivian
pushed a commit
that referenced
this pull request
Jul 4, 2025
…es (#6863) This PR completely removes a package from the iota-framework that was never enabled/used: the `bridge`. Associated to that there was a whole set of tools to setup and run the bridge infra: - `iota-bridge` - `iota-bridge-cli` - `iota-bridge-indexer` - `bridge` directory for managing the EVM side 1. So the first step was simply to delete these crates and the package from `iota-framework`. 1. The second step was to remove the remaining dependencies on these. This means mostly tests and iota-types. 1. The protocol flag `bridge` was removed (because it was never set to true), while the `bridge_should_try_to_finalize_committee` flag was left because it was previously set to `Some` (and removing this means we would modify previous protocol config digests, [discussion](#6863 (comment))) 1. Two variants from the `EndOfEpochTransactionKind` were removed: `BridgeStateCreate` and `BridgeCommitteeInit`. Transactions of these kinds SHOULD NOT exist in Devnet, Testnet and Mainnet because the `bridge` protocol flag was never enabled. This has implications on all crates related to public APIs. 1. `EpochStartConfiguration` was modified to remove `bridge_obj_initial_shared_version` and `bridge_committee_initiated`. 1. Genesis changes: - given that genesis on the Testnet and Mainnet was run with a framework including the `bridge`, we need to support the replay of such process. - This means being able to run a genesis with protocol versions <= 8 with no issues (because the framework-snapshot of protocol versions <= 8 will forever include the `bridge` package snapshot). - No bridge objects were created during genesis, however the `bridge` package was verified before being published. In order to pass the verification, the `0xb::bridge::create` function should be treated as privileged because it uses a UID parameter to create a new object (not a valid operation normally). So, this function is kept in the list of `FUNCTIONS_TO_SKIP` in the `iota-verifier`. This also means we SHOULD NOT reuse the `0xb` address in the future or handle it carefully. 1. iota-framework-snapshot changes: - some changes were required to enable the `check_manifest_against_tomls` test - this test checks that the name and id of each entry in `manifest.json` match the metadata in the `Move.toml` files of the `iota-framework` packages. - as suggested by the function comment that was there, this test now checks out the git revision of the package listed in the manifest and then use those files for the check. This allows us to modify name, id and remove packages every time we create a new protocol version. - it was necessary to use the long version of git revision in the `manifest.json` so that the fetch of commits during the `check_manifest_against_tomls` test execution would be more efficient (it fetches each commit instead of the whole history). Moreover, some revs in the manifest were pointing to commits not belonging to any branch (squashed), so these were manually updated. - update the sdk2 repo and then openapi -> iotaledger/iota-rust-sdk#36 and #7262 - update the TS types (should be just EndOfEpochTransactionKind) -> fixes #6847 - Breaking change (fix or feature that would cause existing functionality to not work as expected) CI. - [x] Basic tests (linting, compilation, formatting, unit/integration tests) - [ ] Patch-specific tests (correctness, functionality coverage) TODO @iotaledger/infrastructure - [ ] Synchronization of the indexer from genesis for a network including migration objects. - [ ] Restart of indexer synchronization locally without resetting the database. - [ ] Restart of indexer synchronization on a production-like database. - [ ] Deployment of services using Docker. - [ ] Verification of API backward compatibility. <!-- Check each box that your changes affect. If none of the boxes relate to your changes, release notes aren't required. For each box you select, include information after the relevant heading that describes the impact of your changes that a user might notice and any actions they must take to implement updates. --> - [x] Protocol: Removed bridge flag (never enabled) and disabled bridge_should_try_to_finalize_committee flag. Now the bridge functionalities won't be present anymore. Removed the bridge framework package. - [x] Nodes (Validators and Full nodes): Removed `bridge_obj_initial_shared_version` and `bridge_committee_initiated` from `EpochStartConfiguration` - [ ] Indexer: - [x] JSON-RPC: Removed `BridgeReadApi` including `getLatestBridge` and `getBridgeObjectInitialSharedVersion`. Removed `EndOfEpochTransactionKind::BridgeStateCreate` and `EndOfEpochTransactionKind::BridgeCommitteeInit` variants. - [x] GraphQL: Removed `EndOfEpochTransactionKind::BridgeStateCreate` and `EndOfEpochTransactionKind::BridgeCommitteeInit` variants and related types. - [x] CLI: Removed `bridge-committee-init`, `validator register-bridge-committee` and `update-bridge-committee-node-url` commands. - [x] Rust SDK: Removed `EndOfEpochTransactionKind::BridgeStateCreate` and `EndOfEpochTransactionKind::BridgeCommitteeInit` variants. - [ ] REST API: --------- Co-authored-by: Dkwcs <[email protected]> Co-authored-by: miker83z <[email protected]> Co-authored-by: Mirko Zichichi <[email protected]> Co-authored-by: Thibault Martinez <[email protected]>
filipdulic
pushed a commit
that referenced
this pull request
Jul 16, 2025
…es (#6863) This PR completely removes a package from the iota-framework that was never enabled/used: the `bridge`. Associated to that there was a whole set of tools to setup and run the bridge infra: - `iota-bridge` - `iota-bridge-cli` - `iota-bridge-indexer` - `bridge` directory for managing the EVM side 1. So the first step was simply to delete these crates and the package from `iota-framework`. 1. The second step was to remove the remaining dependencies on these. This means mostly tests and iota-types. 1. The protocol flag `bridge` was removed (because it was never set to true), while the `bridge_should_try_to_finalize_committee` flag was left because it was previously set to `Some` (and removing this means we would modify previous protocol config digests, [discussion](#6863 (comment))) 1. Two variants from the `EndOfEpochTransactionKind` were removed: `BridgeStateCreate` and `BridgeCommitteeInit`. Transactions of these kinds SHOULD NOT exist in Devnet, Testnet and Mainnet because the `bridge` protocol flag was never enabled. This has implications on all crates related to public APIs. 1. `EpochStartConfiguration` was modified to remove `bridge_obj_initial_shared_version` and `bridge_committee_initiated`. 1. Genesis changes: - given that genesis on the Testnet and Mainnet was run with a framework including the `bridge`, we need to support the replay of such process. - This means being able to run a genesis with protocol versions <= 8 with no issues (because the framework-snapshot of protocol versions <= 8 will forever include the `bridge` package snapshot). - No bridge objects were created during genesis, however the `bridge` package was verified before being published. In order to pass the verification, the `0xb::bridge::create` function should be treated as privileged because it uses a UID parameter to create a new object (not a valid operation normally). So, this function is kept in the list of `FUNCTIONS_TO_SKIP` in the `iota-verifier`. This also means we SHOULD NOT reuse the `0xb` address in the future or handle it carefully. 1. iota-framework-snapshot changes: - some changes were required to enable the `check_manifest_against_tomls` test - this test checks that the name and id of each entry in `manifest.json` match the metadata in the `Move.toml` files of the `iota-framework` packages. - as suggested by the function comment that was there, this test now checks out the git revision of the package listed in the manifest and then use those files for the check. This allows us to modify name, id and remove packages every time we create a new protocol version. - it was necessary to use the long version of git revision in the `manifest.json` so that the fetch of commits during the `check_manifest_against_tomls` test execution would be more efficient (it fetches each commit instead of the whole history). Moreover, some revs in the manifest were pointing to commits not belonging to any branch (squashed), so these were manually updated. - update the sdk2 repo and then openapi -> iotaledger/iota-rust-sdk#36 and #7262 - update the TS types (should be just EndOfEpochTransactionKind) -> fixes #6847 - Breaking change (fix or feature that would cause existing functionality to not work as expected) CI. - [x] Basic tests (linting, compilation, formatting, unit/integration tests) - [ ] Patch-specific tests (correctness, functionality coverage) TODO @iotaledger/infrastructure - [ ] Synchronization of the indexer from genesis for a network including migration objects. - [ ] Restart of indexer synchronization locally without resetting the database. - [ ] Restart of indexer synchronization on a production-like database. - [ ] Deployment of services using Docker. - [ ] Verification of API backward compatibility. <!-- Check each box that your changes affect. If none of the boxes relate to your changes, release notes aren't required. For each box you select, include information after the relevant heading that describes the impact of your changes that a user might notice and any actions they must take to implement updates. --> - [x] Protocol: Removed bridge flag (never enabled) and disabled bridge_should_try_to_finalize_committee flag. Now the bridge functionalities won't be present anymore. Removed the bridge framework package. - [x] Nodes (Validators and Full nodes): Removed `bridge_obj_initial_shared_version` and `bridge_committee_initiated` from `EpochStartConfiguration` - [ ] Indexer: - [x] JSON-RPC: Removed `BridgeReadApi` including `getLatestBridge` and `getBridgeObjectInitialSharedVersion`. Removed `EndOfEpochTransactionKind::BridgeStateCreate` and `EndOfEpochTransactionKind::BridgeCommitteeInit` variants. - [x] GraphQL: Removed `EndOfEpochTransactionKind::BridgeStateCreate` and `EndOfEpochTransactionKind::BridgeCommitteeInit` variants and related types. - [x] CLI: Removed `bridge-committee-init`, `validator register-bridge-committee` and `update-bridge-committee-node-url` commands. - [x] Rust SDK: Removed `EndOfEpochTransactionKind::BridgeStateCreate` and `EndOfEpochTransactionKind::BridgeCommitteeInit` variants. - [ ] REST API: --------- Co-authored-by: Dkwcs <[email protected]> Co-authored-by: miker83z <[email protected]> Co-authored-by: Mirko Zichichi <[email protected]> Co-authored-by: Thibault Martinez <[email protected]>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
ci
Issues related to our CI pipeline
documentation
Improvements or additions to documentation
sc-platform
Issues related to the Smart Contract Platform group.
vm-language
Issues related to the VM & Language Team
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description of change
This PR completely removes a package from the iota-framework that was never enabled/used: the
bridge.Associated to that there was a whole set of tools to setup and run the bridge infra:
iota-bridgeiota-bridge-cliiota-bridge-indexerbridgedirectory for managing the EVM sideiota-framework.bridgewas removed (because it was never set to true), while thebridge_should_try_to_finalize_committeeflag was left because it was previously set toSome(and removing this means we would modify previous protocol config digests, discussion)EndOfEpochTransactionKindwere removed:BridgeStateCreateandBridgeCommitteeInit. Transactions of these kinds SHOULD NOT exist in Devnet, Testnet and Mainnet because thebridgeprotocol flag was never enabled. This has implications on all crates related to public APIs.EpochStartConfigurationwas modified to removebridge_obj_initial_shared_versionandbridge_committee_initiated.bridge, we need to support the replay of such process.bridgepackage snapshot).bridgepackage was verified before being published. In order to pass the verification, the0xb::bridge::createfunction should be treated as privileged because it uses a UID parameter to create a new object (not a valid operation normally). So, this function is kept in the list ofFUNCTIONS_TO_SKIPin theiota-verifier. This also means we SHOULD NOT reuse the0xbaddress in the future or handle it carefully.check_manifest_against_tomlstestmanifest.jsonmatch the metadata in theMove.tomlfiles of theiota-frameworkpackages.in the manifest and then use those files for the check. This allows us to modify name, id and remove packages every time we create a new protocol version.
manifest.jsonso that the fetch of commits during thecheck_manifest_against_tomlstest execution would be more efficient (it fetches each commit instead of the whole history). Moreover, some revs in the manifest were pointing to commits not belonging to any branch (squashed), so these were manually updated.TODO
Links to any relevant issues
fixes #6847
Type of change
How the change has been tested
CI.
Infrastructure QA
TODO @iotaledger/infrastructure
Release Notes
bridge_obj_initial_shared_versionandbridge_committee_initiatedfromEpochStartConfigurationBridgeReadApiincludinggetLatestBridgeandgetBridgeObjectInitialSharedVersion. RemovedEndOfEpochTransactionKind::BridgeStateCreateandEndOfEpochTransactionKind::BridgeCommitteeInitvariants.EndOfEpochTransactionKind::BridgeStateCreateandEndOfEpochTransactionKind::BridgeCommitteeInitvariants and related types.bridge-committee-init,validator register-bridge-committeeandupdate-bridge-committee-node-urlcommands.EndOfEpochTransactionKind::BridgeStateCreateandEndOfEpochTransactionKind::BridgeCommitteeInitvariants.