chore: align Product SDK package set - #125
Conversation
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 0dec22d7fb
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| "@parity/product-sdk": "0.23.0", | ||
| "@parity/product-sdk-descriptors": "0.10.0", | ||
| "@parity/product-sdk-host": "0.16.0", | ||
| "@parity/product-sdk-statement-store": "0.6.5", |
There was a problem hiding this comment.
Bump the Product executable version with the SDK bundle
When this Product build is published for users who previously opened it in the mobile host, the upgraded SDK code can retain the unchanged [0, 1, 11] executable metadata from web/polkadot-app-deploy.config.ts:13, allowing the host to keep its cached bundle instead of loading this release. The deployment runbook explicitly requires an appVersion bump for host SDK integration changes (docs/operations/deployment-configuration.md:160-164), so increment the manifest version alongside these pins.
Useful? React with 👍 / 👎.
|
Addressed in 73d3fc1: bumped the Product executable manifest to [0, 1, 12] and aligned the deployment/runbook docs so the current executable version is cache-busted while the 0.1.11 Product Mobile WebRTC fallback remains documented as 0.1.11 and later. |
Outcome
Align Dotify's Product DevNet adapter with the latest published Product SDK package set while keeping the standalone web path, Product build, Product CDM opt-in adapter, and dormant Statement Store beacons compiling.
This PR intentionally does not move Dotify's root
polkadot-apidependency to3.0.0. I tested that path during the compatibility pass: the current official Product SDK packages bring their own PAPI2.2.xtree, while@polkadot-apps/chain-client, keys, and signer still use PAPI1.23.x. A root PAPI 3 trial removed the publicPolkadotSignerexport and brokeChainDefinition/TypedApicompatibility at the Bulletin and wallet seams.Issue and context
Refs #85.
Local scope and context:
docs/backlog/polkadot-product-readiness-and-killer-dapp-roadmap.mddocs/explanation/product-devnet-architecture.mddocs/operations/dependency-security-status.mddocs/operations/deployment-configuration.md#85 is broader than this PR. The remaining issue scope is host transaction signing, resource allocation, and real Product Desktop/Web smoke evidence. This PR handles the dependency compatibility slice and records the PAPI 3 blocker so future work does not repeat the same migration attempt blindly.
Architecture and key concepts
Dotify now uses this Product/PAPI dependency shape:
The Product SDK packages remain exact pins because Product host behavior is still moving. Product CDM remains opt-in behind
VITE_DOTIFY_RUNTIME_ADAPTER=product-cdm; the tracked Product deployment still defaults to the existing viem runtime path.I also checked whether this was the moment to replace the existing Bulletin client with
@parity/product-sdk-chain-client. That client is host-only and has no direct WebSocket fallback, so replacing the existing@polkadot-apps/chain-clientpath would regress standalone Bulletin publication. Keeping both surfaces is deliberate until the Product host path can cover the same user flows.How it works
web/package.jsonmoves:@parity/product-sdkto0.23.0@parity/product-sdk-hostto0.16.0@parity/product-sdk-statement-storeto0.6.5@parity/product-sdk-descriptorsto0.10.0web/package-lock.jsonrecords the resulting dependency graph and minor lockfile collateral inside already-declared ranges.web/src/services/productDevnetCatalogBootstrap.tswas regenerated from the live catalog API during Product build validation and still contains the same 5 catalog items.Design decisions and tradeoffs
Chosen:
polkadot-apion1.23.3, because forcing3.0.0creates a fragile multi-major graph that does not compile without shims.Deferred:
@polkadot-appsconverge on a compatible PAPI major.Security, failure, and operations
No secrets, hosted dashboard values, CORS origins, Fly/Netlify config, or runtime env names change in this PR.
Security posture is unchanged:
npm auditstill reports 26 high-severity findings in the web runtime graph through Product/PAPI transitives. Product SDK latest does not remove those findings, andnpm audit fix --forcewould cross breaking boundaries. The status is documented indocs/operations/dependency-security-status.md.docs/index.htmlis intentionally unchanged because this PR does not change public positioning, visual identity, or the user-facing roadmap.Review guide
Suggested order
web/package.jsonandweb/package-lock.jsonConfirm the direct Product SDK pins and inspect the resulting PAPI multi-version graph.
docs/operations/dependency-security-status.mdCheck whether the audit result and PAPI 3 blocker are described honestly.
docs/operations/deployment-configuration.mdVerify the operator-facing Product dependency matrix and that no env/dashboard change is implied.
docs/explanation/product-devnet-architecture.mdReview the compatibility gate and confirm the architecture still preserves standalone first sound.
docs/backlog/*andspec.mdConfirm the planning docs no longer point future work back to the old Product SDK snapshot.
web/src/services/productDevnetCatalogBootstrap.tsConfirm the refresh only updates live snapshot metadata and still carries 5 items.
Verify carefully
Validation
npm view @parity/product-sdk version->0.23.0npm view @parity/product-sdk-host version->0.16.0npm view @parity/product-sdk-statement-store version->0.6.5npm view @parity/product-sdk-descriptors version->0.10.0npm view polkadot-api version->3.0.0npm view @polkadot-community-foundation/polkadot-app-deploy version->0.13.1npm ls @parity/product-sdk @parity/product-sdk-host @parity/product-sdk-statement-store @parity/product-sdk-descriptors polkadot-api0.23.0set and mixed PAPI major reality.npm run generate:cdmnpm run generate:cdm-metadatanpm run buildnpm run test:unitnpm run lintnpm run build:product-devnetwith network accessnpm run build:product-devnet:beaconswith network accessnpm audit --audit-level=moderateandnpm audit --omit=dev --audit-level=moderategit diff --checkKnown limitations and follow-ups
polkadot-api@3.0.0is not yet deployable for Dotify because the official Product SDK and@polkadot-appspackages are not on one compatible PAPI major line.npm audit fix --forceas a shortcut.Metadata checklist
Refs #85)Dotify sprints)