Skip to content

Conversation

@mcculls
Copy link
Contributor

@mcculls mcculls commented Oct 24, 2025

... and decouple it from the ContextStore API

Motivation

Lower maintenance cost, allows ContextStore API to evolve separately.

Contributor Checklist

Jira ticket: [PROJ-IDENT]

@datadog-datadog-prod-us1
Copy link
Contributor

datadog-datadog-prod-us1 bot commented Oct 25, 2025

🎯 Code Coverage
Patch Coverage: 100.00%
Total Coverage: 59.66% (-0.02%)

View detailed report

This comment will be updated automatically if new data arrives.
🔗 Commit SHA: 6a8ec87 | Docs | Was this helpful? Give us feedback!

@pr-commenter
Copy link

pr-commenter bot commented Oct 25, 2025

Benchmarks

Startup

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master mcculls/simplify-instance-store-api
git_commit_date 1761576813 1761577331
git_commit_sha b42a4cb 6a8ec87
release_version 1.55.0-SNAPSHOT~b42a4cb149 1.55.0-SNAPSHOT~6a8ec871a0
See matching parameters
Baseline Candidate
application insecure-bank insecure-bank
ci_job_date 1761579213 1761579213
ci_job_id 1199794976 1199794976
ci_pipeline_id 80386658 80386658
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_version Linux runner-zfyrx7zua-project-304-concurrent-0-1nms7w2c 6.8.0-1031-aws #33~22.04.1-Ubuntu SMP Thu Jun 26 14:22:30 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux Linux runner-zfyrx7zua-project-304-concurrent-0-1nms7w2c 6.8.0-1031-aws #33~22.04.1-Ubuntu SMP Thu Jun 26 14:22:30 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux
module Agent Agent
parent None None

Summary

Found 0 performance improvements and 0 performance regressions! Performance is the same for 53 metrics, 12 unstable metrics.

Startup time reports for insecure-bank
gantt
    title insecure-bank - global startup overhead: candidate=1.55.0-SNAPSHOT~6a8ec871a0, baseline=1.55.0-SNAPSHOT~b42a4cb149

    dateFormat X
    axisFormat %s
section tracing
Agent [baseline] (1.033 s) : 0, 1032601
Total [baseline] (8.69 s) : 0, 8689603
Agent [candidate] (1.03 s) : 0, 1029719
Total [candidate] (8.66 s) : 0, 8660242
section iast
Agent [baseline] (1.162 s) : 0, 1162328
Total [baseline] (9.371 s) : 0, 9370703
Agent [candidate] (1.162 s) : 0, 1162421
Total [candidate] (9.405 s) : 0, 9404773
Loading
  • baseline results
Module Variant Duration Δ tracing
Agent tracing 1.033 s -
Agent iast 1.162 s 129.727 ms (12.6%)
Total tracing 8.69 s -
Total iast 9.371 s 681.1 ms (7.8%)
  • candidate results
Module Variant Duration Δ tracing
Agent tracing 1.03 s -
Agent iast 1.162 s 132.702 ms (12.9%)
Total tracing 8.66 s -
Total iast 9.405 s 744.531 ms (8.6%)
gantt
    title insecure-bank - break down per module: candidate=1.55.0-SNAPSHOT~6a8ec871a0, baseline=1.55.0-SNAPSHOT~b42a4cb149

    dateFormat X
    axisFormat %s
section tracing
crashtracking [baseline] (1.472 ms) : 0, 1472
crashtracking [candidate] (1.453 ms) : 0, 1453
BytebuddyAgent [baseline] (704.304 ms) : 0, 704304
BytebuddyAgent [candidate] (701.096 ms) : 0, 701096
GlobalTracer [baseline] (245.503 ms) : 0, 245503
GlobalTracer [candidate] (245.232 ms) : 0, 245232
AppSec [baseline] (32.12 ms) : 0, 32120
AppSec [candidate] (32.442 ms) : 0, 32442
Debugger [baseline] (6.377 ms) : 0, 6377
Debugger [candidate] (6.393 ms) : 0, 6393
Remote Config [baseline] (680.286 µs) : 0, 680
Remote Config [candidate] (673.274 µs) : 0, 673
Telemetry [baseline] (16.709 ms) : 0, 16709
Telemetry [candidate] (13.997 ms) : 0, 13997
Flare Poller [baseline] (4.192 ms) : 0, 4192
Flare Poller [candidate] (7.298 ms) : 0, 7298
section iast
crashtracking [baseline] (1.472 ms) : 0, 1472
crashtracking [candidate] (1.461 ms) : 0, 1461
BytebuddyAgent [baseline] (824.477 ms) : 0, 824477
BytebuddyAgent [candidate] (824.852 ms) : 0, 824852
GlobalTracer [baseline] (233.887 ms) : 0, 233887
GlobalTracer [candidate] (234.214 ms) : 0, 234214
AppSec [baseline] (30.821 ms) : 0, 30821
AppSec [candidate] (28.871 ms) : 0, 28871
Debugger [baseline] (6.062 ms) : 0, 6062
Debugger [candidate] (6.074 ms) : 0, 6074
Remote Config [baseline] (605.069 µs) : 0, 605
Remote Config [candidate] (600.183 µs) : 0, 600
Telemetry [baseline] (8.349 ms) : 0, 8349
Telemetry [candidate] (8.441 ms) : 0, 8441
Flare Poller [baseline] (4.148 ms) : 0, 4148
Flare Poller [candidate] (4.128 ms) : 0, 4128
IAST [baseline] (31.182 ms) : 0, 31182
IAST [candidate] (32.569 ms) : 0, 32569
Loading
Startup time reports for petclinic
gantt
    title petclinic - global startup overhead: candidate=1.55.0-SNAPSHOT~6a8ec871a0, baseline=1.55.0-SNAPSHOT~b42a4cb149

    dateFormat X
    axisFormat %s
section tracing
Agent [baseline] (1.037 s) : 0, 1037372
Total [baseline] (10.892 s) : 0, 10892369
Agent [candidate] (1.033 s) : 0, 1032585
Total [candidate] (10.814 s) : 0, 10814013
section appsec
Agent [baseline] (1.204 s) : 0, 1204254
Total [baseline] (10.9 s) : 0, 10900365
Agent [candidate] (1.213 s) : 0, 1213322
Total [candidate] (11.003 s) : 0, 11003447
section iast
Agent [baseline] (1.172 s) : 0, 1172069
Total [baseline] (11.199 s) : 0, 11198878
Agent [candidate] (1.163 s) : 0, 1163310
Total [candidate] (11.116 s) : 0, 11115951
section profiling
Agent [baseline] (1.174 s) : 0, 1173959
Total [baseline] (10.954 s) : 0, 10953559
Agent [candidate] (1.181 s) : 0, 1181404
Total [candidate] (10.888 s) : 0, 10887545
Loading
  • baseline results
Module Variant Duration Δ tracing
Agent tracing 1.037 s -
Agent appsec 1.204 s 166.882 ms (16.1%)
Agent iast 1.172 s 134.697 ms (13.0%)
Agent profiling 1.174 s 136.587 ms (13.2%)
Total tracing 10.892 s -
Total appsec 10.9 s 7.996 ms (0.1%)
Total iast 11.199 s 306.509 ms (2.8%)
Total profiling 10.954 s 61.191 ms (0.6%)
  • candidate results
Module Variant Duration Δ tracing
Agent tracing 1.033 s -
Agent appsec 1.213 s 180.737 ms (17.5%)
Agent iast 1.163 s 130.724 ms (12.7%)
Agent profiling 1.181 s 148.819 ms (14.4%)
Total tracing 10.814 s -
Total appsec 11.003 s 189.433 ms (1.8%)
Total iast 11.116 s 301.938 ms (2.8%)
Total profiling 10.888 s 73.532 ms (0.7%)
gantt
    title petclinic - break down per module: candidate=1.55.0-SNAPSHOT~6a8ec871a0, baseline=1.55.0-SNAPSHOT~b42a4cb149

    dateFormat X
    axisFormat %s
section tracing
crashtracking [baseline] (1.473 ms) : 0, 1473
crashtracking [candidate] (1.468 ms) : 0, 1468
BytebuddyAgent [baseline] (707.389 ms) : 0, 707389
BytebuddyAgent [candidate] (704.164 ms) : 0, 704164
GlobalTracer [baseline] (246.719 ms) : 0, 246719
GlobalTracer [candidate] (245.387 ms) : 0, 245387
AppSec [baseline] (32.46 ms) : 0, 32460
AppSec [candidate] (32.322 ms) : 0, 32322
Debugger [baseline] (6.418 ms) : 0, 6418
Debugger [candidate] (6.368 ms) : 0, 6368
Remote Config [baseline] (682.476 µs) : 0, 682
Remote Config [candidate] (683.026 µs) : 0, 683
Telemetry [baseline] (14.383 ms) : 0, 14383
Telemetry [candidate] (14.403 ms) : 0, 14403
Flare Poller [baseline] (6.458 ms) : 0, 6458
Flare Poller [candidate] (6.49 ms) : 0, 6490
section appsec
crashtracking [baseline] (1.468 ms) : 0, 1468
crashtracking [candidate] (1.475 ms) : 0, 1475
BytebuddyAgent [baseline] (727.346 ms) : 0, 727346
BytebuddyAgent [candidate] (732.647 ms) : 0, 732647
GlobalTracer [baseline] (235.818 ms) : 0, 235818
GlobalTracer [candidate] (238.12 ms) : 0, 238120
AppSec [baseline] (174.535 ms) : 0, 174535
AppSec [candidate] (175.416 ms) : 0, 175416
Debugger [baseline] (5.953 ms) : 0, 5953
Debugger [candidate] (5.959 ms) : 0, 5959
Remote Config [baseline] (629.413 µs) : 0, 629
Remote Config [candidate] (628.706 µs) : 0, 629
Telemetry [baseline] (8.533 ms) : 0, 8533
Telemetry [candidate] (8.496 ms) : 0, 8496
Flare Poller [baseline] (3.899 ms) : 0, 3899
Flare Poller [candidate] (3.955 ms) : 0, 3955
IAST [baseline] (24.906 ms) : 0, 24906
IAST [candidate] (25.291 ms) : 0, 25291
section iast
crashtracking [baseline] (1.482 ms) : 0, 1482
crashtracking [candidate] (1.465 ms) : 0, 1465
BytebuddyAgent [baseline] (831.785 ms) : 0, 831785
BytebuddyAgent [candidate] (825.272 ms) : 0, 825272
GlobalTracer [baseline] (235.698 ms) : 0, 235698
GlobalTracer [candidate] (234.554 ms) : 0, 234554
AppSec [baseline] (31.909 ms) : 0, 31909
AppSec [candidate] (28.038 ms) : 0, 28038
Debugger [baseline] (6.199 ms) : 0, 6199
Debugger [candidate] (6.161 ms) : 0, 6161
Remote Config [baseline] (615.656 µs) : 0, 616
Remote Config [candidate] (591.672 µs) : 0, 592
Telemetry [baseline] (8.448 ms) : 0, 8448
Telemetry [candidate] (8.37 ms) : 0, 8370
Flare Poller [baseline] (4.173 ms) : 0, 4173
Flare Poller [candidate] (4.147 ms) : 0, 4147
IAST [baseline] (30.18 ms) : 0, 30180
IAST [candidate] (33.449 ms) : 0, 33449
section profiling
crashtracking [baseline] (1.453 ms) : 0, 1453
crashtracking [candidate] (1.456 ms) : 0, 1456
BytebuddyAgent [baseline] (726.274 ms) : 0, 726274
BytebuddyAgent [candidate] (731.287 ms) : 0, 731287
GlobalTracer [baseline] (220.499 ms) : 0, 220499
GlobalTracer [candidate] (221.928 ms) : 0, 221928
AppSec [baseline] (32.496 ms) : 0, 32496
AppSec [candidate] (32.561 ms) : 0, 32561
Debugger [baseline] (13.185 ms) : 0, 13185
Debugger [candidate] (13.232 ms) : 0, 13232
Remote Config [baseline] (719.011 µs) : 0, 719
Remote Config [candidate] (705.918 µs) : 0, 706
Telemetry [baseline] (9.869 ms) : 0, 9869
Telemetry [candidate] (9.856 ms) : 0, 9856
Flare Poller [baseline] (4.11 ms) : 0, 4110
Flare Poller [candidate] (4.176 ms) : 0, 4176
ProfilingAgent [baseline] (109.861 ms) : 0, 109861
ProfilingAgent [candidate] (110.497 ms) : 0, 110497
Profiling [baseline] (110.464 ms) : 0, 110464
Profiling [candidate] (111.101 ms) : 0, 111101
Loading

Load

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master mcculls/simplify-instance-store-api
git_commit_date 1761576813 1761577331
git_commit_sha b42a4cb 6a8ec87
release_version 1.55.0-SNAPSHOT~b42a4cb149 1.55.0-SNAPSHOT~6a8ec871a0
See matching parameters
Baseline Candidate
application insecure-bank insecure-bank
ci_job_date 1761578874 1761578874
ci_job_id 1199794978 1199794978
ci_pipeline_id 80386658 80386658
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_version Linux runner-zfyrx7zua-project-304-concurrent-0-zd5zhs1q 6.8.0-1031-aws #33~22.04.1-Ubuntu SMP Thu Jun 26 14:22:30 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux Linux runner-zfyrx7zua-project-304-concurrent-0-zd5zhs1q 6.8.0-1031-aws #33~22.04.1-Ubuntu SMP Thu Jun 26 14:22:30 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux

Summary

Found 2 performance improvements and 2 performance regressions! Performance is the same for 8 metrics, 12 unstable metrics.

scenario Δ mean http_req_duration Δ mean throughput candidate mean http_req_duration candidate mean throughput baseline mean http_req_duration baseline mean throughput
scenario:load:insecure-bank:no_agent:high_load better
[-297.442µs; -182.752µs] or [-6.711%; -4.123%]
unstable
[-61.504op/s; +177.941op/s] or [-5.938%; +17.178%]
4.192ms 1094.062op/s 4.432ms 1035.844op/s
scenario:load:insecure-bank:iast_GLOBAL:high_load worse
[+212.257µs; +623.372µs] or [+2.027%; +5.953%]
unstable
[-67.631op/s; +34.068op/s] or [-15.235%; +7.675%]
10.889ms 427.125op/s 10.471ms 443.906op/s
scenario:load:petclinic:tracing:high_load worse
[+1.650ms; +2.403ms] or [+3.962%; +5.770%]
unstable
[-12.838op/s; +2.313op/s] or [-11.427%; +2.059%]
43.682ms 107.088op/s 41.655ms 112.350op/s
scenario:load:petclinic:profiling:high_load better
[-2.324ms; -1.369ms] or [-4.884%; -2.878%]
unstable
[-3.259op/s; +11.034op/s] or [-3.310%; +11.206%]
45.734ms 102.350op/s 47.580ms 98.463op/s
Request duration reports for insecure-bank
gantt
    title insecure-bank - request duration [CI 0.99] : candidate=1.55.0-SNAPSHOT~6a8ec871a0, baseline=1.55.0-SNAPSHOT~b42a4cb149
    dateFormat X
    axisFormat %s
section baseline
no_agent (4.432 ms) : 4374, 4491
.   : milestone, 4432,
iast (9.724 ms) : 9560, 9888
.   : milestone, 9724,
iast_FULL (14.103 ms) : 13817, 14388
.   : milestone, 14103,
iast_GLOBAL (10.471 ms) : 10285, 10657
.   : milestone, 10471,
profiling (9.013 ms) : 8864, 9162
.   : milestone, 9013,
tracing (7.638 ms) : 7520, 7755
.   : milestone, 7638,
section candidate
no_agent (4.192 ms) : 4145, 4240
.   : milestone, 4192,
iast (9.775 ms) : 9612, 9938
.   : milestone, 9775,
iast_FULL (14.614 ms) : 14322, 14906
.   : milestone, 14614,
iast_GLOBAL (10.889 ms) : 10693, 11085
.   : milestone, 10889,
profiling (9.016 ms) : 8876, 9156
.   : milestone, 9016,
tracing (7.658 ms) : 7548, 7767
.   : milestone, 7658,
Loading
  • baseline results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 4.432 ms [4.374 ms, 4.491 ms] -
iast 9.724 ms [9.56 ms, 9.888 ms] 5.292 ms (119.4%)
iast_FULL 14.103 ms [13.817 ms, 14.388 ms] 9.67 ms (218.2%)
iast_GLOBAL 10.471 ms [10.285 ms, 10.657 ms] 6.038 ms (136.2%)
profiling 9.013 ms [8.864 ms, 9.162 ms] 4.58 ms (103.3%)
tracing 7.638 ms [7.52 ms, 7.755 ms] 3.205 ms (72.3%)
  • candidate results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 4.192 ms [4.145 ms, 4.24 ms] -
iast 9.775 ms [9.612 ms, 9.938 ms] 5.583 ms (133.2%)
iast_FULL 14.614 ms [14.322 ms, 14.906 ms] 10.422 ms (248.6%)
iast_GLOBAL 10.889 ms [10.693 ms, 11.085 ms] 6.696 ms (159.7%)
profiling 9.016 ms [8.876 ms, 9.156 ms] 4.824 ms (115.1%)
tracing 7.658 ms [7.548 ms, 7.767 ms] 3.465 ms (82.7%)
Request duration reports for petclinic
gantt
    title petclinic - request duration [CI 0.99] : candidate=1.55.0-SNAPSHOT~6a8ec871a0, baseline=1.55.0-SNAPSHOT~b42a4cb149
    dateFormat X
    axisFormat %s
section baseline
no_agent (35.948 ms) : 35662, 36233
.   : milestone, 35948,
appsec (46.62 ms) : 46211, 47030
.   : milestone, 46620,
code_origins (43.502 ms) : 43131, 43874
.   : milestone, 43502,
iast (44.857 ms) : 44454, 45259
.   : milestone, 44857,
profiling (47.58 ms) : 47107, 48054
.   : milestone, 47580,
tracing (41.655 ms) : 41314, 41996
.   : milestone, 41655,
section candidate
no_agent (36.283 ms) : 35999, 36566
.   : milestone, 36283,
appsec (46.569 ms) : 46158, 46980
.   : milestone, 46569,
code_origins (44.572 ms) : 44186, 44959
.   : milestone, 44572,
iast (45.426 ms) : 45025, 45827
.   : milestone, 45426,
profiling (45.734 ms) : 45323, 46145
.   : milestone, 45734,
tracing (43.682 ms) : 43324, 44041
.   : milestone, 43682,
Loading
  • baseline results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 35.948 ms [35.662 ms, 36.233 ms] -
appsec 46.62 ms [46.211 ms, 47.03 ms] 10.673 ms (29.7%)
code_origins 43.502 ms [43.131 ms, 43.874 ms] 7.555 ms (21.0%)
iast 44.857 ms [44.454 ms, 45.259 ms] 8.909 ms (24.8%)
profiling 47.58 ms [47.107 ms, 48.054 ms] 11.633 ms (32.4%)
tracing 41.655 ms [41.314 ms, 41.996 ms] 5.708 ms (15.9%)
  • candidate results
Variant Request duration [CI 0.99] Δ no_agent
no_agent 36.283 ms [35.999 ms, 36.566 ms] -
appsec 46.569 ms [46.158 ms, 46.98 ms] 10.287 ms (28.4%)
code_origins 44.572 ms [44.186 ms, 44.959 ms] 8.29 ms (22.8%)
iast 45.426 ms [45.025 ms, 45.827 ms] 9.144 ms (25.2%)
profiling 45.734 ms [45.323 ms, 46.145 ms] 9.451 ms (26.0%)
tracing 43.682 ms [43.324 ms, 44.041 ms] 7.4 ms (20.4%)

Dacapo

Parameters

Baseline Candidate
baseline_or_candidate baseline candidate
git_branch master mcculls/simplify-instance-store-api
git_commit_date 1761576813 1761577331
git_commit_sha b42a4cb 6a8ec87
release_version 1.55.0-SNAPSHOT~b42a4cb149 1.55.0-SNAPSHOT~6a8ec871a0
See matching parameters
Baseline Candidate
application biojava biojava
ci_job_date 1761579373 1761579373
ci_job_id 1199794980 1199794980
ci_pipeline_id 80386658 80386658
cpu_model Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz
kernel_version Linux runner-zfyrx7zua-project-304-concurrent-0-4dzl9e2f 6.8.0-1031-aws #33~22.04.1-Ubuntu SMP Thu Jun 26 14:22:30 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux Linux runner-zfyrx7zua-project-304-concurrent-0-4dzl9e2f 6.8.0-1031-aws #33~22.04.1-Ubuntu SMP Thu Jun 26 14:22:30 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux

Summary

Found 0 performance improvements and 0 performance regressions! Performance is the same for 11 metrics, 1 unstable metrics.

Execution time for tomcat
gantt
    title tomcat - execution time [CI 0.99] : candidate=1.55.0-SNAPSHOT~6a8ec871a0, baseline=1.55.0-SNAPSHOT~b42a4cb149
    dateFormat X
    axisFormat %s
section baseline
no_agent (1.479 ms) : 1467, 1491
.   : milestone, 1479,
appsec (3.644 ms) : 3433, 3855
.   : milestone, 3644,
iast (2.197 ms) : 2133, 2260
.   : milestone, 2197,
iast_GLOBAL (2.253 ms) : 2190, 2317
.   : milestone, 2253,
profiling (2.072 ms) : 2020, 2124
.   : milestone, 2072,
tracing (2.027 ms) : 1978, 2077
.   : milestone, 2027,
section candidate
no_agent (1.477 ms) : 1466, 1489
.   : milestone, 1477,
appsec (3.666 ms) : 3453, 3878
.   : milestone, 3666,
iast (2.21 ms) : 2147, 2274
.   : milestone, 2210,
iast_GLOBAL (2.261 ms) : 2198, 2325
.   : milestone, 2261,
profiling (2.055 ms) : 2003, 2106
.   : milestone, 2055,
tracing (2.015 ms) : 1966, 2064
.   : milestone, 2015,
Loading
  • baseline results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 1.479 ms [1.467 ms, 1.491 ms] -
appsec 3.644 ms [3.433 ms, 3.855 ms] 2.165 ms (146.4%)
iast 2.197 ms [2.133 ms, 2.26 ms] 717.509 µs (48.5%)
iast_GLOBAL 2.253 ms [2.19 ms, 2.317 ms] 774.34 µs (52.4%)
profiling 2.072 ms [2.02 ms, 2.124 ms] 592.967 µs (40.1%)
tracing 2.027 ms [1.978 ms, 2.077 ms] 548.448 µs (37.1%)
  • candidate results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 1.477 ms [1.466 ms, 1.489 ms] -
appsec 3.666 ms [3.453 ms, 3.878 ms] 2.188 ms (148.1%)
iast 2.21 ms [2.147 ms, 2.274 ms] 732.875 µs (49.6%)
iast_GLOBAL 2.261 ms [2.198 ms, 2.325 ms] 783.954 µs (53.1%)
profiling 2.055 ms [2.003 ms, 2.106 ms] 577.13 µs (39.1%)
tracing 2.015 ms [1.966 ms, 2.064 ms] 537.324 µs (36.4%)
Execution time for biojava
gantt
    title biojava - execution time [CI 0.99] : candidate=1.55.0-SNAPSHOT~6a8ec871a0, baseline=1.55.0-SNAPSHOT~b42a4cb149
    dateFormat X
    axisFormat %s
section baseline
no_agent (14.945 s) : 14945000, 14945000
.   : milestone, 14945000,
appsec (14.988 s) : 14988000, 14988000
.   : milestone, 14988000,
iast (18.455 s) : 18455000, 18455000
.   : milestone, 18455000,
iast_GLOBAL (18.325 s) : 18325000, 18325000
.   : milestone, 18325000,
profiling (15.485 s) : 15485000, 15485000
.   : milestone, 15485000,
tracing (15.136 s) : 15136000, 15136000
.   : milestone, 15136000,
section candidate
no_agent (15.003 s) : 15003000, 15003000
.   : milestone, 15003000,
appsec (15.204 s) : 15204000, 15204000
.   : milestone, 15204000,
iast (18.641 s) : 18641000, 18641000
.   : milestone, 18641000,
iast_GLOBAL (18.019 s) : 18019000, 18019000
.   : milestone, 18019000,
profiling (15.231 s) : 15231000, 15231000
.   : milestone, 15231000,
tracing (15.283 s) : 15283000, 15283000
.   : milestone, 15283000,
Loading
  • baseline results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 14.945 s [14.945 s, 14.945 s] -
appsec 14.988 s [14.988 s, 14.988 s] 43.0 ms (0.3%)
iast 18.455 s [18.455 s, 18.455 s] 3.51 s (23.5%)
iast_GLOBAL 18.325 s [18.325 s, 18.325 s] 3.38 s (22.6%)
profiling 15.485 s [15.485 s, 15.485 s] 540.0 ms (3.6%)
tracing 15.136 s [15.136 s, 15.136 s] 191.0 ms (1.3%)
  • candidate results
Variant Execution Time [CI 0.99] Δ no_agent
no_agent 15.003 s [15.003 s, 15.003 s] -
appsec 15.204 s [15.204 s, 15.204 s] 201.0 ms (1.3%)
iast 18.641 s [18.641 s, 18.641 s] 3.638 s (24.2%)
iast_GLOBAL 18.019 s [18.019 s, 18.019 s] 3.016 s (20.1%)
profiling 15.231 s [15.231 s, 15.231 s] 228.0 ms (1.5%)
tracing 15.283 s [15.283 s, 15.283 s] 280.0 ms (1.9%)

@mcculls mcculls marked this pull request as ready for review October 25, 2025 08:09
@mcculls mcculls requested review from a team as code owners October 25, 2025 08:09
@mcculls mcculls requested a review from ygree October 25, 2025 08:09
Copy link
Contributor

@PerfectSlayer PerfectSlayer left a comment

Choose a reason for hiding this comment

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

💭 thought: ‏It feels there is more behind this change than the PR is showing so it’s a bit tough to review 🥲

So far, if the InstanceStore is still based on a ContextStore, we could have expected they keep the same interface even if its concern is a bit different.
But it completely makes sense to keep them separate too. I guess I will discover the whole point of the change later 😉

@mcculls
Copy link
Contributor Author

mcculls commented Oct 27, 2025

💭 thought: ‏It feels there is more behind this change than the PR is showing so it’s a bit tough to review 🥲

The original intent behind InstanceStore was to share existing instances across class-loaders. It just happened that the author decided to re-use the ContextStore API as part of this, but TBH that's conflating two separate concerns with two different lifecycles:

  • ContextStore is about associating values with the lifecycle of other objects (keys)
  • ContextStore values can be collected when their "key" becomes GC'able
  • InstanceStore is about sharing existing instances, referenced by name/strings (ids)
  • InstanceStore values are linked to the type they implement, and rarely get collected

So this is primarily cleanup to separate out the different concerns.

As for why now - I'm moving things around in this area of the codebase and it's as good a time to do this as any (i.e. leave things better than you find them)

@mcculls
Copy link
Contributor Author

mcculls commented Oct 27, 2025

So far, if the InstanceStore is still based on a ContextStore, we could have expected they keep the same interface even if its concern is a bit different.

BTW it's not based on ContextStore since #9739 - it's now completely separate

Note this didn't actually have any impact on what could be put in classInstanceStore,
because the generic constraint ended up on a producing method in GenericClassValue and
producing methods can only really be limited by 'extends' constraints.
@mcculls mcculls merged commit 4391801 into master Oct 27, 2025
537 checks passed
@mcculls mcculls deleted the mcculls/simplify-instance-store-api branch October 27, 2025 23:30
@github-actions github-actions bot added this to the 1.55.0 milestone Oct 27, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants