You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
-**P1** = required for real-world SP traffic / stability
8
+
-**P2** = can ship later
9
+
10
+
| Capability | Lotus | Venus | Forest | Curio Core Today | Gap Severity | What we do |
11
+
|---|---|---|---|---|---|---|
12
+
13
+
## A) Chain Sync
14
+
15
+
| Capability | Lotus | Venus | Forest | Curio Core Today | Gap Severity | What we do |
16
+
|---|---|---|---|---|---|---|
17
+
| Tipset fetch/validation pipeline | Full staged syncer + manager + validator | Full dispatcher/syncer pipeline | Full task-state-machine sync | Snapshot import + `node.StartSkeleton`; no real fetch/validate loop |**P0**| Implement staged sync pipeline: fetch -> header validate -> persist -> candidate head update |
18
+
| Bad block handling | Built-in bad block cache/policy | Bad tipset tracking | Explicit bad-block policy/cache | None |**P0**| Add bad block cache + rejection gate before persistence |
19
+
| Fork choice | Heaviest-chain with finality guards | Chain selector interfaces | Weight-based with validation gates | None |**P0**| Add weight comparator + head selection interface |
20
+
| Reorg handling | Mature reorg notifications/rollback | Head update with rollback logic | Head update state machine | None |**P0**| Add canonical head update + rollback-safe state transitions |
21
+
| Chain store persistence | Persistent chain + metadata stores | Persistent store/checkpoint/head | Persistent chain store | Only `imported.snapshot.meta` text file |**P0**| Add chain store + blockstore persistence layout |
22
+
| Header vs full validation | Both (staged fast path then full) | Both | Both | No chain validation |**P1**| Add explicit validation stage flags, with header-only bootstrap mode |
23
+
24
+
## B) State / VM Execution
25
+
26
+
| Capability | Lotus | Venus | Forest | Curio Core Today | Gap Severity | What we do |
27
+
|---|---|---|---|---|---|---|
28
+
| FVM integration / actor execution | Yes | Yes | Yes (multi-FVM shims) | None |**P0**| Add feature-flagged apply stub with deterministic interfaces for future FVM integration |
29
+
| Message application | Full | Full | Full | Decode helper only |**P0**| Add message decode registry + execution pipeline stubs + coverage reporting |
30
+
| Gas accounting | Full | Full | Full | None |**P1**| Add gas accounting interfaces and test fixtures around message application flow |
31
+
| AMT/HAMT data structures | Full | Full | Full | None |**P1**| Add adapters for AMT/HAMT traversal in state module (Go now; Rust sidecar later) |
32
+
| State tree/CBOR decoding | Full | Full | Full | None |**P0**| Add state root resolver + basic CBOR decode path |
33
+
34
+
## C) Networking
35
+
36
+
| Capability | Lotus | Venus | Forest | Curio Core Today | Gap Severity | What we do |
37
+
|---|---|---|---|---|---|---|
38
+
| libp2p host | Yes | Yes | Yes |`network.Supported` only |**P0**| Add minimal libp2p host and peer manager |
| f2 resolve | Yes | Yes | Yes | TODO stub |**P1**| Implement on-chain actor resolve via state lookup |
76
+
| keystore security model | Mature | Mature | Mature | Local encrypted JSON (alpha) |**P1**| Harden keystore format, locking, and key material policy |
77
+
| message signing + send flow | Full | Full | Full | Alpha sign/verify placeholders |**P1**| Add real signing + mpool send path once RPC/network path exists |
0 commit comments