All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- (shield) #225 Fix shield to handle grouped expression
- (shield) Add new operators:
<
,>
,<=
,>=
,==
,!=
for comparing integers to each others. - (shield) Add support for
string
objects - (shield) Add
contains(elem, array)
builtin function for checking ifelem
is contained in thearray
- (shield) Add
+
,-
,*
,/
math operators for basic integer arithmetic - (shield) Add negative prefix operator to handle negative expressions and integers
- (shield) Change integer representation from int64 to big.Int
- (x/intent) Add
MsgNewAction
as unique entrypoint for creating Actions - (x/intent) Fix bug where Actions' Results were being wrapped in
Any
twice - (x/intent) Add
SimulateIntent
query request - (x/warden) Ensure only Keychain's parties can update a SignatureRequest
- (wardend) Add
wardend genesis add-genesis-space
andwardend genesis add-genesis-keychain
commands to prepare the genesis file - (wardend) analyzers smart contract: a way for 3rd party builders to provide metadata to shield's intents during new signature requests
- (wardend) Initial version Ethereum analyzer
- can be used to pass an Ethereum unsigned transaction, and will return the correct DataForSigning
- (faucet/v2) New web-based version of the faucet that uses recaptcha.
- (faucet/v2) UI/UX tweaks.
- (x/warden) #377 Add
keychain_fees
field toMsgUpdateKeychain
message - (x/wardend) Add autogenerated CLI subcommands for
MsgNewAction
. These make it easier to send transactions such as AddSpaceOwner, etc. - (x/gmp) Added a new module to make Axelar GMP requests from Warden.
- (shield) fix possible occurring panic in case of nil env
- (build) Add
just localnet
command to replaceignite chain serve
- (shield) Improved error messages when parsing an unknown token type
- (shield) Add unit tests for AST preprocessor
v0.3.0 - 2024-03-16
- (x/intent) #139 Ability for modules to dynamically resolve variables on Action creation
- x/warden can now resolve
warden.space.owners
in Intent definitions into the list of owners of the space
- x/warden can now resolve
- (x/intent) #151 Store Intents' AST, instead of the raw string
- (x/warden) #152 Prevent adding invalid addresses as Keychain parties
- (cosmwasm) #156 Add support for smart contracts by integrating CosmWasm
- (x/warden) #173 Remove
SignTransactionRequests
in favor of justSignatureRequests
- (shield) #148 Use protobufs for defining the AST
- (x/intent) #155 Add MsgUpdateIntent, creators of an Intent can use it to change name and definition of their Intents.
- (x/warden) #159 Resolve
warden.space.owners
in Intent definitions for MsgNewSignatureRequest and MsgNewSignTransactionRequest - (x/warden) #160 Add Osmosis support
- Derive Osmosis addresses from ECDSA_SECP256K1 keys
- Extract DataForSigning for Osmosis Amino JSON transactions
- (cosmwasm) #171 Add support for executing NewKeyRequest from contracts
- (cosmwasm) #185 Add support for querying AllKeys from contracts
- (x/intent) #187 Fix QueryActionsByAddress to not reuse the pointer of iterating variable, causing the query to return the same action multiple times
- (docs) #127 Add CHANGELOG.md
- (ci) #137 Add CodeRabbit configuration file, copied from Cosmos SDK's repo
- (perf) #138 Add benchmarks for most hit queries in
x/warden
andx/intent
(ActionsByAddress, AllKeys, KeysBySpaceId) - (chore) #180 Update to use pnpm v9.0.0
- (docs) #185 Add CosmWasm integration related docs.
v0.2.0 - 2024-03-26
- (x/warden) #77 Use uint64 IDs for Space and Keychain, instead of string bech32 addresses
- (x/intent) #55 Initial release of the
shield
intent engine, replacing the oldboolparser
and cleaning up the API - (x/intent) #112 Store a list of referenced addresses when a new intent is created. This is useful for querying all intents that reference a given address.
- Refactor of
x/intent
's andx/warden
's store design to improve queries performance:- (x/intent) #117 Pin the intent definition when an Action is created instead of just referencing it. This allows faster queries "by address" by storing the list of addresses directly inside the action, instead of having to re-evaluate the linked intent for each action.
- (x/warden) #121 Separate Keys queries into
AllKeys
,KeysBySpaceId
, andKeyById
. This allowed some improvements, especially in theKeysBySpaceId
that can benefit from a new "space id -> key id" index. - (x/warden) #122 Improve
SpacesByOwner
query by adding a new "owner -> space id" index.
- (client) #116 Add
warden q wait-tx
command to wait for a transaction to be included in a block- The same command was submitted to Cosmos SDK: cosmos/cosmos-sdk#19870
- (clichain) #113 Initial release of
clichain
, a CLI for acting as a Keychain from the command line - (x/warden) #109 Add ability to assign an intent to a key, overriding the SignIntent of the Space
- #110 Add MsgUpdateKey for updating a key's intent
- (keychain-sdk) #92 Increase Keychain SDK's throughput by batching requests into a single transaction
- (snap) #83 Initial release of Warden Protocol's MetaMask snap
- (build) #69 Add Makefile for building
wardend
- (faucet) #99 Rate limit faucet requests by IP address, not only by account
- (faucet) #66 Batch multiple faucet request in a single transaction
- (x/warden) #120 Don't stop Keys query if one key is invalid (i.e. fails to derive a layer 1 address)
v0.1.0 - 2024-03-06
Initial release of wardend
and launch of the Alfama testnet.