289d37771d
When submitting a batch of observations, we don't want an observation for an already committed transfer to fail the entire batch. This leads to more complexity in the guardian and also delays all the legitimate observations by at least one more block (~5 seconds). Fix this by returning the transfer status of each observation as part of the response data. Observations for committed transfers will get a `TransferStatus::Committed` response without failing the tx as long as the digest of the observation matches the digest of the committed transfer. Digest mismatches are still an error and will fail the entire batch. |
||
---|---|---|
.github | ||
.run | ||
algorand | ||
aptos | ||
bitcoin | ||
clients | ||
cosmwasm | ||
dashboards | ||
devnet | ||
docs | ||
ethereum | ||
lp_ui | ||
near | ||
node | ||
proto | ||
relayer/spy_relayer | ||
scripts | ||
sdk | ||
solana | ||
spydk/js | ||
sui | ||
terra | ||
testing | ||
third_party | ||
tilt_modules | ||
tools | ||
whitepapers | ||
wormchain | ||
.dockerignore | ||
.gitignore | ||
.golangci.yml | ||
.spr.yml | ||
CONTRIBUTING.md | ||
DEVELOP.md | ||
Dockerfile.const | ||
Dockerfile.proto | ||
LICENSE | ||
Makefile | ||
Makefile.help | ||
README.md | ||
SECURITY.md | ||
Tiltfile | ||
buf.gen.web.yaml | ||
buf.gen.yaml | ||
buf.lock | ||
buf.yaml | ||
generate-abi-celo.sh | ||
generate-abi.sh |
README.md
This monorepo contains the reference implementation of the Wormhole protocol.
To learn about how to use and build on Wormhole read the Docs or take a look at the xApp Book.
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.