Skip to content

License cleanup: remove controllable LGPL transitive paths and refresh NOTICE#6434

Open
bobsummerwill wants to merge 4 commits intostrato-net:developfrom
bobsummerwill:deps
Open

License cleanup: remove controllable LGPL transitive paths and refresh NOTICE#6434
bobsummerwill wants to merge 4 commits intostrato-net:developfrom
bobsummerwill:deps

Conversation

@bobsummerwill
Copy link
Copy Markdown
Member

Summary

This PR delivers a focused license/compliance cleanup across mercata/ui, mercata/ethereum, and NOTICE.

It removes obsolete LGPL transitive paths we can control today, keeps tracking for the upstream Coinbase/Solana path we cannot yet remove, and refreshes the WORK IN PROGRESS audit appendix to current state.

What Changed

1) mercata/ethereum: remove web3-utils LGPL path via toolbox aggregate

  • Removed @nomicfoundation/hardhat-toolbox from devDependencies.
  • Added explicit minimal plugins actually used by current workflows:
    • @nomicfoundation/hardhat-ethers
    • @nomicfoundation/hardhat-verify
    • ethers
  • Updated hardhat.config.js plugin imports accordingly.
  • Regenerated mercata/ethereum/package-lock.json.

Impact:

  • Drops the solidity-coverage -> web3-utils (LGPL-3.0) transitive path.

2) mercata/ui: remove sharp/libvips optional LGPL path

  • Removed next from mercata/ui/package.json (UI is Vite-based; Next runtime not used in active scripts/workflow).
  • Regenerated mercata/ui/package-lock.json.

Impact:

  • Removes sharp and @img/sharp-libvips-* optional packages from lockfile.
  • Eliminates the associated LGPL-3.0-or-later optional path.

3) NOTICE: extensive refresh and de-staling

  • Added upstream tracking for Coinbase CDP SDK migration request:
  • Removed obsolete solidity-coverage and web3-utils package notices after ethereum cleanup.
  • Removed obsolete sharp / @img/sharp* package notices after UI cleanup.
  • Removed obsolete WIP appendix items for the eliminated paths.
  • Updated WIP recommendation for rpc-websockets path to reflect current policy:
    • wait for upstream Coinbase migration to licensing-compliant Solana SDK path.
  • Updated priority ordering to current team decision.
  • Refreshed appendix date and scope statement.
  • Refreshed lockfile evidence line references after lockfile updates.

Remaining High-Risk Items (post-cleanup)

As reflected in NOTICE WIP appendix:

  1. strato/libs/groth16-rapidsnark/vendor/rapidsnark (LGPL-3.0)
  2. mercata/ui rpc-websockets (LGPL-3.0-only) via @base-org/account -> @coinbase/cdp-sdk -> @solana/web3.js

Verification Performed

  • mercata/ethereum: npm run compile succeeds with explicit plugin set.
  • mercata/ui: npm run build succeeds after removing next.
  • Lockfile checks confirm removed paths are absent:
    • No solidity-coverage / web3-utils in mercata/ethereum/package-lock.json.
    • No sharp / @img/sharp* in mercata/ui/package-lock.json.

Files Changed

  • NOTICE
  • mercata/ethereum/package.json
  • mercata/ethereum/hardhat.config.js
  • mercata/ethereum/package-lock.json
  • mercata/ui/package.json
  • mercata/ui/package-lock.json

Record analysis outcome for mercata/ui dependency chain (@base-org/account -> @coinbase/cdp-sdk -> @solana/web3.js -> rpc-websockets) and link to upstream issue coinbase/cdp-sdk#620 for migration tracking.
…h NOTICE

Analysis summary:

- Re-assessed Apache-only compatibility appendix in NOTICE against current lockfiles after dependency cleanup.

- Confirmed mercata/ethereum no longer needs @nomicfoundation/hardhat-toolbox aggregate for active workflows (compile/deploy/verify/scan).

- Replaced toolbox with explicit plugins used by the project: @nomicfoundation/hardhat-ethers, @nomicfoundation/hardhat-verify, and ethers; retained @openzeppelin/hardhat-upgrades.

- Regenerated mercata/ethereum/package-lock.json via npm install and verified compile succeeds with the new plugin set.

License/compliance impact:

- Removed solidity-coverage -> web3-utils (LGPL-3.0) transitive path from mercata/ethereum lockfile.

- Updated NOTICE to remove stale solidity-coverage and web3-utils package notices and removed obsolete Appendix item for that path.

- Refreshed remaining NOTICE appendix evidence line references and priority list for currently present risks (rapidsnark, rpc-websockets via CDP/Solana path, and sharp/libvips optional path).

- Preserved upstream tracking note for Coinbase CDP SDK migration issue: coinbase/cdp-sdk#620
…h NOTICE

Analysis and actions:

- Confirmed sharp/libvips LGPL path in mercata/ui was introduced transitively via next optional dependency on sharp.

- Verified mercata/ui is Vite-driven and does not require Next runtime for current build workflow.

- Removed next from mercata/ui/package.json and regenerated package-lock.json.

- Revalidated dependency graph: sharp and @img/sharp* (including sharp-libvips LGPL packages) are no longer present in lockfiles.

NOTICE updates:

- Removed obsolete package notices for sharp and @img/sharp* entries.

- Removed obsolete audit appendix item for sharp/libvips path.

- Refreshed rpc-websockets evidence line references after lockfile changes.

- Updated rpc-websockets recommendation to reflect current action: track Coinbase CDP SDK upstream migration (issue strato-net#620).

- Reordered priority list per current policy (rapidsnark first, Coinbase migration second).
Update license audit appendix refresh date to 2026-03-05 and add current-scope note reflecting latest dependency cleanup (two remaining high-risk items: rapidsnark and rpc-websockets path).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant