Skip to content

Commit 6938df9

Browse files
committed
docs: clarify evaluation and resolution details
1 parent ac62b5d commit 6938df9

1 file changed

Lines changed: 8 additions & 3 deletions

File tree

specification/types.md

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ A language primitive for representing a date and time, optionally including time
3232

3333
### Evaluation Details
3434

35-
A structure representing the result of the [flag evaluation process](./glossary.md#evaluating-flag-values), and made available in the [detailed flag resolution functions](./sections/01-flag-evaluation.md#14-detailed-flag-evaluation), containing the following fields:
35+
A structure representing the result of the [flag evaluation process](./glossary.md#evaluating-flag-values), and made available in the [detailed flag evaluation functions](./sections/01-flag-evaluation.md#14-detailed-flag-evaluation), containing the following fields:
3636

3737
- flag key (string, required)
3838
- value (boolean | string | number | structure, required)
@@ -47,6 +47,10 @@ A structure representing the result of the [flag evaluation process](./glossary.
4747
> For example, in the case of an unsuccessful evaluation, `error code`, `reason`, and `error message` will be set, and `variant` will not.
4848
> If the type system of the implementation supports the expression of such constraints, consider defining them.
4949
50+
> [!NOTE]
51+
> `evaluation details` are the application-facing result returned from detailed flag evaluation.
52+
> They include the `flag key` supplied to the client, the evaluated value, and metadata derived from the provider's `resolution details` when available.
53+
5054
### Resolution Details
5155

5256
A structure which contains a subset of the fields defined in the `evaluation details`, representing the result of the provider's [flag resolution process](./glossary.md#resolving-flag-values), including:
@@ -97,8 +101,9 @@ let myReason = Reason::Other("my-reason".to_string());
97101
```
98102

99103
> [!NOTE]
100-
> The `resolution details` structure is not exposed to the Application Author.
101-
> It defines the data which Provider Authors must return when resolving the value of flags.
104+
> `resolution details` are the provider-to-SDK return shape.
105+
> Provider Authors return this structure to the SDK when resolving a flag value.
106+
> Application Authors do not receive the actual `resolution details` object directly; instead, detailed evaluation methods return an `evaluation details` object built from the resolution result plus SDK-level fields such as `flag key` and default or error handling.
102107
103108
### Error Code
104109

0 commit comments

Comments
 (0)