Vecna
e2b1f9aa7d
Start stage 3 based on actual observation of a positive report
...
Also track how much historical data we have on a per-country basis
2024-04-27 13:20:05 -04:00
Vecna
eef9e5164e
Upgrade time
2024-04-27 13:18:15 -04:00
Vecna
a504e8aef2
Update country codes list
2024-04-26 19:39:49 -04:00
Vecna
12519a344b
Use different databases for tests
...
This prevents an issue where the extra_infos test would have a lock on the database, preventing the positive and negative reports tests from using it.
2024-04-26 15:32:41 -04:00
Vecna
10ff088b5a
Resolve some TODOs
2024-04-26 15:25:56 -04:00
Vecna
ec4dc5ca29
Re-evaluate past days in case we got new reports since last evaluation
...
It would be better to track which bridges got new reports and only re-evaluate those.
2024-04-26 15:11:31 -04:00
Vecna
31b27a291a
Model both accessible bridge and blocked bridge in analysis
2024-04-26 15:09:30 -04:00
Vecna
b2eb244757
cargo-fmt
2024-04-26 13:11:32 -04:00
Vecna
273aaab38d
Don't scale bridge IPs in analysis
2024-04-26 12:58:03 -04:00
Vecna
e889cba878
Remove info print statements
2024-04-19 01:34:24 -04:00
Vecna
f0133ce0dc
The updater can just shut down with the main function
2024-04-18 23:50:37 -04:00
Vecna
851686cf94
Mark unused variable bridge_ips in stage one analysis
2024-04-18 22:42:27 -04:00
Vecna
36395181d3
Improve analysis
...
We seem to get better results when we scale bridge IPs down to multiples of 1 instead of 8 and only mark bridges as blocked if they differ in the 'bad' direction by at least one standard deviation from the mean.
2024-04-18 22:27:57 -04:00
Vecna
7d58c220ca
Fix a comment
2024-04-16 01:12:39 -04:00
Vecna
43228e18c9
Encrypt negative reports
2024-04-16 01:11:47 -04:00
Vecna
bd4bc1b7b8
Test stage 1 analysis
2024-04-15 15:34:29 -04:00
Vecna
45e71f32e8
Pass date for analysis, compute age correctly
2024-04-15 15:21:35 -04:00
Vecna
1a8b64080d
Refactor Analyzer trait
2024-04-15 13:19:56 -04:00
Vecna
b9abc83d36
Check in updated config for multivariable normal analysis
2024-04-15 13:10:54 -04:00
Vecna
f2626eb800
Add analyzer which evaluates data as multivariate normal distribution
2024-04-15 03:09:14 -04:00
Vecna
cba8aea553
Pass confidence to analyzer
2024-04-12 12:52:30 -04:00
Vecna
5c6a076289
Begin work on cleaning up old nonces
2024-04-12 12:50:40 -04:00
Vecna
158512f427
Operator supplies updater schedule in config
2024-04-12 12:32:01 -04:00
Vecna
c5a05be6d8
Test dropping NRs with repeated nonces and DB storage before processing
2024-04-12 12:26:36 -04:00
Vecna
c82e604e3d
Include nonce in negative reports
2024-04-12 02:38:35 -04:00
Vecna
e1588aac0e
Don't persist extra-infos files to disk, just process and store results
2024-04-06 12:02:53 -04:00
Vecna
a679c13e4f
Store bridge data by fingerprint and store set of fingerprints
...
We had been storing all the data as a huge map under the key 'bridges' so that we could iterate over all keys in the map as a way of iterating over all bridges. This caused the database to grow way too big, so we don't do that anymore. Now, we store each bridge's data with the bridge fingerprint as the key, and we store a set of bridge fingerprints under the key 'bridges'.
2024-04-06 01:09:43 -04:00
Vecna
b915aea094
Add date to proof of bridge knowledge in negative reports
2024-04-04 22:55:07 -04:00
Vecna
90071c3e1d
Test-only dependencies
2024-03-29 16:17:38 -04:00
Vecna
63ed7b2951
cargo-fmt and include new dependencies for tests
2024-03-29 16:14:11 -04:00
Vecna
bc35163084
Add tests for reports
2024-03-29 16:12:48 -04:00
Vecna
15ed2a04bc
Handle error if user tries to create invalid lox_proof in PR
2024-03-29 16:11:44 -04:00
Vecna
4390716ebf
Fix PR verification
2024-03-29 15:25:42 -04:00
Vecna
d933b3b94b
Run updater daily
2024-03-25 20:41:34 -04:00
Vecna
32d68893a7
Remove dependency 'select'
2024-03-25 19:40:25 -04:00
Vecna
7481fe10f9
Add command to update data and report blockages
2024-03-25 19:37:00 -04:00
Vecna
1ccd676e5c
Store bridge data with key 'bridges', guess and report blockages
2024-03-23 23:16:20 -04:00
Vecna
12e699f979
Track bridge info by country first, then date
2024-03-23 21:40:00 -04:00
Vecna
3ef9c04141
Add functions to verify reports, update db
2024-03-23 17:43:18 -04:00
Vecna
8ea6940397
Listen for reports
...
Downgrade hyper, listen for new reports, TODO: test
2024-03-22 23:42:22 -04:00
Vecna
58ab310a40
Switch REQUIRE_BRIDGE_TOKEN back to constant for now
2024-03-15 13:24:00 -04:00
Vecna
5935d3d78c
Rename bridge_info::BridgeInfo to disambiguate
2024-03-15 11:32:17 -04:00
Vecna
68137981fc
One bridge may be in multiple buckets
2024-03-15 02:24:52 -04:00
Vecna
4f5bec56ad
Add distributor enum so we know where to send NRs
...
For now, I'm not adding this to PRs because PRs are very Lox-specific
2024-03-14 18:09:24 -04:00
Vecna
548c94f834
Add some necessary traits
2024-02-28 16:07:13 -05:00
Vecna
6448537c4b
One verify function for positive reports
2024-02-28 16:06:58 -05:00
Vecna
4f88df6171
Create struct for bridge info which must be externally provided
2024-02-28 15:26:22 -05:00
Vecna
495f196107
Use one function for verifying negative reports
2024-02-28 14:10:45 -05:00
Vecna
9412817a66
Remove unused dependencies
2024-02-28 12:01:05 -05:00
Vecna
d06542f99c
Don't recompute H when verifying positive reports
2024-02-28 11:57:48 -05:00