Skip to content

fix: various custom operator conformance fixes#1950

Open
leakonvalinka wants to merge 4 commits intoopen-feature:mainfrom
open-feature-forking:fix/evaluation-edge-cases
Open

fix: various custom operator conformance fixes#1950
leakonvalinka wants to merge 4 commits intoopen-feature:mainfrom
open-feature-forking:fix/evaluation-edge-cases

Conversation

@leakonvalinka
Copy link
Copy Markdown
Member

@leakonvalinka leakonvalinka commented Apr 17, 2026

  • support V prefix in semver
  • return null on errors in semver, ends_with, and fractional (already existed on starts_with)
  • fix fractional fallback when total weight is zero

Fixes: #1942


Related:

@netlify
Copy link
Copy Markdown

netlify Bot commented Apr 17, 2026

Deploy Preview for polite-licorice-3db33c canceled.

Name Link
🔨 Latest commit 39c4820
🔍 Latest deploy log https://app.netlify.com/projects/polite-licorice-3db33c/deploys/69ea63f7e699470008649442

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 fixes an indentation issue in fractional.go and updates the semantic version parsing logic in semver.go to normalize uppercase 'V' prefixes. Additionally, a test case was added to semver_test.go to verify this normalization. I have no feedback to provide.

@leakonvalinka leakonvalinka force-pushed the fix/evaluation-edge-cases branch 2 times, most recently from 224b4d5 to 4d2eb3b Compare April 23, 2026 13:40
@leakonvalinka leakonvalinka marked this pull request as ready for review April 23, 2026 13:55
@leakonvalinka leakonvalinka requested review from a team as code owners April 23, 2026 13:55
@dosubot dosubot Bot added the size:S This PR changes 10-29 lines, ignoring generated files. label Apr 23, 2026
@toddbaert toddbaert changed the title fix: evaluation inconsistencies fix: various custom operator conformance fixes Apr 23, 2026
@dosubot dosubot Bot added size:M This PR changes 30-99 lines, ignoring generated files. and removed size:S This PR changes 10-29 lines, ignoring generated files. labels Apr 23, 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.

@leakonvalinka Thanks!

Looks great. I made some small tweaks for consistency with other implementations with this commit:

  • used a JSON "round trip" to make the $ref replace much easier (because whitespace will be predictable)
  • renamed a func (parseSemanticVersion to normalizeVersion)

I also updated the go-flagd-provider in use, which means we could update some of the excludes here (for instance, we were still using fractional-v1). I also added a comment here explaining why a lot of the exclusions are permanent and justified.

leakonvalinka and others added 4 commits April 23, 2026 14:24
Signed-off-by: Lea Konvalinka <lea.konvalinka@dynatrace.com>
Signed-off-by: Lea Konvalinka <lea.konvalinka@dynatrace.com>
Signed-off-by: Lea Konvalinka <lea.konvalinka@dynatrace.com>
…impler, method rename, tweak excludes

Signed-off-by: Todd Baert <todd.baert@dynatrace.com>
@toddbaert toddbaert force-pushed the fix/evaluation-edge-cases branch from cc4f80e to 39c4820 Compare April 23, 2026 18:24
@sonarqubecloud
Copy link
Copy Markdown

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

Labels

size:M This PR changes 30-99 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Update flagd-testbed to v3.6.2 and fix evaluation edge cases

3 participants