From d560fe53b8282a2e91d7ac890f3d6bf484caea72 Mon Sep 17 00:00:00 2001 From: ignaciosantise <25931366+ignaciosantise@users.noreply.github.com> Date: Thu, 22 Jan 2026 13:11:16 -0300 Subject: [PATCH 1/2] chore: resolve dependabot alerts for storybook and lodash Update storybook to 8.6.15 in apps/gallery and all related @storybook/* packages to the same version for consistency. Update lodash to 4.17.23 in examples/expo-multichain via overrides. Add comprehensive Dependabot alert resolution guidance to AGENTS.md. Co-Authored-By: Claude Haiku 4.5 --- AGENTS.md | 21 ++ apps/gallery/package.json | 20 +- examples/expo-multichain/package-lock.json | 6 +- examples/expo-multichain/package.json | 3 +- yarn.lock | 356 ++++++++++----------- 5 files changed, 214 insertions(+), 192 deletions(-) diff --git a/AGENTS.md b/AGENTS.md index 022415ba4..83800eb8b 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -300,3 +300,24 @@ yarn format # Run Prettier ### Commit Convention Follow conventional commits: `fix:`, `feat:`, `refactor:`, `docs:`, `test:`, `chore:` + +### Dependabot Alerts + +When resolving Dependabot security alerts or dependency update PRs: + +1. **Direct dependencies** - Update the version directly in the package's `package.json` where it's declared. This is cleaner than using resolutions because: + - It keeps the dependency version visible where the package is used + - Resolutions are meant for transitive dependencies you don't control + - Example: update storybook in `apps/gallery/package.json`, not via root resolutions + +2. **Transitive dependencies** - Use resolutions/overrides for dependencies you don't directly declare: + - Root `package.json` → `resolutions` field (for yarn workspaces) + - Specific package's `package.json` → `overrides` field (for npm packages like expo-multichain) + +3. **Update lockfiles** - After making changes: + - Run `yarn install` at root to update `yarn.lock` + - Run `npm install` in the specific package directory to update `package-lock.json` + +4. **Check for related packages** - When updating a package, check if there are related packages that should be updated together (e.g., updating `storybook` should also update all `@storybook/*` addons to the same version for consistency) + +5. **Never update to new major versions** - Only apply patch/minor updates. Major version bumps can cause breaking changes and compatibility issues. diff --git a/apps/gallery/package.json b/apps/gallery/package.json index 8a290ffcd..214c09c5c 100644 --- a/apps/gallery/package.json +++ b/apps/gallery/package.json @@ -9,16 +9,16 @@ "@babel/preset-react": "^7.22.5", "@babel/preset-typescript": "7.24.7", "@chromatic-com/storybook": "^1", - "@storybook/addon-essentials": "^8.3.0", - "@storybook/addon-interactions": "^8.3.0", - "@storybook/addon-links": "^8.3.0", - "@storybook/addon-onboarding": "^8.3.0", + "@storybook/addon-essentials": "^8.6.15", + "@storybook/addon-interactions": "^8.6.15", + "@storybook/addon-links": "^8.6.15", + "@storybook/addon-onboarding": "^8.6.15", "@storybook/addon-react-native-web": "^0.0.24", "@storybook/addon-webpack5-compiler-babel": "^3.0.3", - "@storybook/blocks": "^8.3.0", - "@storybook/react": "^8.3.0", - "@storybook/react-webpack5": "^8.3.0", - "@storybook/test": "^8.3.0", + "@storybook/blocks": "^8.6.15", + "@storybook/react": "^8.6.15", + "@storybook/react-webpack5": "^8.6.15", + "@storybook/test": "^8.6.15", "babel-loader": "9.1.3", "babel-plugin-react-native-web": "^0.19.7", "babel-plugin-react-require": "^4.0.1", @@ -29,7 +29,7 @@ "react-native": "*", "react-native-svg": "*", "react-native-web": "^0.19.7", - "storybook": "^8.3.0" + "storybook": "^8.6.15" }, "scripts": { "dev:gallery": "storybook dev -p 6006", @@ -37,6 +37,6 @@ }, "dependencies": { "@reown/appkit-ui-react-native": "workspace:*", - "@storybook/theming": "^8.3.0" + "@storybook/theming": "^8.6.15" } } diff --git a/examples/expo-multichain/package-lock.json b/examples/expo-multichain/package-lock.json index 451e19436..bfbbdf68c 100644 --- a/examples/expo-multichain/package-lock.json +++ b/examples/expo-multichain/package-lock.json @@ -13390,9 +13390,9 @@ } }, "node_modules/lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "version": "4.17.23", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.23.tgz", + "integrity": "sha512-LgVTMpQtIopCi79SJeDiP0TfWi5CNEc/L/aRdTh3yIvmZXTnheWpKjSZhnvMl8iXbC1tFg9gdHHDMLoV7CnG+w==", "license": "MIT" }, "node_modules/lodash.debounce": { diff --git a/examples/expo-multichain/package.json b/examples/expo-multichain/package.json index 8dc31bae4..8321f53d1 100644 --- a/examples/expo-multichain/package.json +++ b/examples/expo-multichain/package.json @@ -85,7 +85,8 @@ "undici": "6.23.0", "preact": "10.28.2", "js-yaml": "3.14.2", - "valibot": "1.2.0" + "valibot": "1.2.0", + "lodash": "4.17.23" }, "private": true } diff --git a/yarn.lock b/yarn.lock index c2b8a89f5..d956df28d 100644 --- a/yarn.lock +++ b/yarn.lock @@ -58,17 +58,17 @@ __metadata: "@babel/preset-typescript": 7.24.7 "@chromatic-com/storybook": ^1 "@reown/appkit-ui-react-native": "workspace:*" - "@storybook/addon-essentials": ^8.3.0 - "@storybook/addon-interactions": ^8.3.0 - "@storybook/addon-links": ^8.3.0 - "@storybook/addon-onboarding": ^8.3.0 + "@storybook/addon-essentials": ^8.6.15 + "@storybook/addon-interactions": ^8.6.15 + "@storybook/addon-links": ^8.6.15 + "@storybook/addon-onboarding": ^8.6.15 "@storybook/addon-react-native-web": ^0.0.24 "@storybook/addon-webpack5-compiler-babel": ^3.0.3 - "@storybook/blocks": ^8.3.0 - "@storybook/react": ^8.3.0 - "@storybook/react-webpack5": ^8.3.0 - "@storybook/test": ^8.3.0 - "@storybook/theming": ^8.3.0 + "@storybook/blocks": ^8.6.15 + "@storybook/react": ^8.6.15 + "@storybook/react-webpack5": ^8.6.15 + "@storybook/test": ^8.6.15 + "@storybook/theming": ^8.6.15 babel-loader: 9.1.3 babel-plugin-react-native-web: ^0.19.7 babel-plugin-react-require: ^4.0.1 @@ -79,7 +79,7 @@ __metadata: react-native: "*" react-native-svg: "*" react-native-web: ^0.19.7 - storybook: ^8.3.0 + storybook: ^8.6.15 languageName: unknown linkType: soft @@ -4877,9 +4877,9 @@ __metadata: languageName: node linkType: hard -"@storybook/addon-actions@npm:8.6.14": - version: 8.6.14 - resolution: "@storybook/addon-actions@npm:8.6.14" +"@storybook/addon-actions@npm:8.6.15": + version: 8.6.15 + resolution: "@storybook/addon-actions@npm:8.6.15" dependencies: "@storybook/global": ^5.0.0 "@types/uuid": ^9.0.1 @@ -4887,146 +4887,146 @@ __metadata: polished: ^4.2.2 uuid: ^9.0.0 peerDependencies: - storybook: ^8.6.14 - checksum: a558d376692f5ddcf38a53f0467691445a3e4d4e99091bd08f56588244de0a9cc01de102d40ceb6341f9ae2f9d7137e506636a20af7102edc30ad180163e75f1 + storybook: ^8.6.15 + checksum: 63425a98125e7900de786538df6b1100818f65dd701e59c51a117fde2b616ea4c9cb41f55db5e8493ec7a8c2c0c857b55c6ac41f46d393500b2d82faa941dee2 languageName: node linkType: hard -"@storybook/addon-backgrounds@npm:8.6.14": - version: 8.6.14 - resolution: "@storybook/addon-backgrounds@npm:8.6.14" +"@storybook/addon-backgrounds@npm:8.6.15": + version: 8.6.15 + resolution: "@storybook/addon-backgrounds@npm:8.6.15" dependencies: "@storybook/global": ^5.0.0 memoizerific: ^1.11.3 ts-dedent: ^2.0.0 peerDependencies: - storybook: ^8.6.14 - checksum: 864ff10e316323a191bbc03a6f05b3f89d7b259122392c3cf99eabce3b41a08cfd4cbe6b105221e27a89f3c388e52eccfdea0703256b4e373a379568368ec2a5 + storybook: ^8.6.15 + checksum: 70d4058d3f22613a28b6f407c04dad762f3c9cb0fe676d4fc20fdf7cf3417034d7fed6897f1d32861115905ef93600b2a49d3790d895806cd5a84c0c4decb289 languageName: node linkType: hard -"@storybook/addon-controls@npm:8.6.14": - version: 8.6.14 - resolution: "@storybook/addon-controls@npm:8.6.14" +"@storybook/addon-controls@npm:8.6.15": + version: 8.6.15 + resolution: "@storybook/addon-controls@npm:8.6.15" dependencies: "@storybook/global": ^5.0.0 dequal: ^2.0.2 ts-dedent: ^2.0.0 peerDependencies: - storybook: ^8.6.14 - checksum: 8cfbe42a87152948c5afc8030d556ce10607a1a16910ba499dd8d34d6d7711f94230de0e5fcbcdfa69d3425c43ca821f804a3eeae53c09d4b6eff69ebaceca5f + storybook: ^8.6.15 + checksum: 9a8570bd6a46a058da975be8a6db2d9e2cbc686fb3db01527d905d27e71238a1c084d479c598ecfefcd7f515841bc23442d0300292f596346db37da3f103a021 languageName: node linkType: hard -"@storybook/addon-docs@npm:8.6.14": - version: 8.6.14 - resolution: "@storybook/addon-docs@npm:8.6.14" +"@storybook/addon-docs@npm:8.6.15": + version: 8.6.15 + resolution: "@storybook/addon-docs@npm:8.6.15" dependencies: "@mdx-js/react": ^3.0.0 - "@storybook/blocks": 8.6.14 - "@storybook/csf-plugin": 8.6.14 - "@storybook/react-dom-shim": 8.6.14 + "@storybook/blocks": 8.6.15 + "@storybook/csf-plugin": 8.6.15 + "@storybook/react-dom-shim": 8.6.15 react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 ts-dedent: ^2.0.0 peerDependencies: - storybook: ^8.6.14 - checksum: 4a8d64d932588c7f908ba0ee58b99be0f281abfa79471aa127a4d61a8e51bf87bdb8e7c2080a674c6a88e3001294a25225c6402a78a886159434b080f6d1f9b7 + storybook: ^8.6.15 + checksum: 122afe80ec47d5cda30ac843953000773d62c234c7cbbe04b2445e90904d59f3863525de97874f0cda59b776e6b274cd3753a138322033eebcaa5f6ac3031cc2 languageName: node linkType: hard -"@storybook/addon-essentials@npm:^8.3.0": - version: 8.6.14 - resolution: "@storybook/addon-essentials@npm:8.6.14" +"@storybook/addon-essentials@npm:^8.6.15": + version: 8.6.15 + resolution: "@storybook/addon-essentials@npm:8.6.15" dependencies: - "@storybook/addon-actions": 8.6.14 - "@storybook/addon-backgrounds": 8.6.14 - "@storybook/addon-controls": 8.6.14 - "@storybook/addon-docs": 8.6.14 - "@storybook/addon-highlight": 8.6.14 - "@storybook/addon-measure": 8.6.14 - "@storybook/addon-outline": 8.6.14 - "@storybook/addon-toolbars": 8.6.14 - "@storybook/addon-viewport": 8.6.14 + "@storybook/addon-actions": 8.6.15 + "@storybook/addon-backgrounds": 8.6.15 + "@storybook/addon-controls": 8.6.15 + "@storybook/addon-docs": 8.6.15 + "@storybook/addon-highlight": 8.6.15 + "@storybook/addon-measure": 8.6.15 + "@storybook/addon-outline": 8.6.15 + "@storybook/addon-toolbars": 8.6.15 + "@storybook/addon-viewport": 8.6.15 ts-dedent: ^2.0.0 peerDependencies: - storybook: ^8.6.14 - checksum: 313ac75bb179ad2775d4eb2c01e17f66f47100cefaf4aae81cb36720964b03eb437090fb7e4d208ee75ef0b2e4a170e3912c32cee39e43ae72c398670f783229 + storybook: ^8.6.15 + checksum: b9066a5cd9f61f3c02ca237d0e2d1190c13fba5135866d0b19eacdb9c48dca2885b45ebba9cff8eeb8890321355ca7871cccc7d1bdd4accf64630b3d5d703fcf languageName: node linkType: hard -"@storybook/addon-highlight@npm:8.6.14": - version: 8.6.14 - resolution: "@storybook/addon-highlight@npm:8.6.14" +"@storybook/addon-highlight@npm:8.6.15": + version: 8.6.15 + resolution: "@storybook/addon-highlight@npm:8.6.15" dependencies: "@storybook/global": ^5.0.0 peerDependencies: - storybook: ^8.6.14 - checksum: 31c625deebb285350e5b79685843d19c6aecab4a2004990067877997c4bfd822252cc12838280c20b04658f8abe57b4b0932348d3b2f88134afa1313d2169125 + storybook: ^8.6.15 + checksum: d95cc7570c3ecef41b9c190c57734266612fe89df84e1fda94c4c35821e05f88cefb006738bbf2d5d1e54f32bead06727ad72227ea9264d922aded30757ffb88 languageName: node linkType: hard -"@storybook/addon-interactions@npm:^8.3.0": - version: 8.6.14 - resolution: "@storybook/addon-interactions@npm:8.6.14" +"@storybook/addon-interactions@npm:^8.6.15": + version: 8.6.15 + resolution: "@storybook/addon-interactions@npm:8.6.15" dependencies: "@storybook/global": ^5.0.0 - "@storybook/instrumenter": 8.6.14 - "@storybook/test": 8.6.14 + "@storybook/instrumenter": 8.6.15 + "@storybook/test": 8.6.15 polished: ^4.2.2 ts-dedent: ^2.2.0 peerDependencies: - storybook: ^8.6.14 - checksum: 18e94b1adc4a79405e03403824c7bbebddd0728826afc096ceb4d406a8e343fecbdd44f0d2c275adbaca4ff35462453e1c984cb65f49ec50cd5f22cda52ad588 + storybook: ^8.6.15 + checksum: 1c8168422eb747adc026bfb666b74c6936468177ead77b0276f65feedfef97a97820970c84acb53506d3b45098ffaf0b4630304e83abe0ea27a3331dcbab8ede languageName: node linkType: hard -"@storybook/addon-links@npm:^8.3.0": - version: 8.6.14 - resolution: "@storybook/addon-links@npm:8.6.14" +"@storybook/addon-links@npm:^8.6.15": + version: 8.6.15 + resolution: "@storybook/addon-links@npm:8.6.15" dependencies: "@storybook/global": ^5.0.0 ts-dedent: ^2.0.0 peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta - storybook: ^8.6.14 + storybook: ^8.6.15 peerDependenciesMeta: react: optional: true - checksum: d807623e9578f8793a71dc9a3d6988fc22784e4bfebfdd3dc1293cece3e6020caf711cf8fe5171b5ef4340856b50abcddb3a4b89adba0d16582b5f910dbdf884 + checksum: 3b39fdf0f7a61d209d957b6003def911c0d000ccc03cec417f31c7ee49395c7c06d3a39241e912ac4dd07d76a2a1f14b1f376462b58aeb04ad45adc2cd540127 languageName: node linkType: hard -"@storybook/addon-measure@npm:8.6.14": - version: 8.6.14 - resolution: "@storybook/addon-measure@npm:8.6.14" +"@storybook/addon-measure@npm:8.6.15": + version: 8.6.15 + resolution: "@storybook/addon-measure@npm:8.6.15" dependencies: "@storybook/global": ^5.0.0 tiny-invariant: ^1.3.1 peerDependencies: - storybook: ^8.6.14 - checksum: 5f8aeaa705398f229d5093ef6f03236df7c3492a5ac8f94165d7283c7060e6d5ba9b3cadce1f71875b63f2abf95aeb25ec2339fdb0fffa2acc67f160926b15b6 + storybook: ^8.6.15 + checksum: 7c3f3fe9a5de665af71887d4e816488083f7fe8de35344542e79627a4545de36ab381ea1bd0aa699c5413a47dea115b090d126562ba1b300823ae1bf86c8cd32 languageName: node linkType: hard -"@storybook/addon-onboarding@npm:^8.3.0": - version: 8.6.14 - resolution: "@storybook/addon-onboarding@npm:8.6.14" +"@storybook/addon-onboarding@npm:^8.6.15": + version: 8.6.15 + resolution: "@storybook/addon-onboarding@npm:8.6.15" peerDependencies: - storybook: ^8.6.14 - checksum: 45466edba24f608ebd79fd864369f6b6a144faa6ad3776461759ef7523eef505c90037963bca9b2b9e39acc78b922fd658607879adb0814fec8268d5523df655 + storybook: ^8.6.15 + checksum: 0484f4c48b73d586ab79ee757dedede658be4548c978cfa8b7ce6134882b32eb09973dcdb806e021c0e69515b82b443aba0a20cbec856c34df2ceef2f40ad4cc languageName: node linkType: hard -"@storybook/addon-outline@npm:8.6.14": - version: 8.6.14 - resolution: "@storybook/addon-outline@npm:8.6.14" +"@storybook/addon-outline@npm:8.6.15": + version: 8.6.15 + resolution: "@storybook/addon-outline@npm:8.6.15" dependencies: "@storybook/global": ^5.0.0 ts-dedent: ^2.0.0 peerDependencies: - storybook: ^8.6.14 - checksum: 58d990845d07e13daaf2e6f7c41ced0d6080eb21fbbb80a7f6f919d75c4a74a7043f73bd41846155f3292e3e1638e45420ff1bdabe22c20e2d2fe98e833d6e2c + storybook: ^8.6.15 + checksum: 62101844f12f2574cf6d0670215cd6aab591395fc61589b85cfa577f3ac6b73b4ce50723a56c9f3fc04dead78d4ceafce4256bc2ddfc58fa2f585dea8b49632f languageName: node linkType: hard @@ -5053,23 +5053,23 @@ __metadata: languageName: node linkType: hard -"@storybook/addon-toolbars@npm:8.6.14": - version: 8.6.14 - resolution: "@storybook/addon-toolbars@npm:8.6.14" +"@storybook/addon-toolbars@npm:8.6.15": + version: 8.6.15 + resolution: "@storybook/addon-toolbars@npm:8.6.15" peerDependencies: - storybook: ^8.6.14 - checksum: 0b904ef3db7cda2e4b115129f28f5d80c7160937916118dddc167980f72d06001dfdf42be49468dc3aef8a693cab7826609cab9d348f69e0102a1aeb8691522f + storybook: ^8.6.15 + checksum: 4393c5e48c28e807f0c042cd2894dec834ac13bd8fa5f6b125147ebc531c0a82e4d50cb1e935e109fa95abbbefa075b46346e6d0d31997ff0252ab698a9da181 languageName: node linkType: hard -"@storybook/addon-viewport@npm:8.6.14": - version: 8.6.14 - resolution: "@storybook/addon-viewport@npm:8.6.14" +"@storybook/addon-viewport@npm:8.6.15": + version: 8.6.15 + resolution: "@storybook/addon-viewport@npm:8.6.15" dependencies: memoizerific: ^1.11.3 peerDependencies: - storybook: ^8.6.14 - checksum: 7e9f1f5e6efafc45f2bfd541deac95244d55ecd1970da23a358134ae0a5c40fe069427852d111b883bd626f47a86f23a9560017a9fcb939e79caae4bd57d3b85 + storybook: ^8.6.15 + checksum: ce0d7fbb4d9b6c424530dd4740d828f0a8d2fe893baf25a49236cc79a7c0aef9db61ec9c4ec74128d3b53e57b7707463a0691c7bc10cead152383fb866d77a6f languageName: node linkType: hard @@ -5083,30 +5083,30 @@ __metadata: languageName: node linkType: hard -"@storybook/blocks@npm:8.6.14, @storybook/blocks@npm:^8.3.0": - version: 8.6.14 - resolution: "@storybook/blocks@npm:8.6.14" +"@storybook/blocks@npm:8.6.15, @storybook/blocks@npm:^8.6.15": + version: 8.6.15 + resolution: "@storybook/blocks@npm:8.6.15" dependencies: "@storybook/icons": ^1.2.12 ts-dedent: ^2.0.0 peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 - storybook: ^8.6.14 + storybook: ^8.6.15 peerDependenciesMeta: react: optional: true react-dom: optional: true - checksum: 9ae5058a098bc71c932ab7eac0187fd7ee85d72f5d3f418aa67b7c3234cfe2b4cf1aa699bbe59e913a200e4267c70df7e626d394900c3092d6eff5f6a4e328c8 + checksum: 17a885b321c04626c2a25eb4feff13382d18c0d9c3439ce184b7a5d14239c8be8e163aa4a3e5d7eb234926fc33c74bc5546e784565d2f58ea300f21aff9ee314 languageName: node linkType: hard -"@storybook/builder-webpack5@npm:8.6.14": - version: 8.6.14 - resolution: "@storybook/builder-webpack5@npm:8.6.14" +"@storybook/builder-webpack5@npm:8.6.15": + version: 8.6.15 + resolution: "@storybook/builder-webpack5@npm:8.6.15" dependencies: - "@storybook/core-webpack": 8.6.14 + "@storybook/core-webpack": 8.6.15 "@types/semver": ^7.3.4 browser-assert: ^1.2.1 case-sensitive-paths-webpack-plugin: ^2.4.0 @@ -5131,39 +5131,39 @@ __metadata: webpack-hot-middleware: ^2.25.1 webpack-virtual-modules: ^0.6.0 peerDependencies: - storybook: ^8.6.14 + storybook: ^8.6.15 peerDependenciesMeta: typescript: optional: true - checksum: f57c2bd305fcd0dd4180ca254e526930eb2a7087160bd4d6156de96f0a2b173c5c50b5f56c3657dae386f0481ec5a028e825b46f8a46f7309cccab240a0a4536 + checksum: 356e6eb8c2b0c475521fc178610c8bac30ef5a983045700576f6e929ef3e58349e45b127eeec95700f43de99fac562594bec18bd5f065e657a08ff8d14d358fe languageName: node linkType: hard -"@storybook/components@npm:8.6.14": - version: 8.6.14 - resolution: "@storybook/components@npm:8.6.14" +"@storybook/components@npm:8.6.15": + version: 8.6.15 + resolution: "@storybook/components@npm:8.6.15" peerDependencies: storybook: ^8.2.0 || ^8.3.0-0 || ^8.4.0-0 || ^8.5.0-0 || ^8.6.0-0 - checksum: d3647505510313aa3c32fd1f8f202eda723ad99bd353b20aa929c5ecab4edc3c86ad06d0eac02f3c6d948e88f13f65ca5fa35ef27c079ef1b92abe8692f23699 + checksum: 350075ffe67cfc307c0f8f9b6568c5f25e97a2ffb55d723b88c16a3f3ad6d687c312580c4b4d3cbf8ef245a30723797d89be20a44f6c500f79e7b173b0cb79d0 languageName: node linkType: hard -"@storybook/core-webpack@npm:8.6.14": - version: 8.6.14 - resolution: "@storybook/core-webpack@npm:8.6.14" +"@storybook/core-webpack@npm:8.6.15": + version: 8.6.15 + resolution: "@storybook/core-webpack@npm:8.6.15" dependencies: ts-dedent: ^2.0.0 peerDependencies: - storybook: ^8.6.14 - checksum: dae90575c74da328585f4a76e5124566a6eca147333a268d536ec680bc128e714ed39af5c21415a0947bd3e0b5885e549397aa187e441805b2c3a0d2fda86fb5 + storybook: ^8.6.15 + checksum: c7f462938e0b979882ca5cd51761c28d38abb3167787cc87c0c1651a4e8fa145d2a483ab03a78c0a6082874c4456ddcab7987b2d09bad1930ffdb716b9b31e73 languageName: node linkType: hard -"@storybook/core@npm:8.6.14": - version: 8.6.14 - resolution: "@storybook/core@npm:8.6.14" +"@storybook/core@npm:8.6.15": + version: 8.6.15 + resolution: "@storybook/core@npm:8.6.15" dependencies: - "@storybook/theming": 8.6.14 + "@storybook/theming": 8.6.15 better-opn: ^3.0.2 browser-assert: ^1.2.1 esbuild: ^0.18.0 || ^0.19.0 || ^0.20.0 || ^0.21.0 || ^0.22.0 || ^0.23.0 || ^0.24.0 || ^0.25.0 @@ -5179,18 +5179,18 @@ __metadata: peerDependenciesMeta: prettier: optional: true - checksum: b155279bd6d0ee6108c0db9b4a3af20d44ff9e8d57a26f6fef131fa00fb00afee6fae03af26ee7ddbade0e0ea978bf5732e5f9543dba406f2432d17df8d543db + checksum: 49d2200d08d6466ea59b2c70a415cf0c36f24b03895230b65d4fa01b0217ba2a91081ebfad2a1d769ddd149a2b7f169a9db390d865ad4ad784b16b277c3ef9dc languageName: node linkType: hard -"@storybook/csf-plugin@npm:8.6.14": - version: 8.6.14 - resolution: "@storybook/csf-plugin@npm:8.6.14" +"@storybook/csf-plugin@npm:8.6.15": + version: 8.6.15 + resolution: "@storybook/csf-plugin@npm:8.6.15" dependencies: unplugin: ^1.3.1 peerDependencies: - storybook: ^8.6.14 - checksum: a0983268e6e77ff1bd6b06ad5a895d22ae534fab9cec74960e70a70023dcee44b2d6be4a77ad692a8ecb2e05e3d65bf4ef58dd0bdc52329b0599ba1e093a07c7 + storybook: ^8.6.15 + checksum: c544089d7a675d19e226e331a791db6c2e2cede893a2955578959086e7c35e846319a9080d91968ec81a2115e2c396fe3d76d2f50d74baca098dd5b03ad939b0 languageName: node linkType: hard @@ -5211,33 +5211,33 @@ __metadata: languageName: node linkType: hard -"@storybook/instrumenter@npm:8.6.14": - version: 8.6.14 - resolution: "@storybook/instrumenter@npm:8.6.14" +"@storybook/instrumenter@npm:8.6.15": + version: 8.6.15 + resolution: "@storybook/instrumenter@npm:8.6.15" dependencies: "@storybook/global": ^5.0.0 "@vitest/utils": ^2.1.1 peerDependencies: - storybook: ^8.6.14 - checksum: d94ae151671673d1a392e124b6e4003ce76b7a13e68de0283656f9c9725cc5b46d2b59b118063a3ceb8a006a6090ffb9547b6a7a04cb451a50a562b7cca9d0ac + storybook: ^8.6.15 + checksum: 8e6b7df1b80ae5181bd1cb025cd51953f5f4774ef5cf1c281d91bf958f9198c935c7d93383e2d3b5c9ec9c6d04b3aea0422040270c65209cdcb594476f0a0a7d languageName: node linkType: hard -"@storybook/manager-api@npm:8.6.14": - version: 8.6.14 - resolution: "@storybook/manager-api@npm:8.6.14" +"@storybook/manager-api@npm:8.6.15": + version: 8.6.15 + resolution: "@storybook/manager-api@npm:8.6.15" peerDependencies: storybook: ^8.2.0 || ^8.3.0-0 || ^8.4.0-0 || ^8.5.0-0 || ^8.6.0-0 - checksum: 4544b317050b81574f1cd6f911dcb99ee2adbd7190555209171a7dd2233cd331165fa11c16a5977ebe58eeaf26c86bbfcb23f701cfd79a10f0d034dae65197bd + checksum: 0b378fc657830c48b7c304ea915883161e8271d76b8f90b90e86e4260f6e513ae9f0f87eee6cad057a6c38e8a9faf7bac0ba169e586aabce2b4e48d36a0d27c3 languageName: node linkType: hard -"@storybook/preset-react-webpack@npm:8.6.14": - version: 8.6.14 - resolution: "@storybook/preset-react-webpack@npm:8.6.14" +"@storybook/preset-react-webpack@npm:8.6.15": + version: 8.6.15 + resolution: "@storybook/preset-react-webpack@npm:8.6.15" dependencies: - "@storybook/core-webpack": 8.6.14 - "@storybook/react": 8.6.14 + "@storybook/core-webpack": 8.6.15 + "@storybook/react": 8.6.15 "@storybook/react-docgen-typescript-plugin": 1.0.6--canary.9.0c3f3b7.0 "@types/semver": ^7.3.4 find-up: ^5.0.0 @@ -5250,20 +5250,20 @@ __metadata: peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta - storybook: ^8.6.14 + storybook: ^8.6.15 peerDependenciesMeta: typescript: optional: true - checksum: 4d57d9d6cf8203b92c3ae99b9be74138351021f934e143a682f245ccdd8a8317d95a70971b03d776b1fdab649e8bed315fa51e34a6abae54b5d3c7dbcc25d878 + checksum: a6a184ed8c408c98b93c3c5f759efcd75b54f37669c17b7b4d94d951ec5b8a9c8b0a881e56ef9e3c01e4cc7808ae069707c2317175e1737eea72e8c47ff35033 languageName: node linkType: hard -"@storybook/preview-api@npm:8.6.14": - version: 8.6.14 - resolution: "@storybook/preview-api@npm:8.6.14" +"@storybook/preview-api@npm:8.6.15": + version: 8.6.15 + resolution: "@storybook/preview-api@npm:8.6.15" peerDependencies: storybook: ^8.2.0 || ^8.3.0-0 || ^8.4.0-0 || ^8.5.0-0 || ^8.6.0-0 - checksum: 9b77288f2f627a7c70cfd3e88bdc4348c1425fab6b333ed77efb913e45881bcdf2ca67f1174e47fe978a7993c2a653fb8accf518ba51441cfb9450145101e9d8 + checksum: 70df6006ce7340371e207f7f077d52c8684743a64f172d54f3e99fb6d2e190f46a4321c40be7ea813b9bd407530f971372156b3dd6ba1f61681f7b3acc498010 languageName: node linkType: hard @@ -5285,84 +5285,84 @@ __metadata: languageName: node linkType: hard -"@storybook/react-dom-shim@npm:8.6.14": - version: 8.6.14 - resolution: "@storybook/react-dom-shim@npm:8.6.14" +"@storybook/react-dom-shim@npm:8.6.15": + version: 8.6.15 + resolution: "@storybook/react-dom-shim@npm:8.6.15" peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta - storybook: ^8.6.14 - checksum: c46bef901e6deb7805b617493ca946bca107cf4ad2b4de52a993636ff45773c4c264143d9024049d2b64003e1e450964412ae733176a3e73c4d287c4f218dddb + storybook: ^8.6.15 + checksum: 5cbe651782c5c27ba34517515dcd8c5fe615f91b9ab88cbe82a1926f6d623e556fbd4752c4873d1ffe33f04eea9dcb9a6a8e0aff6bc2cd02f6bde3840d15b57e languageName: node linkType: hard -"@storybook/react-webpack5@npm:^8.3.0": - version: 8.6.14 - resolution: "@storybook/react-webpack5@npm:8.6.14" +"@storybook/react-webpack5@npm:^8.6.15": + version: 8.6.15 + resolution: "@storybook/react-webpack5@npm:8.6.15" dependencies: - "@storybook/builder-webpack5": 8.6.14 - "@storybook/preset-react-webpack": 8.6.14 - "@storybook/react": 8.6.14 + "@storybook/builder-webpack5": 8.6.15 + "@storybook/preset-react-webpack": 8.6.15 + "@storybook/react": 8.6.15 peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta - storybook: ^8.6.14 + storybook: ^8.6.15 typescript: ">= 4.2.x" peerDependenciesMeta: typescript: optional: true - checksum: e96078f4453998d5597ece75ebfe5657b2797a04da46e595c3763450e0242b0d77c2e3010e2c515470bdbabc7de7deae8562bf218e1bf2ac4058b6af635d8e34 + checksum: 405ea957e5e42a5e5e1ae9d4bd32aaeaea5409349da2047deda3216733bba8e6bad58968c07cb7d13b454f55270017766948c7a9632f232b21a2b0daaf27e41c languageName: node linkType: hard -"@storybook/react@npm:8.6.14, @storybook/react@npm:^8.3.0": - version: 8.6.14 - resolution: "@storybook/react@npm:8.6.14" +"@storybook/react@npm:8.6.15, @storybook/react@npm:^8.6.15": + version: 8.6.15 + resolution: "@storybook/react@npm:8.6.15" dependencies: - "@storybook/components": 8.6.14 + "@storybook/components": 8.6.15 "@storybook/global": ^5.0.0 - "@storybook/manager-api": 8.6.14 - "@storybook/preview-api": 8.6.14 - "@storybook/react-dom-shim": 8.6.14 - "@storybook/theming": 8.6.14 + "@storybook/manager-api": 8.6.15 + "@storybook/preview-api": 8.6.15 + "@storybook/react-dom-shim": 8.6.15 + "@storybook/theming": 8.6.15 peerDependencies: - "@storybook/test": 8.6.14 + "@storybook/test": 8.6.15 react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta - storybook: ^8.6.14 + storybook: ^8.6.15 typescript: ">= 4.2.x" peerDependenciesMeta: "@storybook/test": optional: true typescript: optional: true - checksum: f05cc63a690c0320f59df2c84837be51291eabab3f8b3eee64a28ff9bf2e1d36a4f46e99b174db01a71859d6b415b4528590fb01f1ebb6f0e4877b226b4271f8 + checksum: 4e0cc02b5c8b4e23dd0720ad1d33b2ecef660b180a84ef8fa456e91fa7978a47b50d2ad3e57bf568b619c6dd6cf66bf7e1ac9ebc26e82b3f655c225241767049 languageName: node linkType: hard -"@storybook/test@npm:8.6.14, @storybook/test@npm:^8.3.0": - version: 8.6.14 - resolution: "@storybook/test@npm:8.6.14" +"@storybook/test@npm:8.6.15, @storybook/test@npm:^8.6.15": + version: 8.6.15 + resolution: "@storybook/test@npm:8.6.15" dependencies: "@storybook/global": ^5.0.0 - "@storybook/instrumenter": 8.6.14 + "@storybook/instrumenter": 8.6.15 "@testing-library/dom": 10.4.0 "@testing-library/jest-dom": 6.5.0 "@testing-library/user-event": 14.5.2 "@vitest/expect": 2.0.5 "@vitest/spy": 2.0.5 peerDependencies: - storybook: ^8.6.14 - checksum: 996c7d623017f924f61cd44ba84df1844d2b72bddff76cbb3b0f9e76e1de02f4e63e56598ecfea557ba873359b0c5c5a0e1bc7f1811887dc647f83143233a88b + storybook: ^8.6.15 + checksum: c4adc4848f6297328155b170400649ee124085b820013c5541c21c4b0f82ff6cd3985ceb7dcd02a3bc97c1023c86128b37fd1c739e2618fb661954d7093a8b91 languageName: node linkType: hard -"@storybook/theming@npm:8.6.14, @storybook/theming@npm:^8.3.0": - version: 8.6.14 - resolution: "@storybook/theming@npm:8.6.14" +"@storybook/theming@npm:8.6.15, @storybook/theming@npm:^8.6.15": + version: 8.6.15 + resolution: "@storybook/theming@npm:8.6.15" peerDependencies: storybook: ^8.2.0 || ^8.3.0-0 || ^8.4.0-0 || ^8.5.0-0 || ^8.6.0-0 - checksum: 6936ea3348968fe598ad47421c11a78c6ee2ce62336ea1ce9cb8257e9faa2553d3ac3e443f8a36d35a41b0d60eb169231516649c710582ec68fdead4f23ffc0e + checksum: f02760831a13d7af9dbfeb6feea949f4c13c897861cbc75253a6776d133891567889c8d99c7e91a99124d0772c3bde1f978984c83b19117d1d7c908ed7eb8409 languageName: node linkType: hard @@ -17453,11 +17453,11 @@ __metadata: languageName: node linkType: hard -"storybook@npm:^8.3.0": - version: 8.6.14 - resolution: "storybook@npm:8.6.14" +"storybook@npm:^8.6.15": + version: 8.6.15 + resolution: "storybook@npm:8.6.15" dependencies: - "@storybook/core": 8.6.14 + "@storybook/core": 8.6.15 peerDependencies: prettier: ^2 || ^3 peerDependenciesMeta: @@ -17467,7 +17467,7 @@ __metadata: getstorybook: ./bin/index.cjs sb: ./bin/index.cjs storybook: ./bin/index.cjs - checksum: 314de784009952642d16b6896b5a6cc2b8a68e85ff5dbc8fbd00f90aeba6e2a3af70b3f02be5c3dbe603b11e158fe0333165558e2f05da14759454e639cda1ec + checksum: 9e24408edb7c8b52c22f495ad95667f94c149ddbcfb38393aa325aeb5a28615bd07619180d4809e90a9c94375431b2b8b8670dbab0984d34c13872bfb5169bde languageName: node linkType: hard From 6b1867a4982ad610905d0dec9f531e66cb86e6a1 Mon Sep 17 00:00:00 2001 From: ignaciosantise <25931366+ignaciosantise@users.noreply.github.com> Date: Thu, 22 Jan 2026 13:18:43 -0300 Subject: [PATCH 2/2] style: add formatting guidance to AGENTS.md Co-Authored-By: Claude Haiku 4.5 --- AGENTS.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/AGENTS.md b/AGENTS.md index 83800eb8b..76a9becc6 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -306,18 +306,23 @@ Follow conventional commits: `fix:`, `feat:`, `refactor:`, `docs:`, `test:`, `ch When resolving Dependabot security alerts or dependency update PRs: 1. **Direct dependencies** - Update the version directly in the package's `package.json` where it's declared. This is cleaner than using resolutions because: + - It keeps the dependency version visible where the package is used - Resolutions are meant for transitive dependencies you don't control - Example: update storybook in `apps/gallery/package.json`, not via root resolutions 2. **Transitive dependencies** - Use resolutions/overrides for dependencies you don't directly declare: + - Root `package.json` → `resolutions` field (for yarn workspaces) - Specific package's `package.json` → `overrides` field (for npm packages like expo-multichain) 3. **Update lockfiles** - After making changes: + - Run `yarn install` at root to update `yarn.lock` - Run `npm install` in the specific package directory to update `package-lock.json` 4. **Check for related packages** - When updating a package, check if there are related packages that should be updated together (e.g., updating `storybook` should also update all `@storybook/*` addons to the same version for consistency) 5. **Never update to new major versions** - Only apply patch/minor updates. Major version bumps can cause breaking changes and compatibility issues. + +6. **Run formatting before committing** - Always run `yarn format` to fix any prettier issues before creating a commit.