Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 6 additions & 1 deletion manifests/java.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3501,7 +3501,12 @@ manifest:
tests/ffe/test_exposures_datadog_agent.py::Test_FFE_Exposure_Caching_Serial_Id_Cycle: missing_feature (EX-3415)
tests/ffe/test_exposures_datadog_agent.py::Test_FFE_Exposure_Caching_Serial_Id_Disappears: missing_feature (EX-3415)
tests/ffe/test_exposures_datadog_agent.py::Test_FFE_Exposure_Serial_Id: missing_feature (EX-3415)
tests/ffe/test_flag_eval_evp.py: missing_feature (FFL-2446)
tests/ffe/test_flag_eval_evp.py:
- weblog_declaration:
"*": missing_feature (FFL-3509)
spring-boot: v1.68.0
tests/ffe/test_flag_eval_evp.py::Test_FFE_EVP_Flagevaluation_Egress_Agentless_Direct: missing_feature (Agentless activation is separate from FFL-3509)
tests/ffe/test_flag_eval_evp.py::Test_FFE_EVP_Flagevaluation_Egress_Agentless_Sidecar: missing_feature (Agentless activation is separate from FFL-3509)
tests/ffe/test_flag_eval_metrics.py:
- weblog_declaration:
"*": irrelevant
Expand Down
33 changes: 22 additions & 11 deletions manifests/python.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2295,19 +2295,23 @@ manifest:
excluded_weblog: [django-poc, uwsgi-poc, uds-flask, python3.12, django-py3.13, aiohttp, flask-poc, fastapi, tornado]
tests/ffe/test_flag_eval_evp.py: v4.16.0-dev
tests/ffe/test_flag_eval_evp.py::Test_FFE_EVP_Flagevaluation_Basic:
- declaration: missing_feature (FFL-2446)
- declaration: missing_feature (FFL-3509)
excluded_weblog: [flask-poc]
- weblog_declaration:
aiohttp: missing_feature (new weblog, tests are enabled with easy wins)
tests/ffe/test_flag_eval_evp.py::Test_FFE_EVP_Flagevaluation_Burst_Aggregation:
- declaration: missing_feature (FFL-2446)
- declaration: missing_feature (FFL-3509)
excluded_weblog: [flask-poc]
- weblog_declaration:
aiohttp: missing_feature (new weblog, tests are enabled with easy wins)
tests/ffe/test_flag_eval_evp.py::Test_FFE_EVP_Flagevaluation_Context_Bounds:
- declaration: missing_feature (FFL-2446)
- declaration: missing_feature (FFL-3509)
excluded_weblog: [flask-poc]
- weblog_declaration:
aiohttp: missing_feature (new weblog, tests are enabled with easy wins)
tests/ffe/test_flag_eval_evp.py::Test_FFE_EVP_Flagevaluation_Count:
- declaration: missing_feature (FFL-2446)
- declaration: missing_feature (FFL-3509)
excluded_weblog: [flask-poc]
- weblog_declaration:
aiohttp: missing_feature (new weblog, tests are enabled with easy wins)
tests/ffe/test_flag_eval_evp.py::Test_FFE_EVP_Flagevaluation_Egress_Agentless_Direct:
Expand All @@ -2325,31 +2329,38 @@ manifest:
- declaration: missing_feature (FFL-2446)
excluded_weblog: [django-poc, uwsgi-poc, uds-flask, python3.12, django-py3.13, aiohttp, flask-poc, fastapi, tornado]
tests/ffe/test_flag_eval_evp.py::Test_FFE_EVP_Flagevaluation_High_Cardinality_Accounting:
- declaration: missing_feature (FFL-2446)
- declaration: missing_feature (FFL-3509)
excluded_weblog: [flask-poc]
- weblog_declaration:
aiohttp: missing_feature (new weblog, tests are enabled with easy wins)
tests/ffe/test_flag_eval_evp.py::Test_FFE_EVP_Flagevaluation_High_Cardinality_Aggregation:
- declaration: missing_feature (FFL-2446)
- declaration: missing_feature (FFL-3509)
excluded_weblog: [flask-poc]
- weblog_declaration:
aiohttp: missing_feature (new weblog, tests are enabled with easy wins)
tests/ffe/test_flag_eval_evp.py::Test_FFE_EVP_Flagevaluation_Load_Aggregation:
- declaration: missing_feature (FFL-2446)
- declaration: missing_feature (FFL-3509)
excluded_weblog: [flask-poc]
- weblog_declaration:
aiohttp: missing_feature (new weblog, tests are enabled with easy wins)
tests/ffe/test_flag_eval_evp.py::Test_FFE_EVP_Flagevaluation_ObserveFullData_Absent_Hashed:
- declaration: missing_feature (FFL-2446)
- declaration: missing_feature (FFL-3509)
excluded_weblog: [flask-poc]
- weblog_declaration:
aiohttp: missing_feature (new weblog, tests are enabled with easy wins)
tests/ffe/test_flag_eval_evp.py::Test_FFE_EVP_Flagevaluation_ObserveFullData_False_Hashed:
- declaration: missing_feature (FFL-2446)
- declaration: missing_feature (FFL-3509)
excluded_weblog: [flask-poc]
- weblog_declaration:
aiohttp: missing_feature (new weblog, tests are enabled with easy wins)
tests/ffe/test_flag_eval_evp.py::Test_FFE_EVP_Flagevaluation_ObserveFullData_True_Unhashed:
- declaration: missing_feature (FFL-2446)
- declaration: missing_feature (FFL-3509)
excluded_weblog: [flask-poc]
- weblog_declaration:
aiohttp: missing_feature (new weblog, tests are enabled with easy wins)
tests/ffe/test_flag_eval_evp.py::Test_FFE_EVP_Flagevaluation_Runtime_Default:
- declaration: missing_feature (FFL-2446)
- declaration: missing_feature (FFL-3509)
excluded_weblog: [flask-poc]
- weblog_declaration:
aiohttp: missing_feature (new weblog, tests are enabled with easy wins)
tests/ffe/test_flag_eval_evp.py::Test_FFE_EVP_Flagevaluation_SDK_Identity: v4.16.0
Expand Down
7 changes: 6 additions & 1 deletion manifests/ruby.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2163,7 +2163,12 @@ manifest:
tests/ffe/test_exposures_datadog_agent.py::Test_FFE_Exposure_Caching_Serial_Id_Cycle: missing_feature (EX-3417)
tests/ffe/test_exposures_datadog_agent.py::Test_FFE_Exposure_Caching_Serial_Id_Disappears: missing_feature (EX-3417)
tests/ffe/test_exposures_datadog_agent.py::Test_FFE_Exposure_Serial_Id: missing_feature (EX-3417)
tests/ffe/test_flag_eval_evp.py: missing_feature (FFL-2446)
tests/ffe/test_flag_eval_evp.py:
- weblog_declaration:
"*": missing_feature (FFL-3509)
rails72: v2.43.0
tests/ffe/test_flag_eval_evp.py::Test_FFE_EVP_Flagevaluation_Egress_Agentless_Direct: missing_feature (Agentless activation is separate from FFL-3509)
tests/ffe/test_flag_eval_evp.py::Test_FFE_EVP_Flagevaluation_Egress_Agentless_Sidecar: missing_feature (Agentless activation is separate from FFL-3509)
tests/ffe/test_flag_eval_metrics.py:
- weblog_declaration:
"*": irrelevant
Expand Down
6 changes: 4 additions & 2 deletions tests/ffe/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -38,8 +38,10 @@ The protobuf fixture `tests/parametric/test_ffe/rules-wire.json` comes from `ope
`Test_FFE_EVP_Flagevaluation_SDK_Identity` checks SDK origin and version headers on
Agent-to-intake captures while retaining the shared payload and evaluation-count checks.
The case requires Agent 7.84+ and is enabled for Go 2.11.0+, Python 4.16.0+, and
Node.js express5 under its existing version gate. Other languages retain their
current exclusions. Event-level `source` is rejected: source identity belongs in
Node.js express5 under its existing version gate, Ruby rails72 2.43.0+, and
Java spring-boot 1.68.0+.
Python flask-poc also runs the remaining Agent-backed payload, context, privacy,
and aggregation cases from 4.16.0. Other weblogs retain their current exclusions. Event-level `source` is rejected: source identity belongs in
the request headers.

## Per-subject evaluation telemetry opt-out
Expand Down
4 changes: 3 additions & 1 deletion tests/ffe/test_flag_eval_evp.py
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,7 @@ def evaluate_flag(
attributes: JSON | None = None,
variation_type: str = "STRING",
default_value: object = "default",
timeout: int | None = None,
) -> HttpResponse:
payload = {
"flag": flag_key,
Expand All @@ -71,7 +72,7 @@ def evaluate_flag(
}
if targeting_keys is not None:
payload["targetingKeys"] = targeting_keys
return weblog.post("/ffe", json=payload)
return weblog.post("/ffe", json=payload, timeout=timeout)


def evp_flagevaluation_events_from_data(
Expand Down Expand Up @@ -674,6 +675,7 @@ def setup_ffe_evp_flagevaluation_high_cardinality_accounting(self) -> None:
targeting_key=targeting_keys[0],
targeting_keys=targeting_keys,
attributes={},
timeout=10,
)
]

Expand Down
Loading