@cruna/protocol
Advanced tools
Comparing version 1.0.0-alpha.0 to 1.0.0-alpha.7
{ | ||
"name": "@cruna/protocol", | ||
"version": "1.0.0-alpha.0", | ||
"version": " 1.0.0-alpha.7", | ||
"description": "The Cruna protocol", | ||
@@ -5,0 +5,0 @@ "publishConfig": { |
@@ -72,3 +72,3 @@ # Cruna Protocol: The Future of Secure Digital Asset Management | ||
* **Brand Integration**: Seamlessly integrate Cruna Vault's functionalities into your NFTs while maintaining your brand identity. | ||
* **Trust and Assurance**: Offer your users and collectors an added layer of security, increasing trust and value in your NFT offerings. | ||
* **Trust and Assurance**: Offer your users and collectors an added layer of security, increasing trust and value in your NFT offerings. | ||
@@ -106,2 +106,8 @@ **For Collectors and Investors:** | ||
## Experimental Features | ||
### ERC-1155 support | ||
In addition to ERC-721, Cruna Protocol may support ERC-1155 tokens in a near future. We are investigating the best way to do it and if there are reasonable use cases for it. For example, the plugin architecture could extend what an ERC-1155 token could do. | ||
## In summary | ||
@@ -113,6 +119,6 @@ | ||
Cruna is in alpha stage, and to use it you must specify the version you want to install. Right now, the only available version is `1.0.0-alpha.0`. Install it with | ||
Cruna is in alpha stage, and to use it you must specify the version you want to install. Right now, the only available version is `1.0.0-alpha.3`. Install it with | ||
```sh | ||
npm install @cruna/protocol@1.0.0-alpha.0 @openzeppelin/contracts erc6551 | ||
npm install @cruna/protocol@1.0.0-alpha.3 @openzeppelin/contracts erc6551 | ||
``` | ||
@@ -122,5 +128,5 @@ or similar commands using Yarn or Pnpm, and use in your Solidity smart contracts, for example, as | ||
``` | ||
import {ProtectedNFT} from "@cruna/protocol/contracts/protected/ProtectedNFT.sol"; | ||
import {ManagedNFT} from "@cruna/protocol/contracts/protected/ManagedNFT.sol"; | ||
contract MySuperToken is ProtectedNFT { | ||
contract MySuperToken is ManagedNFT { | ||
@@ -132,12 +138,46 @@ constructor( | ||
address managerProxy_ | ||
) ProtectedNFT("My Super Token", "MST", registry_, guardian_, signatureValidator_, managerProxy_) {} | ||
) ManagedNFT("My Super Token", "MST", registry_, guardian_, signatureValidator_, managerProxy_) {} | ||
} | ||
``` | ||
If your goal is to build a plugin, look at the two contracts in [contracts/mocks/plugin-example](./contracts/mocks/plugin-example) to start from. | ||
If your goal is to build a plugin, look at the contracts in [contracts/mocks/plugin-example](./contracts/mocks/plugin-example) to start from. | ||
## History | ||
**1.0.0-alpha.0** | ||
**1.0.0-alpha.7** | ||
- A signature is required also to set the first protector to avoid to risk of setting a protector that is unable to sign the requests | ||
**1.0.0-alpha.6** | ||
- Decouples the minting of a vault from its activation | ||
- Add `activate` to later activate the vault, creating a manager for the tokenId | ||
**1.0.0-alpha.5** | ||
- Fixes the risk that there are too many plugins, and it becomes impossible to disable them all | ||
- Renames ProtectedNFT to ManagedERC721 | ||
**1.0.0-alpha.4** | ||
- Optimize costs during signature validation | ||
- Increase security giving more control to the Manager | ||
- Moving sentinels storage to the plugin, instead of the manager, to avoid reentrancy risks | ||
**1.0.0-alpha.3** | ||
- Add function to disable and re-enable plugins | ||
- Making inheritance settable when protectors are active | ||
- Add extra params function to SignatureValidator to be used by plugins | ||
**1.0.0-alpha.2** | ||
- Improve the InheritancePlugin to allow the owner explicitly nominate a beneficiary, in addition to the sentinels | ||
**1.0.0-alpha.1** | ||
- Optimize gas usage minting a new NFT and adding a new plugin | ||
**1.0.0-alpha.1** | ||
- First version of the new protocol. The first one, published as @cruna/cruna-protocol, has been deprecated. | ||
@@ -148,3 +188,3 @@ | ||
``` | ||
22 passing (6s) | ||
31 passing | ||
@@ -156,29 +196,32 @@ --------------------------------|----------|----------|----------|----------|----------------| | ||
CrunaFlexiVault.sol | 100 | 40 | 100 | 100 | | | ||
contracts/factory/ | 100 | 58 | 91.67 | 98.21 | | | ||
contracts/factory/ | 100 | 55.36 | 100 | 95.83 | | | ||
IVaultFactory.sol | 100 | 100 | 100 | 100 | | | ||
VaultFactory.sol | 100 | 58 | 91.67 | 98.21 | 118 | | ||
VaultFactory.sol | 100 | 55.36 | 100 | 95.83 | 75,127 | | ||
contracts/interfaces/ | 100 | 100 | 100 | 100 | | | ||
IBoundContract.sol | 100 | 100 | 100 | 100 | | | ||
IERC6454.sol | 100 | 100 | 100 | 100 | | | ||
IERC6982.sol | 100 | 100 | 100 | 100 | | | ||
IProtected.sol | 100 | 100 | 100 | 100 | | | ||
contracts/manager/ | 98.95 | 67.11 | 100 | 99.12 | | | ||
Actor.sol | 100 | 66.67 | 100 | 100 | | | ||
FlexiGuardian.sol | 100 | 50 | 100 | 83.33 | 19 | | ||
IManagedERC721.sol | 100 | 100 | 100 | 100 | | | ||
contracts/manager/ | 93.85 | 64.29 | 96.08 | 94.56 | | | ||
Actor.sol | 100 | 70 | 100 | 100 | | | ||
Guardian.sol | 100 | 50 | 100 | 83.33 | 21 | | ||
IManager.sol | 100 | 100 | 100 | 100 | | | ||
Manager.sol | 100 | 66 | 100 | 100 | | | ||
ManagerBase.sol | 93.33 | 80 | 100 | 100 | | | ||
Manager.sol | 92.13 | 62.5 | 92.59 | 92.86 |... 259,261,273 | | ||
ManagerBase.sol | 94.74 | 80 | 100 | 100 | | | ||
ManagerProxy.sol | 100 | 100 | 100 | 100 | | | ||
contracts/plugins/ | 100 | 100 | 100 | 100 | | | ||
IPlugin.sol | 100 | 100 | 100 | 100 | | | ||
contracts/plugins/inheritance/ | 100 | 63.16 | 100 | 95.74 | | | ||
contracts/plugins/inheritance/ | 100 | 72.37 | 100 | 97.67 | | | ||
IInheritancePlugin.sol | 100 | 100 | 100 | 100 | | | ||
InheritancePlugin.sol | 100 | 63.16 | 100 | 95.74 | 120,146 | | ||
InheritancePlugin.sol | 100 | 72.37 | 100 | 97.65 | 80,176 | | ||
InheritancePluginProxy.sol | 100 | 100 | 100 | 100 | | | ||
contracts/protected/ | 100 | 57.14 | 100 | 97.5 | | | ||
ProtectedNFT.sol | 100 | 57.14 | 100 | 97.5 | 78 | | ||
contracts/utils/ | 100 | 100 | 100 | 100 | | | ||
contracts/protected/ | 100 | 54.35 | 100 | 95.45 | | | ||
ManagedERC721.sol | 100 | 54.35 | 100 | 95.45 | 164,176 | | ||
contracts/utils/ | 100 | 75 | 100 | 100 | | | ||
CrunaRegistry.sol | 100 | 100 | 100 | 100 | | | ||
FlexiProxy.sol | 100 | 100 | 100 | 100 | | | ||
SignatureValidator.sol | 100 | 100 | 100 | 100 | | | ||
SignatureValidator.sol | 100 | 75 | 100 | 100 | | | ||
Versioned.sol | 100 | 100 | 100 | 100 | | | ||
--------------------------------|----------|----------|----------|----------|----------------| | ||
All files | 99.52 | 61.11 | 98.8 | 98.13 | | | ||
All files | 97.13 | 62.5 | 98.21 | 95.88 | | | ||
--------------------------------|----------|----------|----------|----------|----------------| | ||
@@ -185,0 +228,0 @@ ``` |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Manifest confusion
Supply chain riskThis package has inconsistent metadata. This could be malicious or caused by an error when publishing the package.
Found 1 instance in 1 package
86622
24
240
2