docs: @rudder/sdk 0.2.1, readme and skill describe guarantees, not internals

This commit is contained in:
edmand46
2026-09-24 17:52:36 +03:00
parent b5bb18ba5e
commit 70b985bf57
6 changed files with 18 additions and 14 deletions
+5 -1
View File
@@ -1,12 +1,16 @@
# Changelog # Changelog
## 0.2.1
- Docs only: README wording.
## 0.2.0 ## 0.2.0
- `PlayerProfile.balances` (`CurrencyBalance[]`: `currency`, `balance`) - `PlayerProfile.balances` (`CurrencyBalance[]`: `currency`, `balance`)
replaces `wallets`, and the `Wallet` type is renamed `CurrencyBalance`. replaces `wallets`, and the `Wallet` type is renamed `CurrencyBalance`.
- `PlayerProfile.items` (`InventoryStack[]`: `item`, `quantity`) replaces - `PlayerProfile.items` (`InventoryStack[]`: `item`, `quantity`) replaces
`counters`. `counters`.
- The server's `resources` to `catalogs` rename changes no public type. - Catalogs replace resources on the platform; no public type changes.
- Module clients generated by `rudder client generate` 0.3.0 list the current - Module clients generated by `rudder client generate` 0.3.0 list the current
kernel error codes in `RudderKernelError`. kernel error codes in `RudderKernelError`.
+3 -3
View File
@@ -6,7 +6,7 @@ installed modules through generated typed clients.
## Install ## Install
The package is published to the Gitea registry at hub.rudder.build, not The package is published to the Rudder package registry at hub.rudder.build, not
npmjs. Point the `@rudder` scope at it in your project's `.npmrc`: npmjs. Point the `@rudder` scope at it in your project's `.npmrc`:
``` ```
@@ -185,8 +185,8 @@ npm run build # tsup → dist (ESM + CJS + d.ts)
npm run test:e2e-prod # drives a seeded project on the live backend npm run test:e2e-prod # drives a seeded project on the live backend
``` ```
Generated wire types (`src/generated`) come from `liveops-backend/apigen`; run Generated wire types (`src/generated`) come from the platform's API
`npm run generate` to refresh them. Do not edit them by hand. contract; run `npm run generate` to refresh them. Do not edit them by hand.
`test/fixtures/rudder.modules.ts` is CLI output for `test/fixtures/rudder.modules.ts` is CLI output for
`test/fixtures/leaderboards.manifest.json`; `npm run typecheck` checks that it `test/fixtures/leaderboards.manifest.json`; `npm run typecheck` checks that it
+2 -2
View File
@@ -1,12 +1,12 @@
{ {
"name": "@rudder/sdk", "name": "@rudder/sdk",
"version": "0.2.0", "version": "0.2.1",
"lockfileVersion": 3, "lockfileVersion": 3,
"requires": true, "requires": true,
"packages": { "packages": {
"": { "": {
"name": "@rudder/sdk", "name": "@rudder/sdk",
"version": "0.2.0", "version": "0.2.1",
"devDependencies": { "devDependencies": {
"@types/node": "^26.1.1", "@types/node": "^26.1.1",
"jsdom": "^29.1.1", "jsdom": "^29.1.1",
+1 -1
View File
@@ -1,6 +1,6 @@
{ {
"name": "@rudder/sdk", "name": "@rudder/sdk",
"version": "0.2.0", "version": "0.2.1",
"publishConfig": { "publishConfig": {
"registry": "https://hub.rudder.build/api/packages/rudder/npm/" "registry": "https://hub.rudder.build/api/packages/rudder/npm/"
}, },
+6 -6
View File
@@ -5,19 +5,19 @@ description: Use when working with the Rudder TypeScript/JavaScript client SDK (
# Rudder Web SDK (@rudder/sdk) # Rudder Web SDK (@rudder/sdk)
Client SDK for web games on the Rudder LiveOps platform. Source of truth: Client SDK for web games on the Rudder LiveOps platform. Source of truth: the
`liveops-web-sdk/src` (wire types in `src/generated` come from package source and its type declarations (wire types in `src/generated` are
`liveops-backend/apigen`; never edit them by hand). generated; never edit them by hand).
0.2.0 covers only the kernel: auth, player, catalog, storage, module calls and 0.2.1 covers only the kernel: auth, player, catalog, storage, module calls and
internal revision sync. Game features are installed modules, reached through a background sync. Game features are installed modules, reached through a
typed client generated from their manifests. There is no `resources(slug)` and typed client generated from their manifests. There is no `resources(slug)` and
no `projectStorage`; game-facing configuration comes from modules such as no `projectStorage`; game-facing configuration comes from modules such as
`remote_config`. `remote_config`.
## Install ## Install
Published to the Gitea registry at hub.rudder.build, not npmjs. Point the Published to the Rudder package registry at hub.rudder.build, not npmjs. Point the
`@rudder` scope at it in `.npmrc` (anonymous read, no token): `@rudder` scope at it in `.npmrc` (anonymous read, no token):
``` ```
+1 -1
View File
@@ -58,7 +58,7 @@ client.modules.call<T = unknown>(
`result`. Console output and the kernel call log never reach players. `result`. Console output and the kernel call log never reach players.
- Idempotency: each call generates one `Idempotency-Key` (UUID v4) and sends - Idempotency: each call generates one `Idempotency-Key` (UUID v4) and sends
the same key on every retry, so the server runs the function at most once the same key on every retry, so the server runs the function at most once
and returns the stored response for a repeated key. A new `call()` gets a and a retry with the same key within 24 h returns the first response. A new `call()` gets a
new key. new key.
- Retries: up to 2, with jittered exponential backoff, on network errors, 5xx - Retries: up to 2, with jittered exponential backoff, on network errors, 5xx
and 409 with code `conflict`. Other 4xx responses (including other 409 and 409 with code `conflict`. Other 4xx responses (including other 409