Luke Parker
9ac3b203c8
Fix panic causable by remote node
2023-07-24 02:53:54 -04:00
Luke Parker
23e1c9769c
dalek 4.0
2023-07-23 14:32:14 -04:00
Luke Parker
8e6e05ae2d
Set better logging defaults for Docker tests
2023-07-23 10:13:11 -04:00
Luke Parker
713660c79c
Make key_gen a gadget, add ConfirmKeyPair
2023-07-22 05:10:40 -04:00
Luke Parker
cb8c8031b0
Correct retrieval of LastTagTime when the Docker image doesn't already exist
2023-07-22 04:37:45 -04:00
Luke Parker
d07447fe97
Implement an (almost) full Key Gen test for processor's Docker tests
...
It doesn't confirm the key pair yet.
Adds the infra neded to test processors against each other.
2023-07-22 04:06:44 -04:00
Luke Parker
c26beae0f9
Only rebuild Docker images when their source has been modified
2023-07-22 02:40:14 -04:00
Luke Parker
818215b570
Correct Dockerfile caching
2023-07-22 01:12:39 -04:00
Luke Parker
79943c3a6c
MessageQueue::new
2023-07-22 01:12:15 -04:00
Luke Parker
076a8e4d62
Add the requirement for a debug Serai node to running tests documentation
2023-07-21 15:11:22 -04:00
Luke Parker
ffd1457927
Correct message-queue Dockerfile
...
It worked with my cache yet not without cache.
2023-07-21 15:08:37 -04:00
Luke Parker
523a055b74
Add processor Docker tests
...
Adds tests/docker for code common to Docker-based tests.
2023-07-21 14:08:42 -04:00
Luke Parker
624fb2781d
Update how RPCs are handled
...
The processor now takes three vars and joins them itself. message-queue uses a
single argument, with defaults, as it's a service we control.
2023-07-21 14:01:42 -04:00
Luke Parker
641077a089
Use non-slim variants to remove needing to apt additional packages
...
Prevents needing to rebuild all the time via allowing cache hits.
2023-07-21 13:58:54 -04:00
Luke Parker
298d1fd3ba
Slim coins and processor Dockerfiles
2023-07-21 04:27:14 -04:00
Luke Parker
92c3403698
Slim down the message-queue Dockerfile
...
While I tried Alpine, RocksDB won't build unless it's statically linked. Then
async-trait (and proc-macro's in general) won't compile when statically linked.
2023-07-21 04:07:32 -04:00
Luke Parker
37af8b51b3
Fallback to pgrep if pidof is unavailable
2023-07-21 03:37:48 -04:00
Luke Parker
900298b94b
CI tweaks
2023-07-20 19:34:10 -04:00
Luke Parker
9effd5ccdc
Add a Docker-based test for the message-queue service
2023-07-20 18:53:11 -04:00
Luke Parker
ceeb57470f
Print when ConnectionErrors occur in reserialize_chain
2023-07-20 18:53:11 -04:00
Steven Chang
69454fa9bb
.rustmfmt.toml: add edition
2023-07-20 15:28:03 -04:00
Luke Parker
5121ca7519
Handle the minimum relay fee
2023-07-20 01:20:28 -04:00
Luke Parker
1eb3b364f4
Correct dust constant
2023-07-20 00:29:31 -04:00
Luke Parker
f66fe3c1cb
3.10 Remove use of Network::Bitcoin
...
All uses were safe due to addresses being converted to script_pubkeys which
don't embed their network. The only risk of there being an issue is if a
future address spec did embed the net ID into the script_pubkey and that was
moved to.
This resolves the audit note and does offer that tightening.
2023-07-20 00:27:56 -04:00
Luke Parker
6f9d02fdf8
3.11 Better document API expectations
2023-07-19 23:51:21 -04:00
Luke Parker
28613400b8
message-queue and processor Dockerfiles
2023-07-19 20:13:16 -04:00
Luke Parker
b6579d5a2a
Update Dockerfiles
...
Cleans files, updates Bitcoin and Monero versions, fixes Monero immediately
exiting.
2023-07-19 19:22:49 -04:00
Luke Parker
c2f32e7882
Update to FROST v14
2023-07-19 15:48:34 -04:00
Justin Berman
228e36a12d
monero-serai: fee calculation parity with Monero's wallet2 ( #301 )
...
* monero-serai: fee calculation parity with Monero's wallet2
* Minor lint
---------
Co-authored-by: Luke Parker <lukeparker5132@gmail.com>
2023-07-19 15:06:05 -04:00
Luke Parker
38bcedbf11
Cargo.lock for prior commit
2023-07-19 00:58:46 -04:00
Luke Parker
98f9fc2c2f
Pin to serde 1.0.167 due to https://github.com/monero-rs/monero-rs/issues/162
2023-07-19 00:53:03 -04:00
Luke Parker
d5cfb3fb25
Corrections from renaming Index to Nonce
2023-07-18 23:52:37 -04:00
Luke Parker
b1dbe1f50d
hashbrown 0.14 in validator-sets
2023-07-18 23:25:15 -04:00
Luke Parker
1b57d655ed
Update to subxt 0.29
2023-07-18 23:01:51 -04:00
Luke Parker
64402914ba
Update substrate
2023-07-18 22:30:55 -04:00
Luke Parker
a7c9c1ef55
Integrate coordinator with MessageQueue and RocksDB
...
Also resolves a couple TODOs.
2023-07-18 01:53:51 -04:00
Luke Parker
a05961974a
Lint a couple TODOs in the processor
2023-07-17 18:11:21 -04:00
Luke Parker
acc9495429
Use MessageQueue instead of MemCoordinator in processor
...
Also has it use RocksDB.
2023-07-17 18:02:29 -04:00
Luke Parker
344ac9cbfc
Add ack signatures
...
Also modifies message signatures to be binding to from, not just from's key.
2023-07-17 17:40:34 -04:00
Luke Parker
6ccac2d0ab
Add a message-queue connection to processor
...
Still needs love, yet should get us closer to starting testing.
2023-07-17 15:49:17 -04:00
Luke Parker
56f7037084
Correct get_o_indexes to work for 0-output TXs
2023-07-17 12:57:17 -04:00
Luke Parker
a0f8214d48
Resolve clippy
2023-07-17 10:53:47 -04:00
Luke Parker
5f93140ba5
Have reserialize_chain automatically retry on ConnectionError
...
Fixes expectations of formatting by expect as well.
2023-07-17 03:14:49 -04:00
Luke Parker
712f11d879
Correct the message-queue's handling of var
2023-07-17 02:01:31 -04:00
Luke Parker
808a633e4d
Split CI to reduce tests run
...
common/ is now only run when common is edited. crypto/ when common/ or crypto/.
coins/ when common/ or crypto/ or coins/. The rest of the tests are run
whenever any package is edited (as they're all inter-connected).
2023-07-17 01:06:56 -04:00
Luke Parker
0a367bfbda
Add common crate to access env variables
...
In the future, we should use a proper secret store (not just env variables).
This lets us update one block of code and not n in the future.
2023-07-17 00:53:05 -04:00
Luke Parker
845c2842b5
message-queue RocksDB + fix listening
2023-07-17 00:22:55 -04:00
Luke Parker
8543487db2
Document message-queue RPC methods
2023-07-16 20:53:58 -04:00
Luke Parker
a9072e6b1b
Remove signature from get_next_message
...
Duee to signature replaying, it's very annoying to provide meanigful data
access privacy. None of these messages should be private/have sensitive data
anyways though.
2023-07-16 20:38:13 -04:00
Luke Parker
b0c28a1cf0
Move message_queue over to deduplication via intents
...
Due to each service having multiple distinct clocks, we can't expect a stable
ordering except the ordering an intact message-queue provides. The messages
emitted should be consistent however, solely with unknown order, which is why
we can craft intents based on their contents (already implemented by
processor-messages).
2023-07-16 20:34:35 -04:00