ConfigClampedEvent
extends TelemetryEvent
in package
Emitted at construction, once per caller-supplied setting the SDK clamped (CONTRACT.md §19.1, §19.2 rule 6).
Two places in the contract require clamping rather than rejecting: §16.1's attempt cap, base delay and delay cap, and §17.1 rule 2's memo TTL. Both clamps are right — rejecting would break a caller whose configuration was merely optimistic, and honoring would let one client become the herd §16 exists to prevent. Doing it silently is the part that is wrong.
An operator who set a 60-second memo TTL believes they have one. They have five seconds, and their staleness reasoning is off by a factor of twelve with nothing anywhere to say so. This event is what makes the clamp discoverable at the only moment it can be acted on.
It is not emitted for a value already within its limit: an event that fires when nothing happened trains its reader to ignore it.
Table of Contents
Constants
- OUTCOME_FAILURE : mixed = 'failure'
- Outcome: the call failed, at any layer.
- OUTCOME_SUCCESS : mixed = 'success'
- Outcome: the call returned a usable response.
- REFRESH_FOLLOWER : mixed = 'follower'
- Refresh role: this caller waited on another's refresh.
- REFRESH_LEADER : mixed = 'leader'
- Refresh role: this caller performed the refresh.
Properties
- $contractReference : string
- $effective : string
- $requested : string
- $setting : string
Methods
- __construct() : mixed
Constants
OUTCOME_FAILURE
Outcome: the call failed, at any layer.
public
mixed
OUTCOME_FAILURE
= 'failure'
OUTCOME_SUCCESS
Outcome: the call returned a usable response.
public
mixed
OUTCOME_SUCCESS
= 'success'
REFRESH_FOLLOWER
Refresh role: this caller waited on another's refresh.
public
mixed
REFRESH_FOLLOWER
= 'follower'
REFRESH_LEADER
Refresh role: this caller performed the refresh.
public
mixed
REFRESH_LEADER
= 'leader'
Properties
$contractReference read-only
public
string
$contractReference
$effective read-only
public
string
$effective
$requested read-only
public
string
$requested
$setting read-only
public
string
$setting
Methods
__construct()
public
__construct(string $setting, string $requested, string $effective, string $contractReference) : mixed
Parameters
- $setting : string
-
The setting's name, e.g.
decisionMemoTtlMs. - $requested : string
-
The value the caller asked for, rendered.
- $effective : string
-
The value actually in force, rendered.
- $contractReference : string
-
The §-reference for the limit, e.g.
§17.1 rule 2.