Skip to content

Commit 9c3fc7e

Browse files
committed
evm: Modular Messaging
1 parent 3f56da6 commit 9c3fc7e

File tree

1 file changed

+82
-0
lines changed

1 file changed

+82
-0
lines changed

evm/NOTES.md

Lines changed: 82 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,82 @@
1+
# Notes on changes made in this integration branch
2+
3+
This file is meant to document the work in progress on this integration branch. It can probably be deleted (or the information moved some place better) before this PR is merged.
4+
5+
This integration branch is PR #21.
6+
7+
## Sub Branches
8+
9+
Note that the indentation indicates branch dependencies.
10+
11+
- **evm_TransceiverRegistry_split** (PR #22) - This branch splits transceiver admin into a separate contract.
12+
- **evm_per_chain_transceivers** (PR #26) - This branch adds per-chain transceiver support, should also add per-chain thresholds.
13+
- **evm/add_MsgManager** (PR #23) - Creates `MsgManagerBase` and `MsgManager` and makes `NttManager` inherit from `MsgManagerBase`.
14+
- **evm/add_SharedWormholeTransceiver** (PR #25) - Adds a shareable transceiver.
15+
16+
## The change that wasn't made
17+
18+
It is unfortunate that `token` and `mode` exist in `ManagerBase` rather than `NttManager`.
19+
I tried moving them, but that increases the size of `NttManagerNoRateLimiting` considerably.
20+
I'm not sure why that is, or how to avoid it, so I did not pursue that change at this time.
21+
However, some of the other changes also cause that increase, so maybe we can revist this.
22+
23+
## Contract Sizes
24+
25+
### Before we started
26+
27+
```bash
28+
evm (main)$ forge build --sizes --via-ir --skip test
29+
30+
╭-----------------------------------------+------------------+-------------------+--------------------+---------------------╮
31+
| Contract | Runtime Size (B) | Initcode Size (B) | Runtime Margin (B) | Initcode Margin (B) |
32+
+===========================================================================================================================+
33+
|-----------------------------------------+------------------+-------------------+--------------------+---------------------|
34+
| NttManager | 24,066 | 25,673 | 510 | 23,479 |
35+
|-----------------------------------------+------------------+-------------------+--------------------+---------------------|
36+
| NttManagerNoRateLimiting | 17,141 | 18,557 | 7,435 | 30,595 |
37+
|-----------------------------------------+------------------+-------------------+--------------------+---------------------|
38+
39+
```
40+
41+
### After moving token and mode (the change that wasn't made)
42+
43+
```bash
44+
evm (main)$ forge build --sizes --via-ir --skip test
45+
46+
|-----------------------------------------+------------------+-------------------+--------------------+---------------------|
47+
| NttManager | 24,066 | 25,676 | 510 | 23,476 |
48+
|-----------------------------------------+------------------+-------------------+--------------------+---------------------|
49+
| NttManagerNoRateLimiting | 18,788 | 20,281 | 5,788 | 28,871 |
50+
|-----------------------------------------+------------------+-------------------+--------------------+---------------------|
51+
52+
```
53+
54+
## Creating TransceiverRegistryAdmin
55+
56+
```bash
57+
evm (main)$ forge build --sizes --via-ir --skip test
58+
59+
|-----------------------------------------+------------------+-------------------+--------------------+---------------------|
60+
| NttManager | 23,220 | 26,937 | 1,356 | 22,215 |
61+
|-----------------------------------------+------------------+-------------------+--------------------+---------------------|
62+
| NttManagerNoRateLimiting | 16,254 | 19,713 | 8,322 | 29,439 |
63+
|-----------------------------------------+------------------+-------------------+--------------------+---------------------|
64+
65+
```
66+
67+
## Creating MsgManagerBase
68+
69+
```bash
70+
evm (main)$ forge build --sizes --via-ir --skip test
71+
72+
|-----------------------------------------+------------------+-------------------+--------------------+---------------------|
73+
| NttManager | 24,076 | 25,719 | 500 | 23,433 |
74+
|-----------------------------------------+------------------+-------------------+--------------------+---------------------|
75+
| NttManagerNoRateLimiting | 18,496 | 19,949 | 6,080 | 29,203 |
76+
|-----------------------------------------+------------------+-------------------+--------------------+---------------------|
77+
| MsgManager | 12,540 | 13,745 | 12,036 | 35,407 |
78+
|-----------------------------------------+------------------+-------------------+--------------------+---------------------|
79+
| MsgManagerWithExecutor | 13,145 | 14,400 | 11,431 | 34,752 |
80+
|-----------------------------------------+------------------+-------------------+--------------------+---------------------|
81+
82+
```

0 commit comments

Comments
 (0)