Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
163 changes: 16 additions & 147 deletions bun.lock

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion docs/levels/00-overview.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ flow and account selection.

Install with `npm install <pkg>@latest`. The app uses the
`@parity/product-sdk-*` family. The old `@novasamatech/product-sdk` is frozen,
and `@novasamatech/host-api-wrapper` is the low-level layer that the signer and
and `@parity/truapi` is the low-level host transport that the signer and
host packages wrap — do **not** import either of them directly.

| Package | What it provides | Level |
Expand Down
4 changes: 2 additions & 2 deletions docs/levels/level-1-local-challenger.md
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ Use the **latest** published versions (do not pin):
- `@parity/product-sdk-host` — `isInsideContainerSync()`

Do not import `@novasamatech/product-sdk` (frozen) or
`@novasamatech/host-api-wrapper` (low-level layer the signer wraps) directly.
`@parity/truapi` (low-level host transport the signer wraps) directly.

## Account flow (the actual `src/utils.ts` / `App.tsx` pattern)

Expand Down Expand Up @@ -108,7 +108,7 @@ signing path internally — no manual signer wiring, no `signerType` to pass.
## Do NOT

- Don't reintroduce `@novasamatech/product-sdk` or import
`@novasamatech/host-api-wrapper` directly — the `@parity/product-sdk-*`
`@parity/truapi` directly — the `@parity/product-sdk-*`
packages are the supported surface.
- Don't build signers by hand or pass a `signerType` — `HostProvider` handles it.
- Don't pin SDK versions — install `@latest`.
2 changes: 1 addition & 1 deletion docs/levels/level-2-on-chain-record.md
Original file line number Diff line number Diff line change
Expand Up @@ -108,7 +108,7 @@ if (cid) {

- Don't add a smart contract yet — Level 3
- Don't add multiplayer — Level 4
- Don't import `@novasamatech/host-api-wrapper` directly — `getPreimageManager()`
- Don't import `@parity/truapi` directly — `getPreimageManager()`
from `@parity/product-sdk-host` is the supported surface for the host-sponsored path
- Don't open your own WS connection to Bulletin or hardcode old Paseo v1
endpoints (`asset-hub-paseo-rpc.n.dwellir.com`, `paseo-ipfs.polkadot.io`, …)
Expand Down
2 changes: 1 addition & 1 deletion docs/levels/level-4-multiplayer.md
Original file line number Diff line number Diff line change
Expand Up @@ -122,7 +122,7 @@ Skip if you don't need it — the raw `publish` / `subscribe` flow above is enou

## Do NOT

- Don't go lower-level than `@parity/product-sdk-statement-store` (e.g. `@novasamatech/host-api-wrapper`'s raw statement store) — the client gives you typed publish/subscribe, host-transport routing, and dedup.
- Don't go lower-level than `@parity/product-sdk-statement-store` (e.g. `@parity/truapi`'s raw statement store) — the client gives you typed publish/subscribe, host-transport routing, and dedup.
- Don't connect with `mode: "local"` — local mode hits the public WS endpoint which doesn't serve `statement_*` methods. Always `mode: "host"`.
- Don't hardcode room codes — use a 6-char random generator with a confusable-free alphabet (`ABCDEFGHJKLMNPQRSTUVWXYZ23456789`). Add a `generateRoomCode()` helper to `utils.ts`.
- Don't share one `StatementStoreClient` instance across rooms — `destroy()` it when the room ends and create a new one for the next match. Subscriptions are scoped to the client.
6 changes: 2 additions & 4 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -10,10 +10,8 @@
"preview": "vite preview"
},
"dependencies": {
"@novasamatech/host-api": "^0.8.6",
"@novasamatech/host-api-wrapper": "^0.8.6",
"@parity/product-sdk-host": "^0.8.0",
"@parity/product-sdk-signer": "^0.6.3",
"@parity/product-sdk-host": "^0.14.1",
"@parity/product-sdk-signer": "^0.11.1",
"react": "^19.0.0",
"react-dom": "^19.0.0"
},
Expand Down