Skip to content

feat(feature-flags): generalize driver-side cache - #974

Draft
cathleeny wants to merge 3 commits into
mainfrom
cathleeny/general-driver-flags
Draft

cathleeny wants to merge 3 commits into
mainfrom
cathleeny/general-driver-flags

Conversation

@cathleeny

Copy link
Copy Markdown
Collaborator

What type of PR is this?

  • Refactor
  • Feature

Description

Generalize the existing feature-flag cache for driver-owned flags on the Thrift path and before kernel/session initialization, once authenticated transport is available.

  • Share raw flag values by workspace ID, with normalized host as a fallback; keep credentials and HTTP clients caller-owned.
  • Add typed Boolean, int32, int64, double, string, and string-list getters. Integer validation uses standard-library fixed-width types.
  • Replace the old generic getter with the Boolean getter in telemetry, preserving explicit opt-in/out behavior.
  • Keep the blocking initial fetch and background refresh, retain stale values on refresh failures, and avoid queuing duplicate refreshes.

No kernel version bump, new kernel-selection flag, or automatic pre-kernel GET is included.

How is this tested?

  • Unit tests
  • Full non-real-kernel unit suite: 1,032 passed, 5 skipped, 1 deselected; 351 subtests passed.
  • Focused telemetry/feature-flag suite: 58 passed.
  • Black and mypy checks passed.
  • Covers all six types, defaults/range validation, workspace sharing, and caller-owned refresh/authentication.

Signed-off-by: Cathleen Yan <58714163+cathleeny@users.noreply.github.com>
Signed-off-by: Cathleen Yan <58714163+cathleeny@users.noreply.github.com>
Signed-off-by: Cathleen Yan <58714163+cathleeny@users.noreply.github.com>

This branch was successfully deployed

1 active deployment
azure-prod — 9fda19d2 Deployed Oct 7, 2026 by cathleeny via followup #969
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.

1 participant