Conversation
|
The latest updates on your projects. Learn more about Vercel for Git ↗︎
|
📝 WalkthroughWalkthroughThis set of changes updates numerous markdown documentation files and two TypeScript files within the project. The primary modification is the replacement of image file extensions from Assessment against linked issues
Assessment against linked issues: Out-of-scope changes
Possibly related PRs
✨ Finishing Touches
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
SupportNeed help? Create a ticket on our support page for assistance with any issues or questions. 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 using PR comments)
Other keywords and placeholders
Documentation and Community
|
There was a problem hiding this comment.
Actionable comments posted: 1
🔭 Outside diff range comments (3)
packages/common-config/src/components/HandbookSection/index.tsx (1)
55-60: Missingrel="noopener noreferrer"on external link
target="_blank"without therelattribute opens the door to reverse-tab-napping.
Add the recommended rel flags:- <a - href={handbook.href} - style={cardStyle} - target="_blank" - className={styles.handbooksCard} - > + <a + href={handbook.href} + style={cardStyle} + target="_blank" + rel="noopener noreferrer" + className={styles.handbooksCard} + >sites/wonderland/docs/development/research/onboarding/knowledge-base/basics/game-theory.md (1)
30-33: Remaining.pngreferences defeat the “all-JPEG” optimization goalFour images (
/img/game-theory-1.png,-2.png,-3.png,-4.png) were not renamed to.jpg, unlike the rest of the repo.
Result: broken links after the PNGs are deleted during asset clean-up, or the heavier PNGs are still served.- +(…apply the same change to the other three images.)
Also applies to: 42-44, 78-81, 94-96
sites/wonderland/docs/testing/advanced-testing/property-based-fuzzing.md (1)
107-113: Type mismatch in reproduction test – will not compile
property_IHaveFailed(string,uint256)is called with(string, address).
Same mismatch forproperty_IHaveFailedToo.- this.property_IHaveFailed('arg', address(12)); + this.property_IHaveFailed('arg', 12);and adjust the second call analogously.
Without this fixforge testwill fail at compile time, defeating the purpose of the repro contract.
🧹 Nitpick comments (21)
sites/wonderland/src/pages/index.tsx (1)
57-60: Path duplication – extract to a shared constantBoth this page and
HandbookSectionembed the exact same"/common/img/background-handbook-card.jpg"literal. Centralising it (e.g.constants.ts) removes copia-paste risk when the asset changes again.sites/wonderland/docs/processes/github/repo-readiness.md (1)
14-20: Inconsistent list indentation breaks Markdown renderingLine 17 is indented with one space instead of two, so the checkbox becomes plain text on some renderers.
- - [ ] Add a LICENSE file + - [ ] Add a LICENSE fileDo the same for the nested LICENSE links to keep them under the checkbox item.
sites/wonderland/docs/development/research/technical-writing.md (2)
84-85: Alt text still references obsolete filenameThe alt text
"image.png"no longer matches the.jpgasset.- +
100-103: Bare URL – wrap in Markdown link for lint compliance
markdownlint(MD034) flags bare URLs. Wrap with brackets:-https://mirror.xyz/lisaakselrod.eth/3VJ6t85bpn58WrxrBtVggDIv8-foJJjOys1Tu6K6EfU +[“How to write for devs – checklist”](https://mirror.xyz/lisaakselrod.eth/3VJ6t85bpn58WrxrBtVggDIv8-foJJjOys1Tu6K6EfU)sites/wonderland/docs/development/offchain/onboarding/challenge.md (2)
39-42: Link text / target mismatchThe bullet says factory pattern but links to singleton pattern.
- - Implement [factory pattern](https://refactoring.guru/design-patterns/singleton) for provider selection + - Implement [factory pattern](https://refactoring.guru/design-patterns/factory-method) for provider selection
78-80: Grammar“…as it help us on improving…” → “…as it helps us improve…”.
-Write some notes with your experience working on the challenge. All feedback is really welcomed and appreciated, as it help us on improving the challenge for the future +Write some notes about your experience working on the challenge. All feedback is welcome and appreciated, as it helps us improve the challenge for the future.sites/wonderland/docs/processes/github/git-practices.md (2)
16-29: Nested checklist indentation no longer follows Markdown specReducing the indentation from 4 spaces to 2 spaces breaks the visual nesting in most Markdown renderers (GitHub, Docusaurus, VS Code preview).
Re-indent the child check-boxes with ≥ 4 spaces to keep them grouped under their parent bullet.- - [ ] Enable "Require a pull request before merging" + - [ ] Enable "Require a pull request before merging"
42-44: Add descriptive alt text to image for accessibility (MD045)The
<img>tag lacks analtattribute, triggering the markdown-lint rule and harming screen-reader usability.- <img src="/img/pr-meme.jpg" width="900" /> + <img src="/img/pr-meme.jpg" alt="Funny pull-request meme" width="900" />sites/wonderland/docs/development/offchain/rpc-request.md (3)
64-66: Replace file-name alt text with a meaningful description
![request.png]passes lint but doesn’t help accessibility. Describe the graphic instead of repeating the file name.- +
160-161: Same issue: improve alt text of second diagram- +
165-166: Wrap bare URL to satisfy MD034 and improve readability-A sample working version of this method can be found at https://github.com/defi-wonderland/rpc-batching-sample +A sample working version of this method can be found at \ +[defi-wonderland/rpc-batching-sample](https://github.com/defi-wonderland/rpc-batching-sample)sites/wonderland/docs/development/research/onboarding/knowledge-base/core/oracles.md (1)
15-17: Typo in bolded term creates stray leading “I”
I**mmediate-read oracles**renders the initial “I” outside the bold span.
Remove the extra character:-I**mmediate-read oracles** +**Immediate-read oracles**sites/wonderland/docs/processes/project-lifecycle.md (1)
95-96: Hard tab before<img>violates MD010Replace the tab with spaces to satisfy markdown-lint and avoid unpredictable rendering.
- <img src="/img/project-lifecycle-meme.jpg" alt="project-lifecycle" width={600} /> + <img src="/img/project-lifecycle-meme.jpg" alt="project-lifecycle meme" width={600} />sites/wonderland/docs/testing/advanced-testing/overview.md (3)
12-13: Avoid vague intensifier “big”“in a big number of cases”
“Large” or “vast” conveys the same idea more formally.-…working in a big number of cases… +…working in a large number of cases…
98-102: Bullet-list verification steps render as plain textIndent the three sub-points by two additional spaces so they are recognised as list items under the parent bullet.
- - Check the coverage … - - Make sure both sides … - - Mutate the property … + - Check the coverage … + - Make sure both sides … + - Mutate the property …
122-126: Prefix headings with one space after!for Docusaurus image shorthandSome Markdown engines mis-parse
![Fuzzing sanity check]when immediately followed by text.
Add a newline or space after the image to avoid accidental concatenation with the sentence.sites/wonderland/docs/development/research/onboarding/knowledge-base/basics/game-theory.md (2)
449-453: Typos in key takeaway sentence“Accomodate” → “Accommodate”, “thret” → “threat”.
Minor, but in a highlighted conclusion they hurt credibility.-The subgame perfect equilibrium is (Enter, Accomodate), eliminating the unrealistic thret of a price war. +The subgame-perfect equilibrium is (Enter, Accommodate), eliminating the unrealistic threat of a price war.
36-37: Duplicated paragraph – probable copy-paste slipThe explanation of an extensive-form game appears twice almost verbatim (lines ~36-41 and ~49-51). Remove one copy to keep the flow tight.
Also applies to: 49-51
sites/wonderland/docs/development/frontend/best-practices.md (1)
167-168: Broken markdown aroundstyled()linkThe sequence
[\*\*``styled()](...)``\*\*produces garbled output and an incorrect anchor.-Or using [\*\*``styled()](https://mui.com/system/styled/?srsltid=AfmBOoq0FmJ0KjHaNEZYbCgi1CbkOamY-AwtPiSm0tDtQ9Bdp7GIY3sd)``\*\* utility from MUI: +Or using **[`styled()`](https://mui.com/system/styled/)** utility from MUI:sites/wonderland/docs/testing/advanced-testing/property-based-fuzzing.md (1)
157-158: Spell-out “etc.” with the mandatory periodMinor documentation polish:
- Further logic can be included for, eg, have a non-fifo ordering (lifo, random, etc), rely on additional relayers/hyperlane/etc. + Further logic can include, e.g., non-FIFO ordering (LIFO, random, etc.), or rely on additional relayers/hyperlane, etc.sites/wonderland/docs/processes/github/ssh-setup.md (1)
126-127: Alt text still shows “image.png” after file migrated to JPGPurely cosmetic, but keeping alt text in sync avoids confusion when searching.
- +
📜 Review details
Configuration used: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
⛔ Files ignored due to path filters (45)
packages/common-config/static/common/img/background-handbook-card.jpgis excluded by!**/*.jpgpackages/common-config/static/common/img/background-handbook-card.pngis excluded by!**/*.pngpackages/common-config/static/common/img/red-card-bg.pngis excluded by!**/*.pngpackages/common-config/static/common/img/wonderland-button-bg.jpgis excluded by!**/*.jpgpackages/common-config/static/common/img/wonderland-button-bg.pngis excluded by!**/*.pngsites/wonderland/static/img/battle-of-sex.jpgis excluded by!**/*.jpgsites/wonderland/static/img/battle-of-sex.pngis excluded by!**/*.pngsites/wonderland/static/img/chicken-problem.jpgis excluded by!**/*.jpgsites/wonderland/static/img/chicken-problem.pngis excluded by!**/*.pngsites/wonderland/static/img/cournot.jpgis excluded by!**/*.jpgsites/wonderland/static/img/cournot.pngis excluded by!**/*.pngsites/wonderland/static/img/equilibrium.jpgis excluded by!**/*.jpgsites/wonderland/static/img/equilibrium.pngis excluded by!**/*.pngsites/wonderland/static/img/frontend-meme.jpgis excluded by!**/*.jpgsites/wonderland/static/img/frontend-meme.pngis excluded by!**/*.pngsites/wonderland/static/img/full-tree.jpgis excluded by!**/*.jpgsites/wonderland/static/img/full-tree.pngis excluded by!**/*.pngsites/wonderland/static/img/fuzz-inheritance.jpgis excluded by!**/*.jpgsites/wonderland/static/img/fuzz-inheritance.pngis excluded by!**/*.pngsites/wonderland/static/img/fuzz-sanity-check.jpgis excluded by!**/*.jpgsites/wonderland/static/img/fuzz-sanity-check.pngis excluded by!**/*.pngsites/wonderland/static/img/meme-tech.jpgis excluded by!**/*.jpgsites/wonderland/static/img/meme-tech.pngis excluded by!**/*.pngsites/wonderland/static/img/offchain-img.jpgis excluded by!**/*.jpgsites/wonderland/static/img/offchain-img.pngis excluded by!**/*.pngsites/wonderland/static/img/oracles-1.jpgis excluded by!**/*.jpgsites/wonderland/static/img/oracles-1.pngis excluded by!**/*.pngsites/wonderland/static/img/oracles-2.jpgis excluded by!**/*.jpgsites/wonderland/static/img/oracles-2.pngis excluded by!**/*.pngsites/wonderland/static/img/oracles-3.jpgis excluded by!**/*.jpgsites/wonderland/static/img/oracles-3.pngis excluded by!**/*.pngsites/wonderland/static/img/pr-meme.jpgis excluded by!**/*.jpgsites/wonderland/static/img/pr-meme.pngis excluded by!**/*.pngsites/wonderland/static/img/project-lifecycle-meme.jpgis excluded by!**/*.jpgsites/wonderland/static/img/project-lifecycle-meme.pngis excluded by!**/*.pngsites/wonderland/static/img/repo-readiness.jpgis excluded by!**/*.jpgsites/wonderland/static/img/repo-readiness.pngis excluded by!**/*.pngsites/wonderland/static/img/rpc-batching-1.jpgis excluded by!**/*.jpgsites/wonderland/static/img/rpc-batching-1.pngis excluded by!**/*.pngsites/wonderland/static/img/rpc-batching-2.jpgis excluded by!**/*.jpgsites/wonderland/static/img/rpc-batching-2.pngis excluded by!**/*.pngsites/wonderland/static/img/tech-writing-meme-2.jpgis excluded by!**/*.jpgsites/wonderland/static/img/tech-writing-meme-2.pngis excluded by!**/*.pngsites/wonderland/static/img/thats-too-easy.jpgis excluded by!**/*.jpgsites/wonderland/static/img/thats-too-easy.pngis excluded by!**/*.png
📒 Files selected for processing (14)
packages/common-config/src/components/HandbookSection/index.tsx(1 hunks)sites/wonderland/docs/development/frontend/best-practices.md(14 hunks)sites/wonderland/docs/development/offchain/onboarding/challenge.md(3 hunks)sites/wonderland/docs/development/offchain/rpc-request.md(5 hunks)sites/wonderland/docs/development/research/onboarding/knowledge-base/basics/game-theory.md(19 hunks)sites/wonderland/docs/development/research/onboarding/knowledge-base/core/oracles.md(4 hunks)sites/wonderland/docs/development/research/technical-writing.md(5 hunks)sites/wonderland/docs/processes/github/git-practices.md(3 hunks)sites/wonderland/docs/processes/github/repo-readiness.md(3 hunks)sites/wonderland/docs/processes/github/ssh-setup.md(2 hunks)sites/wonderland/docs/processes/project-lifecycle.md(3 hunks)sites/wonderland/docs/testing/advanced-testing/overview.md(5 hunks)sites/wonderland/docs/testing/advanced-testing/property-based-fuzzing.md(7 hunks)sites/wonderland/src/pages/index.tsx(1 hunks)
🧰 Additional context used
🧠 Learnings (3)
packages/common-config/src/components/HandbookSection/index.tsx (3)
Learnt from: th0rOdinson
PR: defi-wonderland/handbook#50
File: packages/common-config/preset/commonDocusaurusConfig.ts:50-53
Timestamp: 2025-07-08T17:52:29.172Z
Learning: In the defi-wonderland/handbook repository, for external handbook URLs in the navbar dropdown (like "https://handbook.wonderland.xyz/optimism"), the `to` property is used instead of `href` to avoid adding the openInNew icon since these are considered internal links within the handbook ecosystem from a UX perspective.
Learnt from: th0rOdinson
PR: defi-wonderland/handbook#50
File: packages/common-config/src/components/CategoryCards/index.tsx:26-39
Timestamp: 2025-07-08T17:47:11.797Z
Learning: In the defi-wonderland/handbook monorepo CategoryCards component, the custom click handler with preventDefault, window.scrollTo, and setTimeout before window.location.href navigation was chosen as the best solution after exploring Docusaurus-based and native React approaches that didn't work for this specific use case.
Learnt from: th0rOdinson
PR: defi-wonderland/handbook#50
File: packages/common-config/src/components/HandbookSection/index.tsx:24-28
Timestamp: 2025-07-08T17:34:12.910Z
Learning: In the defi-wonderland/handbook monorepo, the build command copies assets so that `/common/img/star-icon.svg` and similar paths in the common-config package are always available to consuming projects, eliminating the need for configurable asset paths.
sites/wonderland/src/pages/index.tsx (1)
Learnt from: th0rOdinson
PR: defi-wonderland/handbook#50
File: packages/common-config/preset/commonDocusaurusConfig.ts:50-53
Timestamp: 2025-07-08T17:52:29.172Z
Learning: In the defi-wonderland/handbook repository, for external handbook URLs in the navbar dropdown (like "https://handbook.wonderland.xyz/optimism"), the `to` property is used instead of `href` to avoid adding the openInNew icon since these are considered internal links within the handbook ecosystem from a UX perspective.
sites/wonderland/docs/development/frontend/best-practices.md (1)
Learnt from: th0rOdinson
PR: defi-wonderland/handbook#50
File: packages/common-config/src/components/CategoryCards/index.tsx:26-39
Timestamp: 2025-07-08T17:47:11.797Z
Learning: In the defi-wonderland/handbook monorepo CategoryCards component, the custom click handler with preventDefault, window.scrollTo, and setTimeout before window.location.href navigation was chosen as the best solution after exploring Docusaurus-based and native React approaches that didn't work for this specific use case.
🪛 LanguageTool
sites/wonderland/docs/development/offchain/onboarding/challenge.md
[grammar] ~9-~9: Ensure spelling is correct
Context: ...nd report Total Value Locked (TVL) from UniswapV2 pools across multiple blockchains. This...
(QB_NEW_EN_ORTHOGRAPHY_ERROR_IDS_1)
sites/wonderland/docs/development/research/onboarding/knowledge-base/core/oracles.md
[style] ~11-~11: As an alternative to the over-used intensifier ‘really’, consider replacing this phrase.
Context: ...r manipulate the oracle, they can cause really bad outcomes—such as incorrect collateral l...
(EN_WEAK_ADJECTIVE)
[grammar] ~23-~23: Ensure spelling is correct
Context: ...request specifying what data is needed. Offchain services that watch for these requests ...
(QB_NEW_EN_ORTHOGRAPHY_ERROR_IDS_1)
sites/wonderland/docs/testing/advanced-testing/overview.md
[style] ~12-~12: The word ‘big’ tends to be overused. Consider an alternative.
Context: ... how the whole protocol is working in a big number of cases with multiple interactions (st...
(A_GREAT_NUMBER)
sites/wonderland/docs/processes/github/ssh-setup.md
[style] ~66-66: Consider a more concise word here./.gitconfig-wonderland` In order to try this out, using the terminal go to ...
Context: ...al File:
(IN_ORDER_TO_PREMIUM)
sites/wonderland/docs/testing/advanced-testing/property-based-fuzzing.md
[style] ~56-~56: ‘make an assumption’ might be wordy. Consider a shorter alternative.
Context: ...with handler_. Properties are made to make an assumption, while handlers allows to expose some f...
(EN_WORDINESS_PREMIUM_MAKE_AN_ASSUMPTION)
[style] ~157-~157: In American English, abbreviations like “etc.” require a period.
Context: ...have a non-fifo ordering (lifo, random, etc), rely on additional relayers/hyperlane...
(ETC_PERIOD)
sites/wonderland/docs/development/research/onboarding/knowledge-base/basics/game-theory.md
[style] ~5-~5: Consider a more expressive alternative.
Context: ... it's about aligning incentives. To do that, calculating the costs of attacks,...
(DO_ACHIEVE)
[style] ~36-~36: ‘making a decision’ might be wordy. Consider a shorter alternative.
Context: ..., including what each player knows when making a decision. We will have: - Nodes – These are...
(EN_WORDINESS_PREMIUM_MAKING_A_DECISION)
[style] ~49-~49: ‘making a decision’ might be wordy. Consider a shorter alternative.
Context: ..., including what each player knows when making a decision. We will have: Let's think the followi...
(EN_WORDINESS_PREMIUM_MAKING_A_DECISION)
[style] ~202-~202: This phrase is redundant. Consider writing “alternative”.
Context: ...ovides at least as high a payoff as any alternative choice would, assuming the other players stick...
(ALTERNATIVE_CHOICE)
[grammar] ~452-~452: Ensure spelling is correct
Context: ... subgame perfect equilibrium is (Enter, Accomodate), eliminating the unrealistic thret of ...
(QB_NEW_EN_ORTHOGRAPHY_ERROR_IDS_1)
[grammar] ~452-~452: Ensure spelling is correct
Context: ...ccomodate), eliminating the unrealistic thret of a price war. :::tip The key here is...
(QB_NEW_EN_ORTHOGRAPHY_ERROR_IDS_1)
🪛 markdownlint-cli2 (0.17.2)
sites/wonderland/docs/processes/project-lifecycle.md
95-95: Hard tabs
Column: 1
(MD010, no-hard-tabs)
sites/wonderland/docs/development/research/onboarding/knowledge-base/core/oracles.md
20-20: Bare URL used
(MD034, no-bare-urls)
sites/wonderland/docs/development/research/technical-writing.md
102-102: Bare URL used
(MD034, no-bare-urls)
sites/wonderland/docs/development/offchain/rpc-request.md
165-165: Bare URL used
(MD034, no-bare-urls)
sites/wonderland/docs/processes/github/git-practices.md
43-43: Images should have alternate text (alt text)
(MD045, no-alt-text)
sites/wonderland/docs/processes/github/ssh-setup.md
33-33: Bare URL used
(MD034, no-bare-urls)
90-90: Hard tabs
Column: 1
(MD010, no-hard-tabs)
92-92: Hard tabs
Column: 1
(MD010, no-hard-tabs)
95-95: Hard tabs
Column: 1
(MD010, no-hard-tabs)
108-108: Hard tabs
Column: 1
(MD010, no-hard-tabs)
110-110: Hard tabs
Column: 1
(MD010, no-hard-tabs)
115-115: Hard tabs
Column: 1
(MD010, no-hard-tabs)
116-116: Hard tabs
Column: 1
(MD010, no-hard-tabs)
⏰ Context from checks skipped due to timeout of 300000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
- GitHub Check: test
🔇 Additional comments (1)
packages/common-config/src/components/HandbookSection/index.tsx (1)
48-52: Background asset path hard-coded – verify availabilityThe PNG → JPG switch is fine, but the new asset path is still hard-coded.
Please double-check that/common/img/background-handbook-card.jpgis copied by the build and exists in every consuming site, otherwise the card will render with no background.If this is a one-off image that lives in
common-config, consider exporting the path as a constant so the homepage and this component don’t drift in future edits.
Optimize handbook images using squoosh
ISSUE CHA-334 https://linear.app/defi-wonderland/issue/CHA-334/optimize-the-images-with-squoosh
Summary by CodeRabbit
Style
.pngto.jpgacross documentation.Chores