@croptop/core-v6 0.0.21 → 0.0.22
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/AUDIT_INSTRUCTIONS.md +2 -2
- package/CHANGE_LOG.md +2 -2
- package/STYLE_GUIDE.md +2 -2
- package/foundry.toml +1 -1
- package/package.json +7 -6
- package/script/ConfigureFeeProject.s.sol +1 -1
- package/script/Deploy.s.sol +1 -1
- package/script/helpers/CroptopDeploymentLib.sol +1 -1
- package/src/CTDeployer.sol +1 -1
- package/src/CTProjectOwner.sol +1 -1
- package/src/CTPublisher.sol +1 -1
- package/test/CTDeployer.t.sol +1 -1
- package/test/CTProjectOwner.t.sol +1 -1
- package/test/CTPublisher.t.sol +1 -1
- package/test/ClaimCollectionOwnership.t.sol +1 -1
- package/test/CroptopAttacks.t.sol +1 -1
- package/test/TestAuditGaps.sol +1 -1
- package/test/audit/CodexFeeBeneficiaryReentrancy.t.sol +1 -1
- package/test/regression/DuplicateUriFeeEvasion.t.sol +1 -1
- package/test/regression/FeeEvasion.t.sol +1 -1
- package/test/regression/StaleTierIdMapping.t.sol +1 -1
package/AUDIT_INSTRUCTIONS.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Audit preparation document for experienced Solidity auditors. This repo contains the Croptop content publishing system: three contracts that allow permissioned posting of NFT content as 721 tiers to Juicebox V6 projects, with fee accounting, an allowlist system, and a data hook proxy for cross-chain cash-out interception.
|
|
4
4
|
|
|
5
|
-
Compiler: `solc
|
|
5
|
+
Compiler: `solc 0.8.28`. Framework: Foundry.
|
|
6
6
|
|
|
7
7
|
---
|
|
8
8
|
|
|
@@ -479,7 +479,7 @@ Six Nemesis findings plus two regression-test findings. See `.audit/findings/nem
|
|
|
479
479
|
|
|
480
480
|
## Compiler and Version Info
|
|
481
481
|
|
|
482
|
-
- **Solidity**:
|
|
482
|
+
- **Solidity**: 0.8.28
|
|
483
483
|
- **EVM target**: Cancun
|
|
484
484
|
- **Optimizer**: 200 runs
|
|
485
485
|
- **Dependencies**: OpenZeppelin 5.x, nana-core-v6, nana-721-hook-v6, nana-suckers-v6
|
package/CHANGE_LOG.md
CHANGED
|
@@ -15,7 +15,7 @@ This document describes all changes between `croptop-core` (v5) and `croptop-cor
|
|
|
15
15
|
## 1. Breaking Changes
|
|
16
16
|
|
|
17
17
|
### Solidity Version
|
|
18
|
-
- Compiler version bumped from `0.8.23` to
|
|
18
|
+
- Compiler version bumped from `0.8.23` to `0.8.28` across all implementation contracts (`CTDeployer`, `CTProjectOwner`, `CTPublisher`).
|
|
19
19
|
|
|
20
20
|
### Dependency Namespace Migration
|
|
21
21
|
All imports updated from v5 to v6 namespaces:
|
|
@@ -259,7 +259,7 @@ No field changes. Import path updated from `@bananapus/suckers-v5` to `@bananapu
|
|
|
259
259
|
| `JB721TiersHookFlags`: 4 flags | `JB721TiersHookFlags`: 5 flags | Added `issueTokensForSplits` |
|
|
260
260
|
| -- | `CTPublisher_DuplicatePost` | New error |
|
|
261
261
|
| -- | `CTPublisher_SplitPercentExceedsMaximum` | New error |
|
|
262
|
-
| Solidity `0.8.23` | Solidity
|
|
262
|
+
| Solidity `0.8.23` | Solidity `0.8.28` | Compiler bump |
|
|
263
263
|
| `@bananapus/*-v5` | `@bananapus/*-v6` | All dependency namespaces |
|
|
264
264
|
|
|
265
265
|
> **Cross-repo impact**: The `CTPost.splitPercent` and `splits` fields feed directly into `nana-721-hook-v6`'s tier splits system. `nana-suckers-v6` suckers are detected via `SUCKER_REGISTRY.isSuckerOf` for the 0% tax cashout path. `nana-permission-ids-v6` `uint64` projectId width change drove the `CTProjectOwner` cast update.
|
package/STYLE_GUIDE.md
CHANGED
|
@@ -21,7 +21,7 @@ One contract/interface/struct/enum per file. Name the file after the type it con
|
|
|
21
21
|
|
|
22
22
|
```solidity
|
|
23
23
|
// Contracts — pin to exact version
|
|
24
|
-
pragma solidity
|
|
24
|
+
pragma solidity 0.8.28;
|
|
25
25
|
|
|
26
26
|
// Interfaces, structs, enums — caret for forward compatibility
|
|
27
27
|
pragma solidity ^0.8.0;
|
|
@@ -326,7 +326,7 @@ Standard config across all repos:
|
|
|
326
326
|
|
|
327
327
|
```toml
|
|
328
328
|
[profile.default]
|
|
329
|
-
solc = '0.8.
|
|
329
|
+
solc = '0.8.28'
|
|
330
330
|
evm_version = 'cancun'
|
|
331
331
|
optimizer_runs = 200
|
|
332
332
|
libs = ["node_modules", "lib"]
|
package/foundry.toml
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@croptop/core-v6",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.22",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -16,12 +16,13 @@
|
|
|
16
16
|
"artifacts": "source ./.env && npx sphinx artifacts --org-id 'ea165b21-7cdc-4d7b-be59-ecdd4c26bee4' --project-name 'croptop-core-v5'"
|
|
17
17
|
},
|
|
18
18
|
"dependencies": {
|
|
19
|
-
"@bananapus/721-hook-v6": "^0.0.
|
|
19
|
+
"@bananapus/721-hook-v6": "^0.0.21",
|
|
20
|
+
"@bananapus/address-registry-v6": "^0.0.15",
|
|
20
21
|
"@bananapus/buyback-hook-v6": "^0.0.19",
|
|
21
|
-
"@bananapus/core-v6": "^0.0.
|
|
22
|
-
"@bananapus/ownable-v6": "^0.0.
|
|
23
|
-
"@bananapus/permission-ids-v6": "^0.0.
|
|
24
|
-
"@bananapus/router-terminal-v6": "^0.0.
|
|
22
|
+
"@bananapus/core-v6": "^0.0.27",
|
|
23
|
+
"@bananapus/ownable-v6": "^0.0.14",
|
|
24
|
+
"@bananapus/permission-ids-v6": "^0.0.14",
|
|
25
|
+
"@bananapus/router-terminal-v6": "^0.0.20",
|
|
25
26
|
"@bananapus/suckers-v6": "^0.0.16",
|
|
26
27
|
"@openzeppelin/contracts": "^5.6.1"
|
|
27
28
|
},
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// SPDX-License-Identifier: MIT
|
|
2
|
-
pragma solidity
|
|
2
|
+
pragma solidity 0.8.28;
|
|
3
3
|
|
|
4
4
|
import {Hook721Deployment, Hook721DeploymentLib} from "@bananapus/721-hook-v6/script/helpers/Hook721DeploymentLib.sol";
|
|
5
5
|
import {CoreDeployment, CoreDeploymentLib} from "@bananapus/core-v6/script/helpers/CoreDeploymentLib.sol";
|
package/script/Deploy.s.sol
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// SPDX-License-Identifier: MIT
|
|
2
|
-
pragma solidity
|
|
2
|
+
pragma solidity 0.8.28;
|
|
3
3
|
|
|
4
4
|
import {Hook721Deployment, Hook721DeploymentLib} from "@bananapus/721-hook-v6/script/helpers/Hook721DeploymentLib.sol";
|
|
5
5
|
import {CoreDeployment, CoreDeploymentLib} from "@bananapus/core-v6/script/helpers/CoreDeploymentLib.sol";
|
package/src/CTDeployer.sol
CHANGED
package/src/CTProjectOwner.sol
CHANGED
package/src/CTPublisher.sol
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// SPDX-License-Identifier: MIT
|
|
2
|
-
pragma solidity
|
|
2
|
+
pragma solidity 0.8.28;
|
|
3
3
|
|
|
4
4
|
import {IJB721TiersHook} from "@bananapus/721-hook-v6/src/interfaces/IJB721TiersHook.sol";
|
|
5
5
|
import {IJB721TiersHookStore} from "@bananapus/721-hook-v6/src/interfaces/IJB721TiersHookStore.sol";
|
package/test/CTDeployer.t.sol
CHANGED
package/test/CTPublisher.t.sol
CHANGED
package/test/TestAuditGaps.sol
CHANGED