Fix FFE evaluation reason logic: SPLIT precedence, DEFAULT for waterfall catch-all, ADR-003 date window#11194
Draft
Fix FFE evaluation reason logic: SPLIT precedence, DEFAULT for waterfall catch-all, ADR-003 date window#11194
Conversation
…catch-all allocs, date window precludes STATIC (ADR-003)
BenchmarksStartupParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 60 metrics, 11 unstable metrics. Startup time reports for petclinicgantt
title petclinic - global startup overhead: candidate=1.62.0-SNAPSHOT~cd472e2d81, baseline=1.62.0-SNAPSHOT~9aedff24d2
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.058 s) : 0, 1057696
Total [baseline] (11.046 s) : 0, 11045971
Agent [candidate] (1.055 s) : 0, 1055496
Total [candidate] (11.053 s) : 0, 11052998
section appsec
Agent [baseline] (1.264 s) : 0, 1264296
Total [baseline] (11.121 s) : 0, 11120987
Agent [candidate] (1.26 s) : 0, 1259926
Total [candidate] (11.021 s) : 0, 11020927
section iast
Agent [baseline] (1.242 s) : 0, 1241743
Total [baseline] (11.339 s) : 0, 11339042
Agent [candidate] (1.243 s) : 0, 1243308
Total [candidate] (11.253 s) : 0, 11252869
section profiling
Agent [baseline] (1.194 s) : 0, 1193801
Total [baseline] (11.109 s) : 0, 11109391
Agent [candidate] (1.198 s) : 0, 1198010
Total [candidate] (10.998 s) : 0, 10997523
gantt
title petclinic - break down per module: candidate=1.62.0-SNAPSHOT~cd472e2d81, baseline=1.62.0-SNAPSHOT~9aedff24d2
dateFormat X
axisFormat %s
section tracing
crashtracking [baseline] (1.24 ms) : 0, 1240
crashtracking [candidate] (1.218 ms) : 0, 1218
BytebuddyAgent [baseline] (635.85 ms) : 0, 635850
BytebuddyAgent [candidate] (634.401 ms) : 0, 634401
AgentMeter [baseline] (29.347 ms) : 0, 29347
AgentMeter [candidate] (29.338 ms) : 0, 29338
GlobalTracer [baseline] (249.25 ms) : 0, 249250
GlobalTracer [candidate] (248.728 ms) : 0, 248728
AppSec [baseline] (32.282 ms) : 0, 32282
AppSec [candidate] (32.289 ms) : 0, 32289
Debugger [baseline] (60.51 ms) : 0, 60510
Debugger [candidate] (60.501 ms) : 0, 60501
Remote Config [baseline] (610.323 µs) : 0, 610
Remote Config [candidate] (599.671 µs) : 0, 600
Telemetry [baseline] (8.012 ms) : 0, 8012
Telemetry [candidate] (8.04 ms) : 0, 8040
Flare Poller [baseline] (4.412 ms) : 0, 4412
Flare Poller [candidate] (4.35 ms) : 0, 4350
section appsec
crashtracking [baseline] (1.222 ms) : 0, 1222
crashtracking [candidate] (1.219 ms) : 0, 1219
BytebuddyAgent [baseline] (676.892 ms) : 0, 676892
BytebuddyAgent [candidate] (673.747 ms) : 0, 673747
AgentMeter [baseline] (12.261 ms) : 0, 12261
AgentMeter [candidate] (12.236 ms) : 0, 12236
GlobalTracer [baseline] (249.234 ms) : 0, 249234
GlobalTracer [candidate] (248.282 ms) : 0, 248282
IAST [baseline] (24.376 ms) : 0, 24376
IAST [candidate] (24.103 ms) : 0, 24103
AppSec [baseline] (186.089 ms) : 0, 186089
AppSec [candidate] (187.354 ms) : 0, 187354
Debugger [baseline] (65.986 ms) : 0, 65986
Debugger [candidate] (64.837 ms) : 0, 64837
Remote Config [baseline] (591.259 µs) : 0, 591
Remote Config [candidate] (568.061 µs) : 0, 568
Telemetry [baseline] (7.864 ms) : 0, 7864
Telemetry [candidate] (7.858 ms) : 0, 7858
Flare Poller [baseline] (3.422 ms) : 0, 3422
Flare Poller [candidate] (3.46 ms) : 0, 3460
section iast
crashtracking [baseline] (1.249 ms) : 0, 1249
crashtracking [candidate] (1.236 ms) : 0, 1236
BytebuddyAgent [baseline] (818.024 ms) : 0, 818024
BytebuddyAgent [candidate] (819.087 ms) : 0, 819087
AgentMeter [baseline] (11.518 ms) : 0, 11518
AgentMeter [candidate] (11.418 ms) : 0, 11418
GlobalTracer [baseline] (239.824 ms) : 0, 239824
GlobalTracer [candidate] (240.09 ms) : 0, 240090
IAST [baseline] (29.969 ms) : 0, 29969
IAST [candidate] (29.163 ms) : 0, 29163
AppSec [baseline] (27.636 ms) : 0, 27636
AppSec [candidate] (29.385 ms) : 0, 29385
Debugger [baseline] (65.564 ms) : 0, 65564
Debugger [candidate] (64.954 ms) : 0, 64954
Remote Config [baseline] (543.376 µs) : 0, 543
Remote Config [candidate] (534.975 µs) : 0, 535
Telemetry [baseline] (7.778 ms) : 0, 7778
Telemetry [candidate] (7.807 ms) : 0, 7807
Flare Poller [baseline] (3.45 ms) : 0, 3450
Flare Poller [candidate] (3.448 ms) : 0, 3448
section profiling
crashtracking [baseline] (1.194 ms) : 0, 1194
crashtracking [candidate] (1.192 ms) : 0, 1192
BytebuddyAgent [baseline] (697.274 ms) : 0, 697274
BytebuddyAgent [candidate] (701.143 ms) : 0, 701143
AgentMeter [baseline] (9.017 ms) : 0, 9017
AgentMeter [candidate] (9.051 ms) : 0, 9051
GlobalTracer [baseline] (209.398 ms) : 0, 209398
GlobalTracer [candidate] (209.951 ms) : 0, 209951
AppSec [baseline] (32.825 ms) : 0, 32825
AppSec [candidate] (32.817 ms) : 0, 32817
Debugger [baseline] (66.009 ms) : 0, 66009
Debugger [candidate] (65.901 ms) : 0, 65901
Remote Config [baseline] (590.235 µs) : 0, 590
Remote Config [candidate] (595.591 µs) : 0, 596
Telemetry [baseline] (7.789 ms) : 0, 7789
Telemetry [candidate] (7.818 ms) : 0, 7818
Flare Poller [baseline] (3.527 ms) : 0, 3527
Flare Poller [candidate] (3.483 ms) : 0, 3483
ProfilingAgent [baseline] (94.027 ms) : 0, 94027
ProfilingAgent [candidate] (93.739 ms) : 0, 93739
Profiling [baseline] (94.595 ms) : 0, 94595
Profiling [candidate] (94.307 ms) : 0, 94307
Startup time reports for insecure-bankgantt
title insecure-bank - global startup overhead: candidate=1.62.0-SNAPSHOT~cd472e2d81, baseline=1.62.0-SNAPSHOT~9aedff24d2
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.062 s) : 0, 1062171
Total [baseline] (8.89 s) : 0, 8889993
Agent [candidate] (1.057 s) : 0, 1056709
Total [candidate] (8.845 s) : 0, 8844924
section iast
Agent [baseline] (1.233 s) : 0, 1233062
Total [baseline] (9.526 s) : 0, 9525655
Agent [candidate] (1.234 s) : 0, 1234189
Total [candidate] (9.507 s) : 0, 9507256
gantt
title insecure-bank - break down per module: candidate=1.62.0-SNAPSHOT~cd472e2d81, baseline=1.62.0-SNAPSHOT~9aedff24d2
dateFormat X
axisFormat %s
section tracing
crashtracking [baseline] (1.235 ms) : 0, 1235
crashtracking [candidate] (1.228 ms) : 0, 1228
BytebuddyAgent [baseline] (639.021 ms) : 0, 639021
BytebuddyAgent [candidate] (635.928 ms) : 0, 635928
AgentMeter [baseline] (29.603 ms) : 0, 29603
AgentMeter [candidate] (29.475 ms) : 0, 29475
GlobalTracer [baseline] (249.901 ms) : 0, 249901
GlobalTracer [candidate] (248.314 ms) : 0, 248314
AppSec [baseline] (32.49 ms) : 0, 32490
AppSec [candidate] (32.234 ms) : 0, 32234
Debugger [baseline] (59.902 ms) : 0, 59902
Debugger [candidate] (59.572 ms) : 0, 59572
Remote Config [baseline] (608.024 µs) : 0, 608
Remote Config [candidate] (620.435 µs) : 0, 620
Telemetry [baseline] (8.824 ms) : 0, 8824
Telemetry [candidate] (8.829 ms) : 0, 8829
Flare Poller [baseline] (4.313 ms) : 0, 4313
Flare Poller [candidate] (4.311 ms) : 0, 4311
section iast
crashtracking [baseline] (1.236 ms) : 0, 1236
crashtracking [candidate] (1.234 ms) : 0, 1234
BytebuddyAgent [baseline] (810.899 ms) : 0, 810899
BytebuddyAgent [candidate] (811.786 ms) : 0, 811786
AgentMeter [baseline] (11.367 ms) : 0, 11367
AgentMeter [candidate] (11.404 ms) : 0, 11404
GlobalTracer [baseline] (239.342 ms) : 0, 239342
GlobalTracer [candidate] (239.734 ms) : 0, 239734
IAST [baseline] (29.939 ms) : 0, 29939
IAST [candidate] (28.452 ms) : 0, 28452
AppSec [baseline] (26.626 ms) : 0, 26626
AppSec [candidate] (27.802 ms) : 0, 27802
Debugger [baseline] (65.819 ms) : 0, 65819
Debugger [candidate] (65.847 ms) : 0, 65847
Remote Config [baseline] (530.109 µs) : 0, 530
Remote Config [candidate] (531.19 µs) : 0, 531
Telemetry [baseline] (7.768 ms) : 0, 7768
Telemetry [candidate] (7.825 ms) : 0, 7825
Flare Poller [baseline] (3.494 ms) : 0, 3494
Flare Poller [candidate] (3.486 ms) : 0, 3486
LoadParameters
See matching parameters
SummaryFound 3 performance improvements and 3 performance regressions! Performance is the same for 12 metrics, 18 unstable metrics.
Request duration reports for petclinicgantt
title petclinic - request duration [CI 0.99] : candidate=1.62.0-SNAPSHOT~cd472e2d81, baseline=1.62.0-SNAPSHOT~9aedff24d2
dateFormat X
axisFormat %s
section baseline
no_agent (16.9 ms) : 16735, 17066
. : milestone, 16900,
appsec (18.498 ms) : 18314, 18681
. : milestone, 18498,
code_origins (18.105 ms) : 17926, 18284
. : milestone, 18105,
iast (17.908 ms) : 17729, 18086
. : milestone, 17908,
profiling (18.28 ms) : 18099, 18460
. : milestone, 18280,
tracing (18.213 ms) : 18034, 18392
. : milestone, 18213,
section candidate
no_agent (19.396 ms) : 19196, 19597
. : milestone, 19396,
appsec (19.161 ms) : 18972, 19350
. : milestone, 19161,
code_origins (18.11 ms) : 17932, 18287
. : milestone, 18110,
iast (17.952 ms) : 17770, 18134
. : milestone, 17952,
profiling (18.138 ms) : 17958, 18317
. : milestone, 18138,
tracing (17.793 ms) : 17619, 17966
. : milestone, 17793,
Request duration reports for insecure-bankgantt
title insecure-bank - request duration [CI 0.99] : candidate=1.62.0-SNAPSHOT~cd472e2d81, baseline=1.62.0-SNAPSHOT~9aedff24d2
dateFormat X
axisFormat %s
section baseline
no_agent (1.259 ms) : 1247, 1271
. : milestone, 1259,
iast (3.207 ms) : 3164, 3251
. : milestone, 3207,
iast_FULL (6.199 ms) : 6135, 6263
. : milestone, 6199,
iast_GLOBAL (3.648 ms) : 3589, 3708
. : milestone, 3648,
profiling (2.139 ms) : 2119, 2159
. : milestone, 2139,
tracing (1.917 ms) : 1902, 1933
. : milestone, 1917,
section candidate
no_agent (1.247 ms) : 1235, 1259
. : milestone, 1247,
iast (3.377 ms) : 3329, 3425
. : milestone, 3377,
iast_FULL (5.876 ms) : 5818, 5935
. : milestone, 5876,
iast_GLOBAL (3.808 ms) : 3744, 3872
. : milestone, 3808,
profiling (2.331 ms) : 2308, 2355
. : milestone, 2331,
tracing (1.859 ms) : 1844, 1874
. : milestone, 1859,
DacapoParameters
See matching parameters
SummaryFound 1 performance improvements and 0 performance regressions! Performance is the same for 11 metrics, 0 unstable metrics.
Execution time for biojavagantt
title biojava - execution time [CI 0.99] : candidate=1.62.0-SNAPSHOT~cd472e2d81, baseline=1.62.0-SNAPSHOT~9aedff24d2
dateFormat X
axisFormat %s
section baseline
no_agent (15.497 s) : 15497000, 15497000
. : milestone, 15497000,
appsec (14.749 s) : 14749000, 14749000
. : milestone, 14749000,
iast (18.215 s) : 18215000, 18215000
. : milestone, 18215000,
iast_GLOBAL (18.002 s) : 18002000, 18002000
. : milestone, 18002000,
profiling (14.977 s) : 14977000, 14977000
. : milestone, 14977000,
tracing (15.092 s) : 15092000, 15092000
. : milestone, 15092000,
section candidate
no_agent (15.612 s) : 15612000, 15612000
. : milestone, 15612000,
appsec (14.979 s) : 14979000, 14979000
. : milestone, 14979000,
iast (18.97 s) : 18970000, 18970000
. : milestone, 18970000,
iast_GLOBAL (17.96 s) : 17960000, 17960000
. : milestone, 17960000,
profiling (14.827 s) : 14827000, 14827000
. : milestone, 14827000,
tracing (15.023 s) : 15023000, 15023000
. : milestone, 15023000,
Execution time for tomcatgantt
title tomcat - execution time [CI 0.99] : candidate=1.62.0-SNAPSHOT~cd472e2d81, baseline=1.62.0-SNAPSHOT~9aedff24d2
dateFormat X
axisFormat %s
section baseline
no_agent (1.494 ms) : 1482, 1505
. : milestone, 1494,
appsec (3.872 ms) : 3649, 4095
. : milestone, 3872,
iast (2.299 ms) : 2229, 2370
. : milestone, 2299,
iast_GLOBAL (2.324 ms) : 2253, 2394
. : milestone, 2324,
profiling (2.121 ms) : 2065, 2177
. : milestone, 2121,
tracing (2.093 ms) : 2038, 2148
. : milestone, 2093,
section candidate
no_agent (1.49 ms) : 1478, 1502
. : milestone, 1490,
appsec (2.541 ms) : 2486, 2597
. : milestone, 2541,
iast (2.286 ms) : 2216, 2357
. : milestone, 2286,
iast_GLOBAL (2.33 ms) : 2259, 2401
. : milestone, 2330,
profiling (2.102 ms) : 2047, 2158
. : milestone, 2102,
tracing (2.082 ms) : 2028, 2136
. : milestone, 2082,
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
rulesandshards, the old code returnedTARGETING_MATCH. ADR-004 requires SPLIT to win when a shard contributed to the result. The newresolveReasonmethod checks rules+shards together first and returnsSPLIT.STATIC. RFC says catch-all allocations in a waterfall must returnDEFAULT. Fix:STATICis now returned only when the flag has exactly one allocation and no date-window constraints.startAt/endAtbut no rules returnedSTATIC. ADR-003 says time-gated results are not permanently stable, soSTATICis inappropriate —DEFAULTmust be returned instead. Fix:hasDateWindowcheck precludesSTATICin the sole-allocation case.The inline ternary in
resolveVariantis replaced by a call to the new private staticresolveReason(Allocation, Split, Flag)method.Test plan
./gradlew :products:feature-flagging:feature-flagging-api:testTags
tag: no release notetag: ai generated