refactor(deps): upgrade product-sdk + bulletin-deploy, migrate to product-sdk-keys#184
Merged
Merged
Conversation
…duct-sdk-keys - Bumps every @parity/product-sdk-* caret range and bulletin-deploy to current latest. Patch bumps (bulletin/chain-client/contracts/ descriptors/storage/tx) are transitive-only. Minor bumps (host 0.4.0, keys 0.3.0) are additive — no CLI adaptation required. bulletin-deploy 0.7.20 to 0.7.24 brings PoP self-serve guidance, chunk-reupload retry hardening, and auto-reprove on stale alias binding. - Deletes src/utils/productAccountDerivation.ts and consumes the canonical deriveProductAccountPublicKey from @parity/product-sdk-keys. Two callsites updated: src/utils/sessionSigner.ts and src/commands/init/identityLine.ts. Algorithm parity with mobile and desktop is locked by upstream frozen vectors. - Replaces the local algorithm tests with two thinner files: src/utils/productAccount.test.ts (wiring smoke test) and src/utils/sessionSigner.test.ts (preserves regression tests pinning the init/deploy/playground-app equivalence and the rootAccountId-vs-remoteAccount.accountId guard). - Drops unused direct scale-ts dep from package.json. Reviewed by superpowers code-review subagent before push.
|
Review the following changes in direct dependencies. Learn more about Socket for GitHub.
|
Contributor
|
Dev build ready — try this branch: |
Contributor
E2E Test Pass · ✅ PASSTag:
Sentry traces: view spans for this run |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
@parity/product-sdk-*caret range andbulletin-deployto current latest.deriveProductAccountPublicKeyfrom a local hand-rolled mirror to the canonical export in@parity/product-sdk-keys(Phase 3 of the product-account unification work; Phases 1+2 shipped in product-sdk#105; Phase 4 shipped in feat(init): show username and product account on success #182).Upstream API audit
@parity/product-sdk-address^0.1.1^0.1.1@parity/product-sdk-bulletin^0.4.0^0.4.2@parity/product-sdk-chain-client^0.4.0^0.4.2@parity/product-sdk-contracts^0.5.0^0.5.1@parity/product-sdk-descriptors^0.4.0^0.4.1@parity/product-sdk-host^0.3.0^0.4.0RemotePermission,requestPermission,SignerManagerOptions.onConnect@parity/product-sdk-keys^0.2.3^0.3.0deriveProductAccountPublicKey,createChainCode(the migration target)@parity/product-sdk-logger^0.1.1^0.1.1@parity/product-sdk-storage^0.1.4^0.1.5@parity/product-sdk-terminal^0.2.1^0.2.1@parity/product-sdk-tx^0.2.3^0.2.4@parity/product-sdk-utils^0.1.1^0.1.1bulletin-deploy0.7.200.7.24DOTNS_ENV→BULLETIN_DEPLOY_ENVrename (deprecation alias; CLI sets neither)No CLI-side adaptation was needed beyond the migration itself.
QueryResult<T>discriminated-union narrowing was already in place.pnpm.overridesentries left untouched — all three remain load-bearing per CLAUDE.md.bulletin-deploystays at an explicit pin.Migration
src/utils/productAccountDerivation.ts. Algorithm parity (CLI / mobile / desktop) is now locked by upstream frozen vectors in@parity/product-sdk-keys/src/product-account.test.ts.src/utils/sessionSigner.tsandsrc/commands/init/identityLine.ts.u32for SCALE-encodedderivationIndex; upstream usesu64. Both encode0to identical bytes, and a sweep (grep -rn "derivationIndex" src/ e2e/ scripts/ tools/) confirms onlyderivationIndex: 0is in use across the tree.src/utils/productAccount.test.ts(config + SDK import + ss58Encode wiring smoke test).src/utils/sessionSigner.test.ts(renamed-with-edits from the deletedproductAccountDerivation.test.ts) to preserve regression coverage forcreatePlaygroundSessionSigner: init/deploy/playground-app address equivalence, and therootAccountId-vs-remoteAccount.accountIdguard.scale-tsdep frompackage.json(was only there for the deleted local mirror).Pre-PR review
A Superpowers code-review subagent reviewed against upstream changelogs and the desktop/mobile reference repos before push. Two P1 findings, both addressed in the same commit:
createPlaygroundSessionSignerregression tests in a newsessionSigner.test.ts.scale-tsdep.P2 suggestions (strengthen
productAccount.test.tswith a byte-frozen vector; add a TODO atsrc/utils/allowances/host.tsabout 0.4.0'srequestPermission/onConnect) deferred — neither is load-bearing.Test plan
pnpm format:checkpnpm lint:licensepnpm test(532 passed, 1 skipped)pnpm buildgrep -rn "deriveProductAccountPublicKey" src/shows imports from@parity/product-sdk-keysonlygrep -rn "productAccountDerivation" src/returns no matchesdot initagainst an existing session still renders the username + product account lines from feat(init): show username and product account on success #182 correctly