Skip to content

Set up feature flag framework#1110

Merged
isabeleliassen merged 55 commits into
csg-org:developmentfrom
InspiringApps:feat/feature-flag-framework
Oct 9, 2025
Merged

Set up feature flag framework#1110
isabeleliassen merged 55 commits into
csg-org:developmentfrom
InspiringApps:feat/feature-flag-framework

Conversation

@landonshumway-ia
Copy link
Copy Markdown
Collaborator

@landonshumway-ia landonshumway-ia commented Sep 24, 2025

Now that the CompactConnect project is live for users, we need a process by which we can safely roll out new features into production, and quickly rollback features should they cause unexpected issues. This adds a feature flag framework for the project, which internally works with StatSig (https://statsig.com/featureflags) to manage feature gates and check when they are enabled or disabled.

Flags are intended to be created/deleted through CDK custom resources. Flags can be set to auto enabled for an environment, meaning they will automatically be made live in the environment as they are deployed, else they will need to be manually enabled through the StatSig account console.

For checking if a feature flag is enabled, we have added a public API endpoint, where the caller passes in the flag name and any custom attributes relative to the feature, and the API returns a bool value based on if the flag is enabled or disabled. This pattern allows any of our backend services to check for feature flags.

Closes #1095

Summary by CodeRabbit

  • New Features

    • StatSig-backed feature flag system: runtime client, API endpoint to check flags, CloudFormation custom resource + management lambdas, CDK stack/constructs and deployment wiring.
  • Schema

    • Encumbrance details now include clinicalPrivilegeActionCategory and adverseActionId; added a general provider response schema.
  • Tests

    • Extensive new unit and functional tests covering feature-flag client, handlers, API and migration flows.
  • Chores

    • Dev dependency additions/pinning (StatSig, moto, cryptography); SES migrated to SESv2; docs and pipeline adjustments.

Loading
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

feature flag BE implementation

4 participants