kroma-network / kroma

A developer-friendly, rollup-based Ethereum Layer 2 solution that offers low fees and EVM equivalence.
Other
161 stars 82 forks source link

docs: fix invalid spec links #314

Closed seolaoh closed 5 months ago

seolaoh commented 5 months ago

Summary by CodeRabbit

coderabbitai[bot] commented 5 months ago

Walkthrough

The recent updates focus on refining the project's documentation and ownership structure. Changes include updating URLs to absolute paths for better accessibility and clarity, and adjusting ownership assignments within the project teams.

Changes

Files Changes
.dockerignore Removed specs/ from ignored paths.
.github/CODEOWNERS Reorganized ownership: added assignments for various directories and removed /specs.
CONTRIBUTING.md, README.md, Updated URLs from relative to absolute for external links and specifications documentation. Minor formatting adjustments in CONTRIBUTING.md.
packages/contracts/README.md Updated links to specifications for various smart contracts on the Kroma network website.

Recent Review Details **Configuration used: CodeRabbit UI** **Review profile: CHILL**
Commits Files that changed from the base of the PR and between 313ea8d7391b600fd77cf8e7252ecdb825eeccc7 and 9b81c35c388a67e4cc0bcabf8ed3c980179d7eeb.
Files ignored due to path filters (1) * `versions.json` is excluded by `!**/*.json`
Files selected for processing (1) * packages/contracts/README.md (2 hunks)
Additional Context Used
LanguageTool (119)
packages/contracts/README.md (119)
Near line 1: Possible spelling mistake found. Context: # Kroma Smart Contracts This package contains ... --- Near line 3: Possible spelling mistake found. Context: ... that compose the on-chain component of Kroma. You can find detailed specifications f... --- Near line 10: Possible typo: you repeated a whitespace Context: ...ew ### Contracts deployed to L1 | Name | Proxy Type ... --- Near line 10: Possible typo: you repeated a whitespace Context: ... | Proxy Type | Description | |-----------------------... --- Near line 12: Possible typo: you repeated a whitespace Context: ....kroma.network/protocol/messengers.html) | [`Proxy`](./contracts/universal/Proxy.... --- Near line 12: Possible typo: you repeated a whitespace Context: ...oxy`](./contracts/universal/Proxy.sol) | | | High-level interface for sending mes... --- Near line 13: Possible spelling mistake found. Context: ...messages to and receiving messages from Kroma | ... --- Near line 13: Possible typo: you repeated a whitespace Context: ...ges to and receiving messages from Kroma | ... --- Near line 13: Possible typo: you repeated a whitespace Context: ...m Kroma | | | | [`L1StandardBridge`](h... --- Near line 13: Possible typo: you repeated a whitespace Context: ... | | | [`L1StandardBridge`](https://specs.k... --- Near line 14: Possible typo: you repeated a whitespace Context: ...ecs.kroma.network/protocol/bridges.html) | [`Proxy`](./contracts/universal/Proxy.... --- Near line 14: Possible typo: you repeated a whitespace Context: ...oxy`](./contracts/universal/Proxy.sol) | | | Standardized system for transfering ... --- Near line 15: Possible spelling mistake found. Context: ... | | Standardized system for transfering ERC20 tokens to/from Kroma ... --- Near line 15: Possible spelling mistake found. Context: ...em for transfering ERC20 tokens to/from Kroma ... --- Near line 15: Possible typo: you repeated a whitespace Context: ...r transfering ERC20 tokens to/from Kroma | ... --- Near line 15: Possible typo: you repeated a whitespace Context: ... | | | | [`L2OutputOracle`](htt... --- Near line 15: Possible typo: you repeated a whitespace Context: ... | | | [`L2OutputOracle`](https://specs.kro... --- Near line 16: Possible typo: you repeated a whitespace Context: ...or.html#l2-output-oracle-smart-contract) | [`Proxy`](./contracts/universal/Proxy.... --- Near line 16: Possible typo: you repeated a whitespace Context: ...oxy`](./contracts/universal/Proxy.sol) | | | Stores commitments to the state of K... --- Near line 17: Possible spelling mistake found. Context: ... | | Stores commitments to the state of Kroma which can be used by contracts on L1 to... --- Near line 17: Possible typo: you repeated a whitespace Context: ...ed by contracts on L1 to access L2 state | ... --- Near line 17: Possible typo: you repeated a whitespace Context: ... on L1 to access L2 state | | | | [`KromaPortal`](https:... --- Near line 17: Possible typo: you repeated a whitespace Context: ... | | | [`KromaPortal`](https://specs.kroma.... --- Near line 18: Possible spelling mistake found. Context: ... | | | [`KromaPortal`](https://specs.kroma.network/protocol/... --- Near line 18: Possible typo: you repeated a whitespace Context: ...protocol/deposits.html#deposit-contract) | [`Proxy`](./contracts/universal/Proxy.... --- Near line 18: Possible typo: you repeated a whitespace Context: ...oxy`](./contracts/universal/Proxy.sol) | | | Low-level message passing interface ... --- Near line 19: Possible typo: you repeated a whitespace Context: ... | | Low-level message passing interface | ... --- Near line 19: Possible typo: you repeated a whitespace Context: ... | | | | [`KromaMintableERC20Fa... --- Near line 19: Possible typo: you repeated a whitespace Context: ... | | | [`KromaMintableERC20Factory`](https:... --- Near line 20: Possible typo: you repeated a whitespace Context: ...oxy`](./contracts/universal/Proxy.sol) | | | Deploys standard `KromaMintableERC20... --- Near line 21: Possible spelling mistake found. Context: ... tokens that are compatible with either `StandardBridge` | ... --- Near line 21: Possible typo: you repeated a whitespace Context: ... compatible with either `StandardBridge` | ... --- Near line 21: Possible typo: you repeated a whitespace Context: ...ither `StandardBridge` | | | | [`ProxyAdmin`](https:/... --- Near line 21: Possible typo: you repeated a whitespace Context: ... | | | [`ProxyAdmin`](https://specs.kroma.n... --- Near line 22: Possible spelling mistake found. Context: ... | | | [`ProxyAdmin`](https://specs.kroma.network/protocol/... --- Near line 22: Possible typo: you repeated a whitespace Context: ...ork/protocol/predeploys.html#proxyadmin) | - ... --- Near line 22: Possible typo: you repeated a whitespace Context: ...admin) | - | | | Contract that can upgr... --- Near line 22: Possible typo: you repeated a whitespace Context: ... | | | Contract that can upgrade L1 contrac... --- Near line 23: Possible typo: you repeated a whitespace Context: ...| Contract that can upgrade L1 contracts | ... --- Near line 23: Possible typo: you repeated a whitespace Context: ... | | | ### Contracts deployed ... --- Near line 23: Possible typo: you repeated a whitespace Context: ... | | ### Contracts deployed to L2 | Name ... --- Near line 27: Possible typo: you repeated a whitespace Context: ... | ### Contracts deployed to L2 | Name | Proxy Type ... --- Near line 27: Possible typo: you repeated a whitespace Context: ... | Proxy Type | Description ... --- Near line 27: Possible typo: you repeated a whitespace Context: ... | Description | |-------------------------------------... --- Near line 29: Possible spelling mistake found. Context: ...------------------------------------| | [`GasPriceOracle`](https://specs.kroma.network/protocol/... --- Near line 29: Possible typo: you repeated a whitespace Context: ...protocol/predeploys.html#gaspriceoracle) | [`Proxy`](./contracts/universal/Proxy.... --- Near line 29: Possible typo: you repeated a whitespace Context: ...Stores L2 gas price configuration values | | [`L1Block`](https://specs.kroma.netw... --- Near line 30: Possible typo: you repeated a whitespace Context: ...etwork/protocol/predeploys.html#l1block) | [`Proxy`](./contracts/universal/Proxy.... --- Near line 30: Possible typo: you repeated a whitespace Context: ...ation (e.g., latest known L1 block hash) | | [`L2CrossDomainMessenger`](https://s... --- Near line 31: Possible typo: you repeated a whitespace Context: .../predeploys.html#l2crossdomainmessenger) | [`Proxy`](./contracts/universal/Proxy.... --- Near line 31: Possible typo: you repeated a whitespace Context: ...ssages to and receiving messages from L1 | | [`L2StandardBridge`](https://specs.k... --- Near line 32: Possible typo: you repeated a whitespace Context: ...otocol/predeploys.html#l2standardbridge) | [`Proxy`](./contracts/universal/Proxy.... --- Near line 32: Possible typo: you repeated a whitespace Context: ...for transferring ERC20 tokens to/from L1 | | [`L2ToL1MessagePasser`](https://spec... --- Near line 33: Possible typo: you repeated a whitespace Context: ...col/predeploys.html#l2tol1messagepasser) | [`Proxy`](./contracts/universal/Proxy.... --- Near line 33: Possible typo: you repeated a whitespace Context: ...l) | Low-level message passing interface | | [`ValidatorRewardVault`](https://spe... --- Near line 34: Possible spelling mistake found. Context: ... | | [`ValidatorRewardVault`](https://specs.kroma.network/protocol/... --- Near line 34: Possible typo: you repeated a whitespace Context: ...ol/predeploys.html#validatorrewardvault) | [`Proxy`](./contracts/universal/Proxy.... --- Near line 34: Possible typo: you repeated a whitespace Context: ...oxy.sol) | Vault for L2 transaction fees | | [`KromaMintableERC20Factory`](https:... --- Near line 35: Possible spelling mistake found. Context: ... tokens that are compatible with either `StandardBridge` | | [`L2ProxyAdmin`](https://specs.kro... --- Near line 36: Possible typo: you repeated a whitespace Context: ...ork/protocol/predeploys.html#proxyadmin) | - ... --- Near line 36: Possible typo: you repeated a whitespace Context: ...xyadmin) | - | Contract that can upgrade L2 contracts... --- Near line 36: Possible typo: you repeated a whitespace Context: ...ontracts when sent a transaction from L1 | ## Installation We export contract A... --- Near line 40: Possible spelling mistake found. Context: ... | ## Installation We export contract ABIs, contract source code, and contract dep... --- Near line 40: Possible spelling mistake found. Context: ...oyment information for this package via `npm`: ```shell > npm install @kroma/contra... --- Near line 52: Possible typo: you repeated a whitespace Context: ... located here](https://getfoundry.sh/). A specific version must be used. ```... --- Near line 59: Possible spelling mistake found. Context: ...e9 ``` 2. Install node modules with pnpm and Node.js: ```shell > pnpm i ... --- Near line 82: Possible spelling mistake found. Context: ...rget contract is tested with a separate pnpm command, for example: ```shell > pnpm ... --- Near line 92: This phrase is redundant. Consider using “inside”. Context: ...te or modify a file `.ts` inside of the [`deploy-config`](./deploy-config/)... --- Near line 93: Possible spelling mistake found. Context: ... 2. Fill out this file according to the `deployConfigSpec` located inside of the [`hardhat.con... --- Near line 93: This phrase is redundant. Consider using “inside”. Context: ...rding to the `deployConfigSpec` located inside of the [`hardhat.config.ts`](./hardhat.... --- Near line 95: Possible spelling mistake found. Context: .../hardhat.config.ts). 3. Optionally: Run `npx hardhat generate-deploy-config --networ... --- Near line 101: Possible spelling mistake found. Context: ...nto `.env` 2. Fill out the `L1_RPC` and `PRIVATE_KEY_DEPLOYER` environment variables in `.env` 3. Run... --- Near line 101: The preposition ‘to’ seems more likely in this position. Context: ...ATE_KEY_DEPLOYER` environment variables in `.env` 3. Run `npx hardhat deploy --net... --- Near line 102: Possible spelling mistake found. Context: ... environment variables in `.env` 3. Run `npx hardhat deploy --network ... --- Near line 103: Possible spelling mistake found. Context: ...ame>` to deploy the L1 contracts 4. Run `npx hardhat etherscan-verify --network --sleep` to verify contracts on Etherscan ## Tools ### Layout Locking We use a... --- Near line 111: Possible spelling mistake found. Context: ...lock a contract variable, add it to the `layout-lock.json` file which has the following format: ... --- Near line 125: Possible spelling mistake found. Context: ...ll check that we have a contract called `MyContractName`, that the contract has a variable name... --- Near line 126: Possible spelling mistake found. Context: ... that the contract has a variable named `myVariableName`, and that the variable is in the corre... --- Near line 128: Possible spelling mistake found. Context: ...lock file. You should add things to the `layout-lock.json` file when you want those variables to ... --- Near line 149: Loose punctuation mark. Context: ...lowing custom tags: - `@custom:proxied`: Add to a contract whenever it's meant t... --- Near line 150: Loose punctuation mark. Context: ... behind a proxy. - `@custom:upgradeable`: Add to a contract whenever it's meant t... --- Near line 151: Loose punctuation mark. Context: ...upgradeable contract. - `@custom:semver`: Add to a constructor to indicate the ve... --- Near line 178: Possible spelling mistake found. Context: ...s MUST be built under the assumption of upgradeability. We use a minimal [`Proxy`](./contracts... --- Near line 180: Possible spelling mistake found. Context: ...designed to be owned by a corresponding [`ProxyAdmin`](./contracts/universal/ProxyAdmin.sol)... --- Near line 181: Possible spelling mistake found. Context: ...min.sol) which follow the interfaces of OpenZeppelin's `Proxy` and `ProxyAdmin` contracts, r... --- Near line 181: Possible spelling mistake found. Context: ...nterfaces of OpenZeppelin's `Proxy` and `ProxyAdmin` contracts, respectively. Unless expli... --- Near line 183: Possible spelling mistake found. Context: ...e, you MUST include the following basic upgradeability pattern for each new implementation con... --- Near line 186: Possible spelling mistake found. Context: ...new implementation contract: 1. Extend OpenZeppelin's `Initializable` base contract. 2. Inc... --- Near line 186: Possible spelling mistake found. Context: ...ion contract: 1. Extend OpenZeppelin's `Initializable` base contract. 2. Include a `uint8 pub... --- Near line 188: It appears that a white space is missing. Context: ...function `initialize` with the modifier `reinitializer(VERSION)`. 4. In the `constructor`, set ... --- Near line 189: Possible spelling mistake found. Context: ...l the `initialize` function for setting mutables. ### Versioning All (non-library and ... --- Near line 193: Possible spelling mistake found. Context: ...non-abstract) contracts MUST extend the `Semver` base contract which exposes a `version... --- Near line 193: Possible missing comma found. Context: ...contracts MUST extend the `Semver` base contract which exposes a `version()` function th... --- Near line 194: Possible spelling mistake found. Context: ...s a `version()` function that returns a semver-compliant version string. Before mainnet release,... --- Near line 195: Possible spelling mistake found. Context: ...semver-compliant version string. Before mainnet release, the development process the `S... --- Near line 195: Possible spelling mistake found. Context: ...et release, the development process the `Semver` value for all contracts SHOULD return ... --- Near line 197: Possible spelling mistake found. Context: ...tracts SHOULD return `0.1.0` After the mainnet release, contracts MUST use the followi... --- Near line 199: This sentence does not start with an uppercase letter. Context: ...following versioning scheme: - `patch` releases are to be used only for changes that do... --- Near line 199: Possible spelling mistake found. Context: ...for changes that do NOT modify contract bytecode (such as updating comments). - `minor` ... --- Near line 200: This sentence does not start with an uppercase letter. Context: ... (such as updating comments). - `minor` releases are to be used for changes that modify ... --- Near line 200: Possible spelling mistake found. Context: ... are to be used for changes that modify bytecode OR changes that expand the contract ABI... --- Near line 200: Possible missing comma found. Context: ...ode OR changes that expand the contract ABI provided that these changes do NOT br... --- Near line 202: This sentence does not start with an uppercase letter. Context: ...break the existing interface. - `major` releases are to be used for changes that break t... --- Near line 207: Possible spelling mistake found. Context: ...tions We have made an exception to the `Semver` rule for the `WETH` contract to avoid ... --- Near line 207: Possible spelling mistake found. Context: ... exception to the `Semver` rule for the `WETH` contract to avoid making changes to a ... --- Near line 207: Consider shortening or rephrasing this to strengthen your wording. Context: ...` rule for the `WETH` contract to avoid making changes to a well-known, simple, and recognizable ... --- Near line 226: An accent character was used instead of an apostrophe. Context: ... #### Organizing Principles - Solidity `contract`s are used to organize the test suite sim... --- Near line 226: Possible missing comma found. Context: ...ontract`s are used to organize the test suite similar to how mocha uses describe. - E... --- Near line 233: Possible missing comma found. Context: ...ing convention Test function names are split by underscores, into 3 or 4 parts. An e... --- Near line 236: Possible spelling mistake found. Context: ...rIsNotOwner_reverts()`. The parts are: `[method]_[FunctionName]_[reason]_[success]`, where: - `[metho... --- Near line 238: This sentence does not start with an uppercase letter. Context: ...eason]_[success]`, where: - `[method]` is either `test`, `testFuzz`, or `testDiff... --- Near line 238: Possible spelling mistake found. Context: ... where: - `[method]` is either `test`, `testFuzz`, or `testDiff` - `[FunctionName]` is t... --- Near line 240: This sentence does not start with an uppercase letter. Context: ...vel behavior being tested. - `[reason]` is an optional description for the behavio... --- Near line 241: This sentence does not start with an uppercase letter. Context: ...the behavior being tested. - `[status]` must be one of: - `succeeds`: used for mos... --- Near line 252: This sentence does not start with an uppercase letter. Context: ... to their use: - `TargetContract_Init` for contracts that perform basic setup to b... --- Near line 253: This sentence does not start with an uppercase letter. Context: ...racts. - `TargetContract_Function_Test` for contracts containing happy path tests f... --- Near line 254: This sentence does not start with an uppercase letter. Context: ...n. - `TargetContract_Function_TestFail` for contracts containing sad path tests for... --- Near line 258: Possible spelling mistake found. Context: ...thdrawing From Fee Vaults See the file `scripts/FeeVaultWithdrawal.s.sol` to withdraw from the L2 fee vaul...
Additional comments not posted (3)
packages/contracts/README.md (3)
`4-4`: Updated specification link to absolute URL looks correct. Please ensure the link is accessible and points to the correct resource. --- `12-23`: Updated specification links in the contracts table are correctly formatted. Please ensure all links are accessible and point to the correct resources. --- `29-36`: Updated specification links in the L2 contracts table are correctly formatted. Please ensure all links are accessible and point to the correct resources.
--- Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media?
Share - [X](https://twitter.com/intent/tweet?text=I%20just%20used%20%40coderabbitai%20for%20my%20code%20review%2C%20and%20it%27s%20fantastic%21%20It%27s%20free%20for%20OSS%20and%20offers%20a%20free%20trial%20for%20the%20proprietary%20code.%20Check%20it%20out%3A&url=https%3A//coderabbit.ai) - [Mastodon](https://mastodon.social/share?text=I%20just%20used%20%40coderabbitai%20for%20my%20code%20review%2C%20and%20it%27s%20fantastic%21%20It%27s%20free%20for%20OSS%20and%20offers%20a%20free%20trial%20for%20the%20proprietary%20code.%20Check%20it%20out%3A%20https%3A%2F%2Fcoderabbit.ai) - [Reddit](https://www.reddit.com/submit?title=Great%20tool%20for%20code%20review%20-%20CodeRabbit&text=I%20just%20used%20CodeRabbit%20for%20my%20code%20review%2C%20and%20it%27s%20fantastic%21%20It%27s%20free%20for%20OSS%20and%20offers%20a%20free%20trial%20for%20proprietary%20code.%20Check%20it%20out%3A%20https%3A//coderabbit.ai) - [LinkedIn](https://www.linkedin.com/sharing/share-offsite/?url=https%3A%2F%2Fcoderabbit.ai&mini=true&title=Great%20tool%20for%20code%20review%20-%20CodeRabbit&summary=I%20just%20used%20CodeRabbit%20for%20my%20code%20review%2C%20and%20it%27s%20fantastic%21%20It%27s%20free%20for%20OSS%20and%20offers%20a%20free%20trial%20for%20proprietary%20code)
Tips ### Chat There are 3 ways to chat with [CodeRabbit](https://coderabbit.ai): - Review comments: Directly reply to a review comment made by CodeRabbit. Example: - `I pushed a fix in commit .` - `Generate unit testing code for this file.` - `Open a follow-up GitHub issue for this discussion.` - Files and specific lines of code (under the "Files changed" tab): Tag `@coderabbitai` in a new review comment at the desired location with your query. Examples: - `@coderabbitai generate unit testing code for this file.` - `@coderabbitai modularize this function.` - PR comments: Tag `@coderabbitai` in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples: - `@coderabbitai generate interesting stats about this repository and render them as a table.` - `@coderabbitai show all the console.log statements in this repository.` - `@coderabbitai read src/utils.ts and generate unit testing code.` - `@coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.` Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. ### CodeRabbit Commands (invoked as PR comments) - `@coderabbitai pause` to pause the reviews on a PR. - `@coderabbitai resume` to resume the paused reviews. - `@coderabbitai review` to trigger a review. This is useful when automatic reviews are disabled for the repository. - `@coderabbitai resolve` resolve all the CodeRabbit review comments. - `@coderabbitai help` to get help. Additionally, you can add `@coderabbitai ignore` anywhere in the PR description to prevent this PR from being reviewed. ### CodeRabbit Configration File (`.coderabbit.yaml`) - You can programmatically configure CodeRabbit by adding a `.coderabbit.yaml` file to the root of your repository. - Please see the [configuration documentation](https://docs.coderabbit.ai/guides/configure-coderabbit) for more information. - If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: `# yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json` ### Documentation and Community - Visit our [Documentation](https://coderabbit.ai/docs) for detailed information on how to use CodeRabbit. - Join our [Discord Community](https://discord.com/invite/GsXnASn26c) to get help, request features, and share feedback. - Follow us on [X/Twitter](https://twitter.com/coderabbitai) for updates and announcements.