@dreamboard-games/sdk 0.5.0-alpha.8 → 0.5.0-alpha.9

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
@@ -234,7 +234,7 @@ To migrate an older manifest, replace each card's `type` with `id` and set
234
234
 
235
235
  `createReducerBundle(game)` returns exactly the contract version and four
236
236
  operations: `boardStatic()`, `initialize(input)`, `dispatch({ state, input })`,
237
- and `project({ state, playerIds })`. The runner contract is `0.8.0`; hosts must
237
+ and `project({ state, playerIds })`. The runner contract is `0.9.0`; hosts must
238
238
  require that exact version. Dispatch includes validation, direct transaction mutations, and phase entry.
239
239
  Initialization returns
240
240
  `{ state, terminal?, events? }`, preserving outcomes and events from initial
@@ -325,6 +325,15 @@ and gameplay websocket schemas plus `materializePluginGameplayFrame` live at the
325
325
  root. Materialize the seat projection with static board data before publishing it;
326
326
  sources publish the canonical seat view and keep command bases private.
327
327
 
328
+ Visible cards share one complete `ViewCard` shape: `id`, `cardType`, and JSON
329
+ `properties`, plus optional `name`, `text`, `frontImage`, and `backImage`.
330
+ `ViewCardSchema` validates this shape. Reducer and gameplay `cardViewsById` maps
331
+ contain these objects directly. Headless `card.view` preserves the manifest's
332
+ card identity, category, and property inference and is deeply readonly; table-only
333
+ `cardSetId` and `componentType` are absent. Concealed cards have a positional
334
+ `hidden:<zone>:<index>` identity, no view, and an optional separate `cardBacksById` entry.
335
+ This wire format requires plugin protocol version 8 and reducer contract `0.9.0`.
336
+
328
337
  Card sets contain their authored `cards`, `cardSchema`, and `defaultHome` directly.
329
338
  Standard playing cards are game-owned definitions with ordinary suit/rank
330
339
  properties; the SDK does not synthesize inventories or assign built-in rules.