fix(sdk): drop dead @mysten/walrus import from /manual (WALM-145) - #897
HoangDucBach wants to merge 3 commits into
Conversation
getWalrusClient had no call sites but the static specifier still pulled WASM into Turbopack. Download stays on HTTP fetch.
ducnmm
left a comment
There was a problem hiding this comment.
Summary
WALM-145 is correctly implemented: getWalrusClient(), _walrusClient, and unused walrusUpload() are gone, SDK source has no @mysten/walrus specifier, and recallManual still downloads through HTTP walrusDownload. Version dump is right — unpublished 0.1.7 on dev vs 0.1.6 on main, so no bump; the new Fixed bullet sits under existing ## 0.1.7 in both changelogs.
Issue counts by severity
- bugs: 0
- suggestions: 2
- nits: 1
Issues outside the diff
- [nit] packages/sdk/src/manual.ts:23 — The file header now says remember uploads through the relayer, but the
@examplestill says remember is “all client-side: embed → SEAL encrypt → Walrus upload → register”. That contradictsrememberManual. Change the example to the hybrid flow (embed → SEAL encrypt → relayer upload).
/manual no longer uses @mysten/walrus. Stop advertising it and remove the silent walrusEpochs / walrusPublisherUrl config.
ducnmm
left a comment
There was a problem hiding this comment.
Summary
Follow-up e6031c98 closed the prior comments: optional @mysten/walrus peer and install docs, dead walrusEpochs / walrusPublisherUrl, and the @example upload wording. WALM-145 itself is still correct.
Issue counts by severity
- bugs: 1
- suggestions: 0
- nits: 0
CI JS jobs fail pnpm install --frozen-lockfile because pnpm-lock.yaml still lists @mysten/walrus under packages/sdk.
CI frozen-lockfile failed after the optional peer was removed from package.json.
Lockfile updated on 5354052 — packages/sdk no longer lists @mysten/walrus. No remaining issues.
ducnmm
left a comment
There was a problem hiding this comment.
LGTM, cleans up dead @mysten/walrus imports and adds verifying unit tests.
Ticket
WALM-145 — https://linear.app/mysten-labs/issue/WALM-145
GH #330 — #330
What changed?
getWalrusClient(),_walrusClient, andwalrusUpload()fromMemWalManual.import("@mysten/walrus")in the SDK. Blob download stays on HTTPfetchto the aggregator./manualuploads/downloads via@mysten/walrus.Why is this needed?
The live remember path uploads through the relayer. The live recall path downloads over HTTP.
getWalrusClient()still didawait import("@mysten/walrus")with no call sites, so Next.js 15 Turbopack put Walrus WASM in the/manualmodule graph and hit/ROOT/resolution errors.Test plan
packages/sdk/test/no-walrus-wasm.test.mjs@mysten-incubation/memwal/manualunder Turbopack/Vite without@mysten/walrusrecallManualstill downloads blobs over HTTP