Conversation
cf9bd85 to
d960dd3
Compare
.github/CODEOWNERS
Outdated
| * @torusresearch/Admins | ||
|
|
||
| # Product code | ||
| **/src/ @torusresearch/Web3Auth-Product |
There was a problem hiding this comment.
I've fix this, however team @Web3auth/Web3Auth-Admins not existed in Web3auth org, so we need create it.
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, have a team admin enable autofix in the Cursor dashboard.
|
|
||
| # Product code | ||
| src/ @Web3auth/Web3Auth-Product | ||
| test/ @Web3auth/Web3Auth-Product |
There was a problem hiding this comment.
CODEOWNERS patterns won't match any source files
Medium Severity
The src/ and test/ patterns only match root-level directories, but this is a Lerna monorepo where all source and test files live under packages/node-sdk/src/ and packages/node-sdk/test/. There are no root-level src/ or test/ directories, so @Web3auth/Web3Auth-Product will never be assigned as code owner for any product code — everything falls through to the * wildcard and gets assigned to @Web3auth/Web3Auth-Admins instead. The patterns likely need a **/ prefix or full paths like packages/*/src/.
| * @Web3auth/Web3Auth-Admins | ||
|
|
||
| # Product code | ||
| src/ @Web3auth/Web3Auth-Product |
There was a problem hiding this comment.
you need to use the lerna based folder structure


Motivation and Context
Modernize the web3auth-backend Node SDK by upgrading dependencies, migrating the test framework, replacing
etherswithviem, removing Node.jsBufferpolyfills, and adding CI and code ownership configuration.Jira Link:
https://consensyssoftware.atlassian.net/browse/EMBED-29
Description
Test framework migration: Mocha + Chai → Vitest
.mocharc.json,babel.config.js, andtest/setup.mjsvitest.config.mtswith verbose reporter and istanbul coverageexpect(...).to.equal(...)) to Vitest (expect(...).toBe(...))ethers → viem
ethers(Wallet,JsonRpcProvider) withviem(createWalletClient,privateKeyToAccount,http)WalletResultEIP155 signer type fromWallettoWalletClientBuffer polyfill removal
Buffer.from(..., "base64")→Uint8Array.from(atob(...), (c) => c.charCodeAt(0))Buffer.from(..., "utf8")→new TextEncoder().encode(...)Utility update
safeatob→base64toJSONfrom@web3auth/authDependency version bumps
@toruslabs/*,@web3auth/*,@solana/*,@segment/*to latest majorsmocha,chai,tsx,tsconfig-pathsvitest,@toruslabs/torus-scripts>=20.x→>=22.x; npm:>=9.x→>=10.xrimraf dist/ && tsc→torus-scripts buildeslint --fix 'src/**/*.ts'→torus-scripts lint src testCI & CODEOWNERS
.github/workflows/ci.yml(Build, Test & Lint on push, Node 24.x).github/CODEOWNERSwith@torusresearch/Adminsfallback and@torusresearch/Web3Auth-Productfor source/testESLint config
mocha/no-setup-in-describeruleimport/no-extraneous-dependencies: offfor test and config filesHow has this been tested?
TransactionSignernpm run buildandnpm run lintScreenshots (if appropriate):
N/A
Types of changes
Checklist:
Note
Medium Risk
Build/test automation now runs on Node 24 and tests require a
JWT_PRIVATE_KEYsecret, which may break CI/dev setups until the environment is updated. Other changes are mostly configuration cleanup (removing Mocha/Babel config and adjusting lint rules).Overview
Adds GitHub governance and CI plumbing: new
.github/CODEOWNERSownership rules and a GitHub Actions workflow that runsbuild,lint, andteston every push, passingJWT_PRIVATE_KEYfrom repo secrets.Updates local/runtime expectations by bumping
.nvmrcto>=24.xand adding.env.examplefor test env setup, while removing legacy Mocha/Babel config (.mocharc.json,babel.config.js) and tweakingeslint.config.mjsto relax dependency rules for tests/config files.Written by Cursor Bugbot for commit 60ee8ec. This will update automatically on new commits. Configure here.