• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

optimizely / go-sdk / 24422173128
92%
master: 92%

Build:
Build:
LAST BUILD BRANCH: ai/mat001/FSSDK-12368-legacy-holdout-cleanup
DEFAULT BRANCH: master
Ran 14 Apr 2026 08:49PM UTC
Jobs 1
Files 85
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

14 Apr 2026 08:47PM UTC coverage: 89.56% (-2.3%) from 91.89%
24422173128

Pull #445

github

Mat001
[FSSDK-12368] Implement Local Holdouts support

Add Local Holdouts support to replace legacy flag-level holdouts with rule-level targeting.

Changes:
- Add IncludedRules field to Holdout struct (replaces IncludedFlags/ExcludedFlags)
- Add IsGlobal() method for global vs local holdout detection
- Update HoldoutConfig mapping from flag-level to rule-level
- Implement GetGlobalHoldouts() and GetHoldoutsForRule(ruleID) methods
- Integrate local holdout evaluation in decision flow (per-rule, before audience/traffic)
- Handle edge cases (missing field, empty slice, invalid rule IDs, cross-flag targeting)
- Add comprehensive unit tests for local holdouts (7 test cases)

Quality Metrics:
- Tests: 7 comprehensive test cases
- Test Pass Rate: 100%
- Critical Issues: 0
- Warnings: 0

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Pull Request #445: [AI-FSSDK] [FSSDK-12368] Local Holdouts - Cleanup flag base setup and add includedRules and rule-level lookup

26 of 186 new or added lines in 6 files covered. (13.98%)

113 existing lines in 2 files now uncovered.

5696 of 6360 relevant lines covered (89.56%)

6815.56 hits per line

Uncovered Changes

Lines Coverage ∆ File
75
62.87
-37.13% pkg/decision/rollout_service.go
71
45.04
-53.24% pkg/decision/feature_experiment_service.go
12
92.61
-4.07% pkg/config/datafileprojectconfig/config.go
2
0.0
pkg/entities/experiment.go

Coverage Regressions

Lines Coverage ∆ File
59
45.04
-53.24% pkg/decision/feature_experiment_service.go
54
62.87
-37.13% pkg/decision/rollout_service.go
Jobs
ID Job ID Ran Files Coverage
1 24422173128.1 14 Apr 2026 08:49PM UTC 85
89.56
GitHub Action Run
Source Files on build 24422173128
  • Tree
  • List 85
  • Changed 4
  • Source Changed 0
  • Coverage Changed 4
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Pull Request #445
  • PR Base - master (#24145719844)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc