@revturbine/sdk 0.11.20 → 0.11.22
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/CHANGELOG.md +50 -0
- package/dist/headless.d.ts +5 -7
- package/dist/headless.js +2 -2
- package/dist/headless.js.map +1 -1
- package/dist/index.d.ts +5 -7
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/types/web-sdk/customer-side.d.ts +5 -7
- package/dist/types/web-sdk/customer-side.d.ts.map +1 -1
- package/package.json +4 -4
package/CHANGELOG.md
CHANGED
|
@@ -47,6 +47,56 @@ also require a changelog entry.
|
|
|
47
47
|
|
|
48
48
|
---
|
|
49
49
|
|
|
50
|
+
## 0.11.22
|
|
51
|
+
|
|
52
|
+
### Message slots never show Fixed or Access Gate content (D-62)
|
|
53
|
+
|
|
54
|
+
**What changed.** Behaviour change in every port; no signature changes.
|
|
55
|
+
|
|
56
|
+
- A message slot (`<MessageSurfaceSlot>`, `surface_slot_category: triggered`)
|
|
57
|
+
shows only RT-initiated placements: usage/credit/seat and trial alerts,
|
|
58
|
+
conversion/expansion and retention nudges. 0.11.21 treated this as a
|
|
59
|
+
preference — Fixed content still rendered when no RT-initiated placement
|
|
60
|
+
qualified. Now the slot shows nothing in that case. Access Gate content was
|
|
61
|
+
already excluded (D-60).
|
|
62
|
+
- The filter judges by category tier, so every category spelling agrees.
|
|
63
|
+
- **Scaffold pin 0.1.409 → 0.1.411** (revturbine-scaffold #473; vendored `types.py` / `types.rs` refreshed).
|
|
64
|
+
|
|
65
|
+
**Landed in** 0.11.22. **Fail-closed in** 0.11.22.
|
|
66
|
+
|
|
67
|
+
**Proving tests.** D-62 blocks in scaffold `local-resolver.test.ts`, py
|
|
68
|
+
`TestMessageSlotsShowOnlyRtInitiated`, rs `d62_*` in `tests/static_resolver.rs`.
|
|
69
|
+
|
|
70
|
+
## 0.11.21
|
|
71
|
+
|
|
72
|
+
### `getPlacement` is a pure function of (user context, Playbook) (D-39, BL-0379)
|
|
73
|
+
|
|
74
|
+
**What changed.** Behaviour change in the browser SDK; no signature changes.
|
|
75
|
+
|
|
76
|
+
- **One decision path.** `getPlacement(config)` resolves the Playbook's
|
|
77
|
+
authored slot through the same decision path as `getPlacementDecision` and
|
|
78
|
+
the server SDKs' `get_placement` / `LocalRuntime.getPlacement`. 0.11.20 first
|
|
79
|
+
consulted a lane of previously decided or seeded outputs and ranked them with
|
|
80
|
+
a separate selection layer (category bucket, urgency, score), so it could
|
|
81
|
+
return a different placement than the decision path for the same user.
|
|
82
|
+
- **Always current.** Each call reflects the current user context; the only
|
|
83
|
+
caching is the decision path's own memo keyed by the request and context.
|
|
84
|
+
- **`getPlacementContent`** in local-only mode now decides through the same
|
|
85
|
+
path instead of reading seeded outputs.
|
|
86
|
+
- **Deprecated, ignored:** `localRuntime.initialData.placementsByLookupKey`
|
|
87
|
+
(warns once when supplied). Author placements in `localRuntime.playbook`, or
|
|
88
|
+
implement the `getPlacement` resolver for a custom source. The field, and
|
|
89
|
+
core's `resolveLocalPlacementFromCandidates` selection helper, are removed in
|
|
90
|
+
0.12.0 (BL-0167).
|
|
91
|
+
- **Live design partner:** an integration that seeded placement outputs, or
|
|
92
|
+
relied on the old cached ranking, now sees the Playbook's decision.
|
|
93
|
+
|
|
94
|
+
**Landed in** 0.11.21. **Fail-closed in** 0.11.21.
|
|
95
|
+
|
|
96
|
+
**Proving tests.** `web-sdk/pure-getplacement.test.ts` (browser `getPlacement`
|
|
97
|
+
equals the server runtime for the same inputs; reflects a changed user
|
|
98
|
+
context; ignores seeded outputs); `web-sdk/customer-side-fixed-only.test.ts`.
|
|
99
|
+
|
|
50
100
|
## 0.11.20
|
|
51
101
|
|
|
52
102
|
### One entitlement answer for browser and server, with Entitlement Mirroring; Access Gates only fire while denied (D-60, D-61)
|
package/dist/headless.d.ts
CHANGED
|
@@ -31522,6 +31522,11 @@ interface RevTurbineEventBatchingOptions {
|
|
|
31522
31522
|
}
|
|
31523
31523
|
interface RevTurbineLocalRuntimeData {
|
|
31524
31524
|
placementDecisionsByPlacementId?: Record<string, RevTurbinePlacementDecision>;
|
|
31525
|
+
/**
|
|
31526
|
+
* @deprecated Ignored since 0.11.21 (D-39 / BL-0379): `getPlacement` is a
|
|
31527
|
+
* pure function of the user context and `localRuntime.playbook`, so
|
|
31528
|
+
* pre-decided outputs are never consulted. Removed in 0.12.0.
|
|
31529
|
+
*/
|
|
31525
31530
|
placementsByLookupKey?: Record<string, PlacementOutput | null>;
|
|
31526
31531
|
entitlementByHandle?: Record<string, EntitlementResult>;
|
|
31527
31532
|
userContextByUserId?: Record<string, UserTargetingContext>;
|
|
@@ -32299,7 +32304,6 @@ declare class RevTurbineCustomerSdk {
|
|
|
32299
32304
|
private pendingConversionPlan?;
|
|
32300
32305
|
private usageBalances;
|
|
32301
32306
|
private localDecisionsByPlacementId;
|
|
32302
|
-
private localPlacementsByLookupKey;
|
|
32303
32307
|
private localEntitlementsByHandle;
|
|
32304
32308
|
private localUserContextsByUserId;
|
|
32305
32309
|
/**
|
|
@@ -32600,12 +32604,6 @@ declare class RevTurbineCustomerSdk {
|
|
|
32600
32604
|
*/
|
|
32601
32605
|
private hasEndpointOverride;
|
|
32602
32606
|
private endpointFor;
|
|
32603
|
-
private localPlacementLookupKey;
|
|
32604
|
-
private localLookupMatchesConfig;
|
|
32605
|
-
private localOutputMatchesConfig;
|
|
32606
|
-
private applyCategoryConflictSuppression;
|
|
32607
|
-
private resolveLocalPlacementFromCandidates;
|
|
32608
|
-
private localPlacementForConfig;
|
|
32609
32607
|
/**
|
|
32610
32608
|
* The `placement_slots[]` entry the loaded Playbook authors for a request.
|
|
32611
32609
|
*
|