Commit Graph

2640 Commits

Author SHA1 Message Date
Amin Moghaddam d4fad5049c
Restart pusher on balance issues (#1125)
* Restart pusher on balance issues

* Bump
2023-10-31 08:39:22 +01:00
Ali Behjati d07579e0a6 feat(hermes): only return unique price updates on get_* methods 2023-10-27 17:01:42 +02:00
Ali Behjati 8bee2e8e12 chore(hermes): change level of some logs 2023-10-27 17:01:42 +02:00
Amin Moghaddam 8d99ac402c
chore(evm) Add more networks (#1121) 2023-10-23 11:41:07 +02:00
Jayant Krishnamurthy 4776bdcdf9
Fortuna CI workflows (#1120)
* CI and docker

* cleanup

* erc

* whoops
2023-10-20 10:49:41 -07:00
Jayant Krishnamurthy d87cd7c5fd
Rename pyth-rng to Fortuna (#1119) 2023-10-20 09:41:05 -07:00
Jayant Krishnamurthy d096bfaf73
[pyth-rng] A few small improvements (#1114)
* more stuff

* build

* cleanup

* Update pyth-rng/src/command/generate.rs

Co-authored-by: Reisen <Reisen@users.noreply.github.com>

* Update pyth-rng/src/command/generate.rs

Co-authored-by: Reisen <Reisen@users.noreply.github.com>

* Update pyth-rng/src/command/generate.rs

Co-authored-by: Reisen <Reisen@users.noreply.github.com>

* tracing

---------

Co-authored-by: Reisen <Reisen@users.noreply.github.com>
2023-10-20 09:22:20 -07:00
Ali Behjati efcfae3ed7 chore(eth): deploy to chiliz mainnet 2023-10-20 17:42:47 +02:00
Ali Behjati 6215460613 fix(hermes): fix metrics content-type
Openmetrics specification expects its own content-type instead of plain
text. I didn't set it before as Prometheus still accepts text format but
apparently there are some scrapers (like datadog) that decide
dynamically what format to use for parsing based on the content type and
our format follows Openmetrics specification. Prometheus should be able
to parse it but weirdly it didn't work in our situation. An example of
inconsistency is how counters are represented. In Openmetrics
specification the metric name is appended by `_total` whereas normal
prometheus just uses the metric name.
2023-10-20 13:16:11 +02:00
Amin Moghaddam 99eaab878d
Add option to choose a different account derived from the same mnemonic (#1116)
This is useful for running 2 pushers in parallel
2023-10-20 11:53:26 +02:00
Amin Moghaddam 8b721c38dc
Update sui packages addresses (#1115) 2023-10-20 10:57:24 +02:00
Jayant Krishnamurthy 11eab4f1d7
[pyth-rng] Add support for multiple blockchains (#1110)
* stuff

* missing files

* PR comments

* ok
2023-10-19 13:18:53 -07:00
Ali Behjati 6db59ff6d1 fix(hermes): correct the metrics server env var 2023-10-19 12:46:38 +02:00
Ali Behjati 8075d0704e refactor(hermes): move metrics endpoint to a separate metrics server 2023-10-19 11:59:10 +02:00
Ali Behjati 29dc1082dd fix(hermes): handle ws notifier shut down properly 2023-10-19 11:59:10 +02:00
Ali Behjati cefdd84483 refactor(hermes): move docs_examples inside api 2023-10-19 11:59:10 +02:00
Ali Behjati 65e21997e4 chore: remove price service mentions in the repo 2023-10-19 09:25:03 +02:00
Jayant Krishnamurthy 76a337971e
Initial version of random number server (#1103)
* feat(pyth-rng): first draft of pyth-rng

* adding api

* ok that wasnt so bad

* minor stuff

* add command to get current request

* refactor config

* refactor

* refactor

* ok

* ok

* it works

* blah

* stuff

* stuff

* builds

* builds

* ok it works

* more stuff

* cleanup

* ok stuff

* format

* docs

* ali comments

* correct fee

* warnings

---------

Co-authored-by: Reisen <reisen@morphism.org>
2023-10-18 14:35:25 -07:00
Ali Behjati 49d1a579c3 chore: cleanup repo 2023-10-18 18:32:42 +02:00
Amin Moghaddam c0057809f5
chore(evm): deploy to new networks (#1107) 2023-10-18 17:20:44 +02:00
Ali Behjati 9da64103db feat(hermes): add metrics
Co-authored-by: Reisen <Reisen@users.noreply.github.com>
2023-10-18 15:04:10 +02:00
Jayant Krishnamurthy 727f9ec33d
Initial version of random numbers contract (#1093)
* initial merkle tree cut

* initial working test

* grrr

* add this deploy script

* contract stuff

* doc

* cleanup

* cleanup

* delete janky deploy script

* first commit of random2

* randomness

* format

* wtf

* wtf

* stuff

* cleanup

* minor

* add extra field

* pr comments
2023-10-17 13:07:47 -07:00
Amin Moghaddam 4bc11b863c
chore(evm): deploy to new networks (#1104)
zetachain testnet
2023-10-17 18:15:17 +02:00
Ali Behjati ad277ec7f2 chore(evm): deploy to new networks
chiliz_spicy and scroll
2023-10-17 10:04:34 +02:00
Ali Behjati 2b51cffdc7 fix(price-service/client): remove axios version lock 2023-10-16 16:46:57 +02:00
guibescos 5c0c252cee
Refactor MultisigInstruction (#1098)
* Refactor unknown

* Cleanup

* Cleanup further
2023-10-13 15:12:13 +01:00
Amin Moghaddam 6cebfef1df
[evm] Evm runs (#1099)
* Show chain id when checking proposals

* Reduce number of optimizations to 200 in order to defeat the Spurious Dragon
2023-10-13 15:45:35 +02:00
guibescos f72c0d93ad
[xc-admin] add bpf loader (#1097)
* Add bpf loader

* Add close program

* Cleanup

* Add comment

* Show in xc-admin

* Remove console log

* Fix comment
2023-10-13 13:48:20 +01:00
Amin Moghaddam eb9526675c
[evm] parsePriceFeed with uniqueness validation (#1089)
* Implement uniqueness
* Add tests and update abi
* Fix MockPyth for the unique version
* Bump version
* Add gas benchmark functions
2023-10-13 14:15:42 +02:00
Ali Behjati d11216f309 feat(hermes): use ip from request headers for ratelimiting 2023-10-13 13:26:48 +02:00
guibescos b158f28c58
Fix the race condition by putting the setters at the end of the function (#1091) 2023-10-12 11:41:01 +01:00
guibescos 9d98c71ef8
[xc-admin-frontend] Add rates (#1094)
* Add rates

* Add commodities
2023-10-12 11:40:50 +01:00
Amin Moghaddam f5698bf509 Add optimism sepolia 2023-10-11 21:12:11 +02:00
Ali Behjati eb2fd83e61 fix(hermes): fix ip whitelisting logic 2023-10-11 19:02:25 +02:00
Ali Behjati bb922c3a17 fix(hermes): add lock for the entire message state
Before this change, there was a lock for each message and it could
cause the updateData for multiple ids have 2 updates (because of the
race with the thread updating the states). This change adds a RwLock
which makes sure that when the entire message state is updating,
no one can read from it while allowing concurrent reads in other
occasions.
2023-10-11 19:01:42 +02:00
Amin Moghaddam a224199c8f
Add more debugging info for sui pusher (#1087) 2023-10-11 12:17:46 +02:00
Amin Moghaddam fe6d93fa2e
Include sui sdk js in pusher dockerfile (#1086) 2023-10-11 11:20:10 +02:00
Amin Moghaddam 0e67978aea
Add manta (#1085) 2023-10-11 11:05:05 +02:00
Amin Moghaddam 879efe0e01
[price-pusher] Use sui pyth client and change flow for hermes messages (#1084)
* Use sui pyth client and change flow for hermes messages
2023-10-10 16:04:36 +02:00
Ali Behjati fe070baa48 feat(price-pusher): add gas multiplier cap for evm 2023-10-10 14:40:11 +02:00
Amin Moghaddam f224486ae2
Aptos improvements (#1079)
* More documentation on the upgrade procedure and mainnet init

* Add profiling utility for aptos

* Reuse contract manager logic to sync guardian sets

* Add documentation for sui gas profiling
2023-10-10 12:03:01 +02:00
Ali Behjati 0c25fccce5 chore(hermes): update wormhole config 2023-10-09 18:39:53 +02:00
Amin Moghaddam 17f489e629 Add boba deployment files 2023-10-09 11:04:42 +02:00
Reisen 71307a1baa chore(hermes): bump to version 0.3.0, backwards incompatible CLI features/run mode 2023-10-09 09:14:12 +01:00
Reisen 2c0413dce4 feat(hermes): move to wormhole gRPC from p2p 2023-10-09 08:56:59 +01:00
Ali Behjati 1a64d58834 patch(hermes): improve ws reliability
- Add max message size for incoming messages
- Add sent message rate limit and ip whitelisting
2023-10-05 16:00:48 +02:00
Ali Behjati 5fdc0d2545 fix(price-service/server): add max payload size
By default ws library has max payload size of 100 MiB but actually the
biggest valid call is 20 KiB. This change sets the limit to 100 KiB to
add more resilliency on the web socket. The biggest call size can
increase when there are new symbols but this service is not going to
live seeing the 5x current price feeds!
2023-10-04 19:34:58 +02:00
guibescos 4bfa1c38f6
Allow changing the symbol (#1075)
* Allow changing the symbol

* Format
2023-10-04 15:39:43 +01:00
Amin Moghaddam c01a9cf056
Optimize aptos contract to verify messages only once (#1074) 2023-10-03 11:05:54 +02:00
Ali Behjati 9b825597d0 chore: run ts/js ci only on relevant files 2023-09-29 17:47:39 +02:00