`canonicalAddress` and `humanAddress` are useful functions for all
cosmos chains so move it into a new cosmos package. This also means we
need to stop hardcoding "terra" in `humanAddress` and take the human
readable part as a parameter instead.
* solana: Add "msg.sender" and remove fee from payload3
* solana: update payload3 instruction to include the sender account
* solana: allow sending payload 3s to program ids directly
Co-authored-by: Csongor Kiss <ckiss@jumptrading.com>
* algo - add stuff to tilt
* terra: fix terra test (#1231)
* terra: fix terra test
* Update terra git bits
Co-authored-by: Jeff Schroeder <jeffschroeder@computer.org>
* algo - add stuff to tilt
Co-authored-by: Evan Gray <56235822+evan-gray@users.noreply.github.com>
Co-authored-by: Jeff Schroeder <jeffschroeder@computer.org>
2) Add tests for payload3
3) Change the contract API for payload3 so that the destination is the appId instead of the app address
and no longer part of the data
4) add a testApp into devnet
* sdk/js: improve type safety + add documentation
* sdk/js: add support for chain names
* sdk/js: fix boolean conditional bug in transferFromSolana
* sdk/js: remove unsafe ChainId coercions in sdk
* sdk/js: Chain id 0
This is a legit chain id that some governance VAAs target
* sdk/js: Add mainnet and testnet contract addresses
* sdk/js: bump version to 0.3.0
* sdk/js: limit minor version changes
* sdk/js: update contracts and add devnet
Co-authored-by: Csongor Kiss <ckiss@jumptrading.com>
Co-authored-by: Evan Gray <battledingo@gmail.com>
* algo/tests: enable relayer test
* algo/tests: increase timeout
* algo/tests: split tests into unit and integration
* algo/tests: move tests around
* algo/tests: remove file
* algo/tests: make it not optimize in dev mode @ gusc1a-ossdev-jsl5
* algo/tests: another test fix @ gusc1a-ossdev-jsl5
Co-authored-by: Josh Siegel <jsiegel@jumptrading.com>
* Initial Celo support
Change-Id: Iee98ee29a8b09af9ca76945792b750d96a170702
* Watcher support
* Fix high level make file
* Remove node binary committed by mistake
* Port change from EthWatcher to CeloWatcher
* Use docker to build ABIs
* Refactor watcher to eliminate massive redunancy
* Fix lint-and-tests to handle multiple defs on link
* Minor code cleanup
* Celo should use ganache in devnet
* Prep for mainnet deploy
* Code review rework
* Remove celo from sdk package.json
* Klaytn support for testnet
Change-Id: Id0647fd6c603ab298f860c2cae20481555467315
* token_bridge client changes
Change-Id: If49ba994a67041044bdec054f19e69b4cfc2785b
* Get rid of special handling
* More cleanup
* Need to add Klaytn to structs tests
* Update SDK version
* Add SDK version
* fix klaytn bridge chain id
Co-authored-by: Evan Gray <battledingo@gmail.com>
* initial spy-relayer
* Update spy_relayer Dockerfile
* added example mainnet config files
* split out private keys into its own ENV variable
* Update spy relayer supportedChains.json
To remove the `walletPrivateKey` entries. All of the private keys have
been split out into their own json file.
* fixed evm private key env parse
* missing solana accounts report 0 balance, rather than error
* wallet address is logged in debug
* spy_relayer: enabled prometheus default metrics
Also set a prefix of `relayer_`
* spy_relayer: updates to the prometheus bits
* Use a single metric registry
* Use a simpler metric name and add labels for individual wallets
* spy_relayer: human readable app mode in the metrics
[ listener | relayer | both ]
* spy_relayer: unify metrics
* remove the collection of default metrics
* hardcode the `spy_relayer_` prefix on all custom metrics
* fixed dep arrays, nullable terra token/balance info
* attempt stack debug
* debug pullTerraBalance
* provider http or ws
* update sdk
* logging for tokenAddress is 0
* fix foreign address calc
* fix calcLocalAddressesTerra
* relayer/spy_relayer: update prometheus helpers
Add / url handler for the ingress-gce stupid load balancer that
doesn't support custom url healthchecks unless you make a BackendConfig
custom resource definition.
* logging refinement
* use chain name in prometheus
* adjust retry timeout calculation
* spy_relayer: update prometheus bits
* improved error handling
* relayer ui improvements
* prep sdk release
* use latest sdk, manual redeem button
* relaying ux improvements
* gas price fix
* shortened terra success log
* use gh base relayer list
* fix prometheus urls
* Update prometheus metric name
* only show TPS warning on mainnet
* show relayer fee in source preview
* fix unwrap check
* add native bool to balance metric
* logging improvements
* add feeRecipientAddress to redeemOnSolana
* gather solana fees
* remove relayer ws support
* add nativeCurrencySymbol to ChainConfigInfo
* fix solana native symbol
* demoteWorking option, logger contexts
* scoped logging
* bridge_ui: unwrap native
* add evm wallet monitor test
* solana vaa parsing fix
* add monitorRedis
* make Jeff's brain happy
* log demoting keys
* register redisQueue metric
* human readable redisQueue metric
* fix timestamp inconsistency
* use scopedLogger for the first level of workers
* pull wallet balances in parallel
* more scoped logging
* pick a solana fee
* moving keys log improvement
* update eth gas calculations based on recent txs
* use postVaaSolanaWithRetry
* split success and failures by chain
* fix using terraCoin
* check prom every 10s
* batch getting evm token balances
* batch calcLocalAddressesEVM
* debug worker logging
* log retry number
* support Polygon?
* reset status on demotion
* enhance!
* update avax fee
Co-authored-by: Chase Moran <chasemoran45@gmail.com>
Co-authored-by: Kevin Peters <kpeters@jumptrading.com>
Co-authored-by: Evan Gray <battledingo@gmail.com>
* tests run in tilt / ci
* changed bridge_ui test process
* tests use kube proxy when in ci
* fix: allTests.sh permission
* fix: bridge_ui dockerfile sha for amd64
* fix: bridge_ui should use cra test
* fix: ci tests
Co-authored-by: Evan Gray <battledingo@gmail.com>
* Stub out algorand support in wormhole
1) Introduce the algorand chain constant in all the appropriate places
2) Deploy pyth/hernandc algorand smart contracts into devnet
3) Fund all the correct contracts for devnet testing
Change-Id: I6e4402b5b21223b32ea89653f8c7606f5c7f2843
* pr/jsiegel/algorand-v1: ALGORAND is not a EVM chain @ gusc1a-ossdev-jsl1
* pr/jsiegel/algorand-v1: fix lint @ gusc1a-ossdev-jsl1
* pr/jsiegel/algorand-v1: put the requirements into the image @ gusc1a-ossdev-jsl1
* jsiegel/algorand: make the watcher hang forever @ gusc1a-ossdev-jsl1
* jsiegel/algorand: comment these out @ gusc1a-ossdev-jsl1
* jsiegel/algorand: put this back in @ gusc1a-ossdev-jsl1
* jsiegel/algorand: fix guardian example @ gusc1a-ossdev-jsl1
* Generate teal source code
commit-id:a537a109
* jsiegel/algorand: it builds @ gusc1a-ossdev-jsl1
* pr/jsiegel/algorand-v1: add Dockerfile.teal @ gusc1a-ossdev-jsl1
* jsiegel/algorand: improve the dependencies @ gusc1a-ossdev-jsl1
* pr/jsiegel/algorand-v1: Fix up build @ gusc1a-ossdev-jsl1
* dead file
* pr/jsiegel/algorand-v1: remove more stuff @ gusc1a-ossdev-jsl1
* pr/jsiegel/algorand-v1: fix build @ gusc1a-ossdev-jsl1
* pr/jsiegel/algorand-v1: freeze the requirements @ gusc1a-ossdev-jsl1
* pr/jsiegel/algorand-v1: Fix teal to use pipenv @ gusc1a-ossdev-jsl1
* pr/jsiegel/algorand-v1: fix miss-merge @ gusc1a-ossdev-jsl1
Co-authored-by: Leo <leo@certus.one>
Passing the strict lint checks requires a number of backwards-
incompatible changes:
- Rename the NodePrivileged service to NodePrivilegedService.
This is only used in CLI tooling, which are upgraded at the same
time as the server binary.
- The Publicrpc service was renamed to PublicRPCService.
- The EmitterChain type is renamed to ChainID.
- The default value for the ChainID type is renamed to
CHAIN_ID_UNSPECIFIED. This value wasn't referenced anywhere.
- The response and request types for GetLastHeartbeats were updated
to match the rpc method name.
Change-Id: I3954130d3b25ab1f859390407bba3d3c02ffe03c