Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
32 commits
Select commit Hold shift + click to select a range
45f6aa1
WIP: ERC4626Facet
akronim26 Dec 3, 2025
c1f274c
some other changes
akronim26 Dec 3, 2025
5b499d5
fix
akronim26 Dec 3, 2025
c7f57da
error named match to the convention
akronim26 Dec 3, 2025
79629cb
make build ready
akronim26 Dec 4, 2025
904b67e
ran forge fmt
akronim26 Dec 4, 2025
75d5137
enforce solidity comments
akronim26 Dec 4, 2025
1dae9a2
added libERC4626
akronim26 Dec 4, 2025
94a10e3
format
akronim26 Dec 4, 2025
e507ee2
refactored the logic
akronim26 Dec 10, 2025
276fb87
fix stack too deep error
akronim26 Dec 10, 2025
45441ac
added comments
akronim26 Dec 10, 2025
672d8d7
Enforced Solidity Comment Style
akronim26 Dec 10, 2025
b55919e
ERC4626Mod
akronim26 Dec 10, 2025
dfc01cb
enforced comment style
akronim26 Dec 10, 2025
d7762f0
addressed the transfer for all tokens
akronim26 Dec 12, 2025
62b2ed6
fix ci
akronim26 Dec 12, 2025
314e598
introduced vaultAddress variable in ERC4626 struct & changed the lib …
akronim26 Dec 17, 2025
0ab962d
fmt
akronim26 Dec 17, 2025
25b953d
requested changes
akronim26 Dec 18, 2025
2db2acc
changed the value of offset to mitigate the attack
akronim26 Dec 18, 2025
fe78f6c
fixes in mod related to address
akronim26 Dec 18, 2025
498dc4e
fixes
akronim26 Dec 23, 2025
50eb7be
format
akronim26 Dec 23, 2025
5bf1780
updated natspec
akronim26 Dec 23, 2025
8e37f13
implement requested changes
akronim26 Feb 2, 2026
bb13e8e
fix lint
akronim26 Feb 2, 2026
bda3be7
Merge branch 'Perfect-Abstractions:main' into feat/ERC-4626
akronim26 Feb 7, 2026
22f8fd9
fix build & lint errors
akronim26 Feb 7, 2026
d6dd8c1
fixes
akronim26 Feb 7, 2026
ed875ab
enforce comment style
akronim26 Feb 7, 2026
b45af58
fix lint
akronim26 Feb 7, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 4 additions & 2 deletions src/diamond/DiamondMod.sol
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,9 @@ function packedSelectors(address _facet) view returns (bytes memory selectors) {
}
}

// Validate ABI offset == 0x20 for a single dynamic return
/**
* Validate ABI offset == 0x20 for a single dynamic return
*/
uint256 offset;
assembly ("memory-safe") {
offset := mload(add(data, 0x20))
Expand Down Expand Up @@ -137,7 +139,7 @@ function at(bytes memory selectors, uint256 index) pure returns (bytes4 selector
}
}

function addFacets(address[] calldata _facets) {
function addFacets(address[] memory _facets) {
DiamondStorage storage s = getStorage();
uint256 facetLength = _facets.length;
if (facetLength == 0) {
Expand Down
4 changes: 3 additions & 1 deletion src/diamond/DiamondUpgradeFacet.sol
Original file line number Diff line number Diff line change
Expand Up @@ -213,7 +213,9 @@ contract DiamondUpgradeFacet {
}
}

// Validate ABI offset == 0x20 for a single dynamic return
/**
* Validate ABI offset == 0x20 for a single dynamic return
*/
uint256 offset;
assembly ("memory-safe") {
offset := mload(add(data, 0x20))
Expand Down
4 changes: 3 additions & 1 deletion src/diamond/DiamondUpgradeMod.sol
Original file line number Diff line number Diff line change
Expand Up @@ -186,7 +186,9 @@ function packedSelectors(address _facet) view returns (bytes memory selectors) {
}
}

// Validate ABI offset == 0x20 for a single dynamic return
/**
* Validate ABI offset == 0x20 for a single dynamic return
*/
uint256 offset;
assembly ("memory-safe") {
offset := mload(add(data, 0x20))
Expand Down
Loading
Loading