Go to file
John Saigle 7c6e4c597c
node: Fix issue where transfers that were loaded from the DB did not add a flow-cancel transfer on the TargetChain (#4002)
node: Fix issue where transfers that were loaded from the DB did not add
a flow-cancel transfer on the TargetChain

Flow-canceling is done in the `ProcessMsgForTime` loop when a new
message occurs. However, this was not done when a node restarted and
reloaded transfers from the past 24 hours. As a result it was possible
for the node to calculate a result that showed that the outgoing
transfers for an emitter chain exceeded the daily limit. In effect this
is true but only with the condition that there was incoming flow to
allow this to happen. This appeared to violate an invariant and so the
node did not start properly.

Add unit tests when reloading flow cancel transactions from the
database
2024-07-03 15:15:35 -04:00
.github CODEOWNERS: update 2024-05-31 09:13:04 -04:00
.run Commit .run IntelliJ shortcuts to repo 2020-11-23 17:21:41 +01:00
algorand docs: quit the spelling spam typo fix PRs with cspell magic (#3845) 2024-03-20 15:40:02 -04:00
aptos aptos: upgrade to 3.1.0 (toolchain and stdlib) (#3915) 2024-04-29 18:27:25 -04:00
clients clients/js: pin tsx version 2024-06-07 11:09:56 -04:00
cosmwasm sdk,cosmwasm: fix new clippy 1.78.0 lints (#3925) 2024-05-02 20:38:55 +01:00
dashboards add Prometheus + Grafana for Guardian metrics 2022-08-04 16:03:56 -04:00
deployments deployments: update standardRelayerVAAs.csv to gs4 2024-04-26 11:24:01 -04:00
devnet Node/CCQ: Allow anything in testnet (#3966) 2024-06-07 08:13:07 -05:00
docs docs: update governor docs to reflect reset-release-timer change (#3999) 2024-06-28 21:06:46 +02:00
ethereum Deploy Gnosis Chiado Testnet (#3987) 2024-06-17 11:46:26 -05:00
lp_ui js: make packages comply with ci rule 2022-10-20 17:11:13 -05:00
near docs: quit the spelling spam typo fix PRs with cspell magic (#3845) 2024-03-20 15:40:02 -04:00
node node: Fix issue where transfers that were loaded from the DB did not add a flow-cancel transfer on the TargetChain (#4002) 2024-07-03 15:15:35 -04:00
proto node: governor custom reset release timer delay (#3983) 2024-06-20 08:40:03 -04:00
relayer ci: evm relayer address fix 2024-06-07 12:19:13 -04:00
scripts script: uses only first digest as identifier for governance prototxt 2024-06-04 14:33:55 -04:00
sdk Deploy Gnosis Chiado Testnet (#3987) 2024-06-17 11:46:26 -05:00
solana docs: quit the spelling spam typo fix PRs with cspell magic (#3845) 2024-03-20 15:40:02 -04:00
spydk/js NTT / Acct / Node: Guardian support (#3815) 2024-03-08 07:52:12 -06:00
sui Upgrade sui packages and compiler to 1.19.1-mainnet (#3803) 2024-04-15 17:16:07 +01:00
terra docs: quit the spelling spam typo fix PRs with cspell magic (#3845) 2024-03-20 15:40:02 -04:00
testing ci: install specific foundry release 2024-05-31 09:13:52 -04:00
third_party Move from ADD to COPY on Dockerfiles 2022-07-13 09:27:15 -04:00
tilt_modules Devnet arguments for BigTable connection. 2021-08-05 12:53:56 +00:00
tools node: update golang to 1.20 from 1.19 2023-05-12 05:59:53 -04:00
whitepapers node: governor custom reset release timer delay (#3983) 2024-06-20 08:40:03 -04:00
wormchain ci: evm relayer address fix 2024-06-07 12:19:13 -04:00
.dockerignore tilt: ignore wormchain gentx folder to make deployment robust 2022-12-12 16:59:26 -05:00
.gitignore node: Fix url verification bug where <ip>:<port> is not supported (#3719) 2024-01-19 03:14:59 +08:00
.golangci.yml node: upgrade to go 1.21.9 (#3855) 2024-04-19 14:43:36 -04:00
.nvmrc Add top level .nvmrc file (#2342) 2023-02-06 23:10:40 +08:00
.prettierignore ci: add github workflow with prettier checks for clients/js/src and sdk/js/src (#3176) 2023-07-12 11:30:14 -04:00
.spr.yml rename dev.v2 to main 2022-11-29 10:43:07 -05:00
CONTRIBUTING.md CONTRIBUTING.md: add note about typo fixes (#3820) 2024-03-08 17:48:28 +01:00
DEVELOP.md node: upgrade to go 1.21.9 (#3855) 2024-04-19 14:43:36 -04:00
Dockerfile.cli tilt: remove additional root CA support 2023-12-12 14:22:05 -06:00
Dockerfile.const tilt: remove additional root CA support 2023-12-12 14:22:05 -06:00
Dockerfile.proto node: upgrade to go 1.21.9 (#3855) 2024-04-19 14:43:36 -04:00
LICENSE staging/algorand: apply global Apache 2 license 2022-02-05 09:30:28 -05:00
Makefile Makefile: set CGO_ENABLED=1 2023-10-26 12:29:56 -04:00
Makefile.help Add scripts and readme to deploy and verify terra contracts 2022-04-05 17:42:07 +02:00
README.md docs: change link on README to point to docs site 2023-07-12 11:46:54 -04:00
SECURITY.md docs: Update security.md with Cantina NTT audit report 2024-04-24 18:50:49 -04:00
Tiltfile Node: Default devnet evm chains (#3913) 2024-05-01 11:02:44 -05:00
buf.gen.web.yaml sdk/js: publish separate proto packages 2022-07-13 10:04:23 -04:00
buf.gen.yaml node: rename bridge/ to node/ 2021-08-26 11:36:36 +02:00
buf.lock Update buf.lock 2022-09-07 10:34:18 -04:00
buf.yaml certusone -> wormhole-foundation 2022-08-26 12:48:14 -04:00
cspell-custom-words.txt docs: Query proxy server operations manual (#3916) 2024-04-30 23:18:08 -04:00
cspell.config.yaml docs: quit the spelling spam typo fix PRs with cspell magic (#3845) 2024-03-20 15:40:02 -04:00
generate-abi-celo.sh certusone -> wormhole-foundation 2022-08-26 12:48:14 -04:00
generate-abi.sh certusone -> wormhole-foundation 2022-08-26 12:48:14 -04:00
package-lock.json sdk/js: injective package bump (#2175) 2023-01-23 21:33:26 -05:00

README.md

Banner

This monorepo contains the reference implementation of the Wormhole protocol.

To learn about how to use and build on Wormhole read the docs.


See Live Contracts for current testnet and mainnet deployments of the Wormhole smart contracts.

See DEVELOP.md for instructions on how to set up a local devnet, CONTRIBUTING.md for instructions on how to contribute to this project, and SECURITY.md for more information about our security audits and bug bounty program.

See docs/operations.md for node operator instructions.

This software is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. Or plainly spoken - this is a very complex piece of software which targets a bleeding-edge, experimental smart contract runtime. Mistakes happen, and no matter how hard you try and whether you pay someone to audit it, it may eat your tokens, set your printer on fire or startle your cat. Cryptocurrencies are a high-risk investment, no matter how fancy.