Skip to content

docs: ADR for updated disabled flag behaviour#1919

Open
suthar26 wants to merge 6 commits into
open-feature:mainfrom
suthar26:docs/adr-disabled-flag-evaluation
Open

docs: ADR for updated disabled flag behaviour#1919
suthar26 wants to merge 6 commits into
open-feature:mainfrom
suthar26:docs/adr-disabled-flag-evaluation

Conversation

@suthar26
Copy link
Copy Markdown

@suthar26 suthar26 commented Apr 1, 2026

This PR

  • adds ADR for disabled flag behavior updates

Related Issues

Fixes #1918

Notes

Follow-up Tasks

How to test

@suthar26 suthar26 requested review from a team as code owners April 1, 2026 04:17
@netlify
Copy link
Copy Markdown

netlify Bot commented Apr 1, 2026

Deploy Preview for polite-licorice-3db33c ready!

Name Link
🔨 Latest commit 00b2a72
🔍 Latest deploy log https://app.netlify.com/projects/polite-licorice-3db33c/deploys/69f8a2711b091500089f189e
😎 Deploy Preview https://deploy-preview-1919--polite-licorice-3db33c.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.
🤖 Make changes Run an agent on this branch

To edit notification comments on pull requests, go to your Netlify project configuration.

@dosubot dosubot Bot added the size:L This PR changes 100-499 lines, ignoring generated files. label Apr 1, 2026
Copy link
Copy Markdown
Contributor

@gemini-code-assist gemini-code-assist Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request introduces an Architecture Decision Record (ADR) to change flagd's handling of disabled flags. Instead of returning an error, disabled flags will now return a successful evaluation with a reason of DISABLED and the defaultVariant value, aligning with the OpenFeature specification. Feedback on the ADR highlights several technical implementation details that need to be addressed: the logic in evaluateVariant should be simplified, and the resolve[T] function must be updated to handle DISABLED reasons for empty variants to avoid type mismatch errors. Additionally, the proposal needs to account for gRPC v1 compatibility in bulk evaluations and include specific implementation steps in the timeline for the gRPC and OFREP service layers.

Comment thread docs/architecture-decisions/disabled-flag-evaluation.md Outdated
Comment thread docs/architecture-decisions/disabled-flag-evaluation.md Outdated
Comment thread docs/architecture-decisions/disabled-flag-evaluation.md Outdated
@suthar26 suthar26 force-pushed the docs/adr-disabled-flag-evaluation branch 5 times, most recently from 73a3398 to c5259ee Compare April 8, 2026 04:34
Comment thread docs/architecture-decisions/disabled-flag-evaluation.md Outdated
@suthar26 suthar26 force-pushed the docs/adr-disabled-flag-evaluation branch from c5259ee to 31200d1 Compare April 8, 2026 15:31
@toddbaert toddbaert changed the title docs: add disabled flag behaviour docs: ADR for updated disabled flag behaviour Apr 9, 2026
Comment thread docs/architecture-decisions/disabled-flag-evaluation.md Outdated
Copy link
Copy Markdown
Member

@toddbaert toddbaert left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewed focusing on in-process provider coverage, OFREP spec alignment details, and format.

Comment thread docs/architecture-decisions/disabled-flag-evaluation.md
Comment thread docs/architecture-decisions/disabled-flag-evaluation.md
Comment thread docs/architecture-decisions/disabled-flag-evaluation.md Outdated
Comment thread docs/architecture-decisions/disabled-flag-evaluation.md
@toddbaert toddbaert self-requested a review April 10, 2026 17:31
Copy link
Copy Markdown
Member

@toddbaert toddbaert left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this is a bit of a blocker for me; it seems a bit incoherent. Maybe I'm missing something though or not thinking about it correctly. I think if this was changed this would be an easy approval for me. Please help me understand if I'm off-base 😅

@suthar26 suthar26 force-pushed the docs/adr-disabled-flag-evaluation branch 3 times, most recently from 9dcffbd to a4f89fb Compare April 15, 2026 18:55
@suthar26 suthar26 requested a review from toddbaert April 23, 2026 05:33
@suthar26 suthar26 force-pushed the docs/adr-disabled-flag-evaluation branch from a4f89fb to 7b4902b Compare April 23, 2026 19:11
Comment thread docs/architecture-decisions/disabled-flag-evaluation.md Outdated
Comment thread docs/architecture-decisions/disabled-flag-evaluation.md Outdated
Comment thread docs/architecture-decisions/disabled-flag-evaluation.md Outdated
Comment thread docs/architecture-decisions/disabled-flag-evaluation.md Outdated
Comment thread docs/architecture-decisions/disabled-flag-evaluation.md Outdated
@suthar26 suthar26 requested a review from beeme1mr April 27, 2026 16:14
@suthar26 suthar26 force-pushed the docs/adr-disabled-flag-evaluation branch from 69abc6e to ab05761 Compare April 27, 2026 17:47
@dosubot dosubot Bot added size:M This PR changes 30-99 lines, ignoring generated files. size:L This PR changes 100-499 lines, ignoring generated files. and removed size:L This PR changes 100-499 lines, ignoring generated files. size:M This PR changes 30-99 lines, ignoring generated files. labels Apr 28, 2026
Copy link
Copy Markdown
Member

@toddbaert toddbaert left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

All my concerns, especially the one referenced here, have been addressed. I think this is a good idea, and recent improvements in OFREP and flagd make it more feasible than it once was.

I think this adds value to flagd as a solution, so I support it.

I would love consideration from more non-Dynatracers, particularly @cupofcat , @juanparadox , @askpt or others.

Maybe also @oxddr

suthar26 added 6 commits May 4, 2026 08:43
Signed-off-by: Parth Suthar <parth.suthar@dynatrace.com>
Signed-off-by: Parth Suthar <parth.suthar@dynatrace.com>
Signed-off-by: Parth Suthar <parth.suthar@dynatrace.com>
- Clarify variant/value omission semantics across languages
- Rename Timeline to Implementation steps grouped by phase
- Add Versioning and migration section
- Resolve open questions on dashboards, versioning, and FlagDisabledErrorCode removal
- Fix MD029 ordered list numbering

Signed-off-by: Parth Suthar <parth.suthar@dynatrace.com>
Signed-off-by: Parth Suthar <parth.suthar@dynatrace.com>
Signed-off-by: Parth Suthar <parth.suthar@dynatrace.com>
@suthar26 suthar26 force-pushed the docs/adr-disabled-flag-evaluation branch from df03e2e to 00b2a72 Compare May 4, 2026 13:43
@sonarqubecloud
Copy link
Copy Markdown

sonarqubecloud Bot commented May 4, 2026

@toddbaert toddbaert requested a review from oxddr May 8, 2026 19:23
@oxddr
Copy link
Copy Markdown

oxddr commented May 11, 2026

I'd be happy to have a look, but I won't be able to do so earlier than next week.

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

Labels

size:L This PR changes 100-499 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[FEATURE] Treat disabled flag evaluation as success with reason=DISABLED

8 participants