hyperlane-xyz / v2-docs

Documentation
https://docs.hyperlane.xyz
11 stars 15 forks source link

Fix stale references to abacus #16

Closed yorhodes closed 8 months ago

yorhodes commented 1 year ago

grep output

developers/send/README.md:3:  Send a message via Interchain Account to any contract on an Abacus supported
developers/building-applications/README.md:17:_Note: Abacus is the former name of the Hyperlane protocol. The repo and SDK will soon be renamed._
developers/examples/helloworld.md:13:To conveniently implement the router pattern, the contract extends `@abacus-network/app/contracts/Router.sol`
developers/examples/helloworld.md:26:> extends AbacusRouterDeployer<
developers/building-applications/nodejs-sdk/deploying-contracts.md:7:_Note: Abacus is the former name of the Hyperlane protocol. The repo and deployers will soon be renamed._
developers/building-applications/nodejs-sdk/deploying-contracts.md:9:`AbacusDeployer` helps manage the deployment of contracts across multiple chains. Hyperlane apps should extend a deployer to specifiy the needed types and implement any needed logic for deployment of their contracts.&#x20;
developers/building-applications/nodejs-sdk/deploying-contracts.md:13:Developers must provide an implementation for `deployContracts` which describes the logic for deploying the application on a single chain. Developers building with the [Router](../writing-contracts/router.md) pattern can extend `AbacusRouterDeployer`, which handles some Router-specific boilerplate.
developers/building-applications/nodejs-sdk/deploying-contracts.md:18:import { AbacusRouterDeployer, ChainName } from '@abacus-network/sdk';
developers/building-applications/nodejs-sdk/deploying-contracts.md:21:  extends AbacusRouterDeployer<Chain, MyContracts, MyFactories, MyConfig> {
developers/building-applications/nodejs-sdk/deploying-contracts.md:33:    const acm = this.core.getContracts(chain).abacusConnectionManager.address;
developers/building-applications/nodejs-sdk/deploying-contracts.md:40:For an example deployer implementation see the [Hyperlane Hello World](https://github.com/abacus-network/abacus-app-template/blob/main/src/deploy/deploy.ts) app.
developers/building-applications/nodejs-sdk/deploying-contracts.md:45:Once an `AbacusDeployer` class has been defined, the deployer can be instantiated with a [Multiprovider](multiprovider.md) and a map of chains to configurations. These configs will be provided to your `deployContracts` methods and can include any values needed there. The initialization of Invoking `deploy()` will deploy contracts for all specified chains.&#x20;
developers/building-applications/nodejs-sdk/deploying-contracts.md:57:For an example deployment script, see the [Hyperlane Hello World](https://github.com/abacus-network/abacus-app-template/blob/main/src/scripts/deploy.ts) app.
developers/building-applications/writing-contracts/abacusconnectionclient.md:5:# AbacusConnectionClient
developers/building-applications/writing-contracts/abacusconnectionclient.md:7:_Note: Abacus is the former name of the Hyperlane protocol. The repo, ACM, and ACC will soon be renamed._
developers/building-applications/writing-contracts/abacusconnectionclient.md:9:Inheriting from [`AbacusConnectionClient`](https://github.com/abacus-network/abacus-monorepo/blob/main/solidity/app/contracts/AbacusConnectionClient.sol) is a simple way to ensure your contract knows where to send or receive interchain messages to or from.
developers/building-applications/writing-contracts/abacusconnectionclient.md:11:This mix-in contract maintains a pointer to an [`AbacusConnectionManager`](abacusconnectionmanager.md). Application developers can choose to deploy their own connection manager, or point to an existing contract that's managed by an entity they trust.
developers/building-applications/writing-contracts/abacusconnectionclient.md:13:`AbacusConnectionClient` exposes functions that allow subclasses to easily send messages to the `Outbox` via the `_outbox()` view function, and permission message delivery via the `onlyInbox` modifier.
developers/building-applications/writing-contracts/abacusconnectionclient.md:16:import {AbacusConnectionClient} from "@abacus-network/app/contracts/AbacusConnectionClient.sol";
developers/building-applications/writing-contracts/abacusconnectionclient.md:18:contract HelloWorld is AbacusConnectionClient {
developers/building-applications/nodejs-sdk/multiprovider.md:7:_Note: Abacus is the former name of the Hyperlane protocol. The repo, ACM, and ACC will soon be renamed._
developers/building-applications/nodejs-sdk/multiprovider.md:16:import {chainConnectionConfigs} from '@abacus-network/sdk';
developers/building-applications/nodejs-sdk/testing-contracts.md:11:In the example below, we simulate message passing between two chains. For more in depth examples see the tests in the [Hyperlane template application](https://github.com/abacus-network/abacus-app-template/tree/main/src/test).
developers/building-applications/nodejs-sdk/testing-contracts.md:22:} from '@abacus-network/sdk';
developers/building-applications/nodejs-sdk/testing-contracts.md:71:    // Mock processing of the message by Abacus
developers/building-applications/writing-contracts/router.md:11:Developers using this pattern can inherit from the `Router` mix-in contract. `Router` is an [`AbacusConnectionClient`](abacusconnectionclient.md) that tracks the addresses of other `Router` contract addresses on remote chains. This allows `Routers` to send messages directly to others without having to specify addresses. It also allows `Routers` to reject messages sent from other untrusted senders.
developers/building-applications/nodejs-sdk/contract-interaction/README.md:7:_Note: Abacus is the former name of the Hyperlane protocol. The repo will soon be renamed._
developers/building-applications/nodejs-sdk/contract-interaction/README.md:13:The `AbacusApp` abstraction is a mapping that resolves a chain to a collection of [ethers Contracts](https://docs.ethers.io/v5/api/contract/contract/#Contract). Developers should extend `AbacusApp` and can add methods for different kinds of contract calls/transactions they would like to initiate.
developers/building-applications/nodejs-sdk/contract-interaction/README.md:15:A simple `AbacusApp` extension could look like this:
developers/building-applications/nodejs-sdk/contract-interaction/README.md:18:export class MyAbacusApp<Chain extends ChainName = ChainName>
developers/building-applications/nodejs-sdk/contract-interaction/README.md:19:  extends AbacusApp<MyContracts, Chain>
developers/building-applications/nodejs-sdk/contract-interaction/README.md:31:See the [Hyperlane Hello World](https://github.com/abacus-network/abacus-app-template/blob/main/src/sdk/app.ts) app for an example of how to extend `AbacusApp`.
developers/building-applications/nodejs-sdk/contract-interaction/README.md:36:Once an `AbacusApp` implementation is defined, it can be instantiated using the output generated from the [`AbacusAppDeployer`](broken-reference) and an instance of the [`MultiProvider`](../multiprovider.md).&#x20;
developers/building-applications/nodejs-sdk/gas.md:7:_Note: Abacus is the former name of the Hyperlane protocol._&#x20;
developers/building-applications/nodejs-sdk/gas.md:11:Be sure to use `@abacus-network/sdk` version `0.4.1` or greater for the calculator to work correctly.
developers/building-applications/nodejs-sdk/gas.md:23:  AbacusCore,
developers/building-applications/nodejs-sdk/gas.md:27:} from "@abacus-network/sdk";
developers/building-applications/nodejs-sdk/gas.md:36:// Create an AbacusCore instance for the mainnet environment.
developers/building-applications/nodejs-sdk/gas.md:37:const core = AbacusCore.fromEnvironment(
validators/getting-started/start-validating.md:15:We also provide a mostly-ready-to-go grafana dashboard to get you started, you can find the source and instructions for importing it under [tools/grafana](https://github.com/abacus-network/abacus-monorepo/tree/main/tools/grafana). If you want to use your own, the `abacus_latest_checkpoint` is the most critical metric in both the `phase="validator_observed"` and `phase="validator_processed"` dimension. It should gradually increase and the two should never really be out of sync.
validators/getting-started/start-validating.md:23:You can run the validator binary by compiling the code directly, or using a docker image provided by Abacus Works.
validators/getting-started/start-validating.md:25:The validator can be run directly via  `cargo run --bin validator` in the `rust` folder of the [monorepo](https://github.com/abacus-network/abacus-monorepo).
validators/getting-started/start-validating.md:27:Alternatively, the docker image can be run via `docker run -it gcr.io/abacus-labs-dev/abacus-agent:sha-7956ff0 ./validator`.
validators/getting-started/start-validating.md:30:Note due to the rebranding away from Abacus to Hyperlane, all environment variables that were previously prefixed with `ABC_` have been changed to use the prefix `HYP_`. If you previously operated a validator with the old environment variable prefix, be sure to change environment variable names before upgrading to the latest image / commit.
validators/getting-started/README.md:31:Validators can compile the rust binary themselves, or run a docker image provided by Abacus Works. The binary is completely stateless and can be run using your favorite cloud service. You can even run multiple instances of them in different regions for high availability, as Hyperlane has no notion of "double signing".
validators/getting-started/environment-variables.md:14:Note due to the rebranding away from Abacus to Hyperlane, all environment variables that were previously prefixed with `ABC_` have been changed to use the prefix `HYP_`. Be sure to update to the latest image specified in [#running-the-binary](start-validating.md#running-the-binary "mention") that expects the new `HYP_` prefixed environment variables, or a commit after this [pull request](https://github.com/hyperlane-xyz/hyperlane-monorepo/pull/1116).
validators/getting-started/environment-variables.md:20:| `BASE_CONFIG`                           | <p>The config filename containing, among other things, contract addresses. The config files can be found <a href="https://github.com/abacus-network/abacus-monorepo/tree/main/rust/config/mainnet">here</a>.<br><br>If running using the docker image, should be set to <code>${chain_name}_config.json</code>.</p>                                                                       |
validators/getting-started/environment-variables.md:23:| `HYP_VALIDATOR_VALIDATOR_ID`            | The alias of your validator's AWS KMS key, prefixed with `alias/`, e.g. `alias/abacus-validator-signer-${chain_name}`                                                                                                                                                                                                                                                                     |
protocol/agents/validators.md:27:Abacus Works is developing the validator as a Rust binary that can be easily run by anyone. Operationally, validators need to run this binary and a node for the chain that they are validating for. We hope that the majority of Hyperlane validators will come from each chain's existing node operator community.
developers/building-applications/writing-contracts/README.md:9:### [`AbacusConnectionClient`](abacusconnectionclient.md)&#x20;
developers/building-applications/writing-contracts/README.md:13:### [`AbacusConnectionManager`](abacusconnectionmanager.md)&#x20;
developers/building-applications/writing-contracts/README.md:15:A contract that manages the connection between your `AbacusConnectionClient` and Abacus.
developers/building-applications/writing-contracts/README.md:21:_Note: Abacus is the former name of the Hyperlane protocol. The repo, ACM, and ACC will soon be renamed._
developers/building-applications/nodejs-sdk/README.md:3:_Note: Abacus is the former name of the Hyperlane protocol. The repos will soon be renamed._
developers/building-applications/nodejs-sdk/README.md:23:![](<../../../.gitbook/assets/Abacus Application SDK Diagram v2.png>)
developers/building-applications/writing-contracts/abacusconnectionmanager.md:5:# AbacusConnectionManager
developers/building-applications/writing-contracts/abacusconnectionmanager.md:7:_Note: Abacus is the former name of the Hyperlane protocol. The repo, ACM, and ACC will soon be renamed._
developers/building-applications/writing-contracts/abacusconnectionmanager.md:9:[`AbacusConnectionManagers`](https://github.com/abacus-network/abacus-monorepo/blob/main/solidity/core/contracts/AbacusConnectionManager.sol) connect [`AbacusConnectionClients`](abacusconnectionclient.md) to the Hyperlane `Outbox` and `Inbox` contracts.
developers/building-applications/writing-contracts/abacusconnectionmanager.md:11:`ApplicationConnectionClients` send messages to the [`Outbox`](../../../protocol/messaging/outbox.md) contract address stored in the `AbacusConnectionManager.`
developers/building-applications/writing-contracts/abacusconnectionmanager.md:13:Similarly, `ApplicationConnectionClients` query the `AbacusConnectionManager` when receiving messages, to ensure that messages are being delivered by an [`Inbox`](../../../protocol/messaging/inbox.md) contract.
developers/building-applications/writing-contracts/abacusconnectionmanager.md:15:The `Outbox` and `Inbox` addressed stored by the `AbacusConnectionManager` can be updated by the contract's `owner`, allowing clients using that connection manager to easily migrate to newer versions of the Abacus protocol.
developers/building-applications/writing-contracts/abacusconnectionmanager.md:18: interface IAbacusConnectionManager {
developers/building-applications/writing-contracts/abacusconnectionmanager.md:44:Applications can deploy their own `AbacusConnectionManagers` if they want their connection to Hyperlane to be controlled by their own governance protocol.
developers/building-applications/writing-contracts/abacusconnectionmanager.md:46:Abacus Works will deploy and maintain a public `AbacusConnectionManager` that all are welcome to use.
developers/messaging-api/unit-testing.md:54:describe("Abacus", function() {
developers/messaging-api/receive.md:47:A generalized message access control layer is provided in the [`AbacusConnectionManager`](../building-applications/writing-contracts/abacusconnectionmanager.md) library, and Abacus Works has deployed and maintained these registries on all supported networks.&#x20;
developers/messaging-api/receive.md:49:_Note: Abacus is the former name of the Hyperlane protocol. The ACM will soon be renamed._
README.md:66:Hyperlane was originally named Abacus. For the time being you may encounter the name Abacus still referenced throughout the docs, github repos, and smart contracts.&#x20;
protocol/agents/processor.md:35:For convenience, Abacus Works will run an open source and configurable watchtower agent, implemented as a Rust binary. Watchtowers will remain an open source and permissionless role. Applications could run Watchtowers, but so could Validators, Relayers, and any other stakeholder in the Hyperlane ecosystem.
developers-faq-and-troubleshooting/latencies.md:2:description: Abacus block finality latency configuration.
developers-faq-and-troubleshooting/latencies.md:9:Refer to the following sections for block finality configuration used by the Abacus Works validators.
protocol/agents/relayer.md:19:For convenience, Abacus Works will run an open source and configurable relayer agent, implemented as a Rust binary. If you'd like to run your own relayer, we've open sourced the [binary here](https://github.com/hyperlane-xyz/hyperlane-monorepo/tree/main/rust/agents/relayer).&#x20;
SUMMARY.md:29:    * [AbacusConnectionClient](developers/building-applications/writing-contracts/abacusconnectionclient.md)
SUMMARY.md:30:    * [AbacusConnectionManager](developers/building-applications/writing-contracts/abacusconnectionmanager.md)
developers-faq-and-troubleshooting/helpful-resources/v2-migration-guide.md:13:Hyperlane V2 will have one `Mailbox` contract per chain, as opposed to one `Outbox` and several `Inboxes`. This allows applications to specify a single address from which they send and receive messages. [ConnectionManager](https://github.com/hyperlane-xyz/hyperlane-monorepo/blob/main/solidity/contracts/AbacusConnectionManager.sol) contracts can still be used but are less useful as there are no longer many `Inbox` contracts to aggregate.
developers-faq-and-troubleshooting/helpful-resources/v2-migration-guide.md:25:If you're building on Hyperlane V1 using an `AbacusConnectionManager`, you will be able to migrate from V1 to V2 by:\
developers-faq-and-troubleshooting/helpful-resources/v2-migration-guide.md:26:1\. Calling `abacusConnectionManager.setOutbox(v2MailboxAddress)`\
developers-faq-and-troubleshooting/helpful-resources/v2-migration-guide.md:27:2\. Calling `abacusConnectionManager.enrollInbox(v2DomainId, v2MailboxAddress)`\
developers-faq-and-troubleshooting/helpful-resources/v2-migration-guide.md:28:3\. Eventually, calling `abacusConnectionManager.unenrollInbox(v1InboxAddress)` for each V1 `Inbox`\
validators/getting-started/aws-setup.md:14:4. Pick a friendly and informative username, like `abacus-validator-${chain_name}`. This username will be referenced in future steps, so if you choose a different username be sure to use your correct username in the future.
validators/getting-started/aws-setup.md:32:9. Set the Alias to something friendly and informative, like `abacus-validator-signer-${chain_name}`.
validators/getting-started/aws-setup.md:37:14. Give usage permissions to the IAM user you created in the previous section (e.g. `abacus-validator`).
validators/getting-started/aws-setup.md:50:3. Pick an informative bucket name, such as `abacus-validator-signatures-${validator_name}-${chain_name}`
validators/getting-started/aws-setup.md:66:3. Click on the name of the user that you provisioned earlier (e.g. `abacus-validator-${chain_name}`)
validators/getting-started/aws-setup.md:67:4. Copy the "User ARN" to your clipboard, it should look something like `arn:aws:iam::791444913613:user/abacus-validator-${chain_name}`
resources/roadmap.md:19:The validator set on each chain is determined by a multi-signature wallet controlled by Abacus Works. Future releases will use proof-of-stake to determine the validator set.
resources/roadmap.md:25:Hyperlane alpha is governed by a multi-signature wallet controlled by Abacus Works.
developers-faq-and-troubleshooting/addresses/environments.md:7:_Note: Abacus is the former name of the Hyperlane protocol. Parts of the codebase will soon be renamed._
developers-faq-and-troubleshooting/addresses/environments.md:13:The `test` environment is meant for local development. Application developers can use the `@abacus-network/hardhat` plugin's `TestAbacusDeploy` object to deploy a mocked Hyperlane core platform. By calling `processMessages()`, developers can simulate the processing of messages across domains without having to run any of the Agents.
developers-faq-and-troubleshooting/addresses/environments.md:15:The domains that are supported by the `sdk` are artificial chains `test1`, `test2`, and `test3` which are all deployed on the same hardhat-network node, either in unit tests setup by `hardhat` or a dedicated node that is run via `hardhat node`. Local end-to-end tests should be run in the `test` environment as well. Developers can use the `getMultiProviderFromConfigAndSigner` from `@abacus-network/deploy` to construct a `MultiProvider` that works for the `test` environment.
developers-faq-and-troubleshooting/addresses/environments.md:24:import { AbacusCore } from '@abacus-network/sdk';
developers-faq-and-troubleshooting/addresses/environments.md:26:const core = AbacusCore.fromEnvironment(environment, multiProvider);
developers-faq-and-troubleshooting/addresses/environments.md:39:In cases where the core Hyperlane contract addresses are needed (instead of using utilities via Environment names), the artifacts for core deployments can be found in the [monorepo here](https://github.com/abacus-network/abacus-monorepo/tree/main/typescript/sdk/src/consts/environments).
developers-faq-and-troubleshooting/troubleshooting/observability.md:47:An underfunded message implies the [gas paid](../../developers/messaging-api/gas.md) for message delivery is insufficient. The relayer registered on the gas paymaster can [`claim`](https://github.com/abacus-network/abacus-monorepo/blob/main/solidity/core/contracts/InterchainGasPaymaster.sol#L62) these fees to compensate for gas costs incurred on the destination chain. The relayer client uses the [`eth_estimateGas`](https://ethereum.github.io/execution-apis/api-documentation/)RPC on the destination chain to determine the absolute cost of relaying a message, uses the [CoinGecko API](https://www.coingecko.com/en/api) to calculate the exchange rate between the two chains native assets, and will only pay for message processing if the message relay was funded appropriately on the source chain's paymaster (within some acceptable price deviation).
anettrolikova commented 1 year ago
image

source https://docs.hyperlane.xyz/docs/build-with-hyperlane/guides/developers/v2-migration-guide