Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Filter out test results from old probe-engine versions #905

Open
cohosh opened this issue Sep 11, 2023 · 2 comments
Open

Filter out test results from old probe-engine versions #905

cohosh opened this issue Sep 11, 2023 · 2 comments

Comments

@cohosh
Copy link

cohosh commented Sep 11, 2023

Describe the bug

After looking into some reports of DTLS fingerprinting in Russia, I noticed that all of the recent failed anomalies I checked were failing because they were running an old version of the probe-engine that did not have a fingerprinting fix we introduced in February of last year.

To analyze issues like fingerprinting, where fixes are introduced in response to blocking events, it would be really useful to be able to filter out the results from clients that have not yet updated to the new version of OONI probe so that we can tell whether anomalies are due to new fingerprinting rules. This should also be optional, since the fingerprint fixes we care about will vary from region to region.

I realize this is probably a pretty significant feature request. It's not urgent, just something that would be nice when looking at blocking results in aggregate.

To Reproduce

Look at anomalous Tor Snowflake Test results from Russia:

https://explorer.ooni.org/chart/mat?test_name=torsf&axis_x=measurement_start_day&since=2023-07-01&until=2023-09-12&time_grain=day&probe_cc=RU&probe_asn=AS51645

Expected behavior

Filter option to only display test results from newer versions of the probe-engine.

Screenshots

image
image

These both look like blocking events, but are most likely the result of an old blocking rule that we've already circumvented being removed and then re-added. It's hard to tell from the aggregate results whether we should be looking for a fix.

@cohosh cohosh added data quality triage This issue needs triage labels Sep 11, 2023
@bassosimone
Copy link
Contributor

bassosimone commented Sep 12, 2023

We should already have an API for this, thanks to ooni/backend@3b1902c. In light of this, it seems this is mostly a feature request for the measurement aggregation toolkit at OONI Explorer. That said, I think it would also be possible (and likely desirable) to expose and extract the version of snowflake that we're using. Is https://pkg.go.dev/git.torproject.org/pluggable-transports/snowflake.git/[email protected]/common/version#GetVersion the proper function to get this value? (Also, FYI, the repository changed to gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/snowflake and the latest version seems to be v2.6.2, and a release is upcoming, but I could not find the new repository name in pkg.go.dev—entering the new name got me redirected to the old one—and, for some reason, pkg.go.dev thinks the latest version is v2.5.1—all of this is a bit unexpected.)

@cohosh
Copy link
Author

cohosh commented Sep 12, 2023

We should already have an API for this, thanks to ooni/backend@3b1902c. In light of this, it seems this is mostly a feature request for the measurement aggregation toolkit at OONI Explorer.

Ah cool, I missed that change. In that case, yes this is mostly a feature request for the MAT.

That said, I think it would also be possible (and likely desirable) to expose and extract the version of snowflake that we're using. Is https://pkg.go.dev/git.torproject.org/pluggable-transports/snowflake.git/[email protected]/common/version#GetVersion the proper function to get this value?

That's correct.

(Also, FYI, the repository changed to gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/snowflake and the latest version seems to be v2.6.2, and a release is upcoming, but I could not find the new repository name in pkg.go.dev—entering the new name got me redirected to the old one—and, for some reason, pkg.go.dev thinks the latest version is v2.5.1—all of this is a bit unexpected.)

Sorry about that, we've been deprecating our old gitweb repositories and moving to only hosting on GitLab. The new Go docs are at https://pkg.go.dev/gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/snowflake/v2

The latest version is 2.6.0, but once https://gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/snowflake/-/merge_requests/174 is merged, it will be 2.6.1.

@jbonisteel jbonisteel assigned majakomel and unassigned majakomel and bassosimone Jan 9, 2024
@bassosimone bassosimone transferred this issue from ooni/probe Jan 24, 2024
@jbonisteel jbonisteel removed the triage This issue needs triage label Aug 5, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants