Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[FEATURE] Implement Tracking for js server #1033

Open
toddbaert opened this issue Oct 7, 2024 · 0 comments
Open

[FEATURE] Implement Tracking for js server #1033

toddbaert opened this issue Oct 7, 2024 · 0 comments
Assignees
Labels
enhancement New feature or request

Comments

@toddbaert
Copy link
Member

toddbaert commented Oct 7, 2024

Implement tracking as per spec: open-feature/spec@cd99c35

Functional requirements:

  • implement all the features described here

Non functional requirements:

  • use as many existing abstractions and implementations as possible
    • ie: tracking event details should likely use similar underlying functionality to evaluation context / structure
  • provider interface(s) are modified to optionally support tracking; not all providers will support it
  • associated testing and README entry (see markdown snippet below)
  • no breaking changes

README addition (be careful to correctly link to #hooks and #providers and update the code snippet for the language in question

### Tracking

The tracking API allows you to use OpenFeature abstractions and objects to associate user actions with feature flag evaluations.
This is essential for robust experimentation powered by feature flags.
For example, a flag enhancing the appearance of a UI component might drive user engagement to a new feature; to test this hypothesis, telemetry collected by a [hook](#hooks) or [provider](#providers) can be associated with telemetry reported in the client's `track` function.

```{language-in-question}
// flag is evaluated
client.getBooleanFlag('new-component-style');

Note that some providers may not support tracking; check the documentation for your provider for more information.

...

// new feature is used and "track" function is called 
useNewFeature();
client.track('new-feature-used');
@toddbaert toddbaert added the enhancement New feature or request label Oct 7, 2024
@toddbaert toddbaert self-assigned this Oct 7, 2024
@toddbaert toddbaert added good first issue Good for newcomers and removed good first issue Good for newcomers labels Oct 7, 2024
@beeme1mr beeme1mr changed the title [FEATURE] Implement Tracking [FEATURE] Implement Tracking for js server Oct 7, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant