@genex-ai/embed-sdk 0.24.1 → 0.24.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -375,7 +375,24 @@ The full receipt includes execution status, output on success, charged/reserved
375
375
  coins and USD, plus development-only `usage: { costUsdPicos, costUsd,
376
376
  maxProviderUsdPicos, unknownProviderUsdPicos }`. Unknown cost is null rather
377
377
  than zero; workflow cost aggregates known actual step costs and reports remaining
378
- unknown exposure separately. No token counts are inferred.
378
+ unknown exposure separately. No token counts are inferred: SDK 0.24.3+ types the
379
+ counts the provider REPORTED (`usage.inputTokens`, `usage.outputTokens`, null
380
+ when none), the call's own `usage.maxOutputTokens`, and `usage.fitCoins` — the
381
+ smallest declared price whose funded output allowance holds that answer plus
382
+ the stand's headroom. The declared price also decides how long the answer may
383
+ be, so calibrate to at least the p95 `fitCoins` of your settled samples, not
384
+ the charged coins alone. `usage.truncated` marks an answer the model had to stop
385
+ writing (`error: 'provider_token_limit'`, still charged: re-run with a higher
386
+ `maxCoins`), and `usage.fitExceedsCap` an answer longer than one call on that
387
+ stand may produce (ask for a shorter one). When the provider
388
+ refused the request before running it (a rejected key, an unknown model, a rate
389
+ limit — `error: 'provider_http_<status>'`), nothing is charged, the hold is
390
+ released, and SDK 0.24.2+ types `providerMessage`: the provider's own words,
391
+ sanitized, on development rows only — a player-facing view never carries them.
392
+ The same SDK types `providerKey` on the models response (`'ok' | 'rejected' |
393
+ 'unknown'`): a stand whose key the provider refuses says so in that one word,
394
+ and every in-game call there answers `provider_http_401` until an operator
395
+ replaces it — check it before a benchmark, not after.
379
396
 
380
397
  For a registered workflow, call `developmentRequestWorkflow({ apiUrl,
381
398
  creatorToken, projectId, workflowId, maxCoins, request: { offeringId, input,
@@ -577,7 +577,7 @@ var RETRY_FLAG = "genex:embed:retry";
577
577
  var POPOVER_DISMISSED_FLAG = "genex:guest:popover-dismissed";
578
578
  var LOCAL_AUTH_FLAG = "genex:embed:local-auth";
579
579
  var PLAYER_ID_KEY = "genex:player";
580
- var SDK_VERSION = "0.24.1";
580
+ var SDK_VERSION = "0.24.3";
581
581
  var config2 = null;
582
582
  var state = "pending";
583
583
  var user = null;
package/dist/index.js CHANGED
@@ -32,7 +32,7 @@ import {
32
32
  waitForAuth,
33
33
  waitForGeneration,
34
34
  waitForPlayer
35
- } from "./chunk-ETIZW77E.js";
35
+ } from "./chunk-EM5TVVSD.js";
36
36
  import "./chunk-VPIQVRVS.js";
37
37
  export {
38
38
  __resetForTests,
package/dist/sentry.js CHANGED
@@ -2,7 +2,7 @@ import {
2
2
  _stashTicketFromUrl,
3
3
  getUser,
4
4
  on
5
- } from "./chunk-ETIZW77E.js";
5
+ } from "./chunk-EM5TVVSD.js";
6
6
  import "./chunk-VPIQVRVS.js";
7
7
 
8
8
  // src/sentry.ts
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@genex-ai/embed-sdk",
3
- "version": "0.24.1",
3
+ "version": "0.24.3",
4
4
  "description": "Player identity + durable game state for genex games \u2014 signed-in or guest play, per-player save slots, shared world state, and soft-trust leaderboards.",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",