Skip to content

Commit

Permalink
rephrase requirements based on feedback
Browse files Browse the repository at this point in the history
Signed-off-by: Michael Beemer <beeme1mr@users.noreply.github.com>
  • Loading branch information
beeme1mr committed Dec 4, 2023
1 parent 072084f commit 9a4e4e4
Show file tree
Hide file tree
Showing 2 changed files with 8 additions and 7 deletions.
4 changes: 2 additions & 2 deletions specification.json
Original file line number Diff line number Diff line change
Expand Up @@ -530,7 +530,7 @@
{
"id": "Conditional Requirement 3.2.2.4",
"machine_id": "conditional_requirement_3_2_2_4",
"content": "The API MUST have a a mechanism to manage `evaluation context`.",
"content": "The API MUST have a a mechanism to manage `evaluation context` for an associated name.",
"RFC 2119 keyword": "MUST",
"children": []
}
Expand Down Expand Up @@ -559,7 +559,7 @@
{
"id": "Requirement 3.2.4.2",
"machine_id": "requirement_3_2_4_2",
"content": "When the `evaluation context` for a named provider is set, the `on context changed` handler MUST only run on the corresponding provider.",
"content": "When the `evaluation context` for a specific provider is set, the `on context changed` handler MUST only run on the associated provider.",
"RFC 2119 keyword": "MUST",
"children": []
}
Expand Down
11 changes: 6 additions & 5 deletions specification/sections/03-evaluation-context.md
Original file line number Diff line number Diff line change
Expand Up @@ -81,16 +81,17 @@ In the static-context paradigm, context is global. The client and invocation can

> The API **MUST** have a method for setting `evaluation context` for a provider bound to a named client.
In the static-context paradigm, provider specific context can be defined using the name defined during provider registration.
In the static-context paradigm, provider specific context can be set using the associated name.
The global context is used if there's no matching provider specific context.

See [setting a provider](./01-flag-evaluation.md#setting-a-provider) for details.

##### Conditional Requirement 3.2.2.4

> The API **MUST** have a a mechanism to manage `evaluation context`.
> The API **MUST** have a a mechanism to manage `evaluation context` for an associated name.
In the static-context paradigm, it must be possible to create, read, and remove provider specific context.
In the static-context paradigm, it must be possible to create and remove provider-specific context.
See [setting a provider](./01-flag-evaluation.md#setting-a-provider) for details.

#### Requirement 3.2.3

Expand Down Expand Up @@ -125,6 +126,6 @@ The SDK implementation must run the `on context changed` handler on all register

##### Requirement 3.2.4.2

> When the `evaluation context` for a named provider is set, the `on context changed` handler **MUST** only run on the corresponding provider.
> When the `evaluation context` for a specific provider is set, the `on context changed` handler **MUST** only run on the associated provider.
The SDK implementation must run the `on context changed` handler on only the specified provider that use the provider scoped `evaluation context` whenever it's mutated.
The SDK implementation must run the `on context changed` handler only on the provider that's scoped to the mutated `evaluation context`.

0 comments on commit 9a4e4e4

Please sign in to comment.