Commit Graph

229 Commits

Author SHA1 Message Date
David Dworken
7ebb693cdb
Fix double-syncing error where devices receive entries from themselves #202 (#204)
* Fix double-syncing error where devices receive entries from themselves

* Fix incorrect error message

* Add TODO

* Update TestESubmitThenQuery after making query more efficient

* Update TestDeletionRequests and remove unnecessary asserts

* Swap server_test.go to using require

* Fix incorrect require due to typo
2024-04-14 22:53:28 -07:00
David Dworken
21b401bc14
Add ability to configure custom OpenAI API endpoint for #186 (#194)
* Add ability to configure custom OpenAI API endpoint for #186

* Ensure the AiCompletionEndpoint field is always initialized
2024-03-26 22:13:57 -07:00
David Dworken
835a7f6d61
Add SLSA failure warning for versions broken by SLSA 2024-03-25 19:59:39 -07:00
Nguyễn Hoàng Đức
8c4ede4186
Allow register new device when exceed user limit when user already exist (#181) 2024-02-19 12:27:16 -08:00
David Dworken
339da47636
Add cleaning for integration test devices to remove DB entries 2024-02-19 11:50:12 -08:00
Richard James
9ac3df1bbb
Allow override of serving port by env var (#160)
Can now set HISHTORY_SERVER_PORT but will default to 8080.
2023-12-23 17:22:26 -08:00
David Dworken
fbe8e777a4
Remove unnecessary version checking now that multiple versions have been released 2023-12-20 16:43:54 -08:00
David Dworken
8fd809fdc8 Improve AI suggestions by specifying shell name and OS in OpenAI query 2023-12-19 20:50:29 -08:00
David Dworken
3a01e47701
Refactor: Move UsageData and Device to the backend/server directory since they are purely server-side constructs 2023-12-10 10:32:04 -08:00
David Dworken
7272ca8448
Delete data from backend when uninstalling, fixes #132 (#143) 2023-12-10 09:15:11 -08:00
David Dworken
0c2774ec15
Change deletion request code to not filter on DeviceId since the two device ID fields are not actually the same (see the newly added comment) 2023-11-22 20:44:57 -08:00
David Dworken
b4f5f50ef7
Configure custom logger when running hishtory server with sqlite 2023-11-22 20:44:24 -08:00
David Dworken
1c68b23790
Change panic to error so that one cron failure doesn't kill all cron jobs 2023-11-22 20:43:40 -08:00
David Dworken
67c67b76cd
If X-Real-IP header isn't set, use the client's real IP instead of unknwon (fixes #126) 2023-11-18 12:11:12 -08:00
David Dworken
41391fba3a
Update slsaStatusHandler to use the version parsing library 2023-11-12 04:59:05 -08:00
David Dworken
29fa710fbc
Skip creating DB indexes in the production environment since we manually create those concurrently 2023-11-12 03:21:01 -08:00
David Dworken
afe1a38a0e Fix 2d63263b79 by applying the override on the backend rather than in the client-side variable that isn't actually being referenced 2023-11-12 02:57:23 -08:00
David Dworken
0ea3ce2399 Add basic debouncing for AI integration + implement AI suggestions via hishtory API endpoint 2023-11-12 02:57:23 -08:00
David Dworken
eb835fe52c Add initial version of AI searching, but with a broken implementation of debouncing 2023-11-12 02:57:23 -08:00
David Dworken
e0f629d0ee
Add integration with 5ab1cb61a3 so that we only serve binaries for updates if they have passed validation 2023-11-08 20:08:42 -08:00
David Dworken
56e4609970
Make server.go's cron more precise about how it periodically re-runs more intensive cron functions 2023-11-01 18:06:16 -07:00
David Dworken
047ff97cfc
Add more thorough deep cleaning to delete entries for users that have more than 50 million entries, since these users are clearly misusing hishtory in some way that is causing DB load issues 2023-10-28 23:30:18 -07:00
David Dworken
f3c8ecc9e6
Update deep clean code to actually execute the delete now that I validated that it is reasonable 2023-10-28 15:06:58 -07:00
David Dworken
0c39dbf27c
Update deep clean code to be stricter and to fix a bug 2023-10-27 20:16:30 -07:00
David Dworken
0f99c7996e
Follow up to 083569be17: What if we just change the message we print on the server-side so that it doesn't trigger gotestsum? 2023-10-22 11:46:11 -07:00
David Dworken
53580d40e9
Remove TODOs for adding data to context that I think is actually fine to keep in the request as-is 2023-10-22 11:17:06 -07:00
David Dworken
083569be17
Move output prefix from 60d388c4c2 to the inner test 2023-10-22 11:07:59 -07:00
David Dworken
60d388c4c2
Add one more print similar to b6885cca98 that was missed in that commit 2023-10-22 00:19:34 -07:00
David Dworken
b6885cca98
Attempt to fix gotestsum skipping tests by adding a prefix so that test output doesn't begin with panic: 2023-10-21 17:03:04 -07:00
David Dworken
50c6f5e061
Skip tests that cause gotestsum to skip re-running 2023-10-21 16:59:42 -07:00
David Dworken
a937b35e54
Avoid returning DB error when deleted message identifiers don't have a device ID 2023-10-18 18:59:12 -07:00
David Dworken
9a4a2a18aa
Update TODOs 2023-10-15 17:59:11 -07:00
David Dworken
cd53e9a40d
Add another filter check to remove integration test devices 2023-10-15 17:58:25 -07:00
David Dworken
690b969fe3
Use queryReason parameter to properly record query interactions 2023-10-15 17:45:38 -07:00
David Dworken
cd69973939
Update usage_data queries to filter out integration tests 2023-10-15 17:30:55 -07:00
David Dworken
24750066a7 Merge branch 'master' of github.com:ddworken/hishtory 2023-10-15 16:43:08 -07:00
David Dworken
5ff15303bf exclude test devices from registration metrics 2023-10-15 16:42:59 -07:00
David Dworken
505daacb65
Add another TODO for cleaning up integration tests from the main DB 2023-10-15 14:54:01 -07:00
David Dworken
460d161c76
Update some usage calculations to exclude is_integration_test_device 2023-10-15 14:52:45 -07:00
David Dworken
fc865aef28
Add TODO 2023-10-15 14:50:17 -07:00
David Dworken
f3727dbeff
Wire through a flag so that we can track when installations come from tests, and delete those from the DB more aggressively 2023-10-15 13:09:48 -07:00
David Dworken
f6b3890f20
Fix incorrect comparisons for checking if a timestamp is zero-valued 2023-10-15 12:59:42 -07:00
David Dworken
67f2ed6de1
Fix transaction for creating deletion requests so that it actually uses the passed in tx 2023-10-15 11:49:36 -07:00
David Dworken
299617ba7e
Update error message to make it clearer when it shows up in test logs 2023-10-15 11:45:08 -07:00
David Dworken
cfefbb9b19
Improve DeleteMessagesFromBackend with better error checking and optimized queries for cases when MessageIdentifier is missing data 2023-10-15 11:43:29 -07:00
David Dworken
9f32ae5d2e
Refactor deletion request creation to happen in a transaction to avoid 1-n DB queries 2023-10-15 10:29:47 -07:00
David Dworken
151dfb4009
Optimize query endpoint so that it applies all deletion requests in one SQL query rather than having a 1-n pattern 2023-10-15 10:19:30 -07:00
David Dworken
6fb6498515
Make deletion request processing happen in parallel to speed up query endpoint 2023-10-14 17:21:00 -07:00
David Dworken
218c70f5e7
Create background context for background update to ensure that the DB increment doesn't get terminated when the request finishes 2023-10-14 16:53:40 -07:00
David Dworken
4c1479b920
Add comment with example of creating index concurrently 2023-10-14 11:41:06 -07:00